From a1d04f55801af35ac39ceca479d72e09b7357fc8 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sun, 4 Mar 2018 12:20:37 +1100 Subject: [PATCH 0001/1365] (config) use environment variables as an optional way to configure cookie session details --- src/config.cr | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/config.cr b/src/config.cr index f48255a4f35..630a337880d 100644 --- a/src/config.cr +++ b/src/config.cr @@ -13,8 +13,8 @@ require "action-controller/server" # Configure session cookies # NOTE:: Change these from defaults ActionController::Session.configure do - settings.key = "_spider_gazelle_" - settings.secret = "4f74c0b358d5bab4000dd3c75465dc2c" + settings.key = ENV["COOKIE_SESSION_KEY"]? || "_spider_gazelle_" + settings.secret = ENV["COOKIE_SESSION_SECRET"]? || "4f74c0b358d5bab4000dd3c75465dc2c" end APP_NAME = "Spider-Gazelle" From 29355c281e29bde4a7ee06ace99797a581004d67 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 5 Mar 2018 09:04:45 +1100 Subject: [PATCH 0002/1365] (readme) add link to developer documentation --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 1bd8efef9e8..a77d30c928b 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,8 @@ Clone this repository to start building your own spider-gazelle based applicatio ## Documentation +Detailed documentation and guides available: https://spider-gazelle.net/ + * [Action Controller](https://github.com/spider-gazelle/action-controller) base class for building [Controllers](http://guides.rubyonrails.org/action_controller_overview.html) * [Active Model](https://github.com/spider-gazelle/active-model) base class for building [ORMs](https://en.wikipedia.org/wiki/Object-relational_mapping) * [Habitat](https://github.com/luckyframework/habitat) configuration and settings for Crystal projects From d3fdb1f7f4fe9d7717b830b2780ddafedca0fa5d Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 5 Mar 2018 10:44:02 +1100 Subject: [PATCH 0003/1365] (spec:helper) comment on creating a test config If you want to separate your test and development / prod environments --- spec/spec_helper.cr | 1 + 1 file changed, 1 insertion(+) diff --git a/spec/spec_helper.cr b/spec/spec_helper.cr index e008dcfd222..b55ee80b589 100644 --- a/spec/spec_helper.cr +++ b/spec/spec_helper.cr @@ -1,6 +1,7 @@ require "spec" # Your application config +# If you have a testing environment, replace this with a test config file require "../src/config" # Helper methods for testing controllers (curl, with_server, context) From 606554f3f85bd31e02d33a897a02f5a0b6af3c2e Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 6 Mar 2018 09:51:10 +1100 Subject: [PATCH 0004/1365] (dockerfile) add dockerfile --- Dockerfile | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000000..95149be83a3 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,20 @@ +FROM crystallang/crystal:latest +ADD . /src +WORKDIR /src + +# Build App +RUN shards build --production + +# Extract dependencies +RUN ldd bin/app | tr -s '[:blank:]' '\n' | grep '^/' | \ + xargs -I % sh -c 'mkdir -p $(dirname deps%); cp % deps%;' + +# Build a minimal docker image +FROM scratch +COPY --from=0 /src/deps / +COPY --from=0 /src/bin/app /app + +# Run the app binding on port 8080 +EXPOSE 8080 +ENTRYPOINT ["/app"] +CMD ["-h","0.0.0.0",-p","8080"] From 70fadcc79ff4f9c5ec15f1ad4b8b5ed326a64c2c Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 6 Mar 2018 20:14:06 +1100 Subject: [PATCH 0005/1365] (readme) fix host binding example --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a77d30c928b..91313b05780 100644 --- a/README.md +++ b/README.md @@ -40,4 +40,4 @@ Once compiled you are left with a binary `./app` * for help `./app --help` * viewing routes `./app --routes` -* run on a different port or host `./app -h 0.0.0.0 -p 80` +* run on a different port or host `./app -b 0.0.0.0 -p 80` From ee355dc68363054024e615a8e246958dbb034b88 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 6 Mar 2018 20:15:00 +1100 Subject: [PATCH 0006/1365] (dockerfile) fix CMD directive --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 95149be83a3..87c3ea6f8d8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -17,4 +17,4 @@ COPY --from=0 /src/bin/app /app # Run the app binding on port 8080 EXPOSE 8080 ENTRYPOINT ["/app"] -CMD ["-h","0.0.0.0",-p","8080"] +CMD ["/app", "-b", "0.0.0.0", "-p", "8080"] From 973ee0cedaf5713a303a51e7b22c7bbff3083ff1 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 7 Mar 2018 07:04:35 +1100 Subject: [PATCH 0007/1365] (dockerfile) ensure tests pass --- Dockerfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Dockerfile b/Dockerfile index 87c3ea6f8d8..955152260ff 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,6 +5,9 @@ WORKDIR /src # Build App RUN shards build --production +# Run tests +RUN crystal spec + # Extract dependencies RUN ldd bin/app | tr -s '[:blank:]' '\n' | grep '^/' | \ xargs -I % sh -c 'mkdir -p $(dirname deps%); cp % deps%;' From 63faa81c71084d854346acda5752830b6fd66242 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 14 Mar 2018 22:13:36 +1100 Subject: [PATCH 0008/1365] (config) add support for serving static files --- src/config.cr | 12 ++++++++++++ www/.keep | 0 2 files changed, 12 insertions(+) create mode 100644 www/.keep diff --git a/src/config.cr b/src/config.cr index 630a337880d..c02d10e1e6b 100644 --- a/src/config.cr +++ b/src/config.cr @@ -10,6 +10,18 @@ require "./models/*" # Server required after application controllers require "action-controller/server" +# Optional support for serving of static assests +static_file_path = ENV["PUBLIC_WWW_PATH"]? || "./www" +if File.directory?(static_file_path) + # Add additional mime types + ActionController::FileHandler::MIME_TYPES[".yaml"] = "text/yaml" + + # Check for files if no paths matched in your application + ActionController::Server.after( + ActionController::FileHandler.new(static_file_path) + ) +end + # Configure session cookies # NOTE:: Change these from defaults ActionController::Session.configure do diff --git a/www/.keep b/www/.keep new file mode 100644 index 00000000000..e69de29bb2d From 861ac2b8b2d16892c76461cd162f1171cbca91a0 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sun, 18 Mar 2018 11:11:47 +1100 Subject: [PATCH 0009/1365] (config) add some useful handlers --- src/config.cr | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/config.cr b/src/config.cr index c02d10e1e6b..cbc180a3582 100644 --- a/src/config.cr +++ b/src/config.cr @@ -22,6 +22,12 @@ if File.directory?(static_file_path) ) end +# Add handlers that should run before your application +ActionController::Server.before( + HTTP::LogHandler.new(STDOUT), + HTTP::ErrorHandler.new(ENV["SG_ENV"]? != "production") +) + # Configure session cookies # NOTE:: Change these from defaults ActionController::Session.configure do From 7b37f65347398b413feb3c6b56592e32eae2ab27 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sun, 18 Mar 2018 11:46:53 +1100 Subject: [PATCH 0010/1365] (config) add compress handler also have static file handler run before the application --- src/config.cr | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/config.cr b/src/config.cr index cbc180a3582..34cc625eaa4 100644 --- a/src/config.cr +++ b/src/config.cr @@ -10,24 +10,25 @@ require "./models/*" # Server required after application controllers require "action-controller/server" +# Add handlers that should run before your application +ActionController::Server.before( + HTTP::LogHandler.new(STDOUT), + HTTP::ErrorHandler.new(ENV["SG_ENV"]? != "production"), + HTTP::CompressHandler.new +) + # Optional support for serving of static assests static_file_path = ENV["PUBLIC_WWW_PATH"]? || "./www" if File.directory?(static_file_path) - # Add additional mime types + # Optionally add additional mime types ActionController::FileHandler::MIME_TYPES[".yaml"] = "text/yaml" # Check for files if no paths matched in your application - ActionController::Server.after( - ActionController::FileHandler.new(static_file_path) + ActionController::Server.before( + ActionController::FileHandler.new(static_file_path, directory_listing: false) ) end -# Add handlers that should run before your application -ActionController::Server.before( - HTTP::LogHandler.new(STDOUT), - HTTP::ErrorHandler.new(ENV["SG_ENV"]? != "production") -) - # Configure session cookies # NOTE:: Change these from defaults ActionController::Session.configure do From 4a245ba6ecdfda1de0191ff7637c3cb89632acaa Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sun, 18 Mar 2018 11:48:05 +1100 Subject: [PATCH 0011/1365] (controller:welcome) serve some images so the example page is a little more interesting --- src/controllers/welcome.cr | 2 +- src/views/welcome.ecr | 11 +++++++++-- www/favicon.ico | Bin 0 -> 32988 bytes www/sg.png | Bin 0 -> 6928 bytes 4 files changed, 10 insertions(+), 3 deletions(-) create mode 100644 www/favicon.ico create mode 100644 www/sg.png diff --git a/src/controllers/welcome.cr b/src/controllers/welcome.cr index 7695e78845b..7817b0db41b 100644 --- a/src/controllers/welcome.cr +++ b/src/controllers/welcome.cr @@ -2,7 +2,7 @@ class Welcome < Application base "/" def index - welcome_text = "You're riding on Spider-Gazelle!" + welcome_text = "You're being trampled by Spider-Gazelle!" respond_with do html Kilt.render("src/views/welcome.ecr") diff --git a/src/views/welcome.ecr b/src/views/welcome.ecr index 69f2e46c394..440e6011ea0 100644 --- a/src/views/welcome.ecr +++ b/src/views/welcome.ecr @@ -1,5 +1,12 @@ -Welcome -<%= welcome_text %> + + Welcome + + + + Spider-Gazelle +
+ <%= welcome_text %> + diff --git a/www/favicon.ico b/www/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..ca27a164bc8cdf79e3b46727cdfecbd001f9eda6 GIT binary patch literal 32988 zcmeI42b5k#7018bY|0Ws4G?OUCW(zANdPGUq(o3q=@<|Jks?LJh@ikh6a}RhQ7{1! zrI&~&fP^5;N)Zr_g&06u6f8i3kofy8Gkazq@B6;@HoIhl@1FDL&fK|oX6~JtJM+Hm zp;l|DwbjOtufaQNqu|@tYPF7zP+zK6I~>`F5ux5*tDV1dt+o{MPW`r8?e;xuwNcoh zRyz?WuV|r1fR(Ae7qr%y$$+-DwlNLb>zFMX;?~yIiTJl!li7}^eUBzOi(<3ueko{a zGWoWamX;r(vvw1`MXmWpCcIClrYvkaj;;Vn5%- z6sMG&=2h5DD{1p~sSjeH0R;#18lDffE~p>XJ`(KKjDjY7Anik%==4VOlH~E-=*YXQ z2%Uw}t6;Gr%8AY}%CCcOB(g?D=i|NM+38FA5}of*Z~*to-$76J@txQ{3ySWwkE44u z=qnnwIZ}RO78umiYVvk92e|;6BQx%*bFeTh;k2f%t_xYVRt&Z`fnV1Lfc@Z z{YfQ^&qmjGMsJhvk-1=<5*0G#rC@z}#1eT5GN5V%L5_-*MN5 zes(G}@S92}!Mt;pE@9J1^$RrW%jiZ*nYJ^7&37~Mvek=2KV|aH`r2?$A5wO(9Q{^g zPk@=A1r(!}+AmNvW(O2A$k)P$W9_G<)^cmUMy}L3{|$KdEH4Q8y*i(Bd|ru8mPGeC z?Z78X*yXA268d=>J~&UIj%+e=#~)j#y{P#6p&#FTMQH;R9b5P&SrFovttM0 ziOp4x`wCdKo>CF{ph1J)jh^dhe^(W;i8{=GMzFgw%1Us*zhVya4k|+rqwIYD14fiF z%+c*YW*qJBaZrXXLRmZaLD_HPjf1WC=;4$L(a@noS0L^$pxi6|x3{;iL|^|7{XGFM z`7Z)89);pW}*71ih^jy9-L#sru_+`!Bd_P?W}? zSj7MM+d$N<7vmoLKX~xqHJHoG&WAXcc|W=*p9p@;hA#n%(v~PjpBk;dcS_WAem|}= zK-c~c`t{`cc3#T(No`bS{Y=? z`@=mL``jw4(4an;`RliSyhJWtrGakRw2?LeQ`3fKW$udo65Cw=(V3L!#BtaJx{9{WJ1^$HNpzyF{4UUq$oHcV z_#05C9{a1zU1VQZL|gc_3JOqszdEMBKNKeXPw&mw_+nctW9-@TK2H6PW&P}?&)qXN z)y4l^sh6RyJQLQYi0!2)#W_7qxxI*yI*f4?EZWWw^H0r>PTOCf459~ zqpEq^@1HoI(;6u!Z9h$H%pFsbwuZ&b`p;**cE}jqlJ=cb_M0Q6ovFn6+h3XWzbv(- zd`8-FgYp9zJIB8njBH@j*%bCz*L)G~nb<5#`9+YnXUpDK>3y5tC;D$Zno$P|@f$4d ze{wTJ+FQX{;GM3-+1o#RL9=~8j<@W-uc>@ zzdi_d2cHAYs3k{1+nFHF<8;bx;4Oszu6NXv@0Tcfzol*U%IQ42^+)_al=PPt2U9sS z>HklZKanadV0n4$CxbZWyC{za-H7>l-lNWcDUXQ?!yE#km zNAN2Ub-qX0v(^{1H=WJ~j^$ZS_cztfGZW|GeU`45IV85#<;3X{I|^hxyY7F=8^?yg zKMnVtWqTcNC z!k_!WUFS|YHb0}>IZkNrYi6EE-%0mVU$=A6*4jk)bs*09G0N`8LlaqS%j4#ZWx%6R zzcVJSU4Iwm`~0EU20sZbEb=$m_{MM_?v+f$x64yNADyr9xi{4F{8ly{tPdUxdNbjE z$47F%zY5fKzk5$DY%&l29z>r`NhajF-yPbXhd&<5Q8&x~KzqzD_fTFML^_p1)c+mj zwPM4<=EH^!Tb4a~Lo&ZRxeL9=MuE+Nc_7Zc2v=Xb(e!g9ea9GT`(qIE4aI&%zBh{a z*HfJ<`jxkDos4@oNn*w@D1neh2%n zYqvG=|AAice@*)6H*ceiKRY+^-}CV$(4Mg?Qk{U(P2du+74RFSzfmg_O5bwz@`2wA zeoGdi@hII1{MPUrt3Ue9w7O`0O6fO!y%_i%FtW?4dto5e9YH)#es3Jlongi!?1b!!}^CI{Nh@`JS1im941jhn@GZ+B+8~vOKML+9t z|E=T+@C1_e2Nq-&DQ^)U%(5!JeQ$pMwuFzto?4{%7UJ!?nK{TmW3-sH5Ly z{(S)Tg+{kBa-4Tr{(8pNJJa7?`ty1-y)Jq$CD*Z@-!o~O4$Ob`bUY7NgIz!ySd_@W zbf@1fgw?l@Gnw6H>u|p-CNh^ zH6U|u`8z-(@?6dXroSw0fZ)#{Z*Ec7d)srIN3#%~pVyGcTxZ_^pGah}=(%_a>=*?Z zz9MyPx6jC}dY`@yPP5X0mZ!}=^74RYj{(0g^2l+u&5K<}X!9F2CEswVzGuTeE=-k@ z@{N>z*XNP@L)-XHOm)@{ZKo!}O@qvDj!1F*DN&H&-=_WwFehc{Vg!D7za?J|95~Ru zKXCQQuZT|lHVM+gTDjw;N~Eu^ey9__MF;Bdr(>rZokq0>7gFS zmz!JT{=1BFBz>I?oV#bd2zk%X0Dl4IG~Zi}@gQ)n4}^L;zI$XskQ*QAJK#UyKr20< zuVFI>90bOKJHhq9voa6F@&88o81Ni87&zy9!Q&v!4^&Ij&RDz#yjM2{j{whUI{rVY zn;)IS_TU*{t{DV+gT~Q`=i|4)b%}nb{CVWlfUz(>eMROc2BGWGSsfazWiqF!gW z&|^COFM551#vR7HBF^EV#_F9p-JILfM6YP`3Ml>?#PQ|l0ncfc_CW9z5YItx&0!z< z^lYYcFt?cpR|ornpMc|m=jOBE^I%ob8`MrGp7(To%jP=I>r3DoU@nw9U+=BnqGRbO z9eWmab6u3ZK=}?}9Qxu+JWRjloYTMtz<8_#HUj1gb9i6UrgXmUf)3!O905!oz3@9h z8{I4gBxAm8XQ}u8vo&2A<4EHvbi_&zcuQhq7>-Kn7CXRU77{Z5HY0VsFVlUuFZI20 z487OPCy|z;@Sa$y!?!@bU8e0q>hH_Qta|=;OXSYYT(Ec|%N9>T;5;I!I~6Pz1qt7q zvhR$P_N20FDoD!C@%*H2(YMp>8Ck5l&!@#o;A_CYmyyNlHz-VsmB7tCw`F9p>YMd( zFeC~BzXd)zBeVKTFd-v12mCA}i&gW$Y_N6|1b#LA=#0#>^CWmzMt&LfwErWhj|)1k z(<@+;P>;+xT^TEZuMhWav_wX3e*S5Ytp+!T>c2D`%mw2?N(WQ9KNV2^II#aL-HIU2 zU!U!N4lqB6d0-omk}K4Dw;{NNZBihu?rR zq7ZIu?g5^i7eVa*T*}7M`j$W%4ekb$!4_aJ$da;)z+GS!@NF;)tPNfVvHvS5yUx~E z2cES@faj|SO+@KY;Ql`jTnGLFV*jp*vK_(q!3^N~m!Wl0ei#@FeRu=J{^e7F@w*)K zl$OJAbFc?U`*!YQKz8pV>Jbga>SYke$e!~ab(%4X`_3`W11*{Mb*L|hKjyP%LG)n? z<)wjVe^S7H@ZG^OpeN*6i~Y;zh58@i7l4DnNRXags)fjy+vkJe>)<4CEpUJC4^{vR zLhe`lDK)oI7?_+pKo8$Z?qSDV94rZnP@JRd^r2ud1a6F4LOt?O?P6fy; z-KhA>U>gh2ioiUW(r7A|C4yrp?~v4gK-ndeJP$W_mfn2JnMd?D%52&fIHsh}w*ccT zZ2+bL{qWB6-gd6jL8PrHOb!+OoB{Mna{SwXKF){=29~Xd?!31z9F#d~yW@OB?e-+FI_XBg)n!tH9BG1GrU}NC9 z8U=cqKQXPSia-^CDgspmst8mOs3K5Bpo%~hfhq!31gZ#B5vU?iMWBj66@e-ORRpRC iR1v5mP(`4MKox;10#yX62viZMB2Y!3ia>vf!2bX)UaB$x literal 0 HcmV?d00001 diff --git a/www/sg.png b/www/sg.png new file mode 100644 index 0000000000000000000000000000000000000000..d5c5e924bdfb2dacd85bf3a80c5dc302c11df45c GIT binary patch literal 6928 zcmV+r8}H+_zV986}6&>3z)(MMNLE$#f_lRxD}#CF&eFsiWQAZ zOr?xk#JHfMmJ6aqTq03HFe)lRfw0IbD(ln7dzW|bJ!fW8=iR>M+_|%K&-6_9xu<_s zQxxyc>Hd1Azv=F;zy3Y~9*?IGuOJ>z30^@wo)Wx*cswO|1?i3l0l;|xut#3!1HjR? zh4Oe@;8>{?Y351*;Nt+W&9;CZk1gf^;5RwSF?szC0A2?G+_tbDPuIM>LOCX{>j2={ zwgvWhy5vI|3bK0r0016uTX2u33tn48K~}G?1HdC}H^Ad*lY;&5a zGK-*X0cM160>D!nmN8bA?*qUu0N_plxB~!g0D#K?V3)%0LjZUP02~1ThXcTNsl59E zz&rp1^1fJF-0qci+y($Q0>IS(a3uiT)36;L&pQ6H!3a`y4dqnq37I+{001umfR9S0 zYBGvVUe^P_IRNld065Un^Ym;m#$V~>7L{c6Iu8Io007r^P}l18?Q(egPi0i4^>@Hu80|wCGLE8f9t(-5`trU@rhX!?qwA#L`FXJFI|vno4<>0Kk(hybF(mjOXJE4s>!8*EIm}<2rs_ zQ2rhOc)v6=d!`hWUqoBVG5+E{s>Svl2mpU4&Avr4Tx~#x`^(Yd1#(UD_?n96aSYo| zim&geo#W2>YPnX(lVdz(dY5-v^h|OH0PMD?9PhEvW(EMK$u&rxOjou%qIsr>FIrNJ zkvxlG6Dk$umj&{@S6azDGs>}+l;b*Cw=0ZCl$Qa(O*yh&@7+sgmrFWUjPaNHH4e}5 zIRLz(V2$!w065sTfS&F+zC*>h0RSF1MRCr!3`ul#rX72vHEgqO0X^;WoemY`Pi;50 zCS!$u8UTDnnxa?Rvs}pX%eb~(D2M;Dwv5kFXr7a#+jtjT&`~`zi&qfyJh#KT ze$ZiE9#3O>a&g(!`r`=O4c_SZ5yULVb?jaG>kjLhNxXuX<@k>4+tYDkHp%&`=6AN|D6kb8h@kbWw z^w9@f#w&<94z*C{2_5d*&m>+!%yEc?IwJshv4wg)9&Nfxy_~&nvS1vT8T<%hj{8}v z_fVN;z~gb6E`6}F*L?u+5Ze#H~(@-d6bv3l*2r}8`o@l&kvN;irQ84L!;)SV^? zAY=VYEkjEH*>@zyj=?4jE#{r4LOa<-Z9L?*f2dji-Nv5J-}Q0>IWJNwy;5!D*Uq zPt!Eawm;knZNDqq%-j@< zbAHrtIK0fZ98*Fnr;sDtg4klF6eI|O!E>?er0I%TR0k-wi=CE4%@Azq|8{~muecSlk5W&oHkD3;n@ zBa~c=C6D7kA;dW{ZJJ8X^2uv!ORvad3(ol`H9EkqUa$8|g<{dd=|Qav5ieGGK4BQ1 zrIYG82!gK9-Fw=C5TcT-e%zUUukm%{nLx|VUWja&WX=$MkMvTH6O#Cz+%6^{#W zInAhi*_6`nXp}psF)guu-K+WRltvRmNLRtRJ%)LpY9~g-TT}}T!*GXUxk*KXT${W%`rLp-pr&wkxjUztdqis0npHS^YLI~C2pQ)ZLN5s3cKSso^66a(`gskUnpxU81 z=bu-7=8Ul`6lF@nFnoe)xgN8ihO7E`y0NXSupkJYDunpFj{7?z-jh?*RvXGO(atQP zW*N8hfPbjh>y-wh)A356lzvzH?RpwN+P)h&RqJoSU-w(_Y zt5;Xyl0@3bQS4pbg2_pVN zwX84U0z##CxjBlmQZ~DG25C!wNE9*OG$lgHo+`_DbFIJuB>| z;VrvVa$chl&iPTQFA@=z@&IbMd$e*9Lf)a+eAUHuD$U+ngkgBB#D1PB~DmQ@Ab8L}Byq#9K8w=e=zh62dTir|qw^;j3~%EJ2-e2ZMp?x<-dhI%oPRrC)7924y<4 zV#&RVBu!JLRAr2@v(hx3S8;jJhHR|xHI&k;Rqh)M2K(uhniF@iA0F1Im)1VQjd75Sq5qU}26_IkZm&9BlL zsVom7Dtk*<1u0%2Pw|!CNAOCW2S5nvBrK>1#Ftx9kU;I&YYUfB;+(-?pyiU^QSfT2 z8Ad4)LcFV@%!6f_ZH$1`Ou8(DVfa_szf(#-sQH4ED2krjmHa}8e{VxUIt$#{fYw;#qB`_{xgc1*@{sLKjGUQjR8c)6XQ7YKsj+d9gtS$wC; zp8ZdV*tgkPC+^tq3;Ld_7epa-7wLIs#eqCXqYS0=LOBfTm?;~hv-m{B zvN*SS_g79mO+pCyLR)30G}U^aO<7u6x>oLw-KF`{O$B|gv4N+qf@pP`JXpw{7{{@# zIIlViqV?I1Y8cuEzH z7DqPEE9*EbD*IzeI*nVqyu7UBq*#;2ZasC02uUNl+yRr_?fcuQc7JqFSNgnN;{cian6sf zS&s|ctowuEaQK;aL|Myy_ucm!-QT2X+IZSwi9IG3?z+@c5KS}O-r;a~MV)$DM0wvO zFM^^1dt31#o1m`O0U<=$Di_DGOC!iwp4Y41i-@WYoTb!N5aoHfquGd*=cc1{q?|)! z62_QLVjgWMr7x`WyEILeM;%IOt4dyjgblb?Rst zWz!)id{>K zrEoY+HhS6uQ9WxIhS+2`_NoTIEhOxRFRlIKRLflI+`C&|URGNZCSYU(wYIAX=ls7+ z2w(~2PESX)iEq`34Srihx_8fB<&*_kbc_y&IILSwizt2FIOkRsWOgVL#Uzi) zdjb7^zlk;ErUt()LTQm&#BeygQ{(ndHas;6Rc@k`8hQ406(l7dZq3p*+Q^;Y!~+LWoT&_wC-jyN-E&9kuP;!{JcX{AtbMt%x*D z)#u?iH}e|{!|)YNexGGwVd2~+zb9m0kZmQFmX@4TkR(Yu-BE9{5u`Nr==FN7o-eP7 zPN#3QP+eG9xWbe*3lSSn8{#-t-brVSIcMfYM3qoP#;k8m6hvtOhlq`%^O=Sa(&?e5 z)%@vA34&nV@#Y#RPZ>GqE-um^s&J37_uINF!Duv63iHz?i1@oM>x<*~RR)Sl7Z(@* zvuPng5GYSC2_Y^n(km5&b8c*X+(kb)BuP>k{EkxEc%(H#7=|ybia0?CQHuK4C1DtzrV%m26r@4)5|bTOIX0Gw= zbkA0E&TIQ!6`*4*XdE`jB!j^~WlznhX}WReMMURDh$;vnHjka^7%kG_aQI@w^*iUG ztIB9JI;`p*A;f=}tkcBTz4Cm4Yl%=67Z*FXVoh+Z>L|h(ySjxb>eMPok|d9=x`$Hw zX_Iv}R**0ZD-)b7FE5uS;kSTQ`+mRQS8{_NjYdW@YfU?G93NYC&)&UzFYHDdbq=mt zH1UAH&bE*ln56~sB)c+Z+%@J)MwzkAt_%akb~`t9miZ#9xe>&&RAxkMbeOC)`S&gS`C~~5DVN-rQJdZtJ!6&RYq| z<2wC*Un%S=B3{JC1m{$kpt-rZ{bzBJ&N)9yvE8n%8LQ+qb_S#^sy3ip%S*v$R6$f-{awR~ zye7XA_g1V!0)us#V5s)c5UM2 zxH3mPBDU7y>JZ0qsexxS8o9kdpCG8%oqd*V0VfH9;OwfoZLilm*tVP|34-8_Rc&_d z{Epm{DU!F<;C7}h6-#9T$8l^Vbd4#(Fsw`u#~AB(BTYBNaa?(9bzxzlZqlGuNYnI) zqQ6l}ztXKV4G}`TqeR=C3q+>iljL0ByCzUhKUmRb=VD=1g!oOf*^Q$$&{sVK4}9=>4jxqD7mQJFc3nnDQoZi{QP5V%Qy*R z>r^|7j3;3jzTCEKMvI5Ogk*-exjYBD27rMUR??2hLToW8n)Oo@%e79}kOi+Wye=d%$7v)AjLn6vP@ziqizVU&Hbpc9q3qD&J-Q^=~gx1GTl z`}-UjOV6-uG}e5jg%HkUpX&8`k1Xg!8^Qh_m8?J9iCKoQGb3B8K^dGw2$6Mzcj*C? zHCw&eA26($D9$i!t_n+p?_^hT%&x z^0}CqtP?KFOtU_2TcA}4A-NldOt81wmaQQ-<+ZEd?;meluvHN8&Wvm?wk?w_vQBf( zgqjJ0e19dz*fq9gYe>;SDR#20`#O+d|bO&$p>GqGZP`Ppm!u!L~3?F>Cy0{QV#H({U zm1|CYD&)qN;+((6wqTOJi=&!TAmVQ(Y~K&FEf1_H?mE9Qm)1!dY;n0ALWuWFjL@&P zEsv}G!OB7i`KfJTCdk`Zb1m{mDME-B<+Q`40C6L~_E3N^_Ep!uZb)$5x#%DWT$!3E zfrz)~Os_s_TP|2}Eje^z?Xe+3iMCBFAJ)mX1%Z_pcxtwD$>`|QM4oS%6TWYVc#)K6 zW5v2^izteo4J!wfTzOzcyXwnbJDRcilS`hURS27o{bC_{M^j6eV_G>&F4W#%zhdbfq8tM7Ah4IWL#6=V8{QUeg{My6g1f28FOl%su5<2w{(G$Zk zJkGW-p4lclirA(%1=cmsEWv~SOZ>@u{83hA;r!#PvbdC#$m1DGSMu8}%dt;67-QeH zEQiOlhRqXG8(~8L=>WJY1F<24$5RNU^a8n9|BNLO7WPf82GKE=>i2jmS+=oQm*-Ma znFHP9ag)__4nl~xby+VWUgh9srN^@#nZmfsv-CaiLDxLfggi_CqK@kN5$D{W?eRZ+A60000 Date: Sun, 18 Mar 2018 12:01:50 +1100 Subject: [PATCH 0012/1365] (spec) fix specs --- spec/welcome_spec.cr | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/welcome_spec.cr b/spec/welcome_spec.cr index 5666e9ad6e3..8d347e12ba3 100644 --- a/spec/welcome_spec.cr +++ b/spec/welcome_spec.cr @@ -18,7 +18,7 @@ describe Welcome do with_server do it "should welcome you" do result = curl("GET", "/") - result.body.should eq("\n\nWelcome\nYou're riding on Spider-Gazelle!\n\n") + result.body.includes?("You're being trampled by Spider-Gazelle!").should eq(true) result.headers["Date"]?.nil?.should eq(false) end end From 32b8081e4297d7eaedcc7490181dc51682800252 Mon Sep 17 00:00:00 2001 From: Olivier BONNAURE Date: Fri, 1 Jun 2018 12:59:13 +0200 Subject: [PATCH 0013/1365] Logs fix : display http:// instead of tcp:// for listening message. Useful for clicking it directly on the log --- src/app.cr | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app.cr b/src/app.cr index 4a6e7bbdbb3..463f5c66e77 100644 --- a/src/app.cr +++ b/src/app.cr @@ -39,7 +39,7 @@ Signal::INT.trap do end # Start the server -puts "Listening on tcp://#{host}:#{port}" +puts "Listening on http://#{host}:#{port}" server.run # Shutdown message From ee8dd392b59c0916b24a62291dbfec010f799305 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 19 Jun 2018 23:52:20 +1000 Subject: [PATCH 0014/1365] (app) use `server.print_addresses` for listening message --- src/app.cr | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app.cr b/src/app.cr index 463f5c66e77..1ca86f45b0c 100644 --- a/src/app.cr +++ b/src/app.cr @@ -39,7 +39,7 @@ Signal::INT.trap do end # Start the server -puts "Listening on http://#{host}:#{port}" +puts "Listening on #{server.print_addresses}" server.run # Shutdown message From 9b7adb00c7be12505cddf2e23b2d871cb391f320 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 8 Aug 2018 22:34:25 +1000 Subject: [PATCH 0015/1365] add ameba --- .travis.yml | 5 +++++ shard.yml | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/.travis.yml b/.travis.yml index ffc7b6ac56d..75e04bcffd8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1 +1,6 @@ language: crystal +install: + - shards install +script: + - crystal spec + - bin/ameba diff --git a/shard.yml b/shard.yml index f1cea9bcc5b..c43f42d3230 100644 --- a/shard.yml +++ b/shard.yml @@ -12,6 +12,10 @@ dependencies: kilt: github: jeromegn/kilt +development_dependencies: + ameba: + github: veelenga/ameba + # compile target targets: app: From 2bab32e7b94b2b52b9064e1928b9fe61dd04afdc Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 31 Aug 2018 22:04:13 +1000 Subject: [PATCH 0016/1365] add support for clustering --- src/app.cr | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/src/app.cr b/src/app.cr index 1ca86f45b0c..1e86dfe5997 100644 --- a/src/app.cr +++ b/src/app.cr @@ -4,6 +4,8 @@ require "./config" # Server defaults port = 3000 host = "127.0.0.1" +cluster = false +process_count = 1 # Command line options OptionParser.parse! do |parser| @@ -12,6 +14,11 @@ OptionParser.parse! do |parser| parser.on("-b HOST", "--bind=HOST", "Specifies the server host") { |h| host = h } parser.on("-p PORT", "--port=PORT", "Specifies the server port") { |p| port = p.to_i } + parser.on("-c COUNT", "--cluster=COUNT", "Specifies the number of processes to handle requests") do |c| + cluster = true + process_count = c.to_i + end + parser.on("-r", "--routes", "List the application routes") do ActionController::Server.print_routes exit 0 @@ -33,14 +40,24 @@ puts "Launching #{APP_NAME} v#{VERSION}" server = ActionController::Server.new(port, host) # Detect ctr-c to shutdown gracefully -Signal::INT.trap do - puts " > terminating gracefully" - server.close +Signal::INT.trap do |signal| + if cluster + puts " > terminating cluster" + signal.ignore + spawn { server.close } + else + puts " > terminating gracefully" + server.close + end end +# Start clustering +server.cluster(process_count) if cluster + # Start the server -puts "Listening on #{server.print_addresses}" -server.run +server.run do + puts "Listening on #{server.print_addresses}" +end # Shutdown message puts "#{APP_NAME} leaps through the veldt\n" From 8ab625a67a22ade6f869491198ef5d8751657276 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 31 Aug 2018 22:26:02 +1000 Subject: [PATCH 0017/1365] bump action controller version --- .gitignore | 1 + shard.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 0792935e4a3..418ccc2d478 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ lib .shards app *.dwarf +bin diff --git a/shard.yml b/shard.yml index c43f42d3230..483deb4da4e 100644 --- a/shard.yml +++ b/shard.yml @@ -4,6 +4,7 @@ version: 1.0.0 dependencies: action-controller: github: spider-gazelle/action-controller + version: "~> 1.1" active-model: github: spider-gazelle/active-model From 78e0197f82cc9f9198b29b8b7a820a0dbe88a4c5 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sat, 1 Sep 2018 08:24:18 +1000 Subject: [PATCH 0018/1365] (app) pass command line args to server seems OptionParser modifies ARGV --- src/app.cr | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/src/app.cr b/src/app.cr index 1e86dfe5997..1e3b8e503d3 100644 --- a/src/app.cr +++ b/src/app.cr @@ -7,6 +7,9 @@ host = "127.0.0.1" cluster = false process_count = 1 +# Option parser modifies ARGV +args = ARGV.dup + # Command line options OptionParser.parse! do |parser| parser.banner = "Usage: #{PROGRAM_NAME} [arguments]" @@ -14,9 +17,9 @@ OptionParser.parse! do |parser| parser.on("-b HOST", "--bind=HOST", "Specifies the server host") { |h| host = h } parser.on("-p PORT", "--port=PORT", "Specifies the server port") { |p| port = p.to_i } - parser.on("-c COUNT", "--cluster=COUNT", "Specifies the number of processes to handle requests") do |c| + parser.on("-w COUNT", "--workers=COUNT", "Specifies the number of processes to handle requests") do |w| cluster = true - process_count = c.to_i + process_count = w.to_i end parser.on("-r", "--routes", "List the application routes") do @@ -39,21 +42,16 @@ end puts "Launching #{APP_NAME} v#{VERSION}" server = ActionController::Server.new(port, host) +# Start clustering +server.cluster(process_count, "-w", "--workers", args) if cluster + # Detect ctr-c to shutdown gracefully Signal::INT.trap do |signal| - if cluster - puts " > terminating cluster" - signal.ignore - spawn { server.close } - else - puts " > terminating gracefully" - server.close - end + puts " > terminating gracefully" + spawn { server.close } + signal.ignore end -# Start clustering -server.cluster(process_count) if cluster - # Start the server server.run do puts "Listening on #{server.print_addresses}" From ece7cddd9ccc7e6fcdfa783a9f6ffb0c02db7a4d Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sat, 1 Sep 2018 23:49:45 +1000 Subject: [PATCH 0019/1365] (app) simplify options parsing --- src/app.cr | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/app.cr b/src/app.cr index 1e3b8e503d3..863c57ba5f4 100644 --- a/src/app.cr +++ b/src/app.cr @@ -7,11 +7,8 @@ host = "127.0.0.1" cluster = false process_count = 1 -# Option parser modifies ARGV -args = ARGV.dup - # Command line options -OptionParser.parse! do |parser| +OptionParser.parse(ARGV.dup) do |parser| parser.banner = "Usage: #{PROGRAM_NAME} [arguments]" parser.on("-b HOST", "--bind=HOST", "Specifies the server host") { |h| host = h } @@ -43,7 +40,7 @@ puts "Launching #{APP_NAME} v#{VERSION}" server = ActionController::Server.new(port, host) # Start clustering -server.cluster(process_count, "-w", "--workers", args) if cluster +server.cluster(process_count, "-w", "--workers") if cluster # Detect ctr-c to shutdown gracefully Signal::INT.trap do |signal| From 4c485315a58f8be49678f9ce86d4b4c9313c4e1a Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 5 Nov 2018 22:48:48 +1100 Subject: [PATCH 0020/1365] Simplify example controllers --- src/controllers/application.cr | 10 +--------- src/controllers/welcome.cr | 3 +++ 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/src/controllers/application.cr b/src/controllers/application.cr index 9bdbc79b557..8a95acea7c8 100644 --- a/src/controllers/application.cr +++ b/src/controllers/application.cr @@ -1,15 +1,7 @@ -# Require kilt for template support -require "kilt" - abstract class Application < ActionController::Base before_action :set_date_header - # https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Date - def time_now - Time.utc_now.to_s("%a, %d %b %Y %H:%M:%S GMT") - end - def set_date_header - response.headers["Date"] = time_now + response.headers["Date"] = HTTP.format_time(Time.now) end end diff --git a/src/controllers/welcome.cr b/src/controllers/welcome.cr index 7817b0db41b..96667c6dd73 100644 --- a/src/controllers/welcome.cr +++ b/src/controllers/welcome.cr @@ -1,3 +1,6 @@ +# Require kilt for template support +require "kilt" + class Welcome < Application base "/" From 846aa4c26cb247fdc6886dc12e12a5ade9380693 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 5 Nov 2018 23:49:45 +1100 Subject: [PATCH 0021/1365] fix spec --- spec/welcome_spec.cr | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/welcome_spec.cr b/spec/welcome_spec.cr index 8d347e12ba3..61073ce875f 100644 --- a/spec/welcome_spec.cr +++ b/spec/welcome_spec.cr @@ -9,7 +9,7 @@ describe Welcome do welcome = Welcome.new(context("GET", "/")) # Test the instance methods of the controller - welcome.time_now.should contain("GMT") + welcome.set_date_header[0].should contain("GMT") end # ============== From 617f9890522d5729addb3a04ed2c718b9b26f9d7 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 6 Nov 2018 09:10:39 +1100 Subject: [PATCH 0022/1365] (app) terminate gracefully in docker containers --- src/app.cr | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/app.cr b/src/app.cr index 863c57ba5f4..1545ef1d986 100644 --- a/src/app.cr +++ b/src/app.cr @@ -42,13 +42,17 @@ server = ActionController::Server.new(port, host) # Start clustering server.cluster(process_count, "-w", "--workers") if cluster -# Detect ctr-c to shutdown gracefully -Signal::INT.trap do |signal| +terminate = Proc(Signal, Nil).new do |signal| puts " > terminating gracefully" spawn { server.close } signal.ignore end +# Detect ctr-c to shutdown gracefully +Signal::INT.trap &terminate +# Docker containers use the term signal +Signal::TERM.trap &terminate + # Start the server server.run do puts "Listening on #{server.print_addresses}" From 77b8e1db9c02ea762be2110020f4d59dd783e143 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sun, 2 Dec 2018 19:17:14 +1100 Subject: [PATCH 0023/1365] (controller) use template helper in stead of kilt directly --- src/controllers/welcome.cr | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/controllers/welcome.cr b/src/controllers/welcome.cr index 96667c6dd73..30ef2bfcc41 100644 --- a/src/controllers/welcome.cr +++ b/src/controllers/welcome.cr @@ -1,5 +1,3 @@ -# Require kilt for template support -require "kilt" class Welcome < Application base "/" @@ -8,7 +6,7 @@ class Welcome < Application welcome_text = "You're being trampled by Spider-Gazelle!" respond_with do - html Kilt.render("src/views/welcome.ecr") + html template("welcome.ecr") text "Welcome, #{welcome_text}" json({welcome: welcome_text}) xml do From e7929eca6be0335786ddced9f0091d5100d0b2f5 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 6 Feb 2019 13:22:39 +1100 Subject: [PATCH 0024/1365] (config.cr) update to new habitat syntax --- src/config.cr | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/config.cr b/src/config.cr index 34cc625eaa4..b79bb7e2778 100644 --- a/src/config.cr +++ b/src/config.cr @@ -31,7 +31,7 @@ end # Configure session cookies # NOTE:: Change these from defaults -ActionController::Session.configure do +ActionController::Session.configure do |settings| settings.key = ENV["COOKIE_SESSION_KEY"]? || "_spider_gazelle_" settings.secret = ENV["COOKIE_SESSION_SECRET"]? || "4f74c0b358d5bab4000dd3c75465dc2c" end From 35520cb1f0dced75a1e233ec15f27786303a6d4d Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 6 Feb 2019 13:47:10 +1100 Subject: [PATCH 0025/1365] (shard.yml) bump action controller version --- shard.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shard.yml b/shard.yml index 483deb4da4e..0dd85d41ae8 100644 --- a/shard.yml +++ b/shard.yml @@ -4,7 +4,7 @@ version: 1.0.0 dependencies: action-controller: github: spider-gazelle/action-controller - version: "~> 1.1" + version: "~> 1.4" active-model: github: spider-gazelle/active-model From ea4559a1c43253052f14555385e09d8b7ec29928 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 18 Mar 2019 18:44:18 +1100 Subject: [PATCH 0026/1365] init commit todo:: * driver compiler * testing framework (web based) * monitor the drivers folder for changes (trigger spec runs etc) --- .gitignore | 1 + Dockerfile | 23 ----------------------- README.md | 44 +++----------------------------------------- shard.yml | 2 -- 4 files changed, 4 insertions(+), 66 deletions(-) delete mode 100644 Dockerfile diff --git a/.gitignore b/.gitignore index 418ccc2d478..0740ce81b60 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ lib app *.dwarf bin +.DS_Store diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 955152260ff..00000000000 --- a/Dockerfile +++ /dev/null @@ -1,23 +0,0 @@ -FROM crystallang/crystal:latest -ADD . /src -WORKDIR /src - -# Build App -RUN shards build --production - -# Run tests -RUN crystal spec - -# Extract dependencies -RUN ldd bin/app | tr -s '[:blank:]' '\n' | grep '^/' | \ - xargs -I % sh -c 'mkdir -p $(dirname deps%); cp % deps%;' - -# Build a minimal docker image -FROM scratch -COPY --from=0 /src/deps / -COPY --from=0 /src/bin/app /app - -# Run the app binding on port 8080 -EXPOSE 8080 -ENTRYPOINT ["/app"] -CMD ["/app", "-b", "0.0.0.0", "-p", "8080"] diff --git a/README.md b/README.md index 91313b05780..e97b0ea4686 100644 --- a/README.md +++ b/README.md @@ -1,43 +1,5 @@ -# Spider-Gazelle Application Template +# Crystal Engine Drivers -[![Build Status](https://travis-ci.org/spider-gazelle/spider-gazelle.svg?branch=master)](https://travis-ci.org/spider-gazelle/spider-gazelle) +[![Build Status](https://travis-ci.org/aca-labs/crystal-engine-drivers.svg?branch=master)](https://travis-ci.org/aca-labs/crystal-engine-drivers) -Clone this repository to start building your own spider-gazelle based application - -## Documentation - -Detailed documentation and guides available: https://spider-gazelle.net/ - -* [Action Controller](https://github.com/spider-gazelle/action-controller) base class for building [Controllers](http://guides.rubyonrails.org/action_controller_overview.html) -* [Active Model](https://github.com/spider-gazelle/active-model) base class for building [ORMs](https://en.wikipedia.org/wiki/Object-relational_mapping) -* [Habitat](https://github.com/luckyframework/habitat) configuration and settings for Crystal projects -* [router.cr](https://github.com/tbrand/router.cr) base request handling -* [Radix](https://github.com/luislavena/radix) Radix Tree implementation for request routing -* [HTTP::Server](https://crystal-lang.org/api/latest/HTTP/Server.html) built-in Crystal Lang HTTP server - * Request - * Response - * Cookies - * Headers - * Params etc - - -Spider-Gazelle builds on the amazing performance of **router.cr** [here](https://github.com/tbrand/which_is_the_fastest).:rocket: - - -## Testing - -`crystal spec` - -* to run in development mode `crystal ./src/app.cr` - -## Compiling - -`crystal build ./src/app.cr` - -### Deploying - -Once compiled you are left with a binary `./app` - -* for help `./app --help` -* viewing routes `./app --routes` -* run on a different port or host `./app -b 0.0.0.0 -p 80` +Manages and tests engine drivers diff --git a/shard.yml b/shard.yml index 0dd85d41ae8..44aa3d80ecb 100644 --- a/shard.yml +++ b/shard.yml @@ -5,8 +5,6 @@ dependencies: action-controller: github: spider-gazelle/action-controller version: "~> 1.4" - active-model: - github: spider-gazelle/active-model # https://github.com/jeromegn/kilt # Generic template interface for Crystal From f8a4983294c2441d22f7118c83a8836bb6cd7390 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 19 Mar 2019 16:00:51 +1100 Subject: [PATCH 0027/1365] initial thoughts on routes --- src/controllers/build.cr | 22 ++++++++++++++++++++++ src/controllers/edit.cr | 32 ++++++++++++++++++++++++++++++++ src/controllers/test.cr | 17 +++++++++++++++++ src/controllers/welcome.cr | 19 ------------------- 4 files changed, 71 insertions(+), 19 deletions(-) create mode 100644 src/controllers/build.cr create mode 100644 src/controllers/edit.cr create mode 100644 src/controllers/test.cr delete mode 100644 src/controllers/welcome.cr diff --git a/src/controllers/build.cr b/src/controllers/build.cr new file mode 100644 index 00000000000..1680cc6a2fb --- /dev/null +++ b/src/controllers/build.cr @@ -0,0 +1,22 @@ + +class Build < Application + # list the available builds / built files + def index + + end + + # grab the list of available versions of file / which are built + def show + + end + + # build a drvier, optionally based on the version specified + def create + + end + + # delete a built driver + def delete + + end +end diff --git a/src/controllers/edit.cr b/src/controllers/edit.cr new file mode 100644 index 00000000000..89463d546d7 --- /dev/null +++ b/src/controllers/edit.cr @@ -0,0 +1,32 @@ + +class Edit < Application + # list of drivers and specs + def index + + end + + # contents of a driver or spec + def show + + end + + # create a new driver + def create + + end + + # update an existing driver or spec + def update + + end + + # delete a driver or spec + def delete + + end + + # commits changes to the upstream repo + post "/commit" do + + end +end diff --git a/src/controllers/test.cr b/src/controllers/test.cr new file mode 100644 index 00000000000..2f47e98ba72 --- /dev/null +++ b/src/controllers/test.cr @@ -0,0 +1,17 @@ + +class Test < Application + # Specs available + def index + + end + + # Run a spec + def create + + end + + # WS watch the output from running specs + ws "/output" do |socket| + + end +end diff --git a/src/controllers/welcome.cr b/src/controllers/welcome.cr deleted file mode 100644 index 30ef2bfcc41..00000000000 --- a/src/controllers/welcome.cr +++ /dev/null @@ -1,19 +0,0 @@ - -class Welcome < Application - base "/" - - def index - welcome_text = "You're being trampled by Spider-Gazelle!" - - respond_with do - html template("welcome.ecr") - text "Welcome, #{welcome_text}" - json({welcome: welcome_text}) - xml do - XML.build(indent: " ") do |xml| - xml.element("welcome") { xml.text welcome_text } - end - end - end - end -end From 707addc451b156fd6e498fba02d0cc3598317b14 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 19 Mar 2019 22:42:41 +1100 Subject: [PATCH 0028/1365] inital work on test framework API --- src/controllers/build.cr | 51 ++++++++++++++++++++++++++++++++++++---- src/controllers/edit.cr | 7 ------ src/controllers/test.cr | 4 ---- 3 files changed, 47 insertions(+), 15 deletions(-) diff --git a/src/controllers/build.cr b/src/controllers/build.cr index 1680cc6a2fb..94f89745db2 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -1,22 +1,65 @@ - class Build < Application - # list the available builds / built files + # list the available files def index + io = IO::Memory.new + result = Process.run( + "git", {"ls-files"}, + input: Process::Redirect::Close, + output: io, + error: Process::Redirect::Close + ) + + head :internal_server_error if result.exit_status != 0 + render json: io.to_s.split("\n").select { |file| + file.ends_with?(".cr") && !file.ends_with?("_spec.cr") && file.starts_with?("drivers/") + } end # grab the list of available versions of file / which are built - def show + get "/commits" do + driver = params["driver"] + count = params["id"] + + io = IO::Memory.new + result = Process.run( + "git", {"-no-pager", "log", "--format=short", "--no-color", "-n", count, driver}, + input: Process::Redirect::Close, + output: io, + error: Process::Redirect::Close + ) + + head :internal_server_error if result.exit_status != 0 + commits = io.to_s.split("commit ").reject(&.empty?).map(&.split("\n", 3).map &.strip) + commits.map! do |commit| + { + commit: commit[0], + author: commit[1].split(" ", 2)[1], + message: commit[2], + } + end + render json: commits end # build a drvier, optionally based on the version specified def create + driver = params["driver"] + commit = params["commit"]? || "head" + # https://stackoverflow.com/questions/215718/reset-or-revert-a-specific-file-to-a-specific-revision-using-git + result = Process.run("git", {"checkout", commit, "--", driver}) + head :internal_server_error if result.exit_status != 0 + + # complile the driver + # TODO:: + + # reset the file back to head + Process.run("git", {"checkout", "--", driver}) + head :ok end # delete a built driver def delete - end end diff --git a/src/controllers/edit.cr b/src/controllers/edit.cr index 89463d546d7..f124f639101 100644 --- a/src/controllers/edit.cr +++ b/src/controllers/edit.cr @@ -1,32 +1,25 @@ - class Edit < Application # list of drivers and specs def index - end # contents of a driver or spec def show - end # create a new driver def create - end # update an existing driver or spec def update - end # delete a driver or spec def delete - end # commits changes to the upstream repo post "/commit" do - end end diff --git a/src/controllers/test.cr b/src/controllers/test.cr index 2f47e98ba72..3f25c64d182 100644 --- a/src/controllers/test.cr +++ b/src/controllers/test.cr @@ -1,17 +1,13 @@ - class Test < Application # Specs available def index - end # Run a spec def create - end # WS watch the output from running specs ws "/output" do |socket| - end end From c9af9e33e9c6b2ae9f37eacb467de18fe1b327b0 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 5 Apr 2019 23:24:31 +1100 Subject: [PATCH 0029/1365] split out the git commands into their own class --- src/controllers/application.cr | 5 --- src/controllers/build.cr | 49 ++++++--------------------- src/git_commands.cr | 62 ++++++++++++++++++++++++++++++++++ 3 files changed, 72 insertions(+), 44 deletions(-) create mode 100644 src/git_commands.cr diff --git a/src/controllers/application.cr b/src/controllers/application.cr index 8a95acea7c8..61b7b4b9794 100644 --- a/src/controllers/application.cr +++ b/src/controllers/application.cr @@ -1,7 +1,2 @@ abstract class Application < ActionController::Base - before_action :set_date_header - - def set_date_header - response.headers["Date"] = HTTP.format_time(Time.now) - end end diff --git a/src/controllers/build.cr b/src/controllers/build.cr index 94f89745db2..2110b6a1c88 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -1,17 +1,9 @@ class Build < Application # list the available files def index - io = IO::Memory.new - result = Process.run( - "git", {"ls-files"}, - input: Process::Redirect::Close, - output: io, - error: Process::Redirect::Close - ) + result = GitCommands.ls - head :internal_server_error if result.exit_status != 0 - - render json: io.to_s.split("\n").select { |file| + render json: result.select { |file| file.ends_with?(".cr") && !file.ends_with?("_spec.cr") && file.starts_with?("drivers/") } end @@ -19,27 +11,9 @@ class Build < Application # grab the list of available versions of file / which are built get "/commits" do driver = params["driver"] - count = params["id"] - - io = IO::Memory.new - result = Process.run( - "git", {"-no-pager", "log", "--format=short", "--no-color", "-n", count, driver}, - input: Process::Redirect::Close, - output: io, - error: Process::Redirect::Close - ) - - head :internal_server_error if result.exit_status != 0 + count = (params["id"] || 10).to_i - commits = io.to_s.split("commit ").reject(&.empty?).map(&.split("\n", 3).map &.strip) - commits.map! do |commit| - { - commit: commit[0], - author: commit[1].split(" ", 2)[1], - message: commit[2], - } - end - render json: commits + render json: GitCommands.commits(driver, count) end # build a drvier, optionally based on the version specified @@ -47,19 +21,16 @@ class Build < Application driver = params["driver"] commit = params["commit"]? || "head" - # https://stackoverflow.com/questions/215718/reset-or-revert-a-specific-file-to-a-specific-revision-using-git - result = Process.run("git", {"checkout", commit, "--", driver}) - head :internal_server_error if result.exit_status != 0 - - # complile the driver - # TODO:: + GitCommands.checkout(driver, commit) do + # complile the driver + # TODO:: + end - # reset the file back to head - Process.run("git", {"checkout", "--", driver}) - head :ok + head :created end # delete a built driver def delete + end end diff --git a/src/git_commands.cr b/src/git_commands.cr new file mode 100644 index 00000000000..371ae81600d --- /dev/null +++ b/src/git_commands.cr @@ -0,0 +1,62 @@ +class GitCommands + class CommandFailure < Exception + def initialize(@error_code = 1) + super + end + + getter error_code : Int32 + end + + def self.ls + io = IO::Memory.new + result = Process.run( + "git", {"ls-files"}, + input: Process::Redirect::Close, + output: io, + error: Process::Redirect::Close + ) + + raise CommandFailure.new(result.exit_status) if result.exit_status != 0 + + io.to_s.split("\n") + end + + def self.commits(file_name, count = 10) + io = IO::Memory.new + + # https://git-scm.com/docs/pretty-formats + # %h: abbreviated commit hash + # %cI: committer date, strict ISO 8601 format + # %an: author name + # %s: subject + result = Process.run( + "git", {"--no-pager", "log", "--format=format:\"%h%n%cI%n%an%n%s%n<--%n%n-->\"", "--no-color", "-n", count, file_name}, + input: Process::Redirect::Close, + output: io, + error: Process::Redirect::Close + ) + + raise CommandFailure.new(result.exit_status) if result.exit_status != 0 + + commits = io.to_s.split("<--\n\n-->").map(&.split("\n").map &.strip) + commits.map do |commit| + { + commit: commit[0], + date: commit[1], + author: commit[2], + subject: commit[3], + } + end + end + + def self.checkout(file, commit == "head") + # https://stackoverflow.com/questions/215718/reset-or-revert-a-specific-file-to-a-specific-revision-using-git + result = Process.run("git", {"checkout", commit, "--", driver}) + raise CommandFailure.new(result.exit_status) if result.exit_status != 0 + + yield file + + # reset the file back to head + Process.run("git", {"checkout", "--", driver}) + end +end From e365d640dc4effe7434e02e3eeb73852c6203ee8 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sat, 6 Apr 2019 13:51:07 +1100 Subject: [PATCH 0030/1365] add specs --- drivers/aca/spec_helper.cr | 6 ++++++ shard.yml | 4 ++++ spec/git_spec.cr | 9 +++++++++ spec/spec_helper.cr | 2 ++ spec/welcome_spec.cr | 25 ++++++------------------- src/controllers/build.cr | 15 ++++++++++++++- src/git_commands.cr | 2 +- 7 files changed, 42 insertions(+), 21 deletions(-) create mode 100644 drivers/aca/spec_helper.cr create mode 100644 spec/git_spec.cr diff --git a/drivers/aca/spec_helper.cr b/drivers/aca/spec_helper.cr new file mode 100644 index 00000000000..2171e18b7af --- /dev/null +++ b/drivers/aca/spec_helper.cr @@ -0,0 +1,6 @@ +module ACA; end +class ACA::SpecHelper < EngineDriver + def implemented_in_driver + "woot!" + end +end diff --git a/shard.yml b/shard.yml index 44aa3d80ecb..a21eae30e57 100644 --- a/shard.yml +++ b/shard.yml @@ -6,6 +6,10 @@ dependencies: github: spider-gazelle/action-controller version: "~> 1.4" + action-controller: + github: aca-labs/engine-driver + branch: master + # https://github.com/jeromegn/kilt # Generic template interface for Crystal kilt: diff --git a/spec/git_spec.cr b/spec/git_spec.cr new file mode 100644 index 00000000000..dcbb0afdbd7 --- /dev/null +++ b/spec/git_spec.cr @@ -0,0 +1,9 @@ +require "./spec_helper" + +describe GitCommands do + it "should list files in the repository" do + files = GitCommands.ls + (files.size > 0).should eq(true) + files.includes?("shard.yml").should eq(true) + end +end diff --git a/spec/spec_helper.cr b/spec/spec_helper.cr index b55ee80b589..af52a6a2e2b 100644 --- a/spec/spec_helper.cr +++ b/spec/spec_helper.cr @@ -6,3 +6,5 @@ require "../src/config" # Helper methods for testing controllers (curl, with_server, context) require "../lib/action-controller/spec/curl_context" + +require "../src/git_commands" diff --git a/spec/welcome_spec.cr b/spec/welcome_spec.cr index 61073ce875f..be3c024b9a9 100644 --- a/spec/welcome_spec.cr +++ b/spec/welcome_spec.cr @@ -1,25 +1,12 @@ require "./spec_helper" -describe Welcome do - # ============== - # Unit Testing - # ============== - it "should generate a date string" do - # instantiate the controller you wish to unit test - welcome = Welcome.new(context("GET", "/")) - - # Test the instance methods of the controller - welcome.set_date_header[0].should contain("GMT") - end - - # ============== - # Test Responses - # ============== +describe Build do with_server do - it "should welcome you" do - result = curl("GET", "/") - result.body.includes?("You're being trampled by Spider-Gazelle!").should eq(true) - result.headers["Date"]?.nil?.should eq(false) + it "should list drivers" do + result = curl("GET", "/build") + drivers = Array(String).from_json(result.body) + (drivers.size > 0).should eq(true) + drivers.includes?("drivers/aca/spec_helper.cr").should eq(true) end end end diff --git a/src/controllers/build.cr b/src/controllers/build.cr index 2110b6a1c88..902ac22ad2d 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -21,6 +21,8 @@ class Build < Application driver = params["driver"] commit = params["commit"]? || "head" + head :not_found unless File.exists?(driver) + GitCommands.checkout(driver, commit) do # complile the driver # TODO:: @@ -31,6 +33,17 @@ class Build < Application # delete a built driver def delete - + driver = params["driver"] + commit = params["commit"]? + + file_path = if commit + "" + else + "" + end + + head :not_found unless File.exists?(file_path) + File.delete file_path + head :ok end end diff --git a/src/git_commands.cr b/src/git_commands.cr index 371ae81600d..ce34f7946a6 100644 --- a/src/git_commands.cr +++ b/src/git_commands.cr @@ -10,7 +10,7 @@ class GitCommands def self.ls io = IO::Memory.new result = Process.run( - "git", {"ls-files"}, + "git", {"--no-pager", "ls-files"}, input: Process::Redirect::Close, output: io, error: Process::Redirect::Close From c5e01ca8fdecbe22744ee246b61d2d744f94eb00 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sat, 6 Apr 2019 13:57:29 +1100 Subject: [PATCH 0031/1365] tests passing --- src/git_commands.cr | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/git_commands.cr b/src/git_commands.cr index ce34f7946a6..fc024808fe0 100644 --- a/src/git_commands.cr +++ b/src/git_commands.cr @@ -1,7 +1,7 @@ class GitCommands class CommandFailure < Exception def initialize(@error_code = 1) - super + super("git exited with code: #{@error_code}") end getter error_code : Int32 @@ -30,7 +30,7 @@ class GitCommands # %an: author name # %s: subject result = Process.run( - "git", {"--no-pager", "log", "--format=format:\"%h%n%cI%n%an%n%s%n<--%n%n-->\"", "--no-color", "-n", count, file_name}, + "git", {"--no-pager", "log", "--format=format:\"%h%n%cI%n%an%n%s%n<--%n%n-->\"", "--no-color", "-n", count.to_s, file_name}, input: Process::Redirect::Close, output: io, error: Process::Redirect::Close @@ -49,14 +49,14 @@ class GitCommands end end - def self.checkout(file, commit == "head") + def self.checkout(file, commit = "head") # https://stackoverflow.com/questions/215718/reset-or-revert-a-specific-file-to-a-specific-revision-using-git - result = Process.run("git", {"checkout", commit, "--", driver}) + result = Process.run("git", {"checkout", commit, "--", file}) raise CommandFailure.new(result.exit_status) if result.exit_status != 0 yield file # reset the file back to head - Process.run("git", {"checkout", "--", driver}) + Process.run("git", {"checkout", "--", file}) end end From e58a8252cebeb35d76dc257692d1dd14e31bc4f5 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sat, 6 Apr 2019 15:52:12 +1100 Subject: [PATCH 0032/1365] restructure application --- shard.yml | 6 +++--- spec/git_spec.cr | 4 ++-- spec/spec_helper.cr | 2 +- src/config.cr | 2 ++ src/controllers/build.cr | 6 +++--- src/engine-drivers.cr | 3 +++ src/engine-drivers/command_failure.cr | 7 +++++++ src/engine-drivers/compiler.cr | 3 +++ src/{ => engine-drivers}/git_commands.cr | 10 +--------- 9 files changed, 25 insertions(+), 18 deletions(-) create mode 100644 src/engine-drivers.cr create mode 100644 src/engine-drivers/command_failure.cr create mode 100644 src/engine-drivers/compiler.cr rename src/{ => engine-drivers}/git_commands.cr (89%) diff --git a/shard.yml b/shard.yml index a21eae30e57..d9e5689110e 100644 --- a/shard.yml +++ b/shard.yml @@ -1,4 +1,4 @@ -name: app +name: engine-drivers version: 1.0.0 dependencies: @@ -6,8 +6,8 @@ dependencies: github: spider-gazelle/action-controller version: "~> 1.4" - action-controller: - github: aca-labs/engine-driver + engine-driver: + github: aca-labs/crystal-engine-driver branch: master # https://github.com/jeromegn/kilt diff --git a/spec/git_spec.cr b/spec/git_spec.cr index dcbb0afdbd7..75cae60c866 100644 --- a/spec/git_spec.cr +++ b/spec/git_spec.cr @@ -1,8 +1,8 @@ require "./spec_helper" -describe GitCommands do +describe EngineDrivers::GitCommands do it "should list files in the repository" do - files = GitCommands.ls + files = EngineDrivers::GitCommands.ls (files.size > 0).should eq(true) files.includes?("shard.yml").should eq(true) end diff --git a/spec/spec_helper.cr b/spec/spec_helper.cr index af52a6a2e2b..be58cd453ce 100644 --- a/spec/spec_helper.cr +++ b/spec/spec_helper.cr @@ -7,4 +7,4 @@ require "../src/config" # Helper methods for testing controllers (curl, with_server, context) require "../lib/action-controller/spec/curl_context" -require "../src/git_commands" +require "../src/engine-drivers" diff --git a/src/config.cr b/src/config.cr index b79bb7e2778..949cb6580e6 100644 --- a/src/config.cr +++ b/src/config.cr @@ -7,6 +7,8 @@ require "./controllers/application" require "./controllers/*" require "./models/*" +require "./engine-drivers" + # Server required after application controllers require "action-controller/server" diff --git a/src/controllers/build.cr b/src/controllers/build.cr index 902ac22ad2d..e5b3f60ccf6 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -1,7 +1,7 @@ class Build < Application # list the available files def index - result = GitCommands.ls + result = EngineDrivers::GitCommands.ls render json: result.select { |file| file.ends_with?(".cr") && !file.ends_with?("_spec.cr") && file.starts_with?("drivers/") @@ -13,7 +13,7 @@ class Build < Application driver = params["driver"] count = (params["id"] || 10).to_i - render json: GitCommands.commits(driver, count) + render json: EngineDrivers::GitCommands.commits(driver, count) end # build a drvier, optionally based on the version specified @@ -23,7 +23,7 @@ class Build < Application head :not_found unless File.exists?(driver) - GitCommands.checkout(driver, commit) do + EngineDrivers::GitCommands.checkout(driver, commit) do # complile the driver # TODO:: end diff --git a/src/engine-drivers.cr b/src/engine-drivers.cr new file mode 100644 index 00000000000..09c2ed3f729 --- /dev/null +++ b/src/engine-drivers.cr @@ -0,0 +1,3 @@ +module EngineDrivers; end + +require "./engine-drivers/*" diff --git a/src/engine-drivers/command_failure.cr b/src/engine-drivers/command_failure.cr new file mode 100644 index 00000000000..cd672327005 --- /dev/null +++ b/src/engine-drivers/command_failure.cr @@ -0,0 +1,7 @@ +class EngineDrivers::CommandFailure < Exception + def initialize(@error_code = 1) + super("git exited with code: #{@error_code}") + end + + getter error_code : Int32 +end diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr new file mode 100644 index 00000000000..5c046ed49f1 --- /dev/null +++ b/src/engine-drivers/compiler.cr @@ -0,0 +1,3 @@ +class EngineDrivers::Compiler + +end diff --git a/src/git_commands.cr b/src/engine-drivers/git_commands.cr similarity index 89% rename from src/git_commands.cr rename to src/engine-drivers/git_commands.cr index fc024808fe0..f786f2ce2eb 100644 --- a/src/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -1,12 +1,4 @@ -class GitCommands - class CommandFailure < Exception - def initialize(@error_code = 1) - super("git exited with code: #{@error_code}") - end - - getter error_code : Int32 - end - +class EngineDrivers::GitCommands def self.ls io = IO::Memory.new result = Process.run( From 4671faae09cb168b4dce0e702b45772888232e8a Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sat, 6 Apr 2019 22:44:07 +1100 Subject: [PATCH 0033/1365] inital work on driver compiler --- spec/{welcome_spec.cr => build_spec.cr} | 0 spec/compiler_spec.cr | 17 +++++++ src/build.cr | 4 ++ src/controllers/build.cr | 8 ++-- src/engine-drivers/compiler.cr | 64 +++++++++++++++++++++++++ src/engine-drivers/git_commands.cr | 22 +++++---- 6 files changed, 101 insertions(+), 14 deletions(-) rename spec/{welcome_spec.cr => build_spec.cr} (100%) create mode 100644 spec/compiler_spec.cr create mode 100644 src/build.cr diff --git a/spec/welcome_spec.cr b/spec/build_spec.cr similarity index 100% rename from spec/welcome_spec.cr rename to spec/build_spec.cr diff --git a/spec/compiler_spec.cr b/spec/compiler_spec.cr new file mode 100644 index 00000000000..a9c0fde4cf4 --- /dev/null +++ b/spec/compiler_spec.cr @@ -0,0 +1,17 @@ +require "./spec_helper" + +describe EngineDrivers::Compiler do + it "should compile a driver" do + result = EngineDrivers::Compiler.build_driver("drivers/aca/spec_helper.cr") + result[:exit_status].should eq(0) + File.exists?(result[:executable]).should eq(true) + + io = IO::Memory.new + Process.run(result[:executable], {"-h"}, + input: Process::Redirect::Close, + output: io, + error: io + ) + io.to_s.starts_with?("Usage:").should eq(true) + end +end diff --git a/src/build.cr b/src/build.cr new file mode 100644 index 00000000000..54120556a76 --- /dev/null +++ b/src/build.cr @@ -0,0 +1,4 @@ +require "engine-driver" + +# Dynamically require the desired driver +{{ ("require \"../" + env("COMPILE_DRIVER") + "\"").id }} diff --git a/src/controllers/build.cr b/src/controllers/build.cr index e5b3f60ccf6..f949a177694 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -37,10 +37,10 @@ class Build < Application commit = params["commit"]? file_path = if commit - "" - else - "" - end + "" + else + "" + end head :not_found unless File.exists?(file_path) File.delete file_path diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index 5c046ed49f1..143e6fafe98 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -1,3 +1,67 @@ class EngineDrivers::Compiler + COMPILE_MUTEX = Mutex.new + START_DIR = Dir.current + BIN_DIR = "#{START_DIR}/bin/drivers" + @@drivers_dir = Dir.current + @@busy = false + @@message = "idle" + + def self.set_drivers_dir(path) + @@drivers_dir = path + end + + # TODO:: if driver in external git repo + # Make sure that we change the directory for process run + # Repositories should shard update when they are cloned initially or updated + + # repository is required to have a local `build.cr` file to support compilation + def self.build_driver(source_file, commit = "head", repository = @@drivers_dir) + Dir.mkdir_p BIN_DIR + + io = IO::Memory.new + exec_name = source_file.gsub(/\/|\./, "_") + exe_output = "" + result = nil + + COMPILE_MUTEX.synchronize do + begin + @@busy = true + + # Might be located in a user definied repository + Dir.cd(repository) + + # Make sure we have an actual version hash of the file + if commit == "head" + commit = EngineDrivers::GitCommands.commits(source_file, 1)[0][:commit] + end + @@message = "compiling #{source_file} @ #{commit}" + + exe_output = "#{BIN_DIR}/#{commit}_#{exec_name}" + EngineDrivers::GitCommands.checkout(source_file, commit) do + result = Process.run( + "crystal", + {"build", "-o", exe_output, "./src/build.cr"}, + {"COMPILE_DRIVER" => source_file}, + input: Process::Redirect::Close, + output: io, + error: io + ) + end + ensure + @@busy = false + @@message = "idle" + Dir.cd(START_DIR) + end + end + + { + exit_status: result.try &.exit_status, + output: io.to_s, + driver: exec_name, + version: commit, + executable: exe_output, + repository: repository, + } + end end diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index f786f2ce2eb..074d280305e 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -22,7 +22,7 @@ class EngineDrivers::GitCommands # %an: author name # %s: subject result = Process.run( - "git", {"--no-pager", "log", "--format=format:\"%h%n%cI%n%an%n%s%n<--%n%n-->\"", "--no-color", "-n", count.to_s, file_name}, + "git", {"--no-pager", "log", "--format=format:%h%n%cI%n%an%n%s%n<--%n%n-->", "--no-color", "-n", count.to_s, file_name}, input: Process::Redirect::Close, output: io, error: Process::Redirect::Close @@ -30,15 +30,17 @@ class EngineDrivers::GitCommands raise CommandFailure.new(result.exit_status) if result.exit_status != 0 - commits = io.to_s.split("<--\n\n-->").map(&.split("\n").map &.strip) - commits.map do |commit| - { - commit: commit[0], - date: commit[1], - author: commit[2], - subject: commit[3], - } - end + io.to_s.strip.split("<--\n\n-->") + .reject(&.empty?) + .map(&.strip.split("\n").map &.strip) + .map do |commit| + { + commit: commit[0], + date: commit[1], + author: commit[2], + subject: commit[3], + } + end end def self.checkout(file, commit = "head") From 86f8378f2115a72a81f80c191a987b54ddf686ac Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Thu, 11 Apr 2019 15:32:56 +1000 Subject: [PATCH 0034/1365] allow concurrent build operations to occur safely --- drivers/aca/spec_helper.cr | 1 + shard.yml | 4 ++ src/engine-drivers/compiler.cr | 73 +++++++++++++++++++----- src/engine-drivers/git_commands.cr | 92 +++++++++++++++++++++++------- 4 files changed, 135 insertions(+), 35 deletions(-) diff --git a/drivers/aca/spec_helper.cr b/drivers/aca/spec_helper.cr index 2171e18b7af..0d3ffdc210e 100644 --- a/drivers/aca/spec_helper.cr +++ b/drivers/aca/spec_helper.cr @@ -1,4 +1,5 @@ module ACA; end + class ACA::SpecHelper < EngineDriver def implemented_in_driver "woot!" diff --git a/shard.yml b/shard.yml index d9e5689110e..0ed1edc3e20 100644 --- a/shard.yml +++ b/shard.yml @@ -10,6 +10,10 @@ dependencies: github: aca-labs/crystal-engine-driver branch: master + exec_from: + github: aca-labs/exec_from + version: "~> 1.0" + # https://github.com/jeromegn/kilt # Generic template interface for Crystal kilt: diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index 143e6fafe98..e15667d6461 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -1,62 +1,64 @@ +# TODO:: create a shard that compiles on install (like ameba) +# should accept a DIR and a command as a param, it switches dir and executes + class EngineDrivers::Compiler - COMPILE_MUTEX = Mutex.new - START_DIR = Dir.current - BIN_DIR = "#{START_DIR}/bin/drivers" + BIN_DIR = "#{Dir.current}/bin/drivers" @@drivers_dir = Dir.current @@busy = false @@message = "idle" - def self.set_drivers_dir(path) + def self.drivers_dir=(path) @@drivers_dir = path end + def self.drivers_dir + @@drivers_dir + end + # TODO:: if driver in external git repo # Make sure that we change the directory for process run # Repositories should shard update when they are cloned initially or updated # repository is required to have a local `build.cr` file to support compilation def self.build_driver(source_file, commit = "head", repository = @@drivers_dir) + # Ensure the bin directory exists Dir.mkdir_p BIN_DIR io = IO::Memory.new exec_name = source_file.gsub(/\/|\./, "_") exe_output = "" - result = nil + result = 1 - COMPILE_MUTEX.synchronize do + get_lock(repository).synchronize do begin @@busy = true - # Might be located in a user definied repository - Dir.cd(repository) - # Make sure we have an actual version hash of the file if commit == "head" - commit = EngineDrivers::GitCommands.commits(source_file, 1)[0][:commit] + commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] end @@message = "compiling #{source_file} @ #{commit}" exe_output = "#{BIN_DIR}/#{commit}_#{exec_name}" EngineDrivers::GitCommands.checkout(source_file, commit) do result = Process.run( - "crystal", - {"build", "-o", exe_output, "./src/build.cr"}, + "./bin/exec_from", + {repository, "crystal", "build", "-o", exe_output, "./src/build.cr"}, {"COMPILE_DRIVER" => source_file}, input: Process::Redirect::Close, output: io, error: io - ) + ).exit_status end ensure @@busy = false @@message = "idle" - Dir.cd(START_DIR) end end { - exit_status: result.try &.exit_status, + exit_status: result, output: io.to_s, driver: exec_name, version: commit, @@ -64,4 +66,45 @@ class EngineDrivers::Compiler repository: repository, } end + + # Runs shards install to ensure driver builds will succeed + def self.install_shards(repository = @@drivers_dir) + io = IO::Memory.new + result = 1 + + # NOTE:: supports recursive locking so can perform multiple repository + # operations in a single lock. i.e. clone + shards install + get_lock(repository).synchronize do + begin + @@busy = true + @@message = "installing shards" + + result = Process.run( + "./bin/exec_from", + {repository, "shards", "--no-color", "install"}, + input: Process::Redirect::Close, + output: io, + error: io + ).exit_status + ensure + @@busy = false + @@message = "idle" + end + end + + { + exit_status: result, + output: io.to_s, + } + end + + def self.clone(repository_uri, folder_name, username = nil, password = nil) + io = IO::Memory.new + result = 1 + end + + # Proxy the get lock requests to git commands + def self.get_lock(*args) + EngineDrivers::GitCommands.get_lock(*args) + end end diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index 074d280305e..1627ac73ad2 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -1,19 +1,30 @@ class EngineDrivers::GitCommands - def self.ls + @@lock_manager = Mutex.new + + # Ensure only a single git operation is occuring at once to avoid corruption + @@repository_lock = {} of String => Mutex + + # Ensures only a single operation on an individual file occurs at once + # This enables multi-version compilation to occur without clashing + @@file_lock = {} of String => Mutex + + def self.ls(repository = EngineDrivers::Compiler.drivers_dir) io = IO::Memory.new - result = Process.run( - "git", {"--no-pager", "ls-files"}, - input: Process::Redirect::Close, - output: io, - error: Process::Redirect::Close - ) + result = get_lock(repository).synchronize do + Process.run( + "./bin/exec_from", {repository, "git", "--no-pager", "ls-files"}, + input: Process::Redirect::Close, + output: io, + error: Process::Redirect::Close + ) + end raise CommandFailure.new(result.exit_status) if result.exit_status != 0 io.to_s.split("\n") end - def self.commits(file_name, count = 10) + def self.commits(file_name, count = 10, repository = EngineDrivers::Compiler.drivers_dir) io = IO::Memory.new # https://git-scm.com/docs/pretty-formats @@ -21,12 +32,14 @@ class EngineDrivers::GitCommands # %cI: committer date, strict ISO 8601 format # %an: author name # %s: subject - result = Process.run( - "git", {"--no-pager", "log", "--format=format:%h%n%cI%n%an%n%s%n<--%n%n-->", "--no-color", "-n", count.to_s, file_name}, - input: Process::Redirect::Close, - output: io, - error: Process::Redirect::Close - ) + result = get_lock(repository).synchronize do + Process.run( + "./bin/exec_from", {repository, "git", "--no-pager", "log", "--format=format:%h%n%cI%n%an%n%s%n<--%n%n-->", "--no-color", "-n", count.to_s, file_name}, + input: Process::Redirect::Close, + output: io, + error: Process::Redirect::Close + ) + end raise CommandFailure.new(result.exit_status) if result.exit_status != 0 @@ -43,14 +56,53 @@ class EngineDrivers::GitCommands end end - def self.checkout(file, commit = "head") + def self.checkout(file, commit = "head", repository = EngineDrivers::Compiler.drivers_dir) # https://stackoverflow.com/questions/215718/reset-or-revert-a-specific-file-to-a-specific-revision-using-git - result = Process.run("git", {"checkout", commit, "--", file}) - raise CommandFailure.new(result.exit_status) if result.exit_status != 0 + repo_lock = get_lock(repository) - yield file + get_lock(repository, file).synchronize do + result = repo_lock.synchronize do + Process.run( + "./bin/exec_from", + {repository, "git", "checkout", commit, "--", file} + ) + end + raise CommandFailure.new(result.exit_status) if result.exit_status != 0 + + yield file - # reset the file back to head - Process.run("git", {"checkout", "--", file}) + # reset the file back to head + repo_lock.synchronize do + Process.run( + "./bin/exec_from", + {repository, "git", "checkout", "--", file} + ) + end + end + end + + def self.get_lock(repository) : Mutex + @@lock_manager.synchronize do + if lock = @@repository_lock[repository]? + lock + else + lock = Mutex.new + @@repository_lock[repository] = lock + lock + end + end + end + + def self.get_lock(repository, file) : Mutex + lock_key = "#{repository}`#{file}" + @@lock_manager.synchronize do + if lock = @@file_lock[lock_key]? + lock + else + lock = Mutex.new + @@file_lock[lock_key] = lock + lock + end + end end end From 1492cc0726251a94ec638f745c761d64354adbe5 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 12 Apr 2019 17:59:52 +1000 Subject: [PATCH 0035/1365] add repo cloning support add documentation --- docs/directory_structure.md | 20 +++++++++ spec/compiler_spec.cr | 2 + src/engine-drivers/compiler.cr | 66 +++++++++++------------------- src/engine-drivers/git_commands.cr | 35 ++++++++++++++++ 4 files changed, 80 insertions(+), 43 deletions(-) create mode 100644 docs/directory_structure.md diff --git a/docs/directory_structure.md b/docs/directory_structure.md new file mode 100644 index 00000000000..4e901456566 --- /dev/null +++ b/docs/directory_structure.md @@ -0,0 +1,20 @@ +# Directory Structures + +Engine core / drivers makes the assumption that the working directory one level +up from the scratch directory. An example deployment structure: + +* Working dir: `/home/engine/core` +* Executable: `/home/engine/core/bin/core` +* Driver repositories: `/home/engine/repositories` + * ACA Drivers: `/home/engine/repositories/aca-engine-drivers` +* Driver executables: `/home/engine/core/bin/drivers` + * Samsung driver: `/home/engine/core/bin/drivers/353b53_samsung_display_md_series_cr` + +However when developing the structure will look more like: + +* Working dir: `/home/steve/aca-engine-drivers` +* Driver repository: `/home/steve/aca-engine-drivers` +* Driver executables: `/home/steve/aca-engine-drivers/bin/drivers` + * Samsung driver: `/home/engine/core/bin/drivers/353b53_samsung_display_md_series_cr` + +The primary difference between production and development is engine core, in production, will be cloning repositories and installing shards as required. diff --git a/spec/compiler_spec.cr b/spec/compiler_spec.cr index a9c0fde4cf4..736c35359d2 100644 --- a/spec/compiler_spec.cr +++ b/spec/compiler_spec.cr @@ -2,10 +2,12 @@ require "./spec_helper" describe EngineDrivers::Compiler do it "should compile a driver" do + # Test the executable is created result = EngineDrivers::Compiler.build_driver("drivers/aca/spec_helper.cr") result[:exit_status].should eq(0) File.exists?(result[:executable]).should eq(true) + # Check it functions as expected io = IO::Memory.new Process.run(result[:executable], {"-h"}, input: Process::Redirect::Close, diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index e15667d6461..57d236da53a 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -5,8 +5,6 @@ class EngineDrivers::Compiler BIN_DIR = "#{Dir.current}/bin/drivers" @@drivers_dir = Dir.current - @@busy = false - @@message = "idle" def self.drivers_dir=(path) @@drivers_dir = path @@ -31,29 +29,24 @@ class EngineDrivers::Compiler result = 1 get_lock(repository).synchronize do - begin - @@busy = true + # Make sure we have an actual version hash of the file + if commit == "head" + commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] + end - # Make sure we have an actual version hash of the file - if commit == "head" - commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] - end - @@message = "compiling #{source_file} @ #{commit}" + # Want to expose some kind of status signalling + # @@message = "compiling #{source_file} @ #{commit}" - exe_output = "#{BIN_DIR}/#{commit}_#{exec_name}" - EngineDrivers::GitCommands.checkout(source_file, commit) do - result = Process.run( - "./bin/exec_from", - {repository, "crystal", "build", "-o", exe_output, "./src/build.cr"}, - {"COMPILE_DRIVER" => source_file}, - input: Process::Redirect::Close, - output: io, - error: io - ).exit_status - end - ensure - @@busy = false - @@message = "idle" + exe_output = "#{BIN_DIR}/#{commit}_#{exec_name}" + EngineDrivers::GitCommands.checkout(source_file, commit) do + result = Process.run( + "./bin/exec_from", + {repository, "crystal", "build", "-o", exe_output, "./src/build.cr"}, + {"COMPILE_DRIVER" => source_file}, + input: Process::Redirect::Close, + output: io, + error: io + ).exit_status end end @@ -75,21 +68,13 @@ class EngineDrivers::Compiler # NOTE:: supports recursive locking so can perform multiple repository # operations in a single lock. i.e. clone + shards install get_lock(repository).synchronize do - begin - @@busy = true - @@message = "installing shards" - - result = Process.run( - "./bin/exec_from", - {repository, "shards", "--no-color", "install"}, - input: Process::Redirect::Close, - output: io, - error: io - ).exit_status - ensure - @@busy = false - @@message = "idle" - end + result = Process.run( + "./bin/exec_from", + {repository, "shards", "--no-color", "install"}, + input: Process::Redirect::Close, + output: io, + error: io + ).exit_status end { @@ -98,11 +83,6 @@ class EngineDrivers::Compiler } end - def self.clone(repository_uri, folder_name, username = nil, password = nil) - io = IO::Memory.new - result = 1 - end - # Proxy the get lock requests to git commands def self.get_lock(*args) EngineDrivers::GitCommands.get_lock(*args) diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index 1627ac73ad2..58daaf56329 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -81,6 +81,41 @@ class EngineDrivers::GitCommands end end + def self.clone(repository, repository_uri, username = nil, password = nil) + io = IO::Memory.new + result = 1 + + if username && password + # remove the https:// + uri = repository_uri[8..-1] + # rebuild URL + repository_uri = "https://#{username}:#{password}@#{uri}" + end + + # Ensure the repository directory exists (it should) + working_dir = "../repositories" + Dir.mkdir_p working_dir + + get_lock(repository).synchronize do + # Ensure the repository being cloned does not exist + # TODO:: Process run rm -rf folder + + result = Process.run( + "./bin/exec_from", + {working_dir, "git", "clone", repository_uri, repository}, + {"GIT_TERMINAL_PROMPT" => "0"}, + input: Process::Redirect::Close, + output: io, + error: io + ).exit_status + end + + { + exit_status: result, + output: io.to_s, + } + end + def self.get_lock(repository) : Mutex @@lock_manager.synchronize do if lock = @@repository_lock[repository]? From 29dfeb19cf318fa214fa4859d36ec7b02aa30fa6 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 15 Apr 2019 19:02:37 +1000 Subject: [PATCH 0036/1365] finalise git clone method also add revisions listing spec --- spec/git_spec.cr | 6 ++++++ src/engine-drivers/git_commands.cr | 15 ++++++++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/spec/git_spec.cr b/spec/git_spec.cr index 75cae60c866..a32ce052a8d 100644 --- a/spec/git_spec.cr +++ b/spec/git_spec.cr @@ -6,4 +6,10 @@ describe EngineDrivers::GitCommands do (files.size > 0).should eq(true) files.includes?("shard.yml").should eq(true) end + + it "should list the revisions to a file in a repository" do + changes = EngineDrivers::GitCommands.commits("shard.yml") + (changes.size > 0).should eq(true) + changes.map { |commit| commit[:subject] }.includes?("restructure application").should eq(true) + end end diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index 58daaf56329..b351fa308b5 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -81,7 +81,12 @@ class EngineDrivers::GitCommands end end - def self.clone(repository, repository_uri, username = nil, password = nil) + def self.clone(repository, repository_uri, username = nil, password = nil, working_dir = "../repositories") + # Ensure we are rm -rf a sane folder - don't want to delete root for example + unless repository.starts_with?(working_dir) && working_dir.size > 1 && (repository.size - working_dir.size) > 1 + raise "invalid folder structure. Working directory: '#{working_dir}', repository: '#{repository}'" + end + io = IO::Memory.new result = 1 @@ -93,12 +98,16 @@ class EngineDrivers::GitCommands end # Ensure the repository directory exists (it should) - working_dir = "../repositories" Dir.mkdir_p working_dir get_lock(repository).synchronize do # Ensure the repository being cloned does not exist - # TODO:: Process run rm -rf folder + Process.run("./bin/exec_from", + {working_dir, "rm", "-rf", repository}, + input: Process::Redirect::Close, + output: Process::Redirect::Close, + error: Process::Redirect::Close + ) result = Process.run( "./bin/exec_from", From e95303fbe0896de1a7c7b15b8c06b5e5d6c7e8bf Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 15 Apr 2019 19:37:29 +1000 Subject: [PATCH 0037/1365] add spec for file checkout --- spec/git_spec.cr | 39 ++++++++++++++++++++++++++++++ src/engine-drivers/git_commands.cr | 34 ++++++++++++++------------ 2 files changed, 57 insertions(+), 16 deletions(-) diff --git a/spec/git_spec.cr b/spec/git_spec.cr index a32ce052a8d..5df053e5487 100644 --- a/spec/git_spec.cr +++ b/spec/git_spec.cr @@ -1,4 +1,5 @@ require "./spec_helper" +require "yaml" describe EngineDrivers::GitCommands do it "should list files in the repository" do @@ -12,4 +13,42 @@ describe EngineDrivers::GitCommands do (changes.size > 0).should eq(true) changes.map { |commit| commit[:subject] }.includes?("restructure application").should eq(true) end + + it "should checkout a particular revision of a file and then restore it" do + # Check the current file + yaml = File.open("shard.yml") { |file| YAML.parse(file) } + name = yaml["name"].to_s + (name == "engine-drivers").should eq(true) + + # Process a particular commit + EngineDrivers::GitCommands.checkout("shard.yml", "18f149d") do + yaml = File.open("shard.yml") { |file| YAML.parse(file) } + (yaml["name"].to_s == "app").should eq(true) + end + + # File should have reverted + yaml = File.open("shard.yml") { |file| YAML.parse(file) } + (yaml["name"].to_s).should eq(name) + end + + it "should checkout a file and then restore it on error" do + # Check the current file + yaml = File.open("shard.yml") { |file| YAML.parse(file) } + name = yaml["name"].to_s + (name == "engine-drivers").should eq(true) + + # Process a particular commit + expect_raises(Exception, "something went wrong") do + EngineDrivers::GitCommands.checkout("shard.yml", "18f149d") do + yaml = File.open("shard.yml") { |file| YAML.parse(file) } + (yaml["name"].to_s == "app").should eq(true) + + raise "something went wrong" + end + end + + # File should have reverted + yaml = File.open("shard.yml") { |file| YAML.parse(file) } + (yaml["name"].to_s).should eq(name) + end end diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index b351fa308b5..aeefbabd996 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -61,22 +61,24 @@ class EngineDrivers::GitCommands repo_lock = get_lock(repository) get_lock(repository, file).synchronize do - result = repo_lock.synchronize do - Process.run( - "./bin/exec_from", - {repository, "git", "checkout", commit, "--", file} - ) - end - raise CommandFailure.new(result.exit_status) if result.exit_status != 0 - - yield file - - # reset the file back to head - repo_lock.synchronize do - Process.run( - "./bin/exec_from", - {repository, "git", "checkout", "--", file} - ) + begin + result = repo_lock.synchronize do + Process.run( + "./bin/exec_from", + {repository, "git", "checkout", commit, "--", file} + ) + end + raise CommandFailure.new(result.exit_status) if result.exit_status != 0 + + yield file + ensure + # reset the file back to head + repo_lock.synchronize do + Process.run( + "./bin/exec_from", + {repository, "git", "checkout", "HEAD", "--", file} + ) + end end end end From a0b5ba8d0b6b146ee50eff64d900375bb3be4412 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 8 May 2019 13:14:32 +1000 Subject: [PATCH 0038/1365] improve locking for global operations allows multiple file level repository operations to occur in parallel, however allows for repository level operations in complete isolation. --- src/engine-drivers/compiler.cr | 17 +++-- src/engine-drivers/git_commands.cr | 82 +++++++++++++++++------ src/engine-drivers/readers_writer_lock.cr | 45 +++++++++++++ 3 files changed, 116 insertions(+), 28 deletions(-) create mode 100644 src/engine-drivers/readers_writer_lock.cr diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index 57d236da53a..b19ee8d04b7 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -1,6 +1,3 @@ -# TODO:: create a shard that compiles on install (like ameba) -# should accept a DIR and a command as a param, it switches dir and executes - class EngineDrivers::Compiler BIN_DIR = "#{Dir.current}/bin/drivers" @@ -14,7 +11,7 @@ class EngineDrivers::Compiler @@drivers_dir end - # TODO:: if driver in external git repo + # if driver in external git repo # Make sure that we change the directory for process run # Repositories should shard update when they are cloned initially or updated @@ -28,7 +25,7 @@ class EngineDrivers::Compiler exe_output = "" result = 1 - get_lock(repository).synchronize do + EngineDrivers::GitCommands.file_lock(repository, source_file) do # Make sure we have an actual version hash of the file if commit == "head" commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] @@ -67,7 +64,7 @@ class EngineDrivers::Compiler # NOTE:: supports recursive locking so can perform multiple repository # operations in a single lock. i.e. clone + shards install - get_lock(repository).synchronize do + EngineDrivers::GitCommands.repo_lock(repository).write do result = Process.run( "./bin/exec_from", {repository, "shards", "--no-color", "install"}, @@ -83,8 +80,10 @@ class EngineDrivers::Compiler } end - # Proxy the get lock requests to git commands - def self.get_lock(*args) - EngineDrivers::GitCommands.get_lock(*args) + def self.clone_and_install(repository, repository_uri, username = nil, password = nil, working_dir = "../repositories") + # TODO:: + # Repo write lock + # clone the repository + # shards install end end diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index aeefbabd996..fec1888055e 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -1,16 +1,21 @@ class EngineDrivers::GitCommands + # Will really only be an issue once threads come along @@lock_manager = Mutex.new + # Allow multiple file level operations to occur in parrallel + # File level operations are readers, repo level are writers + @@repository_lock = {} of String => ReadersWriterLock + # Ensure only a single git operation is occuring at once to avoid corruption - @@repository_lock = {} of String => Mutex + @@operation_lock = {} of String => Mutex # Ensures only a single operation on an individual file occurs at once # This enables multi-version compilation to occur without clashing - @@file_lock = {} of String => Mutex + @@file_lock = {} of String => Hash(String, Mutex) def self.ls(repository = EngineDrivers::Compiler.drivers_dir) io = IO::Memory.new - result = get_lock(repository).synchronize do + result = basic_operation(repository) do Process.run( "./bin/exec_from", {repository, "git", "--no-pager", "ls-files"}, input: Process::Redirect::Close, @@ -32,7 +37,7 @@ class EngineDrivers::GitCommands # %cI: committer date, strict ISO 8601 format # %an: author name # %s: subject - result = get_lock(repository).synchronize do + result = file_operation(repository, file_name) do Process.run( "./bin/exec_from", {repository, "git", "--no-pager", "log", "--format=format:%h%n%cI%n%an%n%s%n<--%n%n-->", "--no-color", "-n", count.to_s, file_name}, input: Process::Redirect::Close, @@ -58,11 +63,11 @@ class EngineDrivers::GitCommands def self.checkout(file, commit = "head", repository = EngineDrivers::Compiler.drivers_dir) # https://stackoverflow.com/questions/215718/reset-or-revert-a-specific-file-to-a-specific-revision-using-git - repo_lock = get_lock(repository) + op_lock = operation_lock(repository) - get_lock(repository, file).synchronize do + file_lock(repository, file) do begin - result = repo_lock.synchronize do + result = op_lock.synchronize do Process.run( "./bin/exec_from", {repository, "git", "checkout", commit, "--", file} @@ -73,7 +78,7 @@ class EngineDrivers::GitCommands yield file ensure # reset the file back to head - repo_lock.synchronize do + op_lock.synchronize do Process.run( "./bin/exec_from", {repository, "git", "checkout", "HEAD", "--", file} @@ -102,7 +107,9 @@ class EngineDrivers::GitCommands # Ensure the repository directory exists (it should) Dir.mkdir_p working_dir - get_lock(repository).synchronize do + # The call to write here ensures that no other operations are occuring on + # the repository at this time. + repo_lock(repository).write do # Ensure the repository being cloned does not exist Process.run("./bin/exec_from", {working_dir, "rm", "-rf", repository}, @@ -127,27 +134,64 @@ class EngineDrivers::GitCommands } end - def self.get_lock(repository) : Mutex + def self.basic_operation(repository) + repo_lock(repository).read do + operation_lock(repository).synchronize { yield } + end + end + + def self.file_operation(repository, file) + # This is the order of locking that should occur when performing an operation + # * Read access to repository (not a global change or exclusive access) + # * File lock ensures exclusive access to this file + # * Operation lock ensures only a single git command is executing at a time + # + # The `checkout` function is an example of performing an operation on a file + # that requires multiple git operations + repo_lock(repository).read do + file_lock(repository, file).synchronize do + operation_lock(repository).synchronize { yield } + end + end + end + + def self.file_lock(repository, file) + repo_lock(repository).read do + file_lock(repository, file).synchronize do + yield + end + end + end + + def self.file_lock(repository, file) : Mutex @@lock_manager.synchronize do - if lock = @@repository_lock[repository]? + locks = @@file_lock[repository]? + @@file_lock[repository] = locks = Hash(String, Mutex).new unless locks + + if lock = locks[file]? lock else - lock = Mutex.new - @@repository_lock[repository] = lock - lock + locks[file] = Mutex.new end end end - def self.get_lock(repository, file) : Mutex - lock_key = "#{repository}`#{file}" + def self.repo_lock(repository) : ReadersWriterLock @@lock_manager.synchronize do - if lock = @@file_lock[lock_key]? + if lock = @@repository_lock[repository]? lock else - lock = Mutex.new - @@file_lock[lock_key] = lock + @@repository_lock[repository] = ReadersWriterLock.new + end + end + end + + def self.operation_lock(repository) : Mutex + @@lock_manager.synchronize do + if lock = @@operation_lock[repository]? lock + else + @@operation_lock[repository] = Mutex.new end end end diff --git a/src/engine-drivers/readers_writer_lock.cr b/src/engine-drivers/readers_writer_lock.cr new file mode 100644 index 00000000000..744cba82ce5 --- /dev/null +++ b/src/engine-drivers/readers_writer_lock.cr @@ -0,0 +1,45 @@ +# Allows multiple readers and only a single writer +class EngineDrivers::ReadersWriterLock + def initialize + @readers = 0 + @reader_lock = Mutex.new + @writer_lock = Mutex.new + end + + # Read locks + def read + @writer_lock.synchronize do + @reader_lock.synchronize { @readers += 1 } + end + + yield + ensure + @reader_lock.synchronize { @readers -= 1 } + end + + def synchronize + @writer_lock.synchronize do + @reader_lock.synchronize { @readers += 1 } + end + + yield + ensure + @reader_lock.synchronize { @readers -= 1 } + end + + # Write lock + def write + @writer_lock.synchronize do + write_ready = false + loop do + @reader_lock.synchronize { write_ready = @readers == 0 } + break if write_ready + + # Wait a short amount of time + Fiber.yield + end + + yield + end + end +end From fd1ba37a2d158d3825ddf523e775ee3c7b0cfa2f Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 8 May 2019 13:26:26 +1000 Subject: [PATCH 0039/1365] add spec for readers writer lock --- spec/readers_writer_spec.cr | 20 ++++++++++++++++++++ src/engine-drivers/readers_writer_lock.cr | 14 +++++++------- 2 files changed, 27 insertions(+), 7 deletions(-) create mode 100644 spec/readers_writer_spec.cr diff --git a/spec/readers_writer_spec.cr b/spec/readers_writer_spec.cr new file mode 100644 index 00000000000..a3428031118 --- /dev/null +++ b/spec/readers_writer_spec.cr @@ -0,0 +1,20 @@ +require "./spec_helper" + +describe EngineDrivers::ReadersWriterLock do + it "should isolate writes from reads" do + lock = EngineDrivers::ReadersWriterLock.new + + spawn do + lock.read { sleep 1 } + end + + spawn do + lock.read { sleep 1 } + end + + Fiber.yield + + lock.readers.should eq(2) + lock.write { lock.readers.should eq(0) } + end +end diff --git a/src/engine-drivers/readers_writer_lock.cr b/src/engine-drivers/readers_writer_lock.cr index 744cba82ce5..0b6d53ba6e5 100644 --- a/src/engine-drivers/readers_writer_lock.cr +++ b/src/engine-drivers/readers_writer_lock.cr @@ -6,6 +6,10 @@ class EngineDrivers::ReadersWriterLock @writer_lock = Mutex.new end + def readers + @reader_lock.synchronize { @readers } + end + # Read locks def read @writer_lock.synchronize do @@ -17,17 +21,13 @@ class EngineDrivers::ReadersWriterLock @reader_lock.synchronize { @readers -= 1 } end + # Write lock def synchronize - @writer_lock.synchronize do - @reader_lock.synchronize { @readers += 1 } + write do + yield end - - yield - ensure - @reader_lock.synchronize { @readers -= 1 } end - # Write lock def write @writer_lock.synchronize do write_ready = false From f81b697834b465e8457fbc6b15653b69d91f79b1 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 8 May 2019 14:27:15 +1000 Subject: [PATCH 0040/1365] update reader writer spec ensures readers are queued behind the writer --- spec/readers_writer_spec.cr | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/spec/readers_writer_spec.cr b/spec/readers_writer_spec.cr index a3428031118..cc0c570e99d 100644 --- a/spec/readers_writer_spec.cr +++ b/spec/readers_writer_spec.cr @@ -16,5 +16,12 @@ describe EngineDrivers::ReadersWriterLock do lock.readers.should eq(2) lock.write { lock.readers.should eq(0) } + spawn do + lock.read { sleep 1 } + end + + Fiber.yield + + lock.readers.should eq(1) end end From 8cd252f4d9fd9a00d9baf0e9479679b063fee12a Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 22 May 2019 23:59:09 +1000 Subject: [PATCH 0041/1365] use readers writer shard --- shard.yml | 3 ++ spec/readers_writer_spec.cr | 27 -------------- src/engine-drivers/git_commands.cr | 8 ++-- src/engine-drivers/readers_writer_lock.cr | 45 ----------------------- 4 files changed, 8 insertions(+), 75 deletions(-) delete mode 100644 spec/readers_writer_spec.cr delete mode 100644 src/engine-drivers/readers_writer_lock.cr diff --git a/shard.yml b/shard.yml index 0ed1edc3e20..001430cc81d 100644 --- a/shard.yml +++ b/shard.yml @@ -14,6 +14,9 @@ dependencies: github: aca-labs/exec_from version: "~> 1.0" + rwlock: + github: spider-gazelle/readers-writer + # https://github.com/jeromegn/kilt # Generic template interface for Crystal kilt: diff --git a/spec/readers_writer_spec.cr b/spec/readers_writer_spec.cr deleted file mode 100644 index cc0c570e99d..00000000000 --- a/spec/readers_writer_spec.cr +++ /dev/null @@ -1,27 +0,0 @@ -require "./spec_helper" - -describe EngineDrivers::ReadersWriterLock do - it "should isolate writes from reads" do - lock = EngineDrivers::ReadersWriterLock.new - - spawn do - lock.read { sleep 1 } - end - - spawn do - lock.read { sleep 1 } - end - - Fiber.yield - - lock.readers.should eq(2) - lock.write { lock.readers.should eq(0) } - spawn do - lock.read { sleep 1 } - end - - Fiber.yield - - lock.readers.should eq(1) - end -end diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index fec1888055e..065eb74dc1f 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -1,10 +1,12 @@ +require "rwlock" + class EngineDrivers::GitCommands # Will really only be an issue once threads come along @@lock_manager = Mutex.new # Allow multiple file level operations to occur in parrallel # File level operations are readers, repo level are writers - @@repository_lock = {} of String => ReadersWriterLock + @@repository_lock = {} of String => RWLock # Ensure only a single git operation is occuring at once to avoid corruption @@operation_lock = {} of String => Mutex @@ -176,12 +178,12 @@ class EngineDrivers::GitCommands end end - def self.repo_lock(repository) : ReadersWriterLock + def self.repo_lock(repository) : RWLock @@lock_manager.synchronize do if lock = @@repository_lock[repository]? lock else - @@repository_lock[repository] = ReadersWriterLock.new + @@repository_lock[repository] = RWLock.new end end end diff --git a/src/engine-drivers/readers_writer_lock.cr b/src/engine-drivers/readers_writer_lock.cr deleted file mode 100644 index 0b6d53ba6e5..00000000000 --- a/src/engine-drivers/readers_writer_lock.cr +++ /dev/null @@ -1,45 +0,0 @@ -# Allows multiple readers and only a single writer -class EngineDrivers::ReadersWriterLock - def initialize - @readers = 0 - @reader_lock = Mutex.new - @writer_lock = Mutex.new - end - - def readers - @reader_lock.synchronize { @readers } - end - - # Read locks - def read - @writer_lock.synchronize do - @reader_lock.synchronize { @readers += 1 } - end - - yield - ensure - @reader_lock.synchronize { @readers -= 1 } - end - - # Write lock - def synchronize - write do - yield - end - end - - def write - @writer_lock.synchronize do - write_ready = false - loop do - @reader_lock.synchronize { write_ready = @readers == 0 } - break if write_ready - - # Wait a short amount of time - Fiber.yield - end - - yield - end - end -end From a7080a77bbd52a9e4ad229e05db08528047968bb Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 22 May 2019 23:59:50 +1000 Subject: [PATCH 0042/1365] add compiled driver listing helpers --- spec/build_spec.cr | 12 ++++++++++ spec/compiler_spec.cr | 5 ++++ src/controllers/build.cr | 44 ++++++++++++++++++++++++---------- src/engine-drivers/compiler.cr | 15 +++++++++++- 4 files changed, 62 insertions(+), 14 deletions(-) diff --git a/spec/build_spec.cr b/spec/build_spec.cr index be3c024b9a9..8064ec6eac1 100644 --- a/spec/build_spec.cr +++ b/spec/build_spec.cr @@ -8,5 +8,17 @@ describe Build do (drivers.size > 0).should eq(true) drivers.includes?("drivers/aca/spec_helper.cr").should eq(true) end + + it "should build a driver" do + result = curl("POST", "/build?driver=drivers/aca/spec_helper.cr") + result.status_code.should eq(201) + end + + it "should list a driver" do + result = curl("GET", "/build/drivers%2Faca%2Fspec_helper.cr/") + result.status_code.should eq(200) + drivers = Array(String).from_json(result.body) + drivers[0].starts_with?("drivers_aca_spec_helper_cr_").should eq(true) + end end end diff --git a/spec/compiler_spec.cr b/spec/compiler_spec.cr index 736c35359d2..5a55389d16f 100644 --- a/spec/compiler_spec.cr +++ b/spec/compiler_spec.cr @@ -16,4 +16,9 @@ describe EngineDrivers::Compiler do ) io.to_s.starts_with?("Usage:").should eq(true) end + + it "should list compiled versions" do + files = EngineDrivers::Compiler.compiled_drivers("drivers/aca/spec_helper.cr") + files.should eq(["drivers_aca_spec_helper_cr_b495a86"]) + end end diff --git a/src/controllers/build.cr b/src/controllers/build.cr index f949a177694..90e8ff62f3f 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -1,11 +1,23 @@ class Build < Application # list the available files def index - result = EngineDrivers::GitCommands.ls + compiled = params["compiled"]? + list = if compiled + EngineDrivers::Compiler.compiled_drivers + else + result = EngineDrivers::GitCommands.ls - render json: result.select { |file| - file.ends_with?(".cr") && !file.ends_with?("_spec.cr") && file.starts_with?("drivers/") - } + render json: result.select { |file| + file.ends_with?(".cr") && !file.ends_with?("_spec.cr") && file.starts_with?("drivers/") + } + end + + render json: list + end + + def show + driver = URI.unescape(params["id"]) + render json: EngineDrivers::Compiler.compiled_drivers(driver) end # grab the list of available versions of file / which are built @@ -23,9 +35,13 @@ class Build < Application head :not_found unless File.exists?(driver) - EngineDrivers::GitCommands.checkout(driver, commit) do + result = EngineDrivers::GitCommands.checkout(driver, commit) do # complile the driver - # TODO:: + EngineDrivers::Compiler.build_driver(driver) + end + + if result[:exit_status] != 0 + render :not_acceptable, text: result[:output] end head :created @@ -36,14 +52,16 @@ class Build < Application driver = params["driver"] commit = params["commit"]? - file_path = if commit - "" - else - "" - end + files = if commit + exec_name = driver.gsub(/\/|\./, "_") + ["#{exec_name}_#{commit}"] + else + EngineDrivers::Compiler.compiled_drivers(driver) + end - head :not_found unless File.exists?(file_path) - File.delete file_path + files.each do |file| + File.delete File.join(EngineDrivers::Compiler::BIN_DIR, file) + end head :ok end end diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index b19ee8d04b7..fb1a9dd6e17 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -34,7 +34,7 @@ class EngineDrivers::Compiler # Want to expose some kind of status signalling # @@message = "compiling #{source_file} @ #{commit}" - exe_output = "#{BIN_DIR}/#{commit}_#{exec_name}" + exe_output = "#{BIN_DIR}/#{exec_name}_#{commit}" EngineDrivers::GitCommands.checkout(source_file, commit) do result = Process.run( "./bin/exec_from", @@ -57,6 +57,19 @@ class EngineDrivers::Compiler } end + def self.compiled_drivers(source_file) + exec_name = source_file.gsub(/\/|\./, "_") + exe_output = "#{exec_name}_" + + Dir.children(BIN_DIR).reject do |file| + !file.starts_with?(exe_output) || file.includes?(".") + end + end + + def self.compiled_drivers + Dir.children(BIN_DIR).reject { |file| file.includes?(".") } + end + # Runs shards install to ensure driver builds will succeed def self.install_shards(repository = @@drivers_dir) io = IO::Memory.new From 7d039ec92238c17c25e1fede2ff3d66b467a3551 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Thu, 23 May 2019 08:45:59 +1000 Subject: [PATCH 0043/1365] complete spec for the build API --- spec/build_spec.cr | 19 ++++++++++++++++++- src/controllers/build.cr | 6 +++--- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/spec/build_spec.cr b/spec/build_spec.cr index 8064ec6eac1..507dd4b8463 100644 --- a/spec/build_spec.cr +++ b/spec/build_spec.cr @@ -14,11 +14,28 @@ describe Build do result.status_code.should eq(201) end - it "should list a driver" do + it "should list compiled versions" do result = curl("GET", "/build/drivers%2Faca%2Fspec_helper.cr/") result.status_code.should eq(200) drivers = Array(String).from_json(result.body) drivers[0].starts_with?("drivers_aca_spec_helper_cr_").should eq(true) end + + it "should list possible versions" do + result = curl("GET", "/build/commits/?driver=drivers%2Faca%2Fspec_helper.cr") + result.status_code.should eq(200) + commits = JSON.parse(result.body) + commits.size.should eq(2) + end + + it "should delete all compiled versions of a driver" do + result = curl("DELETE", "/build/drivers%2Faca%2Fspec_helper.cr/") + result.status_code.should eq(200) + + result = curl("GET", "/build/drivers%2Faca%2Fspec_helper.cr/") + result.status_code.should eq(200) + drivers = Array(String).from_json(result.body) + drivers.size.should eq(0) + end end end diff --git a/src/controllers/build.cr b/src/controllers/build.cr index 90e8ff62f3f..45b6402dc31 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -23,7 +23,7 @@ class Build < Application # grab the list of available versions of file / which are built get "/commits" do driver = params["driver"] - count = (params["id"] || 10).to_i + count = (params["count"]? || 50).to_i render json: EngineDrivers::GitCommands.commits(driver, count) end @@ -48,8 +48,8 @@ class Build < Application end # delete a built driver - def delete - driver = params["driver"] + def destroy + driver = URI.unescape(params["id"]) commit = params["commit"]? files = if commit From 5a2ad2087e2b6bbf72a27c6322067929b53f0ac0 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Thu, 23 May 2019 09:35:40 +1000 Subject: [PATCH 0044/1365] add request tracking support --- src/config.cr | 15 ++++++++++++++- src/controllers/application.cr | 8 ++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/config.cr b/src/config.cr index 949cb6580e6..6f5a5eedbba 100644 --- a/src/config.cr +++ b/src/config.cr @@ -2,6 +2,12 @@ require "action-controller" require "active-model" +# Allows request IDs to be configured for logging +# You can extend this with additional properties +class HTTP::Request + property id : String? +end + # Application code require "./controllers/application" require "./controllers/*" @@ -14,7 +20,14 @@ require "action-controller/server" # Add handlers that should run before your application ActionController::Server.before( - HTTP::LogHandler.new(STDOUT), + ActionController::LogHandler.new(STDOUT) { |context| + # Allows for custom tags to be included when logging + # For example you might want to include a user id here. + { + # `context.request.id` is set in `controllers/application` + request_id: context.request.id + }.map { |key, value| " #{key}=#{value}" }.join("") + }, HTTP::ErrorHandler.new(ENV["SG_ENV"]? != "production"), HTTP::CompressHandler.new ) diff --git a/src/controllers/application.cr b/src/controllers/application.cr index 61b7b4b9794..cd0fc8b4923 100644 --- a/src/controllers/application.cr +++ b/src/controllers/application.cr @@ -1,2 +1,10 @@ +require "uuid" + abstract class Application < ActionController::Base + before_action :set_request_id + + def set_request_id + # Support request tracking + response.headers["X-Request-ID"] = request.id = request.headers["X-Request-ID"]? || UUID.random.to_s + end end From 1e3ba9bb2d54f1bd64146eac9af08277cb931ff5 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Thu, 23 May 2019 15:16:23 +1000 Subject: [PATCH 0045/1365] add support for multiple repositories --- src/controllers/build.cr | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/controllers/build.cr b/src/controllers/build.cr index 45b6402dc31..6d559cac289 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -2,10 +2,12 @@ class Build < Application # list the available files def index compiled = params["compiled"]? + repository = params["repository"]? || EngineDrivers::Compiler.drivers_dir + list = if compiled EngineDrivers::Compiler.compiled_drivers else - result = EngineDrivers::GitCommands.ls + result = EngineDrivers::GitCommands.ls(repository) render json: result.select { |file| file.ends_with?(".cr") && !file.ends_with?("_spec.cr") && file.starts_with?("drivers/") @@ -24,21 +26,18 @@ class Build < Application get "/commits" do driver = params["driver"] count = (params["count"]? || 50).to_i + repository = params["repository"]? || EngineDrivers::Compiler.drivers_dir - render json: EngineDrivers::GitCommands.commits(driver, count) + render json: EngineDrivers::GitCommands.commits(driver, count, repository) end # build a drvier, optionally based on the version specified def create driver = params["driver"] commit = params["commit"]? || "head" + repository = params["repository"]? || EngineDrivers::Compiler.drivers_dir - head :not_found unless File.exists?(driver) - - result = EngineDrivers::GitCommands.checkout(driver, commit) do - # complile the driver - EngineDrivers::Compiler.build_driver(driver) - end + result = EngineDrivers::Compiler.build_driver(driver, commit, repository) if result[:exit_status] != 0 render :not_acceptable, text: result[:output] @@ -52,6 +51,12 @@ class Build < Application driver = URI.unescape(params["id"]) commit = params["commit"]? + # Check repository to prevent abuse (don't want to delete the wrong thing) + repository = params["repository"]? || EngineDrivers::Compiler.drivers_dir + EngineDrivers::GitCommands.checkout(driver, commit || "head", repository) do + head :not_found unless File.exists?(File.join(repository, driver)) + end + files = if commit exec_name = driver.gsub(/\/|\./, "_") ["#{exec_name}_#{commit}"] From 1afdbc0ba6952c051801cba833229b46dc29d6b8 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Thu, 23 May 2019 17:06:31 +1000 Subject: [PATCH 0046/1365] add support for cloning and installing shards --- spec/compiler_spec.cr | 6 ++++++ src/engine-drivers/compiler.cr | 33 ++++++++++++++++++++---------- src/engine-drivers/git_commands.cr | 17 +++++++++------ 3 files changed, 39 insertions(+), 17 deletions(-) diff --git a/spec/compiler_spec.cr b/spec/compiler_spec.cr index 5a55389d16f..6c60912ec68 100644 --- a/spec/compiler_spec.cr +++ b/spec/compiler_spec.cr @@ -21,4 +21,10 @@ describe EngineDrivers::Compiler do files = EngineDrivers::Compiler.compiled_drivers("drivers/aca/spec_helper.cr") files.should eq(["drivers_aca_spec_helper_cr_b495a86"]) end + + it "should clone and install a repository" do + EngineDrivers::Compiler.clone_and_install("readers-writer", "https://github.com/spider-gazelle/readers-writer") + File.file?(File.expand_path("../repositories/readers-writer/shard.yml")).should eq(true) + File.directory?(File.expand_path("../repositories/readers-writer/bin")).should eq(true) + end end diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index fb1a9dd6e17..a0cd85f1028 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -2,6 +2,7 @@ class EngineDrivers::Compiler BIN_DIR = "#{Dir.current}/bin/drivers" @@drivers_dir = Dir.current + @@repository_dir = File.expand_path("../repositories") def self.drivers_dir=(path) @@drivers_dir = path @@ -11,9 +12,13 @@ class EngineDrivers::Compiler @@drivers_dir end - # if driver in external git repo - # Make sure that we change the directory for process run - # Repositories should shard update when they are cloned initially or updated + def self.repository_dir=(path) + @@repository_dir = path + end + + def self.repository_dir + @@repository_dir + end # repository is required to have a local `build.cr` file to support compilation def self.build_driver(source_file, commit = "head", repository = @@drivers_dir) @@ -67,11 +72,15 @@ class EngineDrivers::Compiler end def self.compiled_drivers - Dir.children(BIN_DIR).reject { |file| file.includes?(".") } + Dir.children(BIN_DIR).reject { |file| file.includes?(".") || File.directory?(file) } + end + + def self.repositories(working_dir = @@repository_dir) + Dir.children(working_dir).reject { |file| File.file?(file) } end # Runs shards install to ensure driver builds will succeed - def self.install_shards(repository = @@drivers_dir) + def self.install_shards(repository, working_dir = @@repository_dir) io = IO::Memory.new result = 1 @@ -80,7 +89,7 @@ class EngineDrivers::Compiler EngineDrivers::GitCommands.repo_lock(repository).write do result = Process.run( "./bin/exec_from", - {repository, "shards", "--no-color", "install"}, + {File.join(working_dir, repository), "shards", "--no-color", "install"}, input: Process::Redirect::Close, output: io, error: io @@ -93,10 +102,12 @@ class EngineDrivers::Compiler } end - def self.clone_and_install(repository, repository_uri, username = nil, password = nil, working_dir = "../repositories") - # TODO:: - # Repo write lock - # clone the repository - # shards install + def self.clone_and_install(repository, repository_uri, username = nil, password = nil, working_dir = @@repository_dir) + EngineDrivers::GitCommands.repo_lock(repository).write do + result = EngineDrivers::GitCommands.clone(repository, repository_uri, username, password, working_dir) + raise "failed to clone\n#{result[:output]}" unless result[:exit_status] == 0 + result = install_shards(repository, working_dir) + raise "failed to install shards\n#{result[:output]}" unless result[:exit_status] == 0 + end end end diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index 065eb74dc1f..a8a3b052917 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -90,28 +90,32 @@ class EngineDrivers::GitCommands end end - def self.clone(repository, repository_uri, username = nil, password = nil, working_dir = "../repositories") + def self.clone(repository, repository_uri, username = nil, password = nil, working_dir = EngineDrivers::Compiler.repository_dir) + working_dir = File.expand_path(working_dir) + repo_dir = File.expand_path(repository, working_dir) + # Ensure we are rm -rf a sane folder - don't want to delete root for example - unless repository.starts_with?(working_dir) && working_dir.size > 1 && (repository.size - working_dir.size) > 1 - raise "invalid folder structure. Working directory: '#{working_dir}', repository: '#{repository}'" + unless repo_dir.starts_with?(working_dir) + raise "invalid folder structure. Working directory: '#{working_dir}', repository: '#{repository}', resulting path: '#{repo_dir}'" end io = IO::Memory.new result = 1 if username && password + # TODO:: Should probably use URI parser here # remove the https:// uri = repository_uri[8..-1] # rebuild URL repository_uri = "https://#{username}:#{password}@#{uri}" end - # Ensure the repository directory exists (it should) - Dir.mkdir_p working_dir - # The call to write here ensures that no other operations are occuring on # the repository at this time. repo_lock(repository).write do + # Ensure the repository directory exists (it should) + Dir.mkdir_p working_dir + # Ensure the repository being cloned does not exist Process.run("./bin/exec_from", {working_dir, "rm", "-rf", repository}, @@ -120,6 +124,7 @@ class EngineDrivers::GitCommands error: Process::Redirect::Close ) + # Clone the repository result = Process.run( "./bin/exec_from", {working_dir, "git", "clone", repository_uri, repository}, From 1bc3b64ddafb77c8bde77beb60dacdae7ce4805f Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 24 May 2019 11:03:04 +1000 Subject: [PATCH 0047/1365] improve input validation and repository resolution --- spec/compiler_spec.cr | 6 ++--- src/config.cr | 2 +- src/controllers/build.cr | 30 ++++++++++++++++------- src/controllers/edit.cr | 25 -------------------- src/engine-drivers/compiler.cr | 6 +++-- src/engine-drivers/git_commands.cr | 38 +++++++++++++++++++++++++++--- 6 files changed, 64 insertions(+), 43 deletions(-) delete mode 100644 src/controllers/edit.cr diff --git a/spec/compiler_spec.cr b/spec/compiler_spec.cr index 6c60912ec68..124098bcad5 100644 --- a/spec/compiler_spec.cr +++ b/spec/compiler_spec.cr @@ -23,8 +23,8 @@ describe EngineDrivers::Compiler do end it "should clone and install a repository" do - EngineDrivers::Compiler.clone_and_install("readers-writer", "https://github.com/spider-gazelle/readers-writer") - File.file?(File.expand_path("../repositories/readers-writer/shard.yml")).should eq(true) - File.directory?(File.expand_path("../repositories/readers-writer/bin")).should eq(true) + EngineDrivers::Compiler.clone_and_install("rwlock", "https://github.com/spider-gazelle/readers-writer") + File.file?(File.expand_path("../repositories/rwlock/shard.yml")).should eq(true) + File.directory?(File.expand_path("../repositories/rwlock/bin")).should eq(true) end end diff --git a/src/config.cr b/src/config.cr index 6f5a5eedbba..8b907896c19 100644 --- a/src/config.cr +++ b/src/config.cr @@ -25,7 +25,7 @@ ActionController::Server.before( # For example you might want to include a user id here. { # `context.request.id` is set in `controllers/application` - request_id: context.request.id + request_id: context.request.id, }.map { |key, value| " #{key}=#{value}" }.join("") }, HTTP::ErrorHandler.new(ENV["SG_ENV"]? != "production"), diff --git a/src/controllers/build.cr b/src/controllers/build.cr index 6d559cac289..8682bc52102 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -2,13 +2,10 @@ class Build < Application # list the available files def index compiled = params["compiled"]? - repository = params["repository"]? || EngineDrivers::Compiler.drivers_dir - list = if compiled EngineDrivers::Compiler.compiled_drivers else - result = EngineDrivers::GitCommands.ls(repository) - + result = EngineDrivers::GitCommands.ls(get_repository_path) render json: result.select { |file| file.ends_with?(".cr") && !file.ends_with?("_spec.cr") && file.starts_with?("drivers/") } @@ -22,22 +19,25 @@ class Build < Application render json: EngineDrivers::Compiler.compiled_drivers(driver) end + # grab the list of available repositories + get "/repositories" do + EngineDrivers::Compiler.repositories + end + # grab the list of available versions of file / which are built get "/commits" do driver = params["driver"] count = (params["count"]? || 50).to_i - repository = params["repository"]? || EngineDrivers::Compiler.drivers_dir - render json: EngineDrivers::GitCommands.commits(driver, count, repository) + render json: EngineDrivers::GitCommands.commits(driver, count, get_repository_path) end # build a drvier, optionally based on the version specified def create driver = params["driver"] commit = params["commit"]? || "head" - repository = params["repository"]? || EngineDrivers::Compiler.drivers_dir - result = EngineDrivers::Compiler.build_driver(driver, commit, repository) + result = EngineDrivers::Compiler.build_driver(driver, commit, get_repository_path) if result[:exit_status] != 0 render :not_acceptable, text: result[:output] @@ -52,7 +52,7 @@ class Build < Application commit = params["commit"]? # Check repository to prevent abuse (don't want to delete the wrong thing) - repository = params["repository"]? || EngineDrivers::Compiler.drivers_dir + repository = get_repository_path EngineDrivers::GitCommands.checkout(driver, commit || "head", repository) do head :not_found unless File.exists?(File.join(repository, driver)) end @@ -69,4 +69,16 @@ class Build < Application end head :ok end + + protected def get_repository_path + repository = params["repository"]? + if repository + repo = File.expand_path(File.join(EngineDrivers::Compiler.repository_dir, repository)) + valid = repo.starts_with?(EngineDrivers::Compiler.repository_dir) && repo != "/" && repository.size > 0 && !repository.includes?("/") && !repository.includes?(".") + raise "invalid repository: #{repository}" unless valid + repo + else + EngineDrivers::Compiler.drivers_dir + end + end end diff --git a/src/controllers/edit.cr b/src/controllers/edit.cr deleted file mode 100644 index f124f639101..00000000000 --- a/src/controllers/edit.cr +++ /dev/null @@ -1,25 +0,0 @@ -class Edit < Application - # list of drivers and specs - def index - end - - # contents of a driver or spec - def show - end - - # create a new driver - def create - end - - # update an existing driver or spec - def update - end - - # delete a driver or spec - def delete - end - - # commits changes to the upstream repo - post "/commit" do - end -end diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index a0cd85f1028..074e5c54ce1 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -84,12 +84,14 @@ class EngineDrivers::Compiler io = IO::Memory.new result = 1 + repo_dir = File.expand_path(File.join(working_dir, repository)) + # NOTE:: supports recursive locking so can perform multiple repository # operations in a single lock. i.e. clone + shards install - EngineDrivers::GitCommands.repo_lock(repository).write do + EngineDrivers::GitCommands.repo_lock(repo_dir).write do result = Process.run( "./bin/exec_from", - {File.join(working_dir, repository), "shards", "--no-color", "install"}, + {repo_dir, "shards", "--no-color", "install"}, input: Process::Redirect::Close, output: io, error: io diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index a8a3b052917..dd5a3feb787 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -90,18 +90,47 @@ class EngineDrivers::GitCommands end end - def self.clone(repository, repository_uri, username = nil, password = nil, working_dir = EngineDrivers::Compiler.repository_dir) + def self.pull(repository, working_dir = EngineDrivers::Compiler.repository_dir) working_dir = File.expand_path(working_dir) repo_dir = File.expand_path(repository, working_dir) - # Ensure we are rm -rf a sane folder - don't want to delete root for example + # Double check the inputs unless repo_dir.starts_with?(working_dir) raise "invalid folder structure. Working directory: '#{working_dir}', repository: '#{repository}', resulting path: '#{repo_dir}'" end + raise "repository does not exist. Path: '#{repo_dir}'" unless File.directory?(repo_dir) + # Assumes no password required. Re-clone if this has changed. io = IO::Memory.new result = 1 + # The call to write here ensures that no other operations are occuring on + # the repository at this time. + repo_lock(repo_dir).write do + result = Process.run( + "./bin/exec_from", + {repo_dir, "git", "pull"}, + {"GIT_TERMINAL_PROMPT" => "0"}, + input: Process::Redirect::Close, + output: io, + error: io + ).exit_status + end + + { + exit_status: result, + output: io.to_s, + } + end + + def self.clone(repository, repository_uri, username = nil, password = nil, working_dir = EngineDrivers::Compiler.repository_dir) + working_dir = File.expand_path(working_dir) + repo_dir = File.expand_path(File.join(working_dir, repository)) + + # Ensure we are rm -rf a sane folder - don't want to delete root for example + valid = repo_dir.starts_with?(working_dir) && repo_dir != "/" && repository.size > 0 && !repository.includes?("/") && !repository.includes?(".") + raise "invalid folder structure. Working directory: '#{working_dir}', repository: '#{repository}', resulting path: '#{repo_dir}'" unless valid + if username && password # TODO:: Should probably use URI parser here # remove the https:// @@ -110,9 +139,12 @@ class EngineDrivers::GitCommands repository_uri = "https://#{username}:#{password}@#{uri}" end + io = IO::Memory.new + result = 1 + # The call to write here ensures that no other operations are occuring on # the repository at this time. - repo_lock(repository).write do + repo_lock(repo_dir).write do # Ensure the repository directory exists (it should) Dir.mkdir_p working_dir From 6b554e438afb55d713ff6d1d8f8ffeaf25658bc8 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sun, 26 May 2019 13:15:37 +1000 Subject: [PATCH 0048/1365] add repository commit query support and reset repositories before pulling new commits --- spec/git_spec.cr | 8 ++++- src/controllers/application.cr | 13 +++++++ src/controllers/build.cr | 36 ++++++++----------- src/controllers/test.cr | 44 +++++++++++++++++++++-- src/engine-drivers/compiler.cr | 16 +++++++-- src/engine-drivers/git_commands.cr | 56 ++++++++++++++++++++++++++++-- 6 files changed, 144 insertions(+), 29 deletions(-) diff --git a/spec/git_spec.cr b/spec/git_spec.cr index 5df053e5487..9efea66f37d 100644 --- a/spec/git_spec.cr +++ b/spec/git_spec.cr @@ -9,7 +9,13 @@ describe EngineDrivers::GitCommands do end it "should list the revisions to a file in a repository" do - changes = EngineDrivers::GitCommands.commits("shard.yml") + changes = EngineDrivers::GitCommands.commits("shard.yml", count: 200) + (changes.size > 0).should eq(true) + changes.map { |commit| commit[:subject] }.includes?("restructure application").should eq(true) + end + + it "should list the revisions of a repository" do + changes = EngineDrivers::GitCommands.repository_commits(count: 200) (changes.size > 0).should eq(true) changes.map { |commit| commit[:subject] }.includes?("restructure application").should eq(true) end diff --git a/src/controllers/application.cr b/src/controllers/application.cr index cd0fc8b4923..53cd45fdddd 100644 --- a/src/controllers/application.cr +++ b/src/controllers/application.cr @@ -7,4 +7,17 @@ abstract class Application < ActionController::Base # Support request tracking response.headers["X-Request-ID"] = request.id = request.headers["X-Request-ID"]? || UUID.random.to_s end + + # Builds and validates the selected repository + def get_repository_path + repository = params["repository"]? + if repository + repo = File.expand_path(File.join(EngineDrivers::Compiler.repository_dir, repository)) + valid = repo.starts_with?(EngineDrivers::Compiler.repository_dir) && repo != "/" && repository.size > 0 && !repository.includes?("/") && !repository.includes?(".") + raise "invalid repository: #{repository}" unless valid + repo + else + EngineDrivers::Compiler.drivers_dir + end + end end diff --git a/src/controllers/build.cr b/src/controllers/build.cr index 8682bc52102..d25477c5992 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -2,16 +2,14 @@ class Build < Application # list the available files def index compiled = params["compiled"]? - list = if compiled - EngineDrivers::Compiler.compiled_drivers - else - result = EngineDrivers::GitCommands.ls(get_repository_path) - render json: result.select { |file| - file.ends_with?(".cr") && !file.ends_with?("_spec.cr") && file.starts_with?("drivers/") - } - end - - render json: list + if compiled + render json: EngineDrivers::Compiler.compiled_drivers + else + result = EngineDrivers::GitCommands.ls(get_repository_path) + render json: result.select { |file| + file.ends_with?(".cr") && !file.ends_with?("_spec.cr") && file.starts_with?("drivers/") + } + end end def show @@ -32,6 +30,12 @@ class Build < Application render json: EngineDrivers::GitCommands.commits(driver, count, get_repository_path) end + # Commits at repo level + get "/repository_commits" do + count = (params["count"]? || 50).to_i + render json: EngineDrivers::GitCommands.repository_commits(get_repository_path, count) + end + # build a drvier, optionally based on the version specified def create driver = params["driver"] @@ -69,16 +73,4 @@ class Build < Application end head :ok end - - protected def get_repository_path - repository = params["repository"]? - if repository - repo = File.expand_path(File.join(EngineDrivers::Compiler.repository_dir, repository)) - valid = repo.starts_with?(EngineDrivers::Compiler.repository_dir) && repo != "/" && repository.size > 0 && !repository.includes?("/") && !repository.includes?(".") - raise "invalid repository: #{repository}" unless valid - repo - else - EngineDrivers::Compiler.drivers_dir - end - end end diff --git a/src/controllers/test.cr b/src/controllers/test.cr index 3f25c64d182..9162df3b984 100644 --- a/src/controllers/test.cr +++ b/src/controllers/test.cr @@ -1,13 +1,53 @@ class Test < Application + before_action :ensure_driver_compiled, only: [:run_spec, :create] + @driver_path : String? + # Specs available def index + result = EngineDrivers::GitCommands.ls(get_repository_path) + render json: result.select { |file| + file.ends_with?("_spec.cr") && file.starts_with?("drivers/") + } + end + + # grab the list of available versions of the spec file + get "/commits" do + spec = params["spec"] + count = (params["count"]? || 50).to_i + + render json: EngineDrivers::GitCommands.commits(spec, count, get_repository_path) end - # Run a spec + # Run the spec and return success if the exit status is 0 def create end # WS watch the output from running specs - ws "/output" do |socket| + ws "/run_spec", :run_spec do |socket| + spec = params["spec"] + repository = get_repository_path + spec_commit = params["spec_commit"]? || "head" + + # Run the spec and pipe all the IO down the websocket + + end + + def ensure_driver_compiled + driver = params["driver"] + repository = get_repository_path + commit = params["commit"]? || "head" + + driver_path = EngineDrivers::Compiler.is_built?(driver, commit, repository) + + # Build the driver if has not been compiled yet + if driver_path.nil? + result = EngineDrivers::Compiler.build_driver(driver, commit, get_repository_path) + render :not_acceptable, text: result[:output] if result[:exit_status] != 0 + + driver_path = EngineDrivers::Compiler.is_built?(driver, commit, repository) + end + + # raise an error if the driver still does not exist + @driver_path = driver_path.not_nil! end end diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index 074e5c54ce1..f5d411f2c7c 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -20,12 +20,24 @@ class EngineDrivers::Compiler @@repository_dir end + def self.is_built?(source_file, commit = "head", repository = @@repository_dir) + exec_name = source_file.gsub(/\/|\./, "_") + + # Make sure we have an actual version hash of the file + if commit == "head" + commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] + end + + exe_output = File.join(BIN_DIR, "#{exec_name}_#{commit}") + File.exists?(exe_output) ? exe_output : nil + end + # repository is required to have a local `build.cr` file to support compilation def self.build_driver(source_file, commit = "head", repository = @@drivers_dir) # Ensure the bin directory exists Dir.mkdir_p BIN_DIR - io = IO::Memory.new + exec_name = source_file.gsub(/\/|\./, "_") exe_output = "" result = 1 @@ -39,7 +51,7 @@ class EngineDrivers::Compiler # Want to expose some kind of status signalling # @@message = "compiling #{source_file} @ #{commit}" - exe_output = "#{BIN_DIR}/#{exec_name}_#{commit}" + exe_output = File.join(BIN_DIR, "#{exec_name}_#{commit}") EngineDrivers::GitCommands.checkout(source_file, commit) do result = Process.run( "./bin/exec_from", diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index dd5a3feb787..8ab0d05896b 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -31,7 +31,7 @@ class EngineDrivers::GitCommands io.to_s.split("\n") end - def self.commits(file_name, count = 10, repository = EngineDrivers::Compiler.drivers_dir) + def self.commits(file_name, count = 50, repository = EngineDrivers::Compiler.drivers_dir) io = IO::Memory.new # https://git-scm.com/docs/pretty-formats @@ -63,6 +63,38 @@ class EngineDrivers::GitCommands end end + def self.repository_commits(repository = EngineDrivers::Compiler.drivers_dir, count = 50) + io = IO::Memory.new + + # https://git-scm.com/docs/pretty-formats + # %h: abbreviated commit hash + # %cI: committer date, strict ISO 8601 format + # %an: author name + # %s: subject + result = repo_lock(repository).write do + Process.run( + "./bin/exec_from", {repository, "git", "--no-pager", "log", "--format=format:%h%n%cI%n%an%n%s%n<--%n%n-->", "--no-color", "-n", count.to_s}, + input: Process::Redirect::Close, + output: io, + error: Process::Redirect::Close + ) + end + + raise CommandFailure.new(result.exit_status) if result.exit_status != 0 + + io.to_s.strip.split("<--\n\n-->") + .reject(&.empty?) + .map(&.strip.split("\n").map &.strip) + .map do |commit| + { + commit: commit[0], + date: commit[1], + author: commit[2], + subject: commit[3], + } + end + end + def self.checkout(file, commit = "head", repository = EngineDrivers::Compiler.drivers_dir) # https://stackoverflow.com/questions/215718/reset-or-revert-a-specific-file-to-a-specific-revision-using-git op_lock = operation_lock(repository) @@ -106,7 +138,7 @@ class EngineDrivers::GitCommands # The call to write here ensures that no other operations are occuring on # the repository at this time. - repo_lock(repo_dir).write do + repo_operation(repo_dir) do result = Process.run( "./bin/exec_from", {repo_dir, "git", "pull"}, @@ -173,12 +205,14 @@ class EngineDrivers::GitCommands } end + # Use this for simple git operations, such as `git ls` def self.basic_operation(repository) repo_lock(repository).read do operation_lock(repository).synchronize { yield } end end + # Use this for simple file operations, such as file commits def self.file_operation(repository, file) # This is the order of locking that should occur when performing an operation # * Read access to repository (not a global change or exclusive access) @@ -194,6 +228,24 @@ class EngineDrivers::GitCommands end end + # Anything that expects a clean repository + def self.repo_operation(repository) + repo_lock(repository).write do + operation_lock(repository).synchronize do + # reset incase of a crash during a file operation + result = Process.run( + "./bin/exec_from", {repository, "git", "reset", "--hard"}, + input: Process::Redirect::Close, + output: io, + error: Process::Redirect::Close + ).exit_status + + raise CommandFailure.new(result) if result != 0 + yield + end + end + end + def self.file_lock(repository, file) repo_lock(repository).read do file_lock(repository, file).synchronize do From 375f53bf3e47a5743f454b3f6b0799acbf73172a Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 27 May 2019 14:06:09 +1000 Subject: [PATCH 0049/1365] disable clustering support --- src/app.cr | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/app.cr b/src/app.cr index 1545ef1d986..44bb7caeb1a 100644 --- a/src/app.cr +++ b/src/app.cr @@ -14,10 +14,14 @@ OptionParser.parse(ARGV.dup) do |parser| parser.on("-b HOST", "--bind=HOST", "Specifies the server host") { |h| host = h } parser.on("-p PORT", "--port=PORT", "Specifies the server port") { |p| port = p.to_i } - parser.on("-w COUNT", "--workers=COUNT", "Specifies the number of processes to handle requests") do |w| - cluster = true - process_count = w.to_i - end + # There should only ever be a single instance of this process + # as we don't want concurrent access occuring + # (technically git allows concurrent repo access however you may experience unexpected + # results as file revisions are changed while compiling etc) + #parser.on("-w COUNT", "--workers=COUNT", "Specifies the number of processes to handle requests") do |w| + # cluster = true + # process_count = w.to_i + #end parser.on("-r", "--routes", "List the application routes") do ActionController::Server.print_routes From 5b98cf0e79d5647ed6b1b422fa1374adf90cc4ae Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 27 May 2019 14:07:29 +1000 Subject: [PATCH 0050/1365] add additional compiler configuration options --- src/engine-drivers/compiler.cr | 51 ++++++++++++++++++---------------- 1 file changed, 27 insertions(+), 24 deletions(-) diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index f5d411f2c7c..cb387808dbc 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -1,24 +1,17 @@ class EngineDrivers::Compiler - BIN_DIR = "#{Dir.current}/bin/drivers" - @@drivers_dir = Dir.current @@repository_dir = File.expand_path("../repositories") + @@bin_dir = "#{Dir.current}/bin/drivers" - def self.drivers_dir=(path) - @@drivers_dir = path - end - - def self.drivers_dir - @@drivers_dir - end - - def self.repository_dir=(path) - @@repository_dir = path - end + {% for name in [:drivers_dir, :repository_dir, :bin_dir] %} + def {{name.id}} + @@{{name.id}} + end - def self.repository_dir - @@repository_dir - end + def {{name.id}}=(path) + @@{{name.id}} = path + end + {% end %} def self.is_built?(source_file, commit = "head", repository = @@repository_dir) exec_name = source_file.gsub(/\/|\./, "_") @@ -28,14 +21,14 @@ class EngineDrivers::Compiler commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] end - exe_output = File.join(BIN_DIR, "#{exec_name}_#{commit}") + exe_output = File.join(@@bin_dir, "#{exec_name}_#{commit}") File.exists?(exe_output) ? exe_output : nil end # repository is required to have a local `build.cr` file to support compilation - def self.build_driver(source_file, commit = "head", repository = @@drivers_dir) + def self.build_driver(source_file, commit = "head", repository = @@drivers_dir, git_checkout = true) # Ensure the bin directory exists - Dir.mkdir_p BIN_DIR + Dir.mkdir_p @@bin_dir io = IO::Memory.new exec_name = source_file.gsub(/\/|\./, "_") @@ -51,17 +44,27 @@ class EngineDrivers::Compiler # Want to expose some kind of status signalling # @@message = "compiling #{source_file} @ #{commit}" - exe_output = File.join(BIN_DIR, "#{exec_name}_#{commit}") - EngineDrivers::GitCommands.checkout(source_file, commit) do + exe_output = File.join(@@bin_dir, "#{exec_name}_#{commit}") + build_script = File.expand_path("./src/build.cr") + compile_proc = -> do result = Process.run( "./bin/exec_from", - {repository, "crystal", "build", "-o", exe_output, "./src/build.cr"}, + {repository, "crystal", "build", "-o", exe_output, build_script}, {"COMPILE_DRIVER" => source_file}, input: Process::Redirect::Close, output: io, error: io ).exit_status end + + # When developing you may not want to have to + if git_checkout + EngineDrivers::GitCommands.checkout(source_file, commit) do + compile_proc.call + end + else + compile_proc.call + end end { @@ -78,13 +81,13 @@ class EngineDrivers::Compiler exec_name = source_file.gsub(/\/|\./, "_") exe_output = "#{exec_name}_" - Dir.children(BIN_DIR).reject do |file| + Dir.children(@@bin_dir).reject do |file| !file.starts_with?(exe_output) || file.includes?(".") end end def self.compiled_drivers - Dir.children(BIN_DIR).reject { |file| file.includes?(".") || File.directory?(file) } + Dir.children(@@bin_dir).reject { |file| file.includes?(".") || File.directory?(file) } end def self.repositories(working_dir = @@repository_dir) From fd45b979d0cd43732ab4930abfce7be542686076 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 27 May 2019 18:26:06 +1000 Subject: [PATCH 0051/1365] fix builds for private drivers --- spec/compiler_spec.cr | 30 ++++++++++++++++++++++++++++++ src/build.cr | 7 ++++++- src/controllers/build.cr | 2 +- src/engine-drivers/compiler.cr | 6 +++--- 4 files changed, 40 insertions(+), 5 deletions(-) diff --git a/spec/compiler_spec.cr b/spec/compiler_spec.cr index 124098bcad5..2abd75d2317 100644 --- a/spec/compiler_spec.cr +++ b/spec/compiler_spec.cr @@ -27,4 +27,34 @@ describe EngineDrivers::Compiler do File.file?(File.expand_path("../repositories/rwlock/shard.yml")).should eq(true) File.directory?(File.expand_path("../repositories/rwlock/bin")).should eq(true) end + + it "should compile a private driver" do + # Clone the private driver repo + EngineDrivers::Compiler.clone_and_install("private_drivers", "https://github.com/aca-labs/private_drivers.git") + File.file?(File.expand_path("../repositories/private_drivers/drivers/aca/private_helper.cr")).should eq(true) + + # Test the executable is created + result = EngineDrivers::Compiler.build_driver("drivers/aca/private_helper.cr", repository: File.join(EngineDrivers::Compiler.repository_dir, "private_drivers")) + result[:exit_status].should eq(0) + File.exists?(result[:executable]).should eq(true) + + # Check it functions as expected + io = IO::Memory.new + Process.run(result[:executable], {"-h"}, + input: Process::Redirect::Close, + output: io, + error: io + ) + io.to_s.starts_with?("Usage:").should eq(true) + + # Delete the file + File.delete(result[:executable]) + end + + with_server do + it "should compile a private driver using the build API" do + result = curl("POST", "/build?repository=private_drivers&driver=drivers/aca/private_helper.cr") + result.status_code.should eq(201) + end + end end diff --git a/src/build.cr b/src/build.cr index 54120556a76..2f39ab631d3 100644 --- a/src/build.cr +++ b/src/build.cr @@ -1,4 +1,9 @@ -require "engine-driver" + +{% if env("COMPILE_DRIVER").ends_with?("_spec.cr") %} + require "engine-driver/engine-specs" +{% else %} + require "engine-driver" +{% end %} # Dynamically require the desired driver {{ ("require \"../" + env("COMPILE_DRIVER") + "\"").id }} diff --git a/src/controllers/build.cr b/src/controllers/build.cr index d25477c5992..ff6916c530a 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -69,7 +69,7 @@ class Build < Application end files.each do |file| - File.delete File.join(EngineDrivers::Compiler::BIN_DIR, file) + File.delete File.join(EngineDrivers::Compiler.bin_dir, file) end head :ok end diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index cb387808dbc..568b6490782 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -4,11 +4,11 @@ class EngineDrivers::Compiler @@bin_dir = "#{Dir.current}/bin/drivers" {% for name in [:drivers_dir, :repository_dir, :bin_dir] %} - def {{name.id}} + def self.{{name.id}} @@{{name.id}} end - def {{name.id}}=(path) + def self.{{name.id}}=(path) @@{{name.id}} = path end {% end %} @@ -45,7 +45,7 @@ class EngineDrivers::Compiler # @@message = "compiling #{source_file} @ #{commit}" exe_output = File.join(@@bin_dir, "#{exec_name}_#{commit}") - build_script = File.expand_path("./src/build.cr") + build_script = File.join(repository, "src/build.cr") compile_proc = -> do result = Process.run( "./bin/exec_from", From d62c3d4059612201bda4d68c07d6f1451efa8de0 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 28 May 2019 10:47:26 +1000 Subject: [PATCH 0052/1365] add spec for compiling and running a basic spec --- spec/compiler_spec.cr | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/spec/compiler_spec.cr b/spec/compiler_spec.cr index 2abd75d2317..2792906fb22 100644 --- a/spec/compiler_spec.cr +++ b/spec/compiler_spec.cr @@ -51,6 +51,30 @@ describe EngineDrivers::Compiler do File.delete(result[:executable]) end + it "should compile a private spec" do + # Test the executable is created + result = EngineDrivers::Compiler.build_driver( + "drivers/aca/private_helper_spec.cr", + repository: File.join(EngineDrivers::Compiler.repository_dir, "private_drivers"), + git_checkout: false + ) + result[:exit_status].should eq(0) + File.exists?(result[:executable]).should eq(true) + + # Check it functions as expected SPEC_RUN_DRIVER + io = IO::Memory.new + exit_status = Process.run(result[:executable], + env: {"SPEC_RUN_DRIVER" => File.join(EngineDrivers::Compiler.bin_dir, "drivers_aca_private_helper_cr_4f6e0cd")}, + input: Process::Redirect::Close, + output: io, + error: io + ).exit_status + exit_status.should eq(0) + + # Delete the file + File.delete(result[:executable]) + end + with_server do it "should compile a private driver using the build API" do result = curl("POST", "/build?repository=private_drivers&driver=drivers/aca/private_helper.cr") From b685ad58c2cb6834fa8253b336d814800c45a878 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 31 May 2019 13:02:19 +1000 Subject: [PATCH 0053/1365] Update path for spec runner --- src/build.cr | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/build.cr b/src/build.cr index 2f39ab631d3..3a0bb1f9adf 100644 --- a/src/build.cr +++ b/src/build.cr @@ -1,6 +1,6 @@ {% if env("COMPILE_DRIVER").ends_with?("_spec.cr") %} - require "engine-driver/engine-specs" + require "engine-driver/engine-specs/runner" {% else %} require "engine-driver" {% end %} From 2cf6c7e844f376ddba6e8bf2992ce713a1e91c97 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 31 May 2019 14:16:01 +1000 Subject: [PATCH 0054/1365] compiler spec passes --- spec/compiler_spec.cr | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/spec/compiler_spec.cr b/spec/compiler_spec.cr index 2792906fb22..fd3f4804da5 100644 --- a/spec/compiler_spec.cr +++ b/spec/compiler_spec.cr @@ -51,6 +51,13 @@ describe EngineDrivers::Compiler do File.delete(result[:executable]) end + with_server do + it "should compile a private driver using the build API" do + result = curl("POST", "/build?repository=private_drivers&driver=drivers/aca/private_helper.cr") + result.status_code.should eq(201) + end + end + it "should compile a private spec" do # Test the executable is created result = EngineDrivers::Compiler.build_driver( @@ -61,10 +68,14 @@ describe EngineDrivers::Compiler do result[:exit_status].should eq(0) File.exists?(result[:executable]).should eq(true) + # Ensure the driver we want to test exists + driver_file = File.join(EngineDrivers::Compiler.bin_dir, "drivers_aca_private_helper_cr_4f6e0cd") + File.exists?(driver_file).should eq(true) + # Check it functions as expected SPEC_RUN_DRIVER io = IO::Memory.new exit_status = Process.run(result[:executable], - env: {"SPEC_RUN_DRIVER" => File.join(EngineDrivers::Compiler.bin_dir, "drivers_aca_private_helper_cr_4f6e0cd")}, + env: {"SPEC_RUN_DRIVER" => driver_file}, input: Process::Redirect::Close, output: io, error: io @@ -74,11 +85,4 @@ describe EngineDrivers::Compiler do # Delete the file File.delete(result[:executable]) end - - with_server do - it "should compile a private driver using the build API" do - result = curl("POST", "/build?repository=private_drivers&driver=drivers/aca/private_helper.cr") - result.status_code.should eq(201) - end - end end From de9b785a6502ec1419d1adf5fdeb96e7ce47d6db Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 31 May 2019 14:20:12 +1000 Subject: [PATCH 0055/1365] fix shards compile target --- shard.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shard.yml b/shard.yml index 001430cc81d..c62bfcde0c6 100644 --- a/shard.yml +++ b/shard.yml @@ -28,5 +28,5 @@ development_dependencies: # compile target targets: - app: + engine-drivers: main: src/app.cr From fd996f54a613f1ba3ca58349d0dbd491f6eb6852 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 31 May 2019 20:16:30 +1000 Subject: [PATCH 0056/1365] add initial findings on runtime debugging --- .gitignore | 1 + .vscode/launch.json | 13 +++ .vscode/tasks.json | 10 ++ docs/gdb-entitlement.xml | 10 ++ docs/runtime-debugging.md | 195 +++++++++++++++++++++++++++++++++ spec/compiler_spec.cr | 6 +- src/config.cr | 2 +- src/controllers/build.cr | 2 +- src/engine-drivers/compiler.cr | 2 +- 9 files changed, 235 insertions(+), 6 deletions(-) create mode 100644 .vscode/launch.json create mode 100644 .vscode/tasks.json create mode 100644 docs/gdb-entitlement.xml create mode 100644 docs/runtime-debugging.md diff --git a/.gitignore b/.gitignore index 0740ce81b60..60a27141da3 100644 --- a/.gitignore +++ b/.gitignore @@ -5,4 +5,5 @@ lib app *.dwarf bin +repositories .DS_Store diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 00000000000..a3bf8f7f1dc --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,13 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "name": "Debug", + "type": "gdb", + "request": "launch", + "target": "./bin/engine-drivers", + "cwd": "${workspaceRoot}", + "preLaunchTask": "Compile" + } + ] +} diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 00000000000..f0d6a53116d --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,10 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "Compile", + "command": "shards build --debug engine-drivers", + "type": "shell" + } + ] +} diff --git a/docs/gdb-entitlement.xml b/docs/gdb-entitlement.xml new file mode 100644 index 00000000000..9d9251f55d9 --- /dev/null +++ b/docs/gdb-entitlement.xml @@ -0,0 +1,10 @@ + + + + + com.apple.security.cs.debugger + + + + + diff --git a/docs/runtime-debugging.md b/docs/runtime-debugging.md new file mode 100644 index 00000000000..9fe51783978 --- /dev/null +++ b/docs/runtime-debugging.md @@ -0,0 +1,195 @@ +# Runtime Debugging + +This is supported via VS Code on OSX or Linux platforms. +It might be possible to do remote debugging on Windows in conjunction with the Linux Layer. + +* Requires [VS Code](https://code.visualstudio.com/) + * install [Crystal Lang](https://marketplace.visualstudio.com/items?itemName=faustinoaq.crystal-lang) extension + * install [Native Debug](https://marketplace.visualstudio.com/items?itemName=webfreak.debug) extension +* Requires [GDB](https://www.gnu.org/software/gdb/) + * On OSX install using [Homebrew](https://brew.sh/) + * Then code sign the executable: https://sourceware.org/gdb/wiki/PermissionsDarwin + * The `gdb-entitlement.xml` file is in this folder + * When creating the signing certificate follow [this guide](https://apple.stackexchange.com/questions/309017/unknown-error-2-147-414-007-on-creating-certificate-with-certificate-assist) + +This should also work with [LLDB](https://lldb.llvm.org/) on OSX however [has issues](https://github.com/crystal-lang/crystal/issues/4457). + + +## Debug on VSCode + +By convention the project directory name is the same as your application name, if you have changed it, please update `${workspaceFolderBasename}` with the name configured inside `shards.yml` + +### 1. `tasks.json` configuration to compile a crystal project + +```javascript +{ + "version": "2.0.0", + "tasks": [ + { + "label": "Compile", + "command": "shards build --debug ${workspaceFolderBasename}", + "type": "shell" + } + ] +} +``` + +### 2. `launch.json` configuration to debug a binary + +#### Using GDB + +```javascript +{ + "version": "0.2.0", + "configurations": [ + { + "name": "Debug", + "type": "gdb", + "request": "launch", + "target": "./bin/${workspaceFolderBasename}", + "cwd": "${workspaceRoot}", + "preLaunchTask": "Compile" + } + ] +} +``` + +#### Using LLDB + +```javascript +{ + "version": "0.2.0", + "configurations": [ + { + "name": "Debug", + "type": "lldb-mi", + "request": "launch", + "target": "./bin/${workspaceFolderBasename}", + "cwd": "${workspaceRoot}", + "preLaunchTask": "Compile" + } + ] +} +``` + +### 3. Then hit the DEBUG green play button + +![debugging](https://i.imgur.com/GsGT1h0.png) + +## Tips and Tricks for debugging Crystal applications + +### 1. Use debugger keyword + +Instead of putting breakpoints using commands inside GDB or LLDB you can try to set a breakpoint using `debugger` keyword. + +```ruby +i = 0 +while i < 3 + i += 1 + debugger # => breakpoint +end +``` + +### 2. Avoid breakpoints inside blocks + +Currently, Crystal lacks support for debugging inside of blocks. If you put a breakpoint inside a block, it will be ignored. + +As a workaround, use `pp` to pretty print objects inside of blocks. + +```ruby +3.times do |i| + pp i +end +# i => 1 +# i => 2 +# i => 3 +``` + +### 3. Try `@[NoInline]` to debug arguments data + +Sometimes crystal will optimize argument data, so the debugger will show `` instead of the arguments. To avoid this behavior use the `@[NoInline]` attribute before your function implementation. + +```ruby +@[NoInline] +def foo(bar) + debugger +end +``` + +### 4. Printing strings objects \(GDB\) + +To print string objects in the debugger: + +First, setup the debugger with the `debugger` statement: + +```ruby +foo = "Hello World!" +debugger +``` + +Then use `print` in the debugging console. + +```bash +(gdb) print &foo.c +$1 = (UInt8 *) 0x10008e6c4 "Hello World!" +``` + +Or add `&foo.c` using a new variable entry on watch section in VSCode debugger + +![Using VSCode GUI](https://i.imgur.com/EpQinL7.png) + +### 5. Printing array variables + +To print array items in the debugger: + +First, setup the debugger with the `debugger` statement: + +```ruby +foo = ["item 0", "item 1", "item 2"] +debugger +``` + +Then use `print` in the debugging console: + +```bash +(gdb) print &foo.buffer[0].c +$19 = (UInt8 *) 0x10008e7f4 "item 0" +``` + +Change the buffer index for each item you want to print. + +### 6. Printing instance variables + +For printing `@foo` var in this code: + +```ruby +class Bar + @foo = 0 + def baz + debugger + end +end + +Bar.new +``` + +You can use `self.foo` in the debugger terminal or VSCode GUI. + +### 7. Print hidden objects + +Some objects do not show at all. You can unhide them using the `.to_s` method and a temporary debugging variable, like this: + +```ruby +def bar(hello) + "#{hello} World!" +end + +def foo(hello) + bar_hello_to_s = bar(hello).to_s + debugger +end + +foo("Hello") +``` + +This trick allows showing the `bar_hello_to_s` variable inside the debugger tool. diff --git a/spec/compiler_spec.cr b/spec/compiler_spec.cr index fd3f4804da5..458b41bb39f 100644 --- a/spec/compiler_spec.cr +++ b/spec/compiler_spec.cr @@ -24,14 +24,14 @@ describe EngineDrivers::Compiler do it "should clone and install a repository" do EngineDrivers::Compiler.clone_and_install("rwlock", "https://github.com/spider-gazelle/readers-writer") - File.file?(File.expand_path("../repositories/rwlock/shard.yml")).should eq(true) - File.directory?(File.expand_path("../repositories/rwlock/bin")).should eq(true) + File.file?(File.expand_path("./repositories/rwlock/shard.yml")).should eq(true) + File.directory?(File.expand_path("./repositories/rwlock/bin")).should eq(true) end it "should compile a private driver" do # Clone the private driver repo EngineDrivers::Compiler.clone_and_install("private_drivers", "https://github.com/aca-labs/private_drivers.git") - File.file?(File.expand_path("../repositories/private_drivers/drivers/aca/private_helper.cr")).should eq(true) + File.file?(File.expand_path("./repositories/private_drivers/drivers/aca/private_helper.cr")).should eq(true) # Test the executable is created result = EngineDrivers::Compiler.build_driver("drivers/aca/private_helper.cr", repository: File.join(EngineDrivers::Compiler.repository_dir, "private_drivers")) diff --git a/src/config.cr b/src/config.cr index 8b907896c19..7359d75b6bf 100644 --- a/src/config.cr +++ b/src/config.cr @@ -51,5 +51,5 @@ ActionController::Session.configure do |settings| settings.secret = ENV["COOKIE_SESSION_SECRET"]? || "4f74c0b358d5bab4000dd3c75465dc2c" end -APP_NAME = "Spider-Gazelle" +APP_NAME = "Engine-Drivers" VERSION = "1.0.0" diff --git a/src/controllers/build.cr b/src/controllers/build.cr index ff6916c530a..b108f1bf2e9 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -19,7 +19,7 @@ class Build < Application # grab the list of available repositories get "/repositories" do - EngineDrivers::Compiler.repositories + render json: EngineDrivers::Compiler.repositories end # grab the list of available versions of file / which are built diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index 568b6490782..8e689ce0c90 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -1,6 +1,6 @@ class EngineDrivers::Compiler @@drivers_dir = Dir.current - @@repository_dir = File.expand_path("../repositories") + @@repository_dir = File.expand_path("./repositories") @@bin_dir = "#{Dir.current}/bin/drivers" {% for name in [:drivers_dir, :repository_dir, :bin_dir] %} From 14ae2f0b24211b837b6158a2ee4bfcdf9a7d278e Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sat, 1 Jun 2019 11:17:55 +1000 Subject: [PATCH 0057/1365] add debug option to builds --- .vscode/launch.json | 5 +++- src/controllers/test.cr | 48 +++++++++++++++++++++++++++++----- src/engine-drivers/compiler.cr | 11 ++++++-- 3 files changed, 54 insertions(+), 10 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index a3bf8f7f1dc..c5ad0ff0fbe 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -7,7 +7,10 @@ "request": "launch", "target": "./bin/engine-drivers", "cwd": "${workspaceRoot}", - "preLaunchTask": "Compile" + "preLaunchTask": "Compile", + "setupCommands": [ + { "text": "-gdb-set follow-fork-mode child" } + ] } ] } diff --git a/src/controllers/test.cr b/src/controllers/test.cr index 9162df3b984..f5f7c1da4b7 100644 --- a/src/controllers/test.cr +++ b/src/controllers/test.cr @@ -1,6 +1,10 @@ class Test < Application before_action :ensure_driver_compiled, only: [:run_spec, :create] - @driver_path : String? + before_action :ensure_spec_compiled, only: [:run_spec, :create] + @driver_path : String = "" + @spec_path : String = "" + + ACA_DRIVERS_DIR = "../../#{Dir.current.split("/")[-1]}" # Specs available def index @@ -20,16 +24,27 @@ class Test < Application # Run the spec and return success if the exit status is 0 def create + io = IO::Memory.new + exit_status = Process.run(@spec_path, + env: {"SPEC_RUN_DRIVER" => @driver_path}, + input: Process::Redirect::Close, + output: io, + error: io + ).exit_status + + render :not_acceptable, text: io.to_s if exit_status != 0 + render text: io.to_s end # WS watch the output from running specs ws "/run_spec", :run_spec do |socket| - spec = params["spec"] - repository = get_repository_path - spec_commit = params["spec_commit"]? || "head" - # Run the spec and pipe all the IO down the websocket + spawn pipe_spec(socket, @spec_path, @driver_path) + end + def pipe_spec(socket, spec_path, driver_path) + # TODO:: + socket.close end def ensure_driver_compiled @@ -40,8 +55,9 @@ class Test < Application driver_path = EngineDrivers::Compiler.is_built?(driver, commit, repository) # Build the driver if has not been compiled yet - if driver_path.nil? - result = EngineDrivers::Compiler.build_driver(driver, commit, get_repository_path) + debug = params["debug"]? + if driver_path.nil? || params["force"]? || debug + result = EngineDrivers::Compiler.build_driver(driver, commit, repository, debug: !!debug) render :not_acceptable, text: result[:output] if result[:exit_status] != 0 driver_path = EngineDrivers::Compiler.is_built?(driver, commit, repository) @@ -50,4 +66,22 @@ class Test < Application # raise an error if the driver still does not exist @driver_path = driver_path.not_nil! end + + def ensure_spec_compiled + spec = params["spec"] + repository = get_repository_path + spec_commit = params["spec_commit"]? || "head" + + spec_path = EngineDrivers::Compiler.is_built?(spec, spec_commit, repository) + + debug = params["debug"]? + if spec_path.nil? || params["force"]? || debug + result = EngineDrivers::Compiler.build_driver(spec, spec_commit, repository, debug: !!debug) + render :not_acceptable, text: result[:output] if result[:exit_status] != 0 + + spec_path = EngineDrivers::Compiler.is_built?(spec, spec_commit, repository) + end + + @spec_path = spec_path.not_nil! + end end diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index 8e689ce0c90..b3f41972340 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -26,7 +26,7 @@ class EngineDrivers::Compiler end # repository is required to have a local `build.cr` file to support compilation - def self.build_driver(source_file, commit = "head", repository = @@drivers_dir, git_checkout = true) + def self.build_driver(source_file, commit = "head", repository = @@drivers_dir, git_checkout = true, debug = false) # Ensure the bin directory exists Dir.mkdir_p @@bin_dir io = IO::Memory.new @@ -46,10 +46,17 @@ class EngineDrivers::Compiler exe_output = File.join(@@bin_dir, "#{exec_name}_#{commit}") build_script = File.join(repository, "src/build.cr") + + args = if debug + {repository, "crystal", "build", "--debug", "-o", exe_output, build_script} + else + {repository, "crystal", "build", "-o", exe_output, build_script} + end + compile_proc = -> do result = Process.run( "./bin/exec_from", - {repository, "crystal", "build", "-o", exe_output, build_script}, + args, {"COMPILE_DRIVER" => source_file}, input: Process::Redirect::Close, output: io, From 49c5d6959e41bf5ea934a08926ed997f60650572 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sat, 1 Jun 2019 16:46:15 +1000 Subject: [PATCH 0058/1365] add spec for test routes --- spec/test_spec.cr | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 spec/test_spec.cr diff --git a/spec/test_spec.cr b/spec/test_spec.cr new file mode 100644 index 00000000000..14b3e3eef3a --- /dev/null +++ b/spec/test_spec.cr @@ -0,0 +1,17 @@ +require "./spec_helper" + +describe Test do + with_server do + it "should list drivers" do + result = curl("GET", "/test?repository=private_drivers") + drivers = Array(String).from_json(result.body) + (drivers.size > 0).should eq(true) + drivers.includes?("drivers/aca/private_helper_spec.cr").should eq(true) + end + + it "should build a driver" do + result = curl("POST", "/test?repository=private_drivers&driver=drivers/aca/private_helper.cr&spec=drivers/aca/private_helper_spec.cr") + result.status_code.should eq(200) + end + end +end From 3801ebfbd2fc96837e0c03ab8edf17c101e2d5d5 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sun, 2 Jun 2019 11:23:05 +1000 Subject: [PATCH 0059/1365] ensure we are not using colour for simplified output processing --- src/controllers/test.cr | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/controllers/test.cr b/src/controllers/test.cr index f5f7c1da4b7..b5c27f14154 100644 --- a/src/controllers/test.cr +++ b/src/controllers/test.cr @@ -25,8 +25,10 @@ class Test < Application # Run the spec and return success if the exit status is 0 def create io = IO::Memory.new - exit_status = Process.run(@spec_path, - env: {"SPEC_RUN_DRIVER" => @driver_path}, + exit_status = Process.run( + @spec_path, + {"--no-color"}, + {"SPEC_RUN_DRIVER" => @driver_path}, input: Process::Redirect::Close, output: io, error: io From 26c530ef956290422910f59015da0ef5e8f04128 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Sun, 2 Jun 2019 23:59:22 +1000 Subject: [PATCH 0060/1365] implement websocket spec runner for more interactive feeedback --- src/controllers/test.cr | 46 +++++++++++++++++++++++++++++++---------- 1 file changed, 35 insertions(+), 11 deletions(-) diff --git a/src/controllers/test.cr b/src/controllers/test.cr index b5c27f14154..1d4d39f98e8 100644 --- a/src/controllers/test.cr +++ b/src/controllers/test.cr @@ -25,14 +25,7 @@ class Test < Application # Run the spec and return success if the exit status is 0 def create io = IO::Memory.new - exit_status = Process.run( - @spec_path, - {"--no-color"}, - {"SPEC_RUN_DRIVER" => @driver_path}, - input: Process::Redirect::Close, - output: io, - error: io - ).exit_status + exit_status = launch_spec(io) render :not_acceptable, text: io.to_s if exit_status != 0 render text: io.to_s @@ -41,14 +34,45 @@ class Test < Application # WS watch the output from running specs ws "/run_spec", :run_spec do |socket| # Run the spec and pipe all the IO down the websocket - spawn pipe_spec(socket, @spec_path, @driver_path) + spawn { pipe_spec(socket) } end - def pipe_spec(socket, spec_path, driver_path) - # TODO:: + def pipe_spec(socket) + output, output_writer = IO.pipe + spawn { launch_spec(output_writer) } + + # Read data coming in from the IO and send it down the websocket + raw_data = Bytes.new(1024) + begin + while !output.closed? + bytes_read = output.read(raw_data) + break if bytes_read == 0 # IO was closed + socket.send String.new(raw_data[0, bytes_read]) + end + rescue IO::Error + rescue Errno + # Input stream closed. This should only occur on termination + end + + # Once the process exits, close the websocket socket.close end + def launch_spec(io) + io << "\nLaunching spec runner\n" + exit_status = Process.run( + @spec_path, + {"--no-color"}, + {"SPEC_RUN_DRIVER" => @driver_path}, + input: Process::Redirect::Close, + output: io, + error: io + ).exit_status + io << "\nspec runner exited with #{exit_status}\n" + io.close + exit_status + end + def ensure_driver_compiled driver = params["driver"] repository = get_repository_path From cb0ca7baaf74dfabf241578b17262ffc360c96aa Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 3 Jun 2019 09:17:11 +1000 Subject: [PATCH 0061/1365] document the API --- docs/http-api.md | 154 +++++++++++++++++++++++++++++++++++++++ spec/build_spec.cr | 2 +- src/controllers/build.cr | 5 +- src/controllers/test.cr | 4 +- 4 files changed, 160 insertions(+), 5 deletions(-) create mode 100644 docs/http-api.md diff --git a/docs/http-api.md b/docs/http-api.md new file mode 100644 index 00000000000..9d218f05df8 --- /dev/null +++ b/docs/http-api.md @@ -0,0 +1,154 @@ +# HTTP API + +Primarily for development. + + +## GET /build + +Returns the list of available drivers + +* `repository=folder_name` (optional) if you wish to specify a third party repository +* `compiled=true` (optional) if you only want the list of compiled drivers + +```json + +["drivers/aca/spec_helper.cr", "..."] +``` + + +### GET /build/repositories + +Returns the list of 3rd party repositories + +```json + +["private_drivers", "..."] +``` + + +### GET /build/repository_commits + +Returns the list of available commits at the repository level + +* `repository=folder_name` (optional) if you wish to specify a third party repository +* `count=50` (optional) if you want more or less commits + +```json + +{ + "commit": "01519d6", + "date": "2019-06-02T23:59:22+10:00", + "author": "Stephen von Takach", + "subject": "implement websocket spec runner" +} +``` + + +### GET /build/{{escaped driver path}} + +Returns the list of compiled versions of the specified file are available + +```json + +["private_drivers_cr_01519d6", "..."] +``` + + +### GET /build/{{escaped driver path}}/commits + +Returns the list of available commits for the current driver + +* `repository=folder_name` (optional) if you wish to specify a third party repository +* `count=50` (optional) if you want more or less commits + +```json + +{ + "commit": "01519d6", + "date": "2019-06-02T23:59:22+10:00", + "author": "Stephen von Takach", + "subject": "implement websocket spec runner" +} +``` + + +### POST /build + +compiles a driver + +* `driver=drivers/path.cr` (required) the path to the driver +* `commit=01519d6` (optional) defaults to head + + +### DELETE /build/{{escaped driver path}} + +deletes compiled versions of a driver + +* `repository=folder_name` (optional) if you wish to specify a third party repository +* `commit=01519d6` (optional) deletes all versions of a driver if not specified + + +## GET /test + +Lists the available specs + +```json + +["drivers/aca/spec_helper_spec.cr", "..."] +``` + + +### GET /test/{{escaped spec path}}/commits + +Returns the list of available commits for the specified spec + +* `repository=folder_name` (optional) if you wish to specify a third party repository +* `count=50` (optional) if you want more or less commits + +```json + +{ + "commit": "01519d6", + "date": "2019-06-02T23:59:22+10:00", + "author": "Stephen von Takach", + "subject": "implement websocket spec runner" +} +``` + + +### POST /test + +Compiles and runs a spec and returns the output + +* `repository=folder_name` (optional) if you wish to specify a third party repository +* `driver=drivers/path/to/file.cr` (required) the driver you want to test +* `spec=drivers/path/to/file_spec.cr` (required) the spec you want to run on the driver +* `commit=01519d6` (optional) the commit you would like the driver to be running at +* `spec_commit=01519d6` (optional) the commit you would like the spec to be running at +* `force=true` (optional) forces a re-compilation of the driver and spec +* `debug=true` (optional) compiles the files with debugging symbols + +```text +Launching spec runner +Launching driver: /Users/steve/Documents/projects/crystal-engine/crystal-engine-drivers/bin/drivers/drivers_aca_private_helper_cr_4f6e0cd +... starting driver IO services +... starting module +... waiting for module +... module connected +... enabling debug output +... starting spec +... spec complete +... terminating driver gracefully +Driver terminated with: 0 + + +Finished in 15.65 milliseconds +0 examples, 0 failures, 0 errors, 0 pending + +spec runner exited with 0 +``` + + +### WebSocket /test/run_spec + +Same requirements as `POST /test` above however it streams the response diff --git a/spec/build_spec.cr b/spec/build_spec.cr index 507dd4b8463..644340bc19c 100644 --- a/spec/build_spec.cr +++ b/spec/build_spec.cr @@ -22,7 +22,7 @@ describe Build do end it "should list possible versions" do - result = curl("GET", "/build/commits/?driver=drivers%2Faca%2Fspec_helper.cr") + result = curl("GET", "/build/drivers%2Faca%2Fspec_helper.cr/commits") result.status_code.should eq(200) commits = JSON.parse(result.body) commits.size.should eq(2) diff --git a/src/controllers/build.cr b/src/controllers/build.cr index b108f1bf2e9..44c6f2b4e95 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -23,8 +23,8 @@ class Build < Application end # grab the list of available versions of file / which are built - get "/commits" do - driver = params["driver"] + get "/:id/commits" do + driver = URI.unescape(params["id"]) count = (params["count"]? || 50).to_i render json: EngineDrivers::GitCommands.commits(driver, count, get_repository_path) @@ -47,6 +47,7 @@ class Build < Application render :not_acceptable, text: result[:output] end + response.headers["Location"] = "/build/#{URI.escape(driver)}" head :created end diff --git a/src/controllers/test.cr b/src/controllers/test.cr index 1d4d39f98e8..12134e9bce4 100644 --- a/src/controllers/test.cr +++ b/src/controllers/test.cr @@ -15,8 +15,8 @@ class Test < Application end # grab the list of available versions of the spec file - get "/commits" do - spec = params["spec"] + get "/:id/commits" do + spec = URI.unescape(params["id"]) count = (params["count"]? || 50).to_i render json: EngineDrivers::GitCommands.commits(spec, count, get_repository_path) From a34721013277556f67bdd30f4d685b3941f4385c Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 3 Jun 2019 10:32:45 +1000 Subject: [PATCH 0062/1365] fix error handler --- src/config.cr | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/config.cr b/src/config.cr index 7359d75b6bf..e3ce08637ec 100644 --- a/src/config.cr +++ b/src/config.cr @@ -20,6 +20,7 @@ require "action-controller/server" # Add handlers that should run before your application ActionController::Server.before( + HTTP::ErrorHandler.new(ENV["SG_ENV"]? != "production"), ActionController::LogHandler.new(STDOUT) { |context| # Allows for custom tags to be included when logging # For example you might want to include a user id here. @@ -28,7 +29,6 @@ ActionController::Server.before( request_id: context.request.id, }.map { |key, value| " #{key}=#{value}" }.join("") }, - HTTP::ErrorHandler.new(ENV["SG_ENV"]? != "production"), HTTP::CompressHandler.new ) From e29227b336e334c64400d367b7de425fc1c5ba2e Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 3 Jun 2019 10:33:53 +1000 Subject: [PATCH 0063/1365] remove active model requirement --- src/config.cr | 1 - 1 file changed, 1 deletion(-) diff --git a/src/config.cr b/src/config.cr index e3ce08637ec..88d1d39c642 100644 --- a/src/config.cr +++ b/src/config.cr @@ -1,6 +1,5 @@ # Application dependencies require "action-controller" -require "active-model" # Allows request IDs to be configured for logging # You can extend this with additional properties From 0bffa0337576689eea22809c3e8ecbcefb6c67ac Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Mon, 3 Jun 2019 11:25:41 +1000 Subject: [PATCH 0064/1365] add a setup guide --- docs/setup.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 docs/setup.md diff --git a/docs/setup.md b/docs/setup.md new file mode 100644 index 00000000000..9d71e3ad2ab --- /dev/null +++ b/docs/setup.md @@ -0,0 +1,30 @@ +# Setup + +This allows you to build and test drivers without installing or running the complete +ACA Engine service. + +1. clone the drivers repository: `git clone https://github.com/aca-labs/crystal-engine-drivers engine-drivers` +2. clone private repositories here: `mkdir ./engine-drivers/repositories` + + +## OSX + +Install [Homebrew](https://brew.sh/) to install dependencies + +* Install [Crystal Lang](https://crystal-lang.org/reference/installation/): `brew install crystal` +* Install libssh2: `brew install libssh2` +* Install redis: `brew install redis` + +Ensure the following lines are in your `.bashrc` file + +```shell +export PATH="/usr/local/opt/llvm/bin:$PATH" +export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opt/openssl/lib/pkgconfig +``` + + +## Running Specs + +1. Ensure redis is running: `redis-server` +2. Launch application: `crystal run ./src/app.cr` +3. Browse to: http://localhost:3000/ From 99351ef27209a5ed3e9dc9e2bce1702b5ab8d48c Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 4 Jun 2019 12:45:18 +1000 Subject: [PATCH 0065/1365] fix building uncommited files also ensures that a file was actually compiled and doesn't only rely on exist status --- src/controllers/build.cr | 4 +++- src/controllers/test.cr | 4 ++-- src/engine-drivers/compiler.cr | 19 +++++++++++++++++-- 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/src/controllers/build.cr b/src/controllers/build.cr index 44c6f2b4e95..7737f914006 100644 --- a/src/controllers/build.cr +++ b/src/controllers/build.cr @@ -43,7 +43,9 @@ class Build < Application result = EngineDrivers::Compiler.build_driver(driver, commit, get_repository_path) - if result[:exit_status] != 0 + if result[:exit_status] == 0 + render :not_acceptable, text: result[:output] unless File.exists?(result[:executable]) + else render :not_acceptable, text: result[:output] end diff --git a/src/controllers/test.cr b/src/controllers/test.cr index 12134e9bce4..7ce6158872d 100644 --- a/src/controllers/test.cr +++ b/src/controllers/test.cr @@ -84,7 +84,7 @@ class Test < Application debug = params["debug"]? if driver_path.nil? || params["force"]? || debug result = EngineDrivers::Compiler.build_driver(driver, commit, repository, debug: !!debug) - render :not_acceptable, text: result[:output] if result[:exit_status] != 0 + render :not_acceptable, text: result[:output] if result[:exit_status] != 0 || !File.exists?(result[:executable]) driver_path = EngineDrivers::Compiler.is_built?(driver, commit, repository) end @@ -103,7 +103,7 @@ class Test < Application debug = params["debug"]? if spec_path.nil? || params["force"]? || debug result = EngineDrivers::Compiler.build_driver(spec, spec_commit, repository, debug: !!debug) - render :not_acceptable, text: result[:output] if result[:exit_status] != 0 + render :not_acceptable, text: result[:output] if result[:exit_status] != 0 || !File.exists?(result[:executable]) spec_path = EngineDrivers::Compiler.is_built?(spec, spec_commit, repository) end diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index b3f41972340..926966f16f2 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -18,7 +18,12 @@ class EngineDrivers::Compiler # Make sure we have an actual version hash of the file if commit == "head" - commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] + # Allow uncommited files to be built + # TODO:: Check if in file list + begin + commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] + rescue + end end exe_output = File.join(@@bin_dir, "#{exec_name}_#{commit}") @@ -38,7 +43,13 @@ class EngineDrivers::Compiler EngineDrivers::GitCommands.file_lock(repository, source_file) do # Make sure we have an actual version hash of the file if commit == "head" - commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] + # Allow uncommited files to be built + # TODO:: Check if in file list + begin + commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] + rescue + git_checkout = false + end end # Want to expose some kind of status signalling @@ -47,6 +58,10 @@ class EngineDrivers::Compiler exe_output = File.join(@@bin_dir, "#{exec_name}_#{commit}") build_script = File.join(repository, "src/build.cr") + # If we are building head and don't want to check anything out + # then we can assume we definitely want to re-build the driver + File.delete(exe_output) if !git_checkout + args = if debug {repository, "crystal", "build", "--debug", "-o", exe_output, build_script} else From bd21cd1b4a674fd7c1574ccbef9db3ecc074e607 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 4 Jun 2019 12:45:59 +1000 Subject: [PATCH 0066/1365] add message media SMS driver with passing spec --- drivers/message_media/sms.cr | 63 +++++++++++++++++++++++++++++++ drivers/message_media/sms_spec.cr | 26 +++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 drivers/message_media/sms.cr create mode 100644 drivers/message_media/sms_spec.cr diff --git a/drivers/message_media/sms.cr b/drivers/message_media/sms.cr new file mode 100644 index 00000000000..ea9c36ddeb7 --- /dev/null +++ b/drivers/message_media/sms.cr @@ -0,0 +1,63 @@ +module MessageMedia; end + +# Documentation: https://developers.messagemedia.com/code/messages-api-documentation/ +require "engine-driver/interface/sms" + +class MessageMedia::SMS < EngineDriver + include EngineDriver::Interface::SMS + + # Discovery Information + generic_name :SMS + descriptive_name "MessageMedia SMS service" + + def on_load + on_update + end + + @username : String = "" + @password : String = "" + + def on_update + # NOTE:: base URI https://api.messagemedia.com + @username = setting?(String, :username) || "" + @password = setting?(String, :password) || "" + end + + def send_sms( + phone_numbers : String | Array(String), + message : String, + format : String? = "SMS", + source : String? = nil + ) + phone_numbers = [phone_numbers] unless phone_numbers.is_a?(Array) + + # Could be MMS etc + format = format || "SMS" + + numbers = phone_numbers.map do |number| + payload = { + :content => message, + :destination_number => number, + :format => format + } + if source + payload[:source_number] = source.to_s + payload[:source_number_type] = "ALPHANUMERIC" + end + payload + end + + basic_auth = "Basic #{Base64.strict_encode("#{@username}:#{@password}")}" + + response = post("/v1/messages", body: { + messages: numbers + }.to_json, headers: { + "Authorization" => basic_auth, + "Content-Type" => "application/json", + "Accept" => "application/json" + }) + + raise "request failed with #{response.status_code}" unless response.status_code == 202 + nil + end +end diff --git a/drivers/message_media/sms_spec.cr b/drivers/message_media/sms_spec.cr new file mode 100644 index 00000000000..997145d1a5b --- /dev/null +++ b/drivers/message_media/sms_spec.cr @@ -0,0 +1,26 @@ +EngineSpec.mock_driver "MessageMedia::SMS" do + # Send the request + response = exec(:send_sms, + phone_numbers: "+61418419954", + message: "hello steve" + ) + + # sms should send a HTTP request + expect_http_request do |request, response| + io = request.body + if io + data = io.gets_to_end + request = JSON.parse(data) + if request["messages"][0]["content"] == "hello steve" + response.status_code = 202 + else + response.status_code = 401 + end + else + raise "expected request to include dialing details #{request.inspect}" + end + end + + # What the sms function should return + response.get.should eq(nil) +end From 5d7ad490c75e959b2d2bb605715266103ad8ee60 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 4 Jun 2019 12:50:03 +1000 Subject: [PATCH 0067/1365] run crystal tool format --- src/app.cr | 4 ++-- src/build.cr | 1 - src/engine-drivers/compiler.cr | 10 +++++----- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/app.cr b/src/app.cr index 44bb7caeb1a..c95bda561ba 100644 --- a/src/app.cr +++ b/src/app.cr @@ -18,10 +18,10 @@ OptionParser.parse(ARGV.dup) do |parser| # as we don't want concurrent access occuring # (technically git allows concurrent repo access however you may experience unexpected # results as file revisions are changed while compiling etc) - #parser.on("-w COUNT", "--workers=COUNT", "Specifies the number of processes to handle requests") do |w| + # parser.on("-w COUNT", "--workers=COUNT", "Specifies the number of processes to handle requests") do |w| # cluster = true # process_count = w.to_i - #end + # end parser.on("-r", "--routes", "List the application routes") do ActionController::Server.print_routes diff --git a/src/build.cr b/src/build.cr index 3a0bb1f9adf..741c878e600 100644 --- a/src/build.cr +++ b/src/build.cr @@ -1,4 +1,3 @@ - {% if env("COMPILE_DRIVER").ends_with?("_spec.cr") %} require "engine-driver/engine-specs/runner" {% else %} diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index 926966f16f2..94aea3897e1 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -63,12 +63,12 @@ class EngineDrivers::Compiler File.delete(exe_output) if !git_checkout args = if debug - {repository, "crystal", "build", "--debug", "-o", exe_output, build_script} - else - {repository, "crystal", "build", "-o", exe_output, build_script} - end + {repository, "crystal", "build", "--debug", "-o", exe_output, build_script} + else + {repository, "crystal", "build", "-o", exe_output, build_script} + end - compile_proc = -> do + compile_proc = ->do result = Process.run( "./bin/exec_from", args, From e46ccd3ff9f947d07bd234b5ebfe9a4f0bccd90e Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 4 Jun 2019 13:38:51 +1000 Subject: [PATCH 0068/1365] fix indentation level --- drivers/message_media/sms.cr | 100 +++++++++++++++++------------------ 1 file changed, 50 insertions(+), 50 deletions(-) diff --git a/drivers/message_media/sms.cr b/drivers/message_media/sms.cr index ea9c36ddeb7..73670eab6db 100644 --- a/drivers/message_media/sms.cr +++ b/drivers/message_media/sms.cr @@ -6,58 +6,58 @@ require "engine-driver/interface/sms" class MessageMedia::SMS < EngineDriver include EngineDriver::Interface::SMS - # Discovery Information - generic_name :SMS - descriptive_name "MessageMedia SMS service" - - def on_load - on_update + # Discovery Information + generic_name :SMS + descriptive_name "MessageMedia SMS service" + + def on_load + on_update + end + + @username : String = "" + @password : String = "" + + def on_update + # NOTE:: base URI https://api.messagemedia.com + @username = setting?(String, :username) || "" + @password = setting?(String, :password) || "" + end + + def send_sms( + phone_numbers : String | Array(String), + message : String, + format : String? = "SMS", + source : String? = nil + ) + phone_numbers = [phone_numbers] unless phone_numbers.is_a?(Array) + + # Could be MMS etc + format = format || "SMS" + + numbers = phone_numbers.map do |number| + payload = { + :content => message, + :destination_number => number, + :format => format, + } + if source + payload[:source_number] = source.to_s + payload[:source_number_type] = "ALPHANUMERIC" + end + payload end - @username : String = "" - @password : String = "" + basic_auth = "Basic #{Base64.strict_encode("#{@username}:#{@password}")}" - def on_update - # NOTE:: base URI https://api.messagemedia.com - @username = setting?(String, :username) || "" - @password = setting?(String, :password) || "" - end + response = post("/v1/messages", body: { + messages: numbers, + }.to_json, headers: { + "Authorization" => basic_auth, + "Content-Type" => "application/json", + "Accept" => "application/json", + }) - def send_sms( - phone_numbers : String | Array(String), - message : String, - format : String? = "SMS", - source : String? = nil - ) - phone_numbers = [phone_numbers] unless phone_numbers.is_a?(Array) - - # Could be MMS etc - format = format || "SMS" - - numbers = phone_numbers.map do |number| - payload = { - :content => message, - :destination_number => number, - :format => format - } - if source - payload[:source_number] = source.to_s - payload[:source_number_type] = "ALPHANUMERIC" - end - payload - end - - basic_auth = "Basic #{Base64.strict_encode("#{@username}:#{@password}")}" - - response = post("/v1/messages", body: { - messages: numbers - }.to_json, headers: { - "Authorization" => basic_auth, - "Content-Type" => "application/json", - "Accept" => "application/json" - }) - - raise "request failed with #{response.status_code}" unless response.status_code == 202 - nil - end + raise "request failed with #{response.status_code}" unless response.status_code == 202 + nil + end end From b387fa8b1d3c1c3d5e78ef983d4af166e86aa584 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 4 Jun 2019 13:41:10 +1000 Subject: [PATCH 0069/1365] improve working with non-checked in files and modified files --- src/engine-drivers/compiler.cr | 33 ++++++++++++++++++++---------- src/engine-drivers/git_commands.cr | 17 +++++++++++++++ 2 files changed, 39 insertions(+), 11 deletions(-) diff --git a/src/engine-drivers/compiler.cr b/src/engine-drivers/compiler.cr index 94aea3897e1..7656270ce14 100644 --- a/src/engine-drivers/compiler.cr +++ b/src/engine-drivers/compiler.cr @@ -18,11 +18,14 @@ class EngineDrivers::Compiler # Make sure we have an actual version hash of the file if commit == "head" - # Allow uncommited files to be built - # TODO:: Check if in file list - begin - commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] - rescue + diff = EngineDrivers::GitCommands.diff(source_file, repository) + + if diff.empty? + # Allow uncommited files to be built + begin + commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] + rescue + end end end @@ -43,11 +46,15 @@ class EngineDrivers::Compiler EngineDrivers::GitCommands.file_lock(repository, source_file) do # Make sure we have an actual version hash of the file if commit == "head" - # Allow uncommited files to be built - # TODO:: Check if in file list - begin - commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] - rescue + diff = EngineDrivers::GitCommands.diff(source_file, repository) + if diff.empty? + # Allow uncommited files to be built + begin + commit = EngineDrivers::GitCommands.commits(source_file, 1, repository)[0][:commit] + rescue + git_checkout = false + end + else git_checkout = false end end @@ -60,7 +67,11 @@ class EngineDrivers::Compiler # If we are building head and don't want to check anything out # then we can assume we definitely want to re-build the driver - File.delete(exe_output) if !git_checkout + begin + File.delete(exe_output) if !git_checkout + rescue + # deleting a non-existant file will raise an exception + end args = if debug {repository, "crystal", "build", "--debug", "-o", exe_output, build_script} diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index 8ab0d05896b..0dee1291231 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -63,6 +63,23 @@ class EngineDrivers::GitCommands end end + def self.diff(file_name, repository = EngineDrivers::Compiler.drivers_dir) + io = IO::Memory.new + + result = file_operation(repository, file_name) do + Process.run( + "./bin/exec_from", {repository, "git", "--no-pager", "diff", "--no-color", file_name}, + input: Process::Redirect::Close, + output: io, + error: Process::Redirect::Close + ) + end + + # File most likely doesn't exist + return "error" if result.exit_status != 0 + io.to_s.strip + end + def self.repository_commits(repository = EngineDrivers::Compiler.drivers_dir, count = 50) io = IO::Memory.new From 2bd365e918eb9478574665815dd690a7d7b65c46 Mon Sep 17 00:00:00 2001 From: Caspian Baska Date: Tue, 4 Jun 2019 14:23:21 +1000 Subject: [PATCH 0070/1365] construct user+password repository uri with URI parser --- src/engine-drivers/git_commands.cr | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/engine-drivers/git_commands.cr b/src/engine-drivers/git_commands.cr index 0dee1291231..8d83e068742 100644 --- a/src/engine-drivers/git_commands.cr +++ b/src/engine-drivers/git_commands.cr @@ -1,4 +1,5 @@ require "rwlock" +require "uri" class EngineDrivers::GitCommands # Will really only be an issue once threads come along @@ -181,11 +182,10 @@ class EngineDrivers::GitCommands raise "invalid folder structure. Working directory: '#{working_dir}', repository: '#{repository}', resulting path: '#{repo_dir}'" unless valid if username && password - # TODO:: Should probably use URI parser here - # remove the https:// - uri = repository_uri[8..-1] - # rebuild URL - repository_uri = "https://#{username}:#{password}@#{uri}" + uri_builder = URI.parse(repository_uri) + uri_builder.user = username + uri_builder.password = password + repository_uri = uri_builder.to_s end io = IO::Memory.new From f80b1645cf33b07e9ff49526f7febd4fbd0ed849 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Tue, 4 Jun 2019 23:59:03 +1000 Subject: [PATCH 0071/1365] initial work porting lutron driver --- drivers/lutron/lighting.cr | 219 ++++++++++++++++++++++++++++++++ drivers/lutron/lighting_spec.cr | 39 ++++++ 2 files changed, 258 insertions(+) create mode 100644 drivers/lutron/lighting.cr create mode 100644 drivers/lutron/lighting_spec.cr diff --git a/drivers/lutron/lighting.cr b/drivers/lutron/lighting.cr new file mode 100644 index 00000000000..0690942cddd --- /dev/null +++ b/drivers/lutron/lighting.cr @@ -0,0 +1,219 @@ +module Lutron; end + +# Documentation: https://aca.im/driver_docs/Lutron/lutron-lighting.pdf + +# Device defaults +# Login #1: nwk +# Login #2: nwk2 + +# Login: lutron +# Password: integration + +class Lutron::Lighting < EngineDriver + # Discovery Information + tcp_port 23 + descriptive_name "Lutron Lighting Gateway" + generic_name :Lighting + + def on_load + # Communication settings + queue.wait = false + queue.delay = 100.milliseconds + transport.tokenizer = Tokenizer.new("\r\n") + + on_update + end + + @trigger_type : String = "area" + @login : String = "nwk" + + def on_update + @login = setting?(String, :login) || "nwk" + @trigger_type = setting?(String, :trigger) || "area" + end + + def connected + send "#{@login}\r\n", priority: 9999 + + schedule.every(40.seconds) do + logger.debug "-- Polling Lutron" + scene? 1 + end + end + + def disconnected + schedule.clear + end + + def restart + send_cmd "RESET", 0 + end + + # on or off + def lighting(device : Int32, state : Bool, action : Int32 = 1) + level = state ? 100 : 0 + light_level(device, level) + end + + # =============== + # OUTPUT COMMANDS + # =============== + + # dimmers, CCOs, or other devices in a system that have a controllable output + def level( + device : Int32, + level : Int32, + rate : Int32 = 1000, + component : String = "output" + ) + level = level.clamp(0, 100) + seconds = rate / 1000 + min = seconds / 60 + seconds -= min * 60 + time = "#{min.to_s.rjust(2, '0')}:#{seconds.to_s.rjust(2, '0')}" + send_cmd component.upcase, device, 1, level, time + end + + def blinds(device : String, action : String, component : String = "shadegrp") + case action.downcase + when "raise", "up" + send_cmd component.upcase, device, 3 + when "lower", "down" + send_cmd component.upcase, device, 2 + when "stop" + send_cmd component.upcase, device, 4 + end + end + + # ============= + # AREA COMMANDS + # ============= + def scene(area : Int32, scene : Int32, component : String = "area") + send_cmd(component.upcase, area, 6, scene).get + scene?(area, component) + end + + def scene?(area : Int32, component : String = "area") + send_query component.upcase, area, 6 + end + + def occupancy?(area : Int32) + send_query "AREA", area, 8 + end + + def daylight_mode?(area : Int32) + send_query "AREA", area, 7 + end + + def daylight(area : Int32, mode : Bool) + val = mode ? 1 : 2 + send_cmd "AREA", area, 7, val + end + + # =============== + # DEVICE COMMANDS + # =============== + def button_press(area : Int32, button : Int32) + send_cmd "DEVICE", area, button, 3 + end + + def led(area : Int32, device : Int32, state : Int32 | Bool) + val = if state.is_a?(Int32) + state + else + state ? 1 : 0 + end + + send_cmd "DEVICE", area, device, 9, val + end + + def led?(area : Int32, device : Int32) + send_query "DEVICE", area, device, 9 + end + + # ============= + # COMPATIBILITY + # ============= + def trigger(area : Int32, scene : Int32) + scene(area, scene, @trigger_type) + end + + def light_level(area : Int32, level : Int32, component : String? = nil, fade : Int32 = 1000) + if component + level(area, level, fade, component) + else + level(area, level, fade, "area") + end + end + + Errors = { + "1" => "Parameter count mismatch", + "2" => "Object does not exist", + "3" => "Invalid action number", + "4" => "Parameter data out of range", + "5" => "Parameter data malformed", + "6" => "Unsupported Command", + } + + Occupancy = { + "1" => "unknown", + "2" => "inactive", + "3" => "occupied", + "4" => "unoccupied", + } + + def received(data, task) + data = String.new(data) + logger.debug { "Lutron sent: #{data}" } + + parts = data.split(",") + component = parts[0][1..-1].downcase + + case component + when "area", "output", "shadegrp" + area = parts[1] + action = parts[2].to_i + param = parts[3] + + case action + when 1 # level + self["#{component}#{area}_level"] = param.to_f + when 6 # Scene + self["#{component}#{area}"] = param.to_i + when 7 + self["#{component}#{area}_daylight"] = param == "1" + when 8 + self["#{component}#{area}_occupied"] = Occupancy[param] + end + when "device" + area = parts[1] + device = parts[2] + action = parts[3].to_i + + case action + when 7 # Scene + self["device#{area}_#{device}"] = parts[4].to_i + when 9 # LED state + self["device#{area}_#{device}_led"] = parts[4].to_i + end + when "error" + error = "error #{parts[1]}: #{Errors[parts[1]]}" + logger.warn error + return task.abort(error) + end + + task.success + end + + protected def send_cmd(*command) + cmd = "##{command.join(",")}" + logger.debug { "Requesting: #{cmd}" } + send("#{cmd}\r\n") + end + + protected def send_query(*command) + cmd = "?#{command.join(",")}" + logger.debug { "Querying: #{cmd}" } + send("#{cmd}\r\n") + end +end diff --git a/drivers/lutron/lighting_spec.cr b/drivers/lutron/lighting_spec.cr new file mode 100644 index 00000000000..cde161274ba --- /dev/null +++ b/drivers/lutron/lighting_spec.cr @@ -0,0 +1,39 @@ +EngineSpec.mock_driver "Lutron::Lighting" do + # Module waits for this text to become ready + transmit "login: " + should_send "nwk\r\n" + transmit "connection established\r\n" + + sleep 110.milliseconds + + # Perform actions + exec(:scene?, area: 1) + should_send("?AREA,1,6\r\n") + responds("~AREA,1,6,2\r\n") + status[:area1].should eq(2) + + transmit "~DEVICE,1,6,9,1\r\n" + status[:device1_6_led].should eq(1) + + transmit "~AREA,1,6,1\r\n" + status[:area1].should eq(1) + + transmit "~OUTPUT,53,1,100.00\r\n" + status[:output53_level].should eq(100.00) + + transmit "~SHADEGRP,26,1,100.00\r\n" + status[:shadegrp26_level].should eq(100.00) + + sleep 110.milliseconds + + exec(:scene, area: 1, scene: 3) + should_send("#AREA,1,6,3\r\n") + responds("\r\n") + + sleep 110.milliseconds + + should_send("?AREA,1,6\r\n") + transmit "~AREA,1,6,3\r\n" + + status[:area1].should eq(3) +end From 89ce1ba827aac7e8f3d2c8de09d8596f2885f58a Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 5 Jun 2019 11:23:51 +1000 Subject: [PATCH 0072/1365] final version of lutron driver --- drivers/lutron/lighting.cr | 4 ++-- drivers/lutron/lighting_spec.cr | 9 ++------- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/drivers/lutron/lighting.cr b/drivers/lutron/lighting.cr index 0690942cddd..d024826aaf8 100644 --- a/drivers/lutron/lighting.cr +++ b/drivers/lutron/lighting.cr @@ -199,10 +199,10 @@ class Lutron::Lighting < EngineDriver when "error" error = "error #{parts[1]}: #{Errors[parts[1]]}" logger.warn error - return task.abort(error) + return task.try &.abort(error) end - task.success + task.try &.success end protected def send_cmd(*command) diff --git a/drivers/lutron/lighting_spec.cr b/drivers/lutron/lighting_spec.cr index cde161274ba..c71ae688717 100644 --- a/drivers/lutron/lighting_spec.cr +++ b/drivers/lutron/lighting_spec.cr @@ -4,12 +4,11 @@ EngineSpec.mock_driver "Lutron::Lighting" do should_send "nwk\r\n" transmit "connection established\r\n" - sleep 110.milliseconds - # Perform actions - exec(:scene?, area: 1) + response = exec(:scene?, area: 1) should_send("?AREA,1,6\r\n") responds("~AREA,1,6,2\r\n") + response.get status[:area1].should eq(2) transmit "~DEVICE,1,6,9,1\r\n" @@ -24,14 +23,10 @@ EngineSpec.mock_driver "Lutron::Lighting" do transmit "~SHADEGRP,26,1,100.00\r\n" status[:shadegrp26_level].should eq(100.00) - sleep 110.milliseconds - exec(:scene, area: 1, scene: 3) should_send("#AREA,1,6,3\r\n") responds("\r\n") - sleep 110.milliseconds - should_send("?AREA,1,6\r\n") transmit "~AREA,1,6,3\r\n" From a9bf4f7b1f71fac57d0dccb95687c93e5acc557a Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Thu, 6 Jun 2019 12:00:45 +1000 Subject: [PATCH 0073/1365] (drivers:helvar) add helvar driver --- drivers/helvar/helvar_net_protocol.md | 95 +++++++++ drivers/helvar/net.cr | 296 ++++++++++++++++++++++++++ drivers/helvar/net_spec.cr | 25 +++ 3 files changed, 416 insertions(+) create mode 100644 drivers/helvar/helvar_net_protocol.md create mode 100755 drivers/helvar/net.cr create mode 100644 drivers/helvar/net_spec.cr diff --git a/drivers/helvar/helvar_net_protocol.md b/drivers/helvar/helvar_net_protocol.md new file mode 100644 index 00000000000..6ec61f6a72a --- /dev/null +++ b/drivers/helvar/helvar_net_protocol.md @@ -0,0 +1,95 @@ + +# Helvar.net Protocol + +Reference: https://aca.im/driver_docs/Helvar/HelvarNet-Overview.pdf + +For use with Helvar to DALI routers + +* TCP port: 50000 +* UDP port: 50001 + + +## Addressing + +The Helvar lighting router system would consist of a number of routers (910 or 920) that enable +connection to a variety of different inputs and outputs using a different data buses. + +The backbone structure of the system uses Ethernet Cat 5 cabling & the TCP/IP protocol. As +such each system (or workgroup) is a cluster of routers. The cluster (3rd Octet in IP addressing) +forms the first part of the unique device address + +Each router within the system will then have a unique IP address with the 4th octet providing the +unique router number. This number forms the second digit of the unique device address. + +The cluster.router is then followed by a subnet. The subnet refers to the data bus on which +inputs or output devices are connected. Depending on the router type (910 or 920) there are 2 +or 4 subnets available. In both case’s subnet 1 & 2 use the DALI protocol. For the 920 you have +additional subnets 3 (using S-Dim) and 4 (DMX). + +Following cluster.router.subnet is then the device address. This number is limited by the type of +subnet to which the device is connected and in the case of output devices completes the device +address. + +For input devices there is a further sub-device which will refer to a particular property of that +input device for example a control panel (device) would have a number of buttons (sub-device). + +So a full address would be written:- + +* Cluster (1..253), Router (1..254), Subnet (1..4), Device (1..255), Subdevice (1..16) +* cluster.router.subnet.address for output devices +* cluster.router.subnet.address for input devices +* cluster.router.subnet.address.sub-address for input sub-devices + +### Address Structure + +* Cluster = the 3rd octet of the IP address range used +* Router = the 4th octet of the IP address of that particular router +* Subnet = the data bus on which devices are connected (Dali 1 = 1, Dali 2 = 2, S-Dim = 3, DMX = 4) +* Address = the device address, dependant on the data bus (Dali = 1-64, S-Dim = 1-252, DMX = 1-512) +* Sub-address = the sub-device of the device (button, sensor, input etc.) + + +## Commands + +* `>V:` is the command prefix (`>V:2` represents the protocol version 2) +* `C:` is the command type + * `11` == select scene + * `13` == direct level group address + * `14` == direct level short address + * `109` == query selected scene +* `G:` specifies the lighting group +* `S:` specifices the lighting scene +* `F:` specifies the fade time (in 1/100ths of a second. So a fade of 900 is 9 seconds) +* `L:` specifies the level (between 1 and 100) +* `@` specifies the short address (looks like: 1.2.1.1) +* all commands end with a `#` + + +### Example Commands + +* Direct level, short address: `>V:1,C:14,L:{0},F:{1},@{2}#` + * {0} == level, {1} == fade_time, {2} == address +* Direct level, group address: `>V:1,C:13,G:{0},L:{1},F:{2}#` + * {0} == address, {1} == level, {2} == fade_time +* Keep socket alive: `>V:1,C:14,L:0,F:9000,@65#` + * Write to dummy address to keep socket alive + + +### Example Query + +* `>V:2,C:109,G:17#` query Group 17 as to which scene it is currently in + * responds with: `?V:2,C:109,G:17=14#` + * i.e. Group 17 is in scene 14 + +### Example Error + +* `>V:1,C:104,@:2.2.1.1#` query device type + * responds with: `!V:1,C:104,@:2.2.1.1=11#` + * i.e. error 11, device does not exist + + +References: + +* https://github.com/tkln/HelvarNet/blob/master/helvar.py +* https://github.com/houmio/houmio-driver-helvar-router/blob/master/src/driver.coffee + diff --git a/drivers/helvar/net.cr b/drivers/helvar/net.cr new file mode 100755 index 00000000000..2d49eae03be --- /dev/null +++ b/drivers/helvar/net.cr @@ -0,0 +1,296 @@ +module Helvar; end + +# Documentation: https://aca.im/driver_docs/Helvar/HelvarNet-Overview.pdf + +class Helvar::Net < EngineDriver + # Discovery Information + tcp_port 50000 + descriptive_name "Helvar Net Lighting Gateway" + generic_name :Lighting + + default_settings({ + version: 2, + ignore_blocks: true, + poll_group: nil, + }) + + def on_load + transport.tokenizer = Tokenizer.new("#") + on_update + end + + def on_update + @version = setting?(Int32, :version) || 2 + @ignore_blocks = setting?(Bool, :ignore_blocks) || true + @poll_group = setting?(Int32, :poll_group) + end + + @poll_group : Int32? + + def connected + schedule.every(40.seconds) do + logger.debug "-- Polling Helvar" + if poll_group = @poll_group + get_current_preset poll_group + else + query_software_version + end + end + end + + def disconnected + schedule.clear + end + + def lighting(group : Int32, state : Bool) + level = state ? 100 : 0 + light_level(group, level) + end + + def light_level(group : Int32, level : Int32, fade : Int32 = 1000) + fade = (fade / 10).to_i + self["area#{group}_level"] = level + group_level(group: group, level: level, fade: fade, name: "group_level#{group}") + end + + def trigger(group : Int32, scene : Int32, fade : Int32 = 1000) + fade = (fade / 10).to_i + self["area#{group}"] = scene + group_scene(group: group, scene: scene, fade: fade, name: "group_scene#{group}") + end + + def get_current_preset(group : Int32) + query_last_scene(group: group) + end + + # NOTE:: There seems to be a limit on how many methods can be dynamically generated + # which is why some of these have been commented out. + CMD_METHODS = { + group_scene: 11, + device_scene: 12, + group_level: 13, + device_level: 14, + group_proportion: 15, + device_proportion: 16, + group_modify_proportion: 17, + device_modify_proportion: 18, + # group_emergency_test: 19, + # device_emergency_test: 20, + # group_emergency_duration_test: 21, + # device_emergency_duration_test: 22, + # group_emergency_stop: 23, + # device_emergency_stop: 24, + + # Query commands + query_lamp_hours: 70, + query_ballast_hours: 71, + # query_max_voltage: 72, + # query_min_voltage: 73, + # query_max_temp: 74, + # query_min_temp: 75, + # query_device_types_with_addresses: 100, + query_clusters: 101, + query_routers: 102, + query_LSIB: 103, + query_device_type: 104, + query_description_group: 105, + query_description_device: 106, + # query_workgroup_name: 107, # must use UDP + # query_workgroup_membership: 108, + query_last_scene: 109, + query_device_state: 110, + # query_device_disabled: 111, + query_lamp_failure: 112, + query_device_faulty: 113, + # query_missing: 114, + # query_emergency_battery_failure: 129, + # query_measurement: 150, + query_inputs: 151, + # query_load: 152, + # query_power_consumption: 160, + # query_group_power_consumption: 161, + query_group: 164, + query_groups: 165, + query_scene_names: 166, + query_scene_info: 167, + # query_emergency_func_test_time: 170, + # query_emergency_func_test_state: 171, + # query_emergency_duration_time: 172, + # query_emergency_duration_state: 173, + # query_emergency_battery_charge: 174, + # query_emergency_battery_time: 175, + # query_emergency_total_lamp_time: 176, + query_time: 185, + # query_longitude: 186, + # query_latitude: 187, + query_time_zone: 188, + query_daylight_savings: 189, + query_software_version: 190, + query_helvar_net: 191, + } + + # Dynamically define methods based on the tuple above + macro define_cmd(name, command) + def {{name.id}}(group : Int32? = nil, block : Int32? = nil, level : Int32? = nil, scene : Int32? = nil, fade : Int32? = nil, addr : Int32? = nil, **options) + do_send({{command.id.stringify}}, @version, group, block, level, scene, fade, addr, **options) + end + end + + {% for name, command in CMD_METHODS %} + define_cmd({{name}}, {{command}}) + {% end %} + + # Generate a String => String hash based on the data above + macro build_command_hash + COMMANDS = { + {% for name, command in CMD_METHODS %} + {{name.id.stringify}} => {{command.id.stringify}}, + {% end %} + } + COMMANDS.merge!(COMMANDS.invert) + end + + build_command_hash + + PARAMS = { + "V" => :ver, + "Q" => :seq, + "C" => :cmd, + "A" => :ack, + "@" => :addr, + "F" => :fade, + "T" => :time, + "L" => :level, + "G" => :group, + "S" => :scene, + "B" => :block, + "N" => :latitude, + "E" => :longitude, + "Z" => :time_zone, + # brighter or dimmer than the current level by a % of the difference + "P" => :proportion, + "D" => :display_screen, + "Y" => :daylight_savings, + "O" => :force_store_scene, + "K" => :constant_light_scene, + } + + def received(data, task) + data = String.new(data) + logger.debug { "Helvar sent: #{data}" } + + # Remove the # at the end of the message + data = data[0..-2] + + # Group level changed: ?V:2,C:109,G:12706=13 (query scene response) + # Update pushed >V:2,C:11,G:25007,B:1,S:13,F:100 (current scene level) + + # Remove junk data (when whitelisting gateway is in place) + start_of_message = data.index(/[\?\>\!]V:/i) + if start_of_message != 0 + logger.warn { "Lighting error response: #{data[0...start_of_message]}" } + data = data[start_of_message..-1] + end + + # remove connectors from multi-part responses + data = data.delete("$") + + indicator = data[0] + case indicator + when '?', '>' + # remove indicator + data = data[1..-1] + + # check if this is a result + parts = data.split("=") + data = parts[0] + value = parts[1]? + + # Extract components of the message + params = {} of Symbol => String + data.split(",").each do |param| + parts = param.split(":") + if parts.size > 1 + params[PARAMS[parts[0]]] = parts[1] + elsif parts[0][0] == '@' + params[:addr] == parts[0][1..-1] + else + logger.debug { "unknown param type #{param}" } + end + end + + # Check for :ack + ack = params[:ack]? + if ack + return task.try &.abort("request failed") if ack != "1" + return task.try &.success + end + + cmd = COMMANDS[params[:cmd]] + case cmd + when "query_last_scene" + self["area#{params[:group]}"] = value.try &.to_i + when "group_scene" + block = params[:block] + if block + if @ignore_blocks + self["area#{params[:group]}"] = params[:scene].to_i + else + self["area#{params[:group]}_block#{block}"] = params[:scene].to_i + end + else + self["area#{params[:group]}"] = params[:scene].to_i + end + else + logger.debug { "unknown response value\n#{cmd} = #{value}" } + end + when '!' + error = ERRORS[data.split("=")[1]] + error = "error #{error} for #{data}" + self[:last_error] = error + logger.warn error + return task.try &.abort(error) + else + logger.info "unknown request #{data}" + end + + task.try &.success + end + + ERRORS = { + "0" => "success", + "1" => "Invalid group index parameter", + "2" => "Invalid cluster parameter", + "3" => "Invalid router", + "4" => "Invalid router subnet", + "5" => "Invalid device parameter", + "6" => "Invalid sub device parameter", + "7" => "Invalid block parameter", + "8" => "Invalid scene", + "9" => "Cluster does not exist", + "10" => "Router does not exist", + "11" => "Device does not exist", + "12" => "Property does not exist", + "13" => "Invalid RAW message size", + "14" => "Invalid messages type", + "15" => "Invalid message command", + "16" => "Missing ASCII terminator", + "17" => "Missing ASCII parameter", + "18" => "Incompatible version", + } + + protected def do_send(cmd : String, ver = @version, group = nil, block = nil, level = nil, scene = nil, fade = nil, addr = nil, **options) + req = String.build do |str| + str << ">V:" << ver << ",C:" << cmd + str << ",G:" << group if group + str << ",B:" << block if block + str << ",L:" << level if level + str << ",S:" << scene if scene + str << ",F:" << fade if fade + str << ",@:" << addr if addr + str << "#" + end + logger.debug { "Requesting helvar: #{req}" } + send(req, **options) + end +end diff --git a/drivers/helvar/net_spec.cr b/drivers/helvar/net_spec.cr new file mode 100644 index 00000000000..3f13bc350f1 --- /dev/null +++ b/drivers/helvar/net_spec.cr @@ -0,0 +1,25 @@ +EngineSpec.mock_driver "Helvar::Net" do + # Perform actions + resp = exec(:trigger, group: 1, scene: 2, fade: 1100) + should_send(">V:2,C:11,G:1,S:2,F:110#") + responds(">V:2,C:11,G:1,S:2,F:110,A:1#") + resp.get + status[:area1].should eq(2) + + resp = exec(:get_current_preset, group: 17) + should_send(">V:2,C:109,G:17#") + responds("?V:2,C:109,G:17=14#") + resp.get + status[:area17].should eq(14) + + resp = exec(:get_current_preset, group: 20) + should_send(">V:2,C:109,G:20#") + responds("!V:2,C:109,G:20=1#") + expect_raises(EngineDriver::RemoteException, "error Invalid group index parameter for !V:2,C:109,G:20=1 (Abort)") do + resp.get + end + status[:last_error].should eq("error Invalid group index parameter for !V:2,C:109,G:20=1") + + transmit(">V:2,C:11,G:2001,B:1,S:1,F:100#") + status[:area2001].should eq(1) +end From 290f3d63156faf377fcbecc234117fc9485ff186 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Thu, 6 Jun 2019 14:40:53 +1000 Subject: [PATCH 0074/1365] output is empty on a successful build --- src/controllers/test.cr | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/controllers/test.cr b/src/controllers/test.cr index 7ce6158872d..bea54b08e02 100644 --- a/src/controllers/test.cr +++ b/src/controllers/test.cr @@ -84,7 +84,8 @@ class Test < Application debug = params["debug"]? if driver_path.nil? || params["force"]? || debug result = EngineDrivers::Compiler.build_driver(driver, commit, repository, debug: !!debug) - render :not_acceptable, text: result[:output] if result[:exit_status] != 0 || !File.exists?(result[:executable]) + output = result[:output].strip + render :not_acceptable, text: output if result[:exit_status] != 0 || !output.empty? || !File.exists?(result[:executable]) driver_path = EngineDrivers::Compiler.is_built?(driver, commit, repository) end @@ -103,7 +104,8 @@ class Test < Application debug = params["debug"]? if spec_path.nil? || params["force"]? || debug result = EngineDrivers::Compiler.build_driver(spec, spec_commit, repository, debug: !!debug) - render :not_acceptable, text: result[:output] if result[:exit_status] != 0 || !File.exists?(result[:executable]) + output = result[:output].strip + render :not_acceptable, text: output if result[:exit_status] != 0 || !output.empty? || !File.exists?(result[:executable]) spec_path = EngineDrivers::Compiler.is_built?(spec, spec_commit, repository) end From 52fc7e6bf69ab0e452c73f3e85979239e91769dc Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Thu, 6 Jun 2019 15:09:47 +1000 Subject: [PATCH 0075/1365] update docs with an example of running a spec --- docs/setup.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/setup.md b/docs/setup.md index 9d71e3ad2ab..6ae45c39eeb 100644 --- a/docs/setup.md +++ b/docs/setup.md @@ -28,3 +28,10 @@ export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opt/openssl/lib/pkgconfig 1. Ensure redis is running: `redis-server` 2. Launch application: `crystal run ./src/app.cr` 3. Browse to: http://localhost:3000/ + +Now you can build drivers and run specs: + +* Build a drvier or spec: `curl -X POST "http://localhost:3000/build?driver=drivers/helvar/net.cr"` +* Run a spec: `curl -X POST "http://localhost:3000/test?driver=drivers/lutron/lighting.cr&spec=drivers/lutron/lighting_spec.cr"` + +To build or test against drivers in private repositories include the repository param: `repository=private_drivers` From c046c4630c29ffe50852012660c8c34e47e4ab2b Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Thu, 6 Jun 2019 17:32:50 +1000 Subject: [PATCH 0076/1365] remove newline from spec runner output --- src/controllers/test.cr | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/controllers/test.cr b/src/controllers/test.cr index bea54b08e02..abd91fb5bd5 100644 --- a/src/controllers/test.cr +++ b/src/controllers/test.cr @@ -68,7 +68,7 @@ class Test < Application output: io, error: io ).exit_status - io << "\nspec runner exited with #{exit_status}\n" + io << "spec runner exited with #{exit_status}\n" io.close exit_status end From d409b98fdfccb8e262386621cf68de20f599ca42 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Thu, 6 Jun 2019 17:33:27 +1000 Subject: [PATCH 0077/1365] document the functions available for writing specs --- docs/writing-a-spec.md | 129 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 docs/writing-a-spec.md diff --git a/docs/writing-a-spec.md b/docs/writing-a-spec.md new file mode 100644 index 00000000000..5f2c442a762 --- /dev/null +++ b/docs/writing-a-spec.md @@ -0,0 +1,129 @@ +# How to write a spec + +There are three kind of drivers + +* Streaming IO (TCP, SSH, UDP, Multicast, ect) +* HTTP Client +* Logic + +From a driver code structure standpoint there is no difference between these types. + +* The same driver can be used over a TCP, UDP or SSH transport. +* All drivers support HTTP methods if a URI endpoint is defined. +* If a driver is associated with a System then it has access to logic helpers + +During a test, the loaded module is loaded with a TCP transport, HTTP enabled and logic module capabilities. +This allows for testing the full capabilities of any driver. + +The driver is lunched as it would be in production. + + +## Expectations + +Specs have access to Crystal lang spec expectations. This allows you to confirm expectations. +https://crystal-lang.org/api/latest/Spec/Expectations.html + +```crystal + +variable = 34 +variable.should eq(34) + +``` + +There is a good overview on how to use expectations here: https://crystal-lang.org/reference/guides/testing.html + + +### Status + +Expectations are primarily there to test the state of the module. + +* You can access state via the status helper: `status[:state_name]` +* Then you can check it an expected value: `status[:state_name].should eq(14)` + + +## Testing Streaming IO + +The following functions are available for testing streaming IO: + +* `transmit(data)` -> transmits the object to the module over the streaming IO interface +* `responds(data)` -> alias for `transmit` +* `should_send(data, timeout = 500.milliseconds)` -> expects the module to respond with the data provided + +A common test case is to ensure that module state updates as expected after transmitting some data to it: + +```crystal + +# transmit some data +transmit(">V:2,C:11,G:2001,B:1,S:1,F:100#") + +# check that the state updated as expected +status[:area2001].should eq(1) + +``` + + +## Testing HTTP requests + +The test suite emulates a HTTP server so you can inspect HTTP requests and send canned responses to the module. + +```crystal + +expect_http_request do |request, response| + io = request.body + if io + data = io.gets_to_end + request = JSON.parse(data) + if request["message"] == "hello steve" + response.status_code = 202 + else + response.status_code = 401 + end + else + raise "expected request to include dialing details #{request.inspect}" + end +end + +# check that the state updated as expected +status[:area2001].should eq(1) + +``` + +Use `expect_http_request` to access an expected request coming from the module. + +* when the block completes, the response is sent to the module +* you can see `request` object details here: https://crystal-lang.org/api/0.29.0/HTTP/Request.html +* you can see `response` object details here: https://crystal-lang.org/api/0.29.0/HTTP/Server/Response.html + + +## Executing functions + +This allows you to request actions be performed in the module via the standard public interface. + +* `exec(:function_name, argument_name: argument_value)` -> `response` a response future (async return value) +* You should send and `responds(data)` before inspecting the `response.get` + +```crystal + +# Execute a command +response = exec(:scene?, area: 1) + +# Check that the command causes the module to send some data +should_send("?AREA,1,6\r\n") +# Respond to that command +responds("~AREA,1,6,2\r\n") + +# Check if the functions return value is expected +response.get.should eq(2) +# Check if the module state is correct +status[:area1].should eq(2) + +``` + + +## Testing Logic + +TODO:: helpers for mocking out complex systems is coming in a future update. + +* Defining system configuration +* Mocking remote module functions and state +* Tracking remote function calls From 2dd57f2e16ded7445399379e939f2cfaecb51d4b Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 7 Jun 2019 10:31:23 +1000 Subject: [PATCH 0078/1365] document the various aspect of a driver --- docs/writing-a-driver.md | 397 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 397 insertions(+) create mode 100644 docs/writing-a-driver.md diff --git a/docs/writing-a-driver.md b/docs/writing-a-driver.md new file mode 100644 index 00000000000..f278e6aab11 --- /dev/null +++ b/docs/writing-a-driver.md @@ -0,0 +1,397 @@ +# How to write a driver + +There are three kind of drivers + +* Streaming IO (TCP, SSH, UDP, Multicast ect) +* HTTP Client +* Logic + +From a driver structure standpoint there is no difference between these types. + +* The same driver can be used over a TCP, UDP or SSH transport. +* All drivers support HTTP methods if a URI endpoint is defined. +* If a driver is associated with a System then it has access to logic helpers + +However typically a driver will only implement one of these interfaces. + + +## Concepts + +Backing a driver is few different pieces that make it function. + +* Queue +* Transport +* Subscriptions +* Scheduler +* Settings +* Logger +* Metadata + + +### Queue + +The queue is a list of potentially asynchronous tasks that should be performed in a sequence. + +* Each task has a priority (defaults to `50`) - higher priority tasks run first +* Tasks can be named. If a new task is added with the same name it replaces the existing task. +* Tasks have a timeout (defaults to `5.seconds`) +* Tasks can be retried (defaults to `3` before failing) + +Tasks have a callback that is used to run the task + +```crystal + +# => you can set queue defaults globally + +# set a delay between the current task completing and the next task +queue.delay = 1.second +queue.retries = 5 + +queue(priority: 20, timeout: 1.second) do |task| + # perform action here + + # signal result + task.success("optional success value") + task.abort("optional failure message") + task.retry + + # Give me more time to complete the task + task.reset_timers +end + +``` + +In most cases you won't need to use the queue explicitly however it is good to understand that it is there and how it functions. + + +### Transport + +The transport loaded is defined by settings in the database. + +#### Streaming IO + +You should always tokenise your streams. +This can be handled automatically by the [built in tokeniser](https://github.com/spider-gazelle/tokenizer) + +```crystal + +def on_load + transport.tokenizer = Tokenizer.new("\r\n") +end + +``` + +There are a few ways to use streaming IO methods: + +1. send and receive + +```crystal + +def perform_action + # You call send with some data. + # you can also optionally pass some queue options to the function + send("message data", priority: 30, name: "generic-message") +end + +# A common received function for handling responses +def received(data, task) + # data is always `Bytes` + # task is always `EngineDriver::Task?` (i.e. could be nil if no active task) + + # convert data into the appropriate format + data = String.new(data) + + # decide if the request was a success or not + # you can pass any value that is JSON serialisable to success + # (if it can't be serialised then nil is sent) + task.try &.success(data) +end + +``` + +2. send and callback + +```crystal + +def perform_action + request = "build request" + + send(request, priority: 30, name: "generic-message") do |data, task| + data = String.new(data) + + # process response here (might need to know the request context) + + task.try &.success(data) + end +end + +``` + +3. send immediately (no queuing) + +```crystal + +def perform_action_now! + transport.send("no queue") +end + +``` + + +#### HTTP Client + +All drivers have built in methods for performing HTTP requests. + +* For streaming IO devices this defaults to `http://device.ip.address` or `https` if the transport is using TLS / SSH. +* All devices can provide a custom HTTP base URI. + +There are methods for all the typical HTTP verbs: get, post, put, patch, delete + +```crystal + +def perform_action + basic_auth = "Basic #{Base64.strict_encode("#{@username}:#{@password}")}" + + response = post("/v1/message/path", body: { + messages: numbers, + }.to_json, headers: { + "Authorization" => basic_auth, + "Content-Type" => "application/json", + "Accept" => "application/json", + }, params: { + "key" => "value" + }) + + raise "request failed with #{response.status_code}" unless (200...300).include?(data.status_code) +end + +``` + + +#### Special SSH methods + +SSH connections will attempt to open a shell to the remote device however sometimes you may be able to execute operations independently. + +```crystal + +def perform_action + # if the application launched supports input you can use the bidirectional IO + # to communicate with the app + io = exec("command") +end + +``` + + +#### Logic drivers + +The main difference between logic drivers and other transports is that a logic module is directly associated with a System and cannot be shared. (all other drivers can appear in multiple systems) + +* You can access remote modules in the system via the `system` helper + +```crystal + +# Get a system proxy +sys = system +sys.name #=> "Name of system" +sys.email #=> "resource@email.address" +sys.capacity #=> 12 +sys.bookable #=> true +sys.id #=> "sys-tem~id" +sys.modules #=> ["Array", "Of", "Unique", "Module", "Names", "In", "System"] +sys.count("Module") #=> 3 +sys.implementing(EngineDriver::Interface::Powerable) #=> ["Camera", "Display"] + +# Look at status on a remote module +system[:Display][:power] #=> true + +# Access a different module index +system[:Display_2][:power] +system.get(:Display, 2)[:power] + +# Access all modules of a type +system.all(:Display) + +# Check if a module exists +system.exists?(:Display) #=> true +system.exists?(:Display_2) #=> false + +``` + +you can bind to state in remote modules + +```crystal + +bind Display_1, :power, :power_changed + +private def power_changed(subscription, new_value) + logger.debug new_value +end + + +# you can also bind to internal state (available in all drivers) +bind :power, :power_changed + +``` + +It's also possible to create shortcuts to other modules. +This is powerful as these shortcuts are exposed as metadata - allowing backoffice to perform system verification. + +For example, consider the following video conference system: + +```crystal + +# It requires at least one camera that can move and be turned on and off +accessor camera : Array(Camera), implementing: [Powerable, Moveable] + +# Optional room blinds that can be opened and closed +accessor blinds : Array(Blind)?, implementing: [Switchable] + +# A single display is required with an optional screen (maybe it's a projector) +accessor main_display : Display_1, implementing: Powerable +accessor screen : Screen? + +``` + + +### Subscriptions + +You can dynamically bind to state of interest in remote modules + +```crystal + +# subscription is returned and provided with every status update in the callback +subscription = system.subscribe(:Display_1, :power) do |subscription, new_value| + # values are always raw JSON strings + JSON.parse(new_value) +end + +# Local subscriptions +subscription = subscribe(:state) do |subscription, new_value| + # values are always raw JSON strings + JSON.parse(new_value) +end + +# Clearing all subscriptions +subscriptions.clear + +``` + +Similarly to subscriptions, there are channels that can be setup for broadcasting +arbitrary data that might not need be exposed as state. + +```crystal + +subscription = monitor(:channel_name) do |subscription, new_value| + # values are always raw JSON strings + JSON.parse(new_value) +end + +# Publish something on the channel to all listeners +publish(:channel_name, "some event") + +``` + + +### Scheduler + +There is a built in scheduler: https://github.com/spider-gazelle/tasker + +```crystal + +def connected + schedule.every(40.seconds) { poll_device } + schedule.in(200.milliseconds) { send_hello } +end + +def disconnected + schedule.clear +end + +``` + + +### Settings + +Settings are stored as JSON and then extracted as required, serialising to the specified type +There are two types: + +* Required settings - raise an error if the setting is unavailable +* Optional settings - return `nil` if the setting is unavailable + +NOTE:: All settings will raise an error if they exist but fail to serialise (as they are not formatted correctly etc) + +```crystal + +# Required settings +def on_update + @display_id = setting(Int32, :display_id) + + # Can extract deeply nested values + # i.e. {input: {list: ["HDMI", "VGA"] }} + @primary_input = setting(InputEnum, :input, :list, 0) +end + +# Optional settings (you can optionally provide a default) +def on_update + @display_id = setting?(Int32, :display_id) || 1 + @primary_input = setting?(InputEnum, :input, :list, 0) || InputEnum::HDMI +end + +``` + + +### Logger + +There is a logger available: https://crystal-lang.org/api/latest/Logger.html + +* Warning and above are written to disk. +* debug and info are only available when there is an open debugging session. + +```crystal + +logger.warn "error unknown response" + +# You should typically use the block form for debug and info messages +# this only performs string interpolations if a debugging session is attached +logger.debug { "function called with #{value}" } + +``` + +The logging format has been pre-configured so all logging from Engine is uniform and simple to parse + + +### Metadata + +Metadata is used by various components to simplify configuration. + +* `generic_name` => the name that should be used in a system to access the module +* `descriptive_name` => the manufacturers name for the device +* `description` => notes or any other descriptive information you wish to add +* `tcp_port` => TCP port the TCP transport should connect to +* `udp_port` => UDP port the UDP transport should connect to +* `uri_base` => The HTTP base for any HTTP requests +* `default_settings` => Defaults or example settings that should be used to configure a module + + +```crystal + +class MyDevice < EngineDriver + generic_name :Driver + descriptive_name "Driver model Test" + description "This is the driver used for testing" + tcp_port 22 + default_settings({ + name: "Room 123", + username: "steve", + password: "$encrypt", + complex: { + crazy_deep: 1223, + }, + }) + + # ... + +end + +``` From 3058ee872a36682a1de643cfc322f4c3c2761bed Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 7 Jun 2019 13:00:18 +1000 Subject: [PATCH 0079/1365] fix the travis build requires libssh2 --- .travis.yml | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 75e04bcffd8..3face0ff112 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,22 @@ +dist: xenial +sudo: required +services: redis-server language: crystal install: + # Install the latest version of LibSSH2 + - wget https://launchpad.net/ubuntu/+source/libgpg-error/1.32-1/+build/15118612/+files/libgpg-error0_1.32-1_amd64.deb + - sudo dpkg -i libgpg-error0_1.32-1_amd64.deb + - wget https://launchpad.net/ubuntu/+source/libgcrypt20/1.8.3-1ubuntu1/+build/15106861/+files/libgcrypt20_1.8.3-1ubuntu1_amd64.deb + - sudo dpkg -i libgcrypt20_1.8.3-1ubuntu1_amd64.deb + - wget https://launchpad.net/ubuntu/+source/libssh2/1.8.0-2/+build/15151524/+files/libssh2-1_1.8.0-2_amd64.deb + - sudo dpkg -i libssh2-1_1.8.0-2_amd64.deb + - wget https://launchpad.net/ubuntu/+source/libgpg-error/1.32-1/+build/15118612/+files/libgpg-error-dev_1.32-1_amd64.deb + - sudo dpkg -i libgpg-error-dev_1.32-1_amd64.deb + - wget https://launchpad.net/ubuntu/+source/libgcrypt20/1.8.3-1ubuntu1/+build/15106861/+files/libgcrypt20-dev_1.8.3-1ubuntu1_amd64.deb + - sudo dpkg -i libgcrypt20-dev_1.8.3-1ubuntu1_amd64.deb + - wget https://launchpad.net/ubuntu/+source/libssh2/1.8.0-2/+build/15151524/+files/libssh2-1-dev_1.8.0-2_amd64.deb + - sudo dpkg -i libssh2-1-dev_1.8.0-2_amd64.deb + - shards install script: - crystal spec - - bin/ameba From f41c94dda1cf9c01ef4ecfb5981497ec5eec0621 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Fri, 7 Jun 2019 14:41:50 +1000 Subject: [PATCH 0080/1365] add a sleep after shards are installed --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 3face0ff112..2bc0d2998ca 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,5 +18,6 @@ install: - sudo dpkg -i libssh2-1-dev_1.8.0-2_amd64.deb - shards install + - sleep 5 script: - crystal spec From 6f5367e47482659af959832c013d9385c9f79e62 Mon Sep 17 00:00:00 2001 From: Stephen von Takach Date: Wed, 12 Jun 2019 14:48:19 +1000 Subject: [PATCH 0081/1365] use the built in MIME register --- src/config.cr | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/config.cr b/src/config.cr index 88d1d39c642..213aa54f507 100644 --- a/src/config.cr +++ b/src/config.cr @@ -35,11 +35,11 @@ ActionController::Server.before( static_file_path = ENV["PUBLIC_WWW_PATH"]? || "./www" if File.directory?(static_file_path) # Optionally add additional mime types - ActionController::FileHandler::MIME_TYPES[".yaml"] = "text/yaml" + ::MIME.register(".yaml", "text/yaml") # Check for files if no paths matched in your application ActionController::Server.before( - ActionController::FileHandler.new(static_file_path, directory_listing: false) + ::HTTP::StaticFileHandler.new(static_file_path, directory_listing: false) ) end From 72bc2a999124ec3527c7b6866839d767c424cf81 Mon Sep 17 00:00:00 2001 From: Alex Sorafumo Date: Wed, 12 Jun 2019 14:59:10 +1000 Subject: [PATCH 0082/1365] Add task runner front-end --- .gitignore | 2 + shard.lock | 82 + www/3rdpartylicenses.txt | 397 +++ ...ialIcons-Regular.012cf6a10129e2275d79.woff | Bin 0 -> 57620 bytes ...alIcons-Regular.570eb83859dc23dd0eec.woff2 | Bin 0 -> 44300 bytes ...rialIcons-Regular.a37b0c01c0baf1888ca8.ttf | Bin 0 -> 128180 bytes ...rialIcons-Regular.e79bfd88537def476913.eot | Bin 0 -> 143258 bytes www/assets/icons/icon-128x128.png | Bin 0 -> 1253 bytes www/assets/icons/icon-144x144.png | Bin 0 -> 1394 bytes www/assets/icons/icon-152x152.png | Bin 0 -> 1427 bytes www/assets/icons/icon-192x192.png | Bin 0 -> 1790 bytes www/assets/icons/icon-384x384.png | Bin 0 -> 3557 bytes www/assets/icons/icon-512x512.png | Bin 0 -> 5008 bytes www/assets/icons/icon-72x72.png | Bin 0 -> 792 bytes www/assets/icons/icon-96x96.png | Bin 0 -> 958 bytes www/assets/img/logo.svg | 1 + www/assets/settings.json | 3 + www/favicon.ico | Bin 32988 -> 5430 bytes www/index.html | 35 + www/main-es2015.910b13f4ffedd104e88e.js | 1 + www/main-es5.886d7c57388081782c99.js | 1 + www/manifest.webmanifest | 51 + www/ngsw-worker.js | 2731 +++++++++++++++++ www/ngsw.json | 90 + www/polyfills-es2015.559e7c8b3a629fdb5581.js | 1 + www/polyfills-es5.943113ac054b16d954ae.js | 1 + www/runtime-es2015.858f8dd898b75fe86926.js | 1 + www/runtime-es5.741402d1d47331ce975c.js | 1 + www/safety-worker.js | 17 + www/styles.e9a05f80d09cf3960461.css | 1 + www/worker-basic.min.js | 17 + 31 files changed, 3433 insertions(+) create mode 100644 shard.lock create mode 100644 www/3rdpartylicenses.txt create mode 100644 www/MaterialIcons-Regular.012cf6a10129e2275d79.woff create mode 100644 www/MaterialIcons-Regular.570eb83859dc23dd0eec.woff2 create mode 100644 www/MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf create mode 100644 www/MaterialIcons-Regular.e79bfd88537def476913.eot create mode 100644 www/assets/icons/icon-128x128.png create mode 100644 www/assets/icons/icon-144x144.png create mode 100644 www/assets/icons/icon-152x152.png create mode 100644 www/assets/icons/icon-192x192.png create mode 100644 www/assets/icons/icon-384x384.png create mode 100644 www/assets/icons/icon-512x512.png create mode 100644 www/assets/icons/icon-72x72.png create mode 100644 www/assets/icons/icon-96x96.png create mode 100644 www/assets/img/logo.svg create mode 100644 www/assets/settings.json create mode 100644 www/index.html create mode 100644 www/main-es2015.910b13f4ffedd104e88e.js create mode 100644 www/main-es5.886d7c57388081782c99.js create mode 100644 www/manifest.webmanifest create mode 100644 www/ngsw-worker.js create mode 100644 www/ngsw.json create mode 100644 www/polyfills-es2015.559e7c8b3a629fdb5581.js create mode 100644 www/polyfills-es5.943113ac054b16d954ae.js create mode 100644 www/runtime-es2015.858f8dd898b75fe86926.js create mode 100644 www/runtime-es5.741402d1d47331ce975c.js create mode 100644 www/safety-worker.js create mode 100644 www/styles.e9a05f80d09cf3960461.css create mode 100644 www/worker-basic.min.js diff --git a/.gitignore b/.gitignore index 60a27141da3..5ed5f32b9b3 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,5 @@ app bin repositories .DS_Store + +*.rdb diff --git a/shard.lock b/shard.lock new file mode 100644 index 00000000000..5441721223c --- /dev/null +++ b/shard.lock @@ -0,0 +1,82 @@ +version: 1.0 +shards: + action-controller: + github: spider-gazelle/action-controller + version: 1.6.0 + + ameba: + github: veelenga/ameba + version: 0.9.1 + + bisect: + github: spider-gazelle/bisect + version: 1.1.1 + + cron_parser: + github: kostya/cron_parser + version: 0.2.0 + + engine-driver: + github: aca-labs/crystal-engine-driver + commit: dfdd0805195ebaec6ec84eb8707e29aafc594ce0 + + exec_from: + github: aca-labs/exec_from + version: 1.0.2 + + habitat: + github: luckyframework/habitat + version: 0.4.3 + + ipaddress: + github: Sija/ipaddress.cr + version: 0.1.2 + + kilt: + github: jeromegn/kilt + version: 0.4.0 + + pool: + github: ysbaddaden/pool + version: 0.2.3 + + priority-queue: + github: spider-gazelle/priority-queue + commit: cd8dc4f0803d7e00a4bb0d79e4c98c5d72223012 + + promise: + github: spider-gazelle/promise + version: 1.1.2 + + protobuf: + github: jeromegn/protobuf.cr + version: 2.1.2 + + radix: + github: luislavena/radix + version: 0.3.9 + + redis: + github: stefanwille/crystal-redis + version: 2.2.0 + + retriable: + github: Sija/retriable.cr + commit: 8cd9986bd89594c00bbeaae3fdeda4badfc59ab6 + + rwlock: + github: spider-gazelle/readers-writer + version: 1.0.5 + + ssh2: + github: spider-gazelle/ssh2.cr + commit: 117f7536411ec89ee079fe1f8a047db0c359bdad + + tasker: + github: spider-gazelle/tasker + version: 1.2.0 + + tokenizer: + github: spider-gazelle/tokenizer + version: 1.0.1 + diff --git a/www/3rdpartylicenses.txt b/www/3rdpartylicenses.txt new file mode 100644 index 00000000000..aa09ebb4871 --- /dev/null +++ b/www/3rdpartylicenses.txt @@ -0,0 +1,397 @@ +@acaprojects/ngx-buttons + +@acaprojects/ngx-checkbox + +@acaprojects/ngx-custom-events + +@acaprojects/ngx-dropdown + +@acaprojects/ngx-google-analytics + +@acaprojects/ngx-overlays + +@acaprojects/ngx-pipes + +@angular-devkit/build-angular +MIT +The MIT License + +Copyright (c) 2017 Google, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +@angular/cdk +MIT +The MIT License + +Copyright (c) 2019 Google LLC. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +@angular/cdk/scrolling + +@angular/common +MIT + +@angular/core +MIT + +@angular/forms +MIT + +@angular/platform-browser +MIT + +@angular/router +MIT + +@angular/service-worker +MIT + +dayjs +MIT +MIT License + +Copyright (c) 2018-present, iamkun + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +rxjs +Apache-2.0 + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright (c) 2015-2018 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + +tslib +Apache-2.0 +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + +You must give any other recipients of the Work or Derivative Works a copy of this License; and + +You must cause any modified files to carry prominent notices stating that You changed the files; and + +You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + +If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + + +zone.js +MIT +The MIT License + +Copyright (c) 2016-2018 Google, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/www/MaterialIcons-Regular.012cf6a10129e2275d79.woff b/www/MaterialIcons-Regular.012cf6a10129e2275d79.woff new file mode 100644 index 0000000000000000000000000000000000000000..b648a3eea2d16b6ce783906d6b7d5f251b9eb56c GIT binary patch literal 57620 zcmY&^NelVwr$(CZQHhO+t!`$=Dp;-onGnG%1YJl`q9)OmoxnxQ~!cx z7yTwvL_vxFmrDfzAms%BFq1u;FO!o|pk)96AY1*_{QHG2qyvG0ft8*u0022U001yH z001b^-7WpDiJrqRN5%B30sjv_KLEfcmTtzs92WpU*)#y4J?2lST9B!co*@9hGW4&8 z`4=pp>u1uYzvM6XUw$aRAo>Fc^vBf7(e;Ws_PPwU|4;c6vAY`D4U;s#9fGPn0SECQP7GZX@2I3WUo4pB*5bE|8|@Fm_rEMeislDJkxA(b z7tCUlVW`i$#DWbQZsJMnX?Wci4^U?JYSLP9^{854ZTD(mZmHb5Kg#0WKDy&x2*LAw zTo>W>_}n7h_S_HghvODJCnAQCPwY%2)^GlIWGK?6;jNOlF0WOptuo*kv8|j_g}1_c zE+(DP(B{zS(DhLNP{BA|<)Y%`;w0l_Q6WO2EZKL|*ys_L#EFFrpqv(C%GE%Zc>Y>~HgyL!|@;oHhHQP}pO{tpwUsv%B#6 zd!u<`WFA2+30r%fO!U*(zhn@xA;rJNv7)dPqcC&`Gkpup)6p#8t-&S%`VH#+Vw47 z1ZrYVoekY6m!+MmkfSl@=(83Jh>RM=6@_BZ@#m2@gjSQDm~M#;i*tlcAUFkg;=PQs zMJnWEk_2tyBE8hNCL`jfI6N%DY2a%&bpE?0I6k{55d>M94FoUL_axD8r2MZ;xv-@Hvaw zq9i|4u;P4|nOd?89&S@e7$fg9w5ik7{;s1p<$%{Px^pXA)ZiJ*T_`9A%ZsrKN$)%D ztOb7M#2uWj)1nwnb0-iLgR~WM*q`jEA@w~(cU<3;TcGz6UD5z$GW#O`20df8;pRVY zzoC4zzo)g|0FvRy)=K0+BCPi)KabsDwpTdF%AsoFeo@XLYf`R3tW(N(V4APa8VTqO zYaFp!PT=^&)H+bv3U5T*5vk{AeXej$R;Oewpd^)uVn0)o;zmt7lRTM9REl*{mONZN z<|S<4WFKxe0$E{t$xn2nCGWG0$W{E${W(Sw*BQ{1U**^A&8 zI$rVs&Q8tZEFBp*nancPz{--(mmK4uN7@+{1uq?=-Qk{v}Ai(*JQ<Qb) ziI9oKiR_8ziS&uliH3S=!6yBgeC6Harr>SJm)-bB1PpopT0sz{MF16qoR^V~HVCLue&LVU6e$yTtP$;v!eHTHBEyb|!?`@o*sevdTrHJeop zwT0oAcEND0l*idnVa$A8P(K0ZVSeX`ivqs>8G5=X`&lYF5ee)Be(wuIckU$q*}<;@ z4r2#7nhUhaoUJcj*VC0s$-JYm=`HaJpLeRxTzn;J_aSv6KyL2}I@N-Vcnp-x5iQOX zh|qORY8E5lSTmQTC|@~e(_QfIL@S-9IHiq1PS)wZ*$t!IY(~`< z@a6PU3WzmFyeT?es(00UuAHM@*;!`}3SHx%=v)j#UpfM9*n2$NSKt9wR?y-h;`3^0 zlYNOTiCjHHknv2F8#vP^LJ`;lRH+t>(JB&-@R!sXn&Y*hje6bmXmdd%}w>*#3>A))z4~D%XF*+~}&sYg%I=ANO zz+0?E;B}3LCnPO}qgGQ!*}YM8HpXcy0t)~RdNRI{N?XQk$esPOG6h--f1AR(K2Yziif%z`E-CQd|Vjt8W*X++>o7Rd;B-rq6B<{d^Zlfz}sJqYrNd!pa_ zv~xQf91*{23mLP% z=BlE92usq)WUw6&Ro)nNR3PVL#>GlTLTK{`kJK^8KKJLHq&ZVA4;v&*36q<~QinCH z8E8{4&WTw=(-taC8{*&Y)m>{mW;<|X=qQp<-?&t`l^B*7m*i@fXMII|Q+)w_3;ssi z%qnt_Hr$~Zm1?=m@E-RRyV`{IWmoBEdvGCKTzT8TS91N#R<1Np$x??E36qMGdv<18 z-6C$)sM&E&c*s)~p)A_WQ4HKo+H)oAY8H!rC62qL1M);9P+;YW0|eykR*VC;U+M$b ztVo>Ecpx6C5U+sWXwHg;;i@n-q2H3Oeh+`um{bho(vHgJ^=3xK-bvtgD!Q+M%U>PP zQpY9F=}<8`)-ouvWJa~Y#!7b;#NGKhR^V@_k;Io-OE|z-BG$LdgV;o>~$$`2S05D;l@z?Bzz6w^+;vkT0VL`Ae&SJ zB7L8(p|q!#^NJ=dXA143B}42VU%KTfd%-Y_rKfmqA9`_DiO*O)Ij*dIQDvIVs0itZ>oVwYF~0%fjhehYKuIl;r$d0Z{9rb$9%=i zll)UXq1#cW|ECVFNqkfDd4YUbD+D05 zKJhAu2Ew|aPfc~ZCwAyQQIaVTo!aw5f0++2`+ zfh+wx1C4~2ezj|#t5caIHkncw<$=cm+JOvG0#m%$7+%6#0!l(uf>y#n0%Jl&f=7Z$ zLQ4YeM6o70Tq0?r$v#Hbi&S>oK*JS54wtBrT`Vs1WpP4tXE5gz9&el z<)-MSY1?K(>7M;TV#DV1BQd6`oqLQz>u%LYpC1Rvxm6ceTY_XuJ75~{Ri=3s%%yL4 z6#hikAX3@&grZH&61yjBtJqUC;@0^)_q%a0ZOcqWj3q!fZc&6{W!}EwL@8JOWf7;1 zoQZNbbVuXgqUc6R3poRBwF2_1*5G{UT9_g>pDmxZ=^WXsVIr-I@^#YnJ7jA-{r=6I&hH zN#!;#6L&mW<`MItoSS0tjqbmAvUogwxJflVDmDxZ*!0wKp7%)JmTY3p!_` zuHK_rDjtS~%J(<3mhcsP630pGaY|{xrTNUfkyAR2e)g|4d9Cps5uy_j7CP@6?Ks@& zD@oo9BS^C+ub8IcqJ0ttGfTxPO*MC3*);KI7SZWza^_vsPrlMgp+5&xU}>sG!wO{^ zR|1U!mknKuS7M8-wzvmTE^0?UT`PZ#$+IFUc4!P(5pCp z7b^|QjLrMQ$J5ibz-r3ga%PbOV#S%pE>P3v!h1SancBz>cSRYh9a=?~s;+s)!5DC* zhs}NNBxPb9{(sAtkPxmn)jm0+ne-N z2lo(C_W<2mr`PV|o*5!yugWoq57fBC^<~`xOZF1oV+Rm#!ZGsuSX|=0F%UyrA$%G| zty?ztS=*)7-2(-Vb5h7{7p#o(s;ls{VtRUJRB1_!?*J5fg}XrBY(FT1<1q@kF3-Y^ zhnto$jkY<0=g>?wnXk=`bXj66^8t?xUgLvG)2^uBq_m?G_vxMFH=`a4q-<@Kqbmp| zB>9l;CEI=+e-Y0nbj@oJ-|5m&y!eb})kCwC1|#U3#rTIz7s+a~y&WitVNrTy^J0QP zwIFd`$;0bb+`Qs*0EC3WQS1V8ibwY_8okmt%#-<84>$><$U7m0&Sf-WAIODLRZMEX z6z4JIJ>naiAf+1$V0b5GQ)-z#?pw6t_le&)} zV-DC~dpZj<`;$9K@y1FXhCI1<#^4?rl&@3QgD*^iA64x0!*B$+-7#UBWae z8y+5zDNDMW@1WS~!l&nI3&`zv23(b{R@kq!TJ?G{OPeS2z68QOa^h?zb6Fm#g5F+o z)565l!C0(>i90JJxK{xo!7Z9YB%l;G^8e{zs}KkH=E%>ead@Px{N;^xTF(Aih(%-(+? zaga~hD5!tGa;2Ed?Y7$VXPHjdNo>w;!jS;vL-J0eGAf_jEREX|t+DS-aJAM>a5*}7 znxOS_w%Y_v2!zBtliWNgr))mBt4GFNwi!;Gh3WME*}6}k3xFV`x< zLD6p(sai1gKU<~W5+)pyia28fSaQrTgkHOh4BzM%63Nh#v#v?$&}`kf48&L3fT`n} zq#E?+Nb_Xm?Xz(|{OZrxw>rH#%R1G<7`Fc2_ev)>5@uLnxCqhCGGIhAxt`=o za^rrmYEHK@DluA_x=!V0@^BC3fAe}SyPQ~?ad?~UXb`nlw!Yfj+{|txbSMd7OU!U^ z31UYoXj2)e46Auaq&@O5RqM+HH=mYQ{FHa^371(K-{zS5*J4HcUZbAtFDM_a62_-6 zhtjg78Cbj7yhMLTeqNnor!6X?j?v`G^whuBA<@G&WVQfbwss6WNV-0pTo@PYS(Z53 zCa2LF9}m@0K*EJ7gjNp06~1p~Dy68fV_%EYSZFn8Gv{>>FAAwXWTt18!lvP?EY%Dj zJ{}%)BNQKEpm@w2jH8EjF{LIST~-emATQdZTNhm$@1yqG(mxH9+IGf>Oayn;ho zgr3_1dOlpex`UYIRWQ*kUV$b(>T*L78OOW=L{D2zt8r#2)vTRS+NJPn4!cD2l=Qm> zCDT3vdEa6wLRLjfiTICBfIoE$nOu4he>^|toeqZ@MbCguI=8ItwBIdT)m|eG?Oi6W z`WU%V4M`Q~4ttQ(q8WLKZu z)AEbW>s2UiCgjd}(H4BydS_(kb;>oqjG*>GE|Maax~k(xvc8e}G4&zh&cjs3^pD#^ z@PkjZ^}lIv7cOrzZHM!QMzVVPn}?c1-aE(K4e)59b(9Ah2J^b*sf$s;f?FSaq%4I8 z3a%*hEijojCk&wi*oT_EGG22(GR*KWRjiK#{>^|Cm^6fj&b4K1D;idpG`RPFgi!&PcXzh}kwqAiwc$otwH-YVRm!q#YQJ%P&Lnt={ZWph5NFkx&SH>mQ z9R0T#;KyrtihYj6#PX~5KB7cR z=?sG$Sp{=PnlU!0s;KO#GxD8*}K%1W8<)k#|ooe|xCu5dRvXaU1MaI1r2So1D)!R|?Qa!}` zxlhNyu~9KGrfH1xF|+c>b%|O~;B%B!EPI|KN`=_4Qc1Yp1==k*xOyE&NUkN5mlY&V zzh$6;NIedWNI<4KD%EZtUn4p+(tYL5Kw7C7wed;|XI9emiYee@onsC2S%OA}siLnl z!S+<^Lf(0UMLl|=aC01W2;u=7WzJ>{ zCOnJCQjx|}GGWCScuq%(aeLgQ0<^m-b0x;3!Lpct?iI=ul-&Z|^fH?u+=054X>(WL zn>NGRNDmPHi=JT2!JkQy?1(1tP+uS`hCK5cv-^~R!vpy>lmEo-_Vuz76Pagjpc2=O z8S)vwxs()yw7TDz!{?|Dp;-&H5|;V?vO8#9Mcg_)`w?WlyUHCt9hN)hQxnLf=!?t< zE6X8qqtoFLWT?@4biJW>>KM-xl#~fL_k$Z$Q*^lA4g^YIGxaqaaP{?Q2aeO>(NjxFMOT>DrUj#tD|h-~DZ z+t(`cessRx)1Ncd?Y_c+#?C6f3c5ebY$1a!M_9Mxg6KNWaP;(PFG1zj?ea>=6H#A% zFd%fbE;F_1gl@k&tzMy(jZ(brs$XX}RmE7N_rRqzwf3;!xiT)Wm_%T1r=bt2Dbym9 zDkv@Hu6sKC06mUy>~J#@xR+c!LN+T@Ipx(Zh?Bx1*1&br5(;UX!y7!eZOmBYuvi_4 zF1nMcm?9z~krDCw_86JSPu>L|B5tq9rEZc^P_81~)Cze+Y+^AlYG9dB`W$e*2&=PS zdcWqCi6MNFa;yNWi9V9Ml9b2}G&kWnF_OKStk{z*H<%VY{{6boH(=8aCKLAm5gN*t zeu5{QWszDudu;9I2BP`!bZYO}%78#G&XA3M5hBZsU2TOta=alk=9kIC-U%ev>2H`G zwQAymG3vN3mLIz&l95`39l1cts_>&+Xb?X|T_F?aXBtD7DJ@;Tk+V+WEVo*k9bz@# z37+M5pP;60!T5spyVwhD2y$Zp;yl2OKub{etR6o}-ujDm#Pl(Wj_Q^%>Bss(C|aZN zw3!88I9;>;cFcK2df{w^$}td)k#l?(&dU3{XD8=5CPU2DxX@V`E3NNYYb#}EVJ~x@ z5%F0$6Hk=+Og3eL2M0XWQik1p^l}Q(_CHg06Bisv6n-YagwuLAE)BW&(~ zY8&0+G6Yx>fbN)UsVrPj7#AY2KhbRCo>7vGCXS2@b3AkIqk^e;nS@q`S&wWC?ZG76 za5BaVGco-O%-aAm#v6jtTvZ$Us+wURw`iH9r|-CXvcZlnDsbGcc zng6y^2tPHL_U$;kT_0(ghBIq8SGr^!hA-t~lnGd4ZR8zqWIYaN-d%=+kjtZ=gqku~ z{}H2TAxs9m!+!^fhaiBy84nqU;usmE9y}HW{8mwh4Fac^pji`U zeV7w>w55Iy9zV;rii7Xt!lbCS_IW>sXasYt)Z~YpA(fIcAIZMBHbnOIOTca63;grI zhq0SOY1>+-q?3B~b4i6+BDc2x$$gn8TF=Fkt3&5j7gU!>Kii|M@z7*;p4OM_@s}lG zB)3flH@%0&bJ1)*F66<~#<4WG14QyR84(F>t zJKwUP&Pz!#tg`QyL{BW zq&#q%U5FDtB7@T!?hqtgrN+X*skIAOv;b=zZBB-ER?C=Y+FCc$9q3kuEqD zyIEA-9LCD+IH1UYh}kwjYYs2HlzEG!6@F2rlGiKC|oLYe}fe zMNTJ;f{1#%58fpE1)P?&3(K7oMNPk%V$IYxgjyJXu-ppe86kDvmI2{o^ zEMV15dI-8`$+R`4U)P4($zoo{F4nC~b#OLQTC_sygyfj>?l!QleK$e;S!t1%o*pCm=VN~xwzT+le6Qq|bE&So zAnwtuG&1RkMDZIpDfRkHp;s@sqvGRYoB8iS8WqLEw$ag{l&qbKnH(O!3Wv({tZx(9 zrVG-Fh}u!&`2mB;R|cyvJM*)x;n=-!**cN9;ew-;rIoC(ay~fUia@`{U-Sr(Nxic6 zV4+!?uwHc#lnM|i?eH8~?ehpzOPxQ~^F!dn>jtnR*b@u`>)?i+dT9yg511ZXTEk_9 z4;OQX%m{^K1@_@IiEYsN>B0wl{fq0=P2>^sk}{+`-U#B(f+NcLDzb>uk_Q;oB4*q5 z1eXenJkr(JGeUp^6c$xV;wJ^ZfKBLwHTVp+oXD4D4RJu;*dSYZ?)zFP0)>jFI5ns; z`MbmMhaJ4&%i9DLOBwcR`xZ)8YlT&Eu?m#)tLu7|MMfTQffpqmvaz%=Y`E1ZO^%rf zB^|h)Yc6*YtO0R>N_*kNd54@5&QbqB`3$ zGxc6r%uWtB(G2a(H|=GJbi%E8e)UQG2OHe4oej(3FH{(QNe$gC#%85G^mpwV2{cP+ zWYoo??vPGz|NdOn#EZND+(h6v;igqoGHaFCcrOr>ot@3Mb}a!vi_BdWF}Z>YMev9U zdQFK-yTw$t1(V!_`xhBV_7KX6&dcoRv;lRCYQ?R*BMJiOkn1xm-CL>k90M(qla^>L z7u)BGp}ZzDI#zoEd^%Iy^W1JYEW5HEUUeEBDK59j?{Ai96-ITV6O&f@dg?dhrrJb_ zTLx0aWXe*63u#&Z*o<#=K-e>24OJ^3v<;@J{kGa-BI+k6_eO^snJVy+#?&bOB0Uva z9dt5nD|p`QbJK~8x!L52ZS*Ce0xJfQW@?;tRjzo!(FMyMW%b7I*fN3lC#Ubhqk!i zBY@}MCB;}M@2vF-Gbzjo@+>|td`#wFyuaZ`g+8nDD(5;Klt#;MxCbvCbRvj9Tjam2 zv*QNjKO<;Sm&Zv}doO!Y0diJcN(7VF$6@=f3p2mgmLp`=R1lNf5{9+09AGiB3xu z9U0v^z3hM7sJ^cA4#(nPq^z-3iW+7qAcJi{dw-%NMFosfx`@mT3=|0pEASo#k9K%S zs^G`yjm+Hfj+%+#otuh9U%s!RnH)HC1-QVZ;WqfD=`AyFWB^Zv9rHVMy%o6iN2aGt zbsQ`3@O2m6)J%SKDV-;)5IupQM`&6Imt+kvqQt~`(=Q^+Ha{P~u2SZnhT4k!EszM~ zy!Rmt6>-*?KinXOMO>r!dX`=j(ML);EE`t2RWKb=a}R+b)yBKq+eo7bDg)FJu2@Hd z)_C->k4dsxo^d_r(^h9b!bKN^(jh$2Me2wZAij(4l^ErF6_uF<8inX$N*KfrkZk1P zLC7}t*nyNWX=O*><2XZwFQ>bGC1P3x&A{h8HTGUYx_PbZMD9YiN(xmKlUbq)euF;T z!sNkeD-|>ry^R$@joo5C9RP`ou0mKW^eC!Z|~_q>TqxGE^JW` zgD68I9UUEgEdygOKmmNLuHHW&7--O+A4b14Nm*vmdPwMXfIvmiFIT|9Dd1Qt737dR zM%9guE0d{fMrRlOUke^q&}wr6zifDpRYpq(Sc?Ig|1=ubkW0Du(+?`6ilBHbKWGwx zm;_>CVb5MmqTydv!}7Y~-E1#`B9b+mQ74*cwvn_vVe~i6UTeT(&FO83$w?ZG~rF^Q=s^Y5r zZA6^(srpvF$0Oi7!B?<0wwNO3lF-2R4rjEG;UC(Z+`ts6B^elHE%U~6rI6B8xp-X{%|#>F;Up=Z|NP=H>|JzW4F>e)sM6)%MxX{!K$` zCRTLHsG?zPgXFvTJ72pVyBxb3yBNC`yA(T<52yIpDyOB`Ld56^{Xgw-{dT++eGsjP zO$6e-J4SRHfTF?7b0OD;A9=jo!8no7+|gJ4qU|X-QP%F9&1hhA9rYo*K<{kN%#wvQ z#-s+2UX+}`jAt8bYoiM;;jbOL*zZcu)?EK;^zgt8kv_1EXEWB?duZ1~f>V>$n+Cm2(X^CTUf`&zZu6m_X*tPSIlDwKta>5jV!(K-cNO-mK( z8L~#4y{Xms^Vm^In@bvwObEyw_9ZGvdOBu_Vt#gH39Np)bcy~ri?!-y3xHD#wnxxD zs_oAzD1UURp(=SZMuQR-$m1uKpV*y3ErRm}zu~L*s6cS@qHpt#Qx?;MG7BYySOmYf zS{S+umlE5fNuedLuB-JMrg)>hP1)ippzz47LK4;d~#PEl@t4jljp z0HBEy)ck8t1^o5p0=WWSx`ViGs5akrg;NjF58;zHBPHll#>KbSQBw+(iJv*jXJWY7 z{?G!SSzjD&O;b4uPfT9WFpf+_?%d$v(gZxDwrLwX?zE}cQ*oXdc+Z4Y7gkg_Omn~7 zqUg*1`TJ;YnNL6XS20YHz@C^uDBIyDjdAs|iJ;Y=&i*TT_Gj~F=8N~j8@fz%2xl{o z0Zq6xSF95pOaXP@vRieiGoK8M*LJTTjK-0=qPl#w_1|@D$q$JaZLnaV`H^~4s>y-e ziB?y?1Q&LWd*ARd6pMBKzjesZNtpQn1!Vb2d8OWILSPph4iZpD+d6b&y^4*i#f#!{ z%+@uFUNYdjR+xh?vH(a&u1JzoigdDjcBz$eX8S~tY_vbw74Y%3W@N#6T(zqWs8L0) zj-F$$ms4S$`|;-Jw?6K2$Y?q8>{oCh`**UdKJD{iL{NDUL(HbC}$2sXg*i=+26DI`coUniD8kh006JaS3WX zG>I1KO=J)9n;7OG`F*;NV2xfhKId~W-U|gWJxpJ(o76IGN5Sd*bL)?VW*hz|F+5G) zDBfo8b`R_0)Gd`%J6t?JB8OK1MpduT8KDZFQc32DV#6#bL0RbXt0X|W{&J*P|~e-Ycu^>GyjV)cXW`i`}0ND5j#f3 zB{DXVVO@R?N zj$H%A-%eL^S+Vj$U0q3K%vh$#p#$w&+Q~W340=zT2RXL_N!xA|Mn*G=Byt3?Y{r^4 zzgS7Al&~hIlbfd0pw>e7Rj2oQ5e;C};OARprmNX*{Wt$&WMJLV?}9N9Hg2IbJxp*! z-`t;vr2@T4Uh+nfMX-5flgtZL)ctDz$#Mv%9C0)2CyVdL2>=^!7 zY64g&U=d9NA|I)T5mu3Cn+w>s=oZN#**S!z|p-)!@HIMB|zQA_7&R z(TnGDn#je1v%^+~;b#&bSr$z{jg z3}Z41!#>bf;|OXnuA0mjqzC*>m+2@Rxt^>6txplh;xfM-8e4*qu}rFqLm4zDxx-Sz zk4}VRZ@XXCK4=6?U2hGY#g_c&FGA<8i zgQxYOh7}rb6K6v4tQ$(S8m+C=D=)ie&O;!L<`1LTAk5W%DRIU)YB7Ru;N=D*e#g3? zr0wPFxVXdUNN8JF1!NfuByZI-50{k;Z%hn1i;-wS5rRiQZ0-pZY-S~2MHeuUo2^Yj z^d{eJlG%yg@^H~rG?Q}9n6VRS8FY7lRy+i4OM{YRV1 zxLrT&@c=S^*TmW{Y8w%ar213h2Y_}c+udPyU@9egcHDC(_31ygMa>C=*6!iq`g3BI zGkFqj>4Xjd9Dwm7dsnJ_hZF)1fD4UbaqA!KO??S$$nU)~`3eei+s2NNgh;u~;fDyu zxa=N82tjSVlJw$)w6a?OQWo->7({>5Mp2&jJg1hg&tYRA>~VnKhQEPVa9uU+jEmVE z!e2)wLfPaj$;!)FNP`UJQ$Lq5?q5;gp@nr#%SdK{>7^t2DkTP!Pq1G_v;&-G5YQl> z&lqBBbWPKpZsUsUjB;jIpF5~zc|dHC)aEGnrSZ959e(>ki!31B%+N6HaeQB_VQJ$) zYWyQm&tA`Q9(?voO%4_o>cGe++e?Hm+a7`%0nzRSd(i}H$b}6EPTKQE@CFzYsRsbV zO<-u(8f;|SEwdkdm|(b)ycAz0jVCpk*#WZwrNni$LQj5I8i)u31kOC+)C8=_7SI8z zm{9S0IUlD+h2^)IkSo0gpDg!)LJ&*>h2)^n`=X;&F~=AnxpA{=&Cz%*(KXyhsG)Cg zJz<6bt!eF?Pi-9vE&=?=HY!IO>n-smT_c@)^f7J&b(>Oamr-k2eu`*EWXTbSRQ#ZM z7^ZfOn_=}~jWCz(e?mYp)zOn0mzR~b*2%O1>i{v-D19Oder!9v#p(bFlzyEx~NR(#3&6kQe7&=O>N#+a8#GMFS^dilnJn4 zi1c4$t8A)Fs0-6%6pW>|!n#jG?2|=n`QGwX1Q@=mW@?)1ZoW%rp`KM|mpwrvJcozr zjVBHB!GofNn7JM-@U@JB*%4p^{vgCUW-gL04|Wk+#fMF|o6lLgg?RdM5#y)h>7~Oo zP$QCwbfC36|2?-qV+sO{?LOw(9AKxw^Mz;2#?X`Bs@fF`70IW;616T3O;jHK>076j zgi&_!yl(I2n~bH&cZ2W(mPN{-$yUBujL``fI*dt`cA|*HYsITX?KB`V*qPrnP!lzg z$BVLIXfd(cK2cr&5D`v}`}zoO>uulmg|$4vd^@&}pyu}>_tCiUo7UUn$U|8PxA_cQ zxl&mqo;Hd67$J&_-A3^G32blFA%Smy9#3&Zs}vc-6mH@A;dt#oJTf0d$U0tefBUi( ze2n^uX_YzV)8BSUNT2{14~iMUsNVt7BU@$>my~q`!`vTqIr4#?RAWKE5Xp34odH0= z!2ve8S}kaCX;%!mf!EYJ`kB>L>;Ze+);l+JRB7ysO3!YJXV)w&QI zg}xroV1rIv;V0Kl16=!P5N^I?y;?92q`hxuB;Bud3M|+{Ni{u@&7bo-FzSn)l zY~`^@>=K}BBQ;}Q+#XZu4(=Fn`)2m+u)!k-G_>)UdJ*78UUl(<>*P2>@BVZQV5hAo zWdV$`;yyP3TZ3{RTFtno>T&DA(sXUt+4TmfK_BXYdXVNN5I_(bXG|D1LSh^9VT;y| zCpA&nrqT^h!G~aZWlz}4#k;5_=GaNjYLL@SqR-NUh5~Zl{)Hw@HTgsK$Y98DgS&r# z7rj>}&o-u{u_3iYVfUxYv{`wdIo8er;YDxyMH zVX!28fL8)SiwiLX+HepTd@VBLGF7d<_zh#^tukHsh1-u2Ye?|!@S~rvvlbOZm;8p7 z_!SdfyIusPt5*6}RMk=Ui-?i*|lhrKy2hiCCH} z{a@(TFv_2pG+_@}jHS$RHm6yAp=!JK!LfKU&a9(#Q(Y>cnBTL=nW-^ZO0c1BH6%jK zZw3{1(BHzM5B(T|nmeLVO=*Y=+nWa>q&%LQN!wKMn0Vf5)FMS|o;K+Yr5zQ#$P5 zFg~G|Y?1Fk+3ZAhIV;!-LmP_7*dU&ibWyQ9Uk-$m(!wHBRdOY90tYPT8hK;Z@ca6@ zJ1{})hP<-4q?DDag~ja-ab^K@&~kA(pdz!`Fryzo(ZD{WdNj$ZHfJBtiiN@UrPkny zJ6cCDpFD|>U-B`ilxv1+2wOV;0vXgig#$y$gQ3>PoVA+oXIybK!Q@rU3#xoj3<)7B zOgDj;Q^M!^@b;zl1c4;sl!>DJTnlnw3*$fQ+6Vm<&Pzn_C^Jdb57e?<=#d0m6E15i z9iK1zIz@_Sma~f2t31w|4#q}!F53sc-JfDx&3kc%DeNK8@?!QTFp4@t$~g*>Hd$au z_?_Z=aec1!ZeVe^8ChBqD6XmTsXTxg#>5tIruKxle$imQ2u6155Gkkv?^5x8<%CgQ zWRml$ff*laDKm9|_n!oQ5uNe&)qFLesnj~~u@dmO3tchZ6szr|t(^UX`cNRK3<<&qNnWx&VOqIInKK3wkQr+F@BM>gLl1 z=JIi4g7!8DJ42l?txuQp1oU3_8dFjh`ksh5Sr=A#D)oO*y$>~nyptk=jLuS^RubVP zk!Sv+0+0muLTV=LWyJ!ND~@u8?3-?fX7wue?;2mEnItj1YUxvo&)fhviuaF2Eh*x$JdD-csIjW~)&=oKD=Y@5D zzWA(k@|86e<`*}GkT9?1StV&jCI6!vG@n`co_ z?y3XSG8TvQcKAHIG`4%nm|6R};Ry3Wmk=OT(ciG+uh$H!}vG-N{$SsUD>zWAl!;I-|wfQ|y-z)@~rFB28`08RtSLizn}dG1lpvbu(MM4b2fdt0Vj zMn~rDo_`bcozzlB&xZ|vzol?Ps>$i)s}&HsCRyxp*0ZfjP7MMG$XoT$dCzR!Rad(iGWZZ|i7E3C%M_4yu=Y2%y zDD6U}$xYoHzk+*+qZwr=!lY$84wBMXv5FKJC98E}ZX|&~z6&WS1_3aNa6X|};8wx& z4Amf)I!IiBKA0vDf)cV*@kH0G0{A!_=D+18Xfas>fspz;a!CHr?>!(w$Q`|@xyo33 zumRun9>55_n0bAxa{?lGnHkyH8Q%33*6KG_EDZ{0kBZMP#bW~+o6-4ThIFBV7Bo1c z`T011(VUflrkCOCzsx#3(^>-L?FEoATY{eo6yJ4-b!?rbcVUuPPb)9_MMN5l98cuO zP9Q$(@MR4^4BYsL)A|K{a(32OCjn%{MMXYx*X`|Ptxz)^tPZ(TsrrEX%R(^Jtx`&sZFOlrsKxnJH{TUwey9>m{ysJ@I z{AAACnmx3%Ji__ZCkPP`Pr!+35kncGdc#)#c;O&v0^LCIPwP5+0Zt}p6>unz?V|(g z)WFOvv8;bnzdBHBU% zNlF%UbQ7$ia7qQiBkDCK^1Kb|E4p5#9oE^{msLot;F90$9oLBIq4aptx-FA+9b3S0 zC#Y16$RCtdL>$d8Oso{ThTSH{)~N^%Nws5ffvoRZHX%bq!y6d?q45$wYRCdu(ya?SFth-rGjSg|D)B0Xn((j%D-ITWgS-J z1U^4K7Z~4)B$n~r-z#4P3;o{S3#RAUWaQh+V?X^~Ir*;_Cy>1=jm|NT%IE;V7BNUB z2QYP_Ban0ebb2ZDuf-8b5@{=K_pb7IBlRZifea|`Q}`Jvp3d!&`K7BC7CLGnQ@-xj z3z;mxu_WQLySW6%KrQMwjL0}jj z3K;?a9Z1D*$6XrJr;udlV`S#;T1>GF;sqik*6a&xSQjQjp@}DvMrt2UFTY_qef7cv zU^;Hkn5|YPH1Q>P1WlMcTuxuNu#nDBtK@v+;ABV;RTUiH)6Y$u?{l7-hzv3b+}PS8 zdQ2PJw(+>>Pz|~-MYb)svsOcIG-y5L!9+jlg7!ZUCD^H^wdnUHqGXp~9a*G~)cMp; zpdaI6%QV0vfkQIP?JL}>H>Gk}Y7(g6W1HZVoSR)Ox2uL&7&e*>l_W=47?@pNrN8!Y ze2h>NB-lcnU8S9M{0r-xXUl@kMM`^|tAKIB4_{H$m4!lWx(Nf~Af1sKV2_8_O zsH`amIy8j3wr-lm5)_$Bh;ib9E)ogl*tK5tLt_FHpotu)A}3Stj43O@qpO{cO7=HR z-mLS`)=k{)C%cA<>#7k+zNY^OTKX-DgN=hIM*~gouk5gnIjgK+ftt_7lCe7`CL{jy z6O)q@g*~(HAEF5J*}&vvAUo+_gF(=QvqCm2d~B39+mG|O<49~0<#(4_uRu5Ob$Y7G zSak_8R^xF#8a*&KC(O*4B#*!slP-z=3}1~2iKzp{MnTA&oF+V2+2(i#-F#)9GyRn% z*#s-eENNko4yKS}Wf^vbG`UE&hQu0aD`j4!?p6eYIkHH_d?JxgK1K8}JmZ-TdA(k& zGGo}|4W$_`&rD5`2i{bW^S}ev>kUma9-a|*u4nHOl^{0eVG3l|Bjxqr6yx(T-dT?) zB1E>ky`&d=W<5;AU0Wg*a$r2{xsz~sw}Nm-F-@i3CAE{mP60+BX8Z9%@9Ve@eYBoO zYI{^0G=TgjVbuZef(LHx(cB7vHhNe4Opwz~fSY$Unvgz+w<21zi0K%)tOL?8%& z>}Cc*aE3FSo*X#4lNOlS*&uG#5-aVjw6l4oR@@}{Buf~Dv!vDflnBdtC1=5sqt>!d zI)Tpjt%Iz);hp94|JLdAVgB#E>IRA+Ig;-r`#us~9nh$%uCDOn?+ttCb)r0ap4F1t z{<*pR+3ZP8b~znmd-u=jC+4S7JtOPOC%}UL?>ZB&C0HWS_-&WWp!=xI<6^rKi3B{2 zAeG{hvOA5A2;*m+l2qtzkESeKC zQ%a@#RlRtn*pP}SXr%mKIemJv_l>)s&_Qxr#|EnVImHo$T>qFT!zB8S6y|~4KuZ-n z-$Ir_$HwwtRl_2jFqc$@W`+}QWS@%eZafWT^d#9YhaMR&Ib_Er=J$vD7X7tR-*Egd z8@EJv>o67qzGUNS*!M`{)C6M>4uF(XmqghJ$x{m4r$RPjFFgtpkqWy34nRgyv8>cS z$v#PQXc+G1Ci|(pwO5Eg!FO1^@YLR$m!A8|o=-d!9gRc-!6+Mh>cY~^FMs8^hd%LV zfoNnj8s(A}lK6B%Teg&DAQd(>6FwW5nC(6j>FZc!vT_McI?a|H$_AXnr`|5JY+8B- zHs@$_*;Y<(Aj?xLldEKR+Ge*J-NwsEX(mmGQ80fJ$h8|{H^ArQ?bMvLV9%T1+!Op6xMY8r&Pxt_ z{__E88@p&&|Iut@o!zH|;lQu%&;=E)j zm?yhkV8dqThFeCFe6KQepb52Xdbx7~Cox#XsOX7M=-q# z(1?)Llq>pj=nLVIaCqd~l=>V0pj7PdVE(blz( zlUtVA@;JI#PG|`kmQ2HdS<>{;_oA9EFfb61gb|9KLnIji!W*~(cL5xS*e_&HXMuX3 z^)$@?cKW}aW~+D(r~R+OX;W52Z>*nYRoUGV{1;$tWztXnH{N%j zi(XGX?0e`T?kz@o1Y7=DKnW($$f(#fnbd%<8fK-mp=lMpuIs#S86?5&usofhnLr|+ zd+dt$F%537YZX?8uLRp%iJ|2U$OR>kTd^Xn8l^R?|6c3qz0zUo^#u=dxLHuE5f4k; z5W1%Db5u!rEJnL9>4J3+-E0_i?2+=z@`QGM?T3!!WE0wnG zDizqqyQ0kxc6EJy)6#TMlNi_FS~?l9#vu!v`s*L+zv1JR3Nw1&cFP;iS1LALMEBv- z+IPyb3Mo^pAAs6U_!V-4@LO@^vsYs!WYsmGf=y614_RoPAwSTr51>W)B_IrL^@sZU zLM#EN@M+71I7Ts-&3={jCrKDmEjC>~p)Pgq2TeMmU&s|_74k44y}}4s3ygz} z_`I|mc!dLC%eM?Iq~xeaJFTq%Tb3UOJ$OK0!eoqJDrmL@j){C$P=~y$})T;26iQh28gnQSSr0Wgtj|J&932v>DgBCO43$%EETVX@% zclut3uh$?e;^#T#@5XsEozA;;W;EcjVS&;sHEHMBRe|an+)lq?n$5}8$=7Y7zB~Df zkdx84ONHeSe#WHH)3*i3?@8P<9{egv7|e2JYGY&SqDHl;vj4{#H?t%sgeejf{lF7+ z9e-Gz_20a(G<{?3{>;=RQyJ_MLqi>iPceU z_%Yci7DI*sjUli|rLg}pNDK^vb!r-LGg`#I0oNgkXq%)}eksfOX9X5TC5aB>n5S!V zL2!oOAvYcvxF!t*pw3gnT!uyZD2;)>b5c$ywl53*HLn!=?m39=HOIiurYQK#>*c@)F3qdq@c1UQ{QUAeaJYWPt+MJ36}e z)?1%Y?nM6ePUSz0onhWHW4GS=_)GlCOOo66RwSRk4zfTZD;9a1{HW){vaL;S&bO@L z3x~g3w-iu^t6c8OHNFlQwISlePy%J;ts-fn(y$sGeTgl^W^To--&@m^C-%pNpBf$e z&yC-T&D`=5UhFummml9BOG!fAc^gEf_MR6#v?9?XT{BqtYCHZyiuJ3Q8V z=(!_D?ml|-Zl3;HI9#pOv^Vh!l>YpUH%em8a1<9UHuwybZY$wW$pbL4iniiR7mHv; za{BwxW&G|bp&%TCV*Q)*vwKs{iu#I`EB_g#Cgs-8Pbn31BYq}Le3#mm7n4x)P;JZV zH^q!>-s78O*A4j;RGWiUh}jKP!A)~n zStB{WX2kBiGj{Ncv4aO=cQ&qC7t0z^Uq$TFH+XsJ4ow|G;zdt8_K?hFi*U<08a=&}2JC?RnIh&s> zOj>#}D*&wmuGeB21vi!|x9kddne3LY$Ima#{%sU}Jtqo0XHS})8y|P~CA!Wp#iEIL z8ZJNo^|4v#ue+n@^_lkYdK4z^*0Mv1Xl&_xSEA4Te{Y?B@NYs~pX?q^5;Ylo{RveE z_F33)T`B@EN(432OGWInfRVJu)*Adou&i;Q^n)?5f@NzuL(B=UG|&Elq*Ju|O&78t zWMn_fUVfP!dc5&CQ`xJpvYU!Ukpcy84YHsjzfbZyQ9_E1VudcC+i16#3ANJJj1cf0 zp|Jl-V@=czaZ@4i=9u<{aTJDq)1Y#zlUC6bIY-GO;Gg(ObD5Q%b@eUwgfs4nh8&~K%`j(k^s6CCh1k6*r zicF{LmUQn=*q=20C5TPQVnWgicGu&N-&Vcxu`2wrKY1MXkKI_kt?{STs^k)o9)`#_ zo@5=^k>pL!DC*Z}0Oy#N`5YK1eP3 zA<8yrGN%MJ!lDgBRGQgd#;;zthMTM$&a_vJn?0DKlDM{g?Wk=O_D>Fp+9pd#W!Ehk zWa98eHWvz|EwdR0Y!?a4Q5gdZ9J}|p5(`m%0OAIBjn@Xx^xXXcZ^Cn!UFz(7wj0%V*nI)q=cXYX3P<2`WiGo77Gg5N&d z2|pWu>~9~Rib4Gu)cBf1BL50}0;$lfp$hX>fwfgrM*IOamC3v~WL4_W*Pp#6J^OLS zc-0!$X#c+E*Yi||Ju87{ne^-@8rOIg7^8jE`ciUn3UnvC4^avWJejF0@Q+SGBz0wP zWyKQxwFaSNZt|E2koI|-0UzLmOpXiZNkrZ57ytlN$pM!#IjFf9w(Tm{bBkKV#zrO* z9&zaDC|D%6&141U*J&DSl*HMItf}x@)I3(VM(5id7#UqR9wBTi3wX?{(Fz7 zI}}cgWG5ykvLlIbsN3Ti_w-HdeI91HlDE6tTgD_d8GmKrb~f*Jb@ccETg>h5?CSOP zbhz9Lj=eV|kaNB*k|Yq zAi{;Tq~Qtj=tik@1=AWGLaW{@WoVuoZ(;+b#Py4s368kM5@byl8?a+WQ3>}Ok?3eN zVt{wmU}iAP1s)3Owfn>Sdjmk){+xy??|7ze`rjeobrwjO@#V~B=h6?^0()-jsH|ZT7)(8pd=v|q~KVAJt2@lk9Whd z+g6KMD*<`h;3gagtbG}4Qq>uO{50120c@H{TV2z26Sf-c$h}v`14!4&C8kb(SKP0P z4oHzg?3E-b|AJ>ZDlLOY$2n{@Qu@&5v~bDrIA@*PN};T9EN;1N?qLR2lW1st4HNpS z^V(ZqY1VaCfqUpVc#}|K>3&M|%xiS9NT>W3{_yk-%>}q{IPj<&*B*ouYw7o88Ms%6 z)R5ROXs0#O@gH74yz^Y@Iu;H(#J0!8coZmWN|M z?BU5x-bSbvLv6l^4+SZ{@FJvS*Kg~~Oll@NW6egO-DROre0luoP80Xn04LxrkUty%>#fT{xg5~Nh;3a_CFU&9CM#^^iKs%+h^Dg6D* z+T8A`DsM+>bH8;B>xQ^(^e#l*rf@FXJyWwgAsjVK`&6_4>>f#7td4z=o(OhaiO4%% zgMUv?ZQmowJ3NmRu=)dDJwhM11^5&&aiCWVhviu&& zD?AC(^|n4NNpG5TxBisfPi3n{xmF)+n5~Hvh7R>XtceNPH)lxx_b(sYs@+;vi!i8- zyRF6Kw$`IoYxOgY=5meK)3mBtZ=3%%_{=9YyAY#xEZQwsgztq3kIw$(PeUW!t|cGg zyhW`M!|;3IX>xSjHfro~L#<6BlIBI>NvNvLxeA}WId<%a5O3UmB@ZASO6!p2=LyFK z9gM(h;wvi-Aa_S9fPdfg}7 zu3jdSAT!EqyNZ#<$Yf8lD!1&k<>iDgNJnaj=wClFi7e664|oCw(zFYc6T=^R_sGo4 zK>ivv18v`xx#20M&mOZe@~UJV4$eK)lYIveIw`aG9%|#zi8gn0H z731{y$R3xw@k;dZ8=w3jNIis=xQCEC_*#rL;`}QpI=CZFihJG^vV3W-=-^|ZbT+>A zwfo-F*?GCM+t>L>XXhJpaag9irUsFJ^<{h$_nz*IbXm<%2>qcYb7?>F^M0cg9^2>uqneP1J?jHRpdtc+Xq6>-T{P6tIPxN;G+;ZRilQtE> zYPLN{0MXq7gzkp+AYZ#T2Y9~I>bnP~FH@DJXLdE}hG7&X$nsgKe;m?94vnBdY2c9J_0e8S&8FE}VFHoPo41G8$ihHTbGQNc^ZigLfG3PXcW z?hjm`I;Z%K>6&3`8@d4mSjjX?xRE@Syr5{VAZmbU4jA2j_%~|kU8k%XWhNP5=TmNlx;x8es!h zk$0_9r~vd~E+OL!aFCLtDPf~L3Q0n{Eo{!Civ10Y(kTyIfhro9#|e3m=QNk7@jT{5 zz8Cf+J^kwHa(;Yi99Xg<=oYJSU5{6*c|KB#_DEq$3gysA>?O>stgcqBNiP8Ur%^5& zx`|ddZDTdM8Ba=-s&y+_VsZ>o%ZW%^^6eysnHjvzH_A^6h#XW)oSx?6D^AB13b_8#hKC#&S zN8KN%A^Z+Xe@d{hd0{M>yh9k}|4Fp8vF*=Dt{&xREJ@^9a&3)FJ{mx8lfU6rU1>R6 zDEeBcTn1gGxv8~bnk<*4e?4npyU!3_msF6GAXXRZkCVg8Cz!T!Vv|?Mt1IS8o}Xa) zzmGK{`i5`D(5Q>J8C3x;x5%~0>?6#vzf%{)URAI&2^pTP?&$1 zK}hpB_F!YCj=tv-#T;p&^3BqCaWOF<+H&L3v-~tNt)-c6KLe<}uQBtSlgS5_a9{68F#F@VkuGOnU(cN`Z(?{RAB+E&`H{XJufw71 z%+37$djlS)+&eV;*hI+VML8~WvTijEcyNPbE!;qECrL9uk#cx|`^)=KW6IP{PkvF=2|f1~Xo%v5skbc|=_bKP=HtfX{4}M{m-$6SR9dOtcme zNs#VbNKwW~RyT}k8bja0>`bP>R14P-CK}g5R02R9&O@%BgE|DIVNQ#Qg1`d21@feC zi2~om3el-R(nyYj6mU(jbFh*kEBJ!C|iHW+lTOO-|i- zLKo>v;*I`tVKBYin>rplHoRg<4%T7gcFg8FPyXiY8?;*ODoJN__#QqwzoTf~L0;?2 zlFnXk&hdnCt;%WG3Ksu^O~_U!ViS$8#3o{I)-+tLP4@6aY;rO-5jPE(xQx|RuFZLc z)mdJO+HZ6?oASVB`|_%}dED5GD9Ih^Ug|yu+lY9=@}L+>z@N2~+FKcGg)}`dV%W|b z(9Aq?Pno@9(-}6pWY(fH*egIGtg}$rC^Mupj4}}#qPAxk{q@saR?KUfK`E|>My$f0 zBm|m?W*CXs!HWygfeDA^Sll&~zIm5An0IN;gS#G~MdU5r^Ly2vXm456`6=2aXp zFQbI~#g{rdzKFx-)%f^${FPT`e$5uK>k0_#(JxzKP1~M+@=D+&A~8$oh7n>P8{55a zys?pAJ}|AEoY;MVY0kac_`c=*%yD;i`ncGN{ZgdK56*E{4ystQ)mBL7I-813$WAm4 zbn-wP@Um06^dJLcLOULZ;796~2DlA&R!(oNU;VwY2ghTqzpa*)_r~5h9y_tAszRO~ z^4_6gr53h%=(15V%I#0S0gTMr<{WK3P?aQ|I=o5iRWP(>v8=z`ExWH&N&xQoR2tvZ ze{B2>nzHEslwUrUW5Z*+C*sLWByngat|qcm(B3*KLi*5(MO)6#op9(-g+e0UpNV9; zW)5}7!^g$e;u>6wTHr5%S81EJW0gpTiW*(&>czUSp|(ec*gsgvbQ z{Owv(M_RS?ruOCp^1afYCtszvS+}^kfre|fsc(RzjJfUI1yb7k#cN_Q>{lUv2qT z7Uvc@AeABJUI_(MH4v&s&?o+)Sd38LE@`OU8+dE}gwI)O;XR@#lZ?Nsf_h+Y}&M6#%hz24-$~Q+;YeaXQt6nU4iux3AQ!P;FDG z6|7Ntecwtjb;YWe*xQ|?wMOz}8=rPq{n4A1S)Bk$9i8{Uk$m?D); zY76pWMO)K25&{|e5LaXX)1=cHYP&JA<<}-%O<59g;B%5h@TVs=rpV`#axFu!YFA(hZB}#i_bti zansT%JMGv^TTRl5Tr92;m={mL&KCW#$wz;2t z@lpoBUBE!FXhbq>1*qxuF6z}+=^e$Fp?;=mV z0^adO`tgraN@aWz$|%zJSt^5m`bA2GcrRY^j8b_awZ=D2;teO6qTPT8H#B1eJxBT@ zqW`mWvk7HjSus=BzeWdAw}sGBYocp&&WCdY8q8`-XbGDu{GYrIskml*w>P4cuG$hA zt~9IAfi7G$gt>|+P-=}%8Y5P7BvJkKOS~Oen3YX_Xrub@SYtjOTZx*ufKIxglK5G= zukm#@g#x2Lr!%dIYghZ3Go-dk2AJy|6XfFmE&lnNy^Wk#I+xzDCrG& z4xDvha>k&$!Y^_BrCPSdPO1%md+jyi@n5e%y*LnAt8QgN7htigR~s8xIRa&%L~;mq z42w^j-<)}>{dqBZVZE`T>x%HiqD;}&*dwk~bB=Gy7cuwdB*g_^w9(uz=Pi)X@;W)z zg#9FY^oKW}RJEd6SzkA|`HD`+gx@rqa*F>7_45%Ohk+xU`6TIg(7htHapnAZhQau1 z`_5ls|MheGR~r8hMgzTvJ?LH8FF6IfSXolJRqS>?VeHbY|Gq?BX$=#T=?#3T3})5_ zU16n2M&kMLb%`XelwZ@Qx;@Wg?HoxJA3-*#iV5Xg!*v#0>^q7BQ@6v>208)Z4e7%gc>XQy_u1hjqfKj7sY_Y4?E|mEi-|Vem3C}py?#osYZy0T2m2MENfn2r< zd7(KTOy%?Q=s>72srJURXWv*`JnOAM?<|=&e;^qAz|CgmOM&|j{?dUbBuQ>c%*C}l zEyTDI_9XWY*rZs2I9e1Fkr|f>ZN<1`9Rs0(dJeuZi}Xk4Cq~mYIQ;!V!*dC^rM-kt zzr`;sKs+j*wEI&270vR&3;RHFP1ydB?Zsws79!)j_Tl$TS5nzB$gkG()h#eDfg9+6~QmN~O@c;(2(^x?zPxWO@#tb+~v zi_O^e^z1vthp4qXg;loo10zWz%(vvF5P%*UZtQ>+t1T;&nmcdV-;#MMD;Fu!Tq!UB{dXWxE$_d0aeujZNKTN~ ztdfuqaXtldVn%b!^BA6dBWr0^1Q<5>tgd2&{hDo8h8i-lk40h36}DeP?2cbRt7)t% z*-dBd@xhmtT5;9e)8jSKEc{V=do!C)p6 z7#a*@fZWq<`GiZreng57sw=f&O=bm|Mf*y?ei$|E{RgNX+)JG)V*CZtz@Mcw%;O$Z zh$E!rUpa>D7Q`>fa$wq`mo#W5TM@neBQ*DIY*InmSeKMzg!>@NvZ`)}b3JT<5{JpGZY>dnRnuAB`v0GwW zZ1?lh>!kan2PMh2#ZYH44p@G!y`9|rdh`1%Y&kf#?b_{gx&1zC-;N#6hLNW34s~{R z-7B`e0T;Sp%R?HVTky&9@yV-P$GXmySy}z)W?UbPu$Z^&FYDy*dm{5VTtYt##aX zEA8+LB%&QctB89R<4-B11~v_BjaRtQC>;J6aV@tA_A$%MB=SfVkm<5bM6%XZm1onxL({d4 z5%P1hN|s(rj#3%rl>FY59j+iB3LT)PT7~AgVxKUWYX2)W{0mWb%iw8-Edep?_Bi@| z-GRQYJq#PA!}BRz~|9dEO zqWP9;!hrmQ@HSPt^*OtPG@#@P-2STg+f_Qc396=S`MqH4Aw+G{X>R;1O|-P?aL%Ti zGzz3`rBGb+^_!o5`sUr!GrM-pOtU)NJUDpQ!*>l1(h8)r%67l0U3mKG3&XJk=gu97 z(Qi6}5B<atzKg8^uxuwxYqs{LE+Ef#k`1z_0H=V^Z3W z=cIjW+WmwiiCk^T^v5-8spiqii~WMf^QFZvfdx?GKf{Pk%_V!I>|=0>7d_v~L{hUl zbY{sT^hY18AYm!S(S+v-t|Oa+i5WDA=srhUTd+a~m8Q&P4c~CxsNA@CQu*TVotiwD zc;H1B`?PD}UeCYB)BowfZ^F~^v#DpME6@0kUi-zsz`0S__Wop-0_Ue3&rG{*4Iq^t z6(xd!oVvw|%w|r%N!+h)W)HO_xrb7t3!|e870&rGP2>!J6TcZHzFT4yhs2RBNI$I* z50cL}HBNF~)DPKKb4dPIAjA-sbj1Ms4g-&#BK&ROHR`WokfB#~>rJAw0e_2C9^>Y( z$VbvH-AibI60@E(RM??#Gzy05V;SM6H&Mp2Vw>%DGll8@xtH5|=7 z`JrsWGs48ecVkt{tOj?bwY7+!w8J6t$OKjc{Sj)LKTK)VNaO$tM6#MyB7)^TM>j~} z8%S?~G>~l+1KC#aG*^xaA=3lTRIJkx9)FCZi_m3O#H+eaC-oxUQ{nI;9+841sfQ-z zwqlv7-$QM9lq4?|dv%)%)p_hAD);Ahs+PzJdHD<+$XU$Qw&sVr#`&w7!KBi@FNxe0 zGl{*b7FSP2?Q3DbB(%3pQ_QtE%Z$Kbiu(eeMaV6bj&KC9*VC#yLFswnxN_>DedFn# z{=WX6)0ZwWNgz}C=k;{u$L~Hmz7**03i^8b5qp!*kH1Z_3WZyE1ROtBkeS}{>4uKLkqP7Z)x zLJ)!w2e`V5Hq*MkiYK9PY`2oW(YG$ z6-riSZ?kDaJPWC6@OZW)!6Pqy(+a(GdKei=6 zuCA@s1&Kj>l+Jd1g!UY^7uSh6GksE+>{T|YP;vp>Vbv-O+6&~Hm?Da91=5T8|W8luUi&c#r0!fLc@RPl=aEgnhVmo{?>cGF&x@Tp*Lq;B`%+Va)i z+NU??_fPkn%pKgW1w@a5?^Vj)mWdE=ap$)|R{9(dWT#$ABmV_fXD^6x677G&=V)#( zVE8^w7#|KxbDvH+pMC7H#&0nbrABqIoc=$x-xgyfd!!JLal!)Ii0lG1miXL(irJ7^ zYf()bw65#ioSEzo1XV$U~orNx2I97R?WW%jf|KaaoV(c zRf799rDr*uxy+q=<_lz3ni^J8VDt^BNNld;l3jjv?^}QF=KgNk(K$FdIS@vR>gArU zfG4UR7)jg#*g1XO?#Rr@K-j8JmFm;qtdA^Ck5%2cTVAKBmujY2Q?6CNI>iT=hWZIV zQa4vm_D}`6UAh{wo}o&@&2_4(x2rR#^mI)Q^z`^G^}-MxLi z-923cBLh8d0A-hhsewq)-G}_wXQ3uHLroNl&IN^LGs9R2j6s#K-}8BS4oiojPo;C) zd8T){I^~eu>FNs0T}qelofr1|Wj4^$(>L1J(=)(ENBtg;%jNO-M|Umsy8Qj4yX1$L zB7@_L@jkc5eVUL)Q& zuHRi1T_@=45>><8_T><`0Mw~}fKaiak~_aAp`|G15=FD)K8N3>B3coeeB1JCRd9y5 z-Z=3H?IDxoeV25Aw@6lK6>DcV%=g+p&_Xn5U|jRjbDee~2!k*mJqfhU6#Zi4r_ZhZ|MDoKN#y7~6?L`yO-8^+!ihFJ)}$-lSS@uaI`f> zeLkhO)f^i>yLm*?Y$MdLL`JfPLFz$BHtZThi<`vWSH((J6`V>H@X|v=1H-Pea}%8# zBKmA=4P_u7E0q?p2Pb8wnVaItSJyUkseQB(=_Hl=p80WZ5mDcU6Ss7TKd}=NF4)AW zlD64TKn{`3^mp|Y*gZ0q*JqDh$6H{k>+pCgx7B07<|!Q#+3OGS2#vt60u#KY3xX)p zf{|P~v3v&;VfBke2G7j&<>mHHRxC=))-6*knm`g*>nzi24b5B`-b1m%&F~q?*|yeP zf2G-Bk*Qp-mv>0x(m4Aj`=({>5GD)1XK9jNL=;`zxNo*qG-Ay25VcC;ZNIEVu8L z7=Dqa%jL|(Qtp$~e~OgNTi~|bo9Mpx3HKr0I3xMl@3HR?rc9Ijmr?r#mJIViB2wod z-xla2FgP(rPt2jh6;C!pDl#6w76>^mRDNP2-5(n^j1I3OH8hlRcsmSZIOdQ&PNzq9 zw0%=0dD2ap!@iFG#bi3|l6yRWItEx{o*vniPA3=pnajzT)5W&?9^ZgCi+72(&lZva zdbz=t5u&{yhB5^kfxQg-4eeu-vB^)zCS&j90Z~kI2rd-0EL>uyVw!J*Q~1Pwi(Z9W zdn=sWWt#7YOW-VLNoxLx_!jc5WH~68U>yp{oSbv!Q|!Lku!0cVy<>+Pb>L+y2D|M> z4dsfpYf_EV@Lb#Bwm2sMF(=@0^m1e6KI}U81d%ZRD{b054p0&;aE(z-q0A_fj6$B#Vx-sNuA9((zaPAR2hyO#{JN9 zWUoP6Ub&9HJH1u%S!g;^67DI$ND#kID~7(sCtl<5H~d>ugRp1lq+s$}D?0r#L!8^q z7K)QjzMnQf-fr(8=wRCRp6kW07w)5w^x+3d9R46lXBX-C{aYi})7N2ErL#R@N=c5s z$m7$CsqiiI3ixB+V&B5(kkl(+6#SR*$DvSjq4{$Jb}AU_(~>jr4oz7 zFIZn=K8ki*C-iu!gw}pv(BoR^1SQmaY+1n;zXw4hK$~-i<1OTNwS<3~kcw*(0;`(z zVba#4Hqc`jXE7q%g=GQJ;ZpN)V zMp^Nkew2=@f@U*8$EY*YB#rl?W?Yr5bdpEkv;FlvZQ6w_d>695Q(I6&vd6|7vT=-U zbU=33jW^y9BSrpk($~l7c;to~Zu~_$zo+Q&-0JD*^xRYg@z`x1PZ2KM28YF)JOTK| z1HZrV2|;}yr{g$WP0{(>4!Mw1Q~bHWEsj zXG_EyiGB(s8$+oM&hLI!;L8J<_H7M;S}ue9v{O&$dg3*KVo#i4aQ!v744)P8S-(fR zQq;Qnpe+Zb5kiMW`&Npo0{av{Aw$(XsIGI?K81T`dqQqB-6BmqGQoRn>AXhnir~U{ z=`=Ixl#bz=z*TU1bAo0%EJ;?gxO0*VvWzxOB?#S|J z5{%`U0vPY+{80!)cJj05H0`F2bA_b~7nXM2Wbs9R2){%ron#wff+SU@Y*J0}TuNzX z`9?AxXE&c*0QrtW0Sc5VWzQ7S;0JfzB%jk(38K4XSjCa&smYErlW^f>3iEWFJEz`B zJMug=S&`onz#Fo4bSb@)nY8=A+CIVd77!=^_qG%Olf;M*uQf>k2~)`-S`BQq84&FR zHdzRW7z--RcC*mkQ^TYn0;_F5sf9p8MC6o0z3I1oK8I`NH&$E@`(W_K+b*0td-H{J ztlHD~jUGoT<>+C%X1tn0((THX)*!i?3P*$S9jt3hI`5-(=ER zW75daS6cex@*B<;{<@k-R5y8C{j1uz{ot*NWPzJRJ~#sF%`}%;=UVb-m4JFv7R@PJ z%hBw7);ijDJ<^p8UY&~aDzHz9e1A_q-_u_XbmtRFcK~?eW(B(dZNPFWSq6jZgsCM$ z269$`LI_eV@OklBM4Jlo|JjKS4=CK_$~IJQw}5!9c3{teleoYPZew%M_!a~hjzo;1 z%+OGVb6_iMgT2W8{I=SfLJ6t|E@bCLufD;Ln}dTUCd?4L`F`iZv11ot!+iVc4g8HA zRg{G|vRVPO#x!CHI&9VrG z?)jmifmnL-b&=>q2Fff#nV+-0;>gpNB*HS64yRBE4AK@)%Q7m@UXQs9zA2{0N2Wih zyZ!OO^LJnsuqt0rW0UC+Ui17)OpT?FzU~|quTxbHNbTB;9r!aHG#*nG56|Fzf01MyDfHckil>It+dL*O_N^n(J3Y%8eArEJ@ zohWf88wLi3yanay6LEiJm|MahlzaL<=It2lT6IP~-rdZ z7tnnEq^9-z8prSP=*C~okNA6?J#+bi4tJu@*MIa41B1K9-uTA6>U2Au4pfaeJkAbx zS7%qc*Om2k##B#-)6?N_db`z3k1IB$xSYGw*QBpujGvpOx3Dk6(=SN3OA^CJ1M%~= z4;Lb=OL(^S=aca+a_J?5o;d<8Mf;+rbrGS0KN4rm2~X-_9UWc$-X7TlPa0V8yGKKQ zcvRWlHyG^aj~eiOQX5cD098P$zf9>}-F|H{5>9kDGLcTFHtp}rXe_BZT}~%+Zh6q& zUVKt0!_(~>peGHwov}VG-48BVL2u{Tr0VVhomq=6aT9RE#N# z5=!w8odR+=krGe@%)w3IxF*_xlpXn<;Q6<+C!_PT3#Tt77JmauU5~}IL_BzYX>>R- zz58IksQk|G*wO`7YP>5tpLpoh?&-ywW5@p=T|XI%=MU_jj>EU-gYkrhS_%;hsaxu& zngP-ltwSIT$3%f7uK*@u)=r#$T#%Z;exGtUK6uIJd}|`M^g)N?eQ$O8E-l4Qz;fiG zaaZ^Bg$%ztwB+imh59@OEKf_pzQ#|pv$!a+M+6>#N7eF5al(t{N^q4UehXkDph5E| z>!@Hdi@IT;45CN}Ok=3&Hcf&sgVjTa{WVG2B$*SVWLuVkDr8IE+OUUXy6Chcpc{IT zjCblf9GIF0zRvYJ8cdsn|F6TY4jV&^O+;NXu7|p0V`wRPNQBLf;)2JjaGm1WpkSv~ zsugR+4cM1fiwd1!7G_)RJ8b;YEak~_ z1eGavB}?ziF2yo21&qfj)>UfA+%VR)-_FD`PY-2cU)A5~-)2zdb6@U{r={0b8dGTLF$wLNRaCPFNmRhOr1$iP5zy#*=XH zFcg*Fw~wuIb%g#HREaIa4RG|3D671oTiYB9n(CIop2DOKXm$At|vHhj~{14p?A>mkA2<%Ax z@U_kIR~a;6N%pfe62w`KFx8wm!q9>Ongk_bSqn>e6}s*r*w_I`9@n(D!R}qCMN@o?D zXAOkBkecvRZ{<-p^FwEx-q&H`h#0c?WfFfdGu%I< z4K_BG@Wu~q;5`JSVTA7+T+WXzHm>a+1@SJml+HE?X~<7f3PKHrLIr@EEVY*)hS}@P zHO1Fo9~~Tmta`DaCEciG4^cM&V<$oc{W&OSXmB(`6?r=?upE_t-Ndhrc7#*X;aK<- zvb7KFC}F;Td^{M0?ViQOXk>9QQr%YK%;Ys9Cmk~*_;@zCTi`K(I}Qe?m(cMI`@WCXz`7BXcG&&6}D*J3Z7 zjA4BOpZ|OSIB7axhnM%?l%9tl?on9KAF<@Ke@fUV96Q8Tm;i7uMX{MH8-7r3BIl%< zM;X-qeuK0MKTfHB;nNquRTR8H*SaC~g_r{Prvj(!tmlS@b9KPR!51A0VVViHWOfy+ zHWNs%WmE07NvqAWlg*<7YC2#+PF(#{D&_YnWn<&M4#@wSM7wcM_-dFbD_<2V^JTNz zszudQpzQRu2K!^O2OCBofdGnwSvFIkaNtdJKNUI*FoYiX(CQ3(I3kWO1Rv8h8{Zt2 z6(9r*(*WW?kw@7~I=zxk&oEe{C&r4!u?bC^9L?UE9c3nB{53XyC@6Q_#W88_>X3s! z#I326@o_~Tj7DKtxy3g|oc|c7ee71s;&GdfPQ~ykBza*2Wm(KD2hV0%V^b)Z^>KWWV%e)|zqpz-BAp;iA ztGQGv_o`LEzwxs)k%$S$k>br??Xck_wYF=96`M;4AeQY^4 z0a+ft$STpr&n|r?9*(n(#--?)vz6$Ri?LxSVE*F!l*!LdH#Xvdn8cdx6@(%F-?F1s#8ay>la;j^x=PoG zrV){_!yN0^FWSg8r(p`PfsLcjrp#0h10Nxm3C;xl0|v$`#y-YZ^Y1ig`310Qy%BQ# z7tQq<&ej%yxC?E2_+1wRdEn~6MkLVZ^(Jl}?8n^&ezvjl3QZvV^A&TA@C+18*UXRx z&_P3;ooP@|ZF3}2fW$4gBGd!tO=*hkGe{Il_+t4aD=JDzFQPxDUN_cCYX;MpROWER zA;nNa2FSHbEMyREN239bddOm-kW@p|Q?e*Yb0(c0YNjlErlav{#~bD{iM~F=WTx&I z=v(g_aG=Y26VOl)6Mr|Hbo)bz=T2WbeF;A71;Uj)lI-nG zh7z4FM1gg6CPH)`?{Fc8qN^kRmk*tK=+r4ltaa#ROPZB$SrN#DR;utCQS%D07K#;r z%oa2j*rTKvDVr>V^-HXiUpM&4z(p9R@!<)T={^ogwYu1=zCs9(FEScZfT_2FqyD2V zh~LsP5#stk{%&NBbzxg@vYeWv29pt=PKK~0#OR|vWU8rc;AWnU`jH^p)8TWT^o2hW zVD7(12E#pcgU$_^IR*%OQ0wk+yPprGoNnMjIy>_(HR|+@Fv>Z8<#n+Am{|m0lG3UG z91G|0*$`RX@7pTl=DPN##v&_C2wDrPr#0h1w9m~2Y$c8z#NpU-lvet~_H29TvGDAX zBJt|1O8{#t*z+~c-Hl&+JbZMPS}AV5DL?je{tzFR-~>w62q6P8qdDoYgnma%Y8O#%CAW=sm&4xP|^2rA(qjO2~nY``XzDjNT>e zF_lES7Sd}swT?l~G}#VmD!0pF5Bq#qd?UV^4_t;p@mMB;>#}bIuENEB0A%+`jwXsC zy#r>&Q7w=O7*?A_$d1cEL8MV+3eZ)hD!gBlna$OV-a)vnpDVJ;;{_&B4pSr?jH*sg z#Cqei16FvCnr6Zk)6`0Vg92{pAX=k?eX<(jQwE&nEc-9+on2wBcnL>uhe}V zsBUz1u*hxGQ=M)fo!776m!l)y9m0G~QA1iiK4amlW@c5VlS9lHL=+GI)eW^;jYjiJ zH0BM^3bNwA5zSziN!E%iF9ZFxWge;GpXdyrm&-soY=TvA2{Z)sU*a9$CAoxoyFfFG zZMR0=Z+r~vYgZ!~@ZBwDA`B$_HM;uA)m2! zi~}u;e7(x{#y=4Izz1Ug(dQ4xPfm8k!^USXhQn7_r*(b62**1nZ-|Hcq8GzQ!WHRX z8L!H=LgPA`v6cj(0A1VFqKWLuhEfau{7po!82Q&VK1)Yz*}%!hgpK0NT&6+z`TPsC z|5~w(^9^nrATt*2Ww<2ZU&edW1oOS{-+43t-8gVv=U!vYQ8T=KoS=5JSM$Q@3m={y z9-bb)#m0NZb)gypszOisVP9rIPBipd@~3leHBSdwKlyej}J!wmDaF7IRJ zo1B!E|JTI-VxwJ+U-3G|CdOG8J3t45S0&+%2{L9N`aE_pK43EDtr&c^zmug*y=i=0 zUOA{8T#@aAKPJCHj_`9%{DKagmZt`jR^S<4BpU~b1+eQg>BZjnzrUB&8&C8aMlbYZ z8-tvzxH$SwvfsiSA4cy*dD21D9T~Z-M*QISJp6vJ%7Tc^FzFUG#(k{7ktUt)oqI}$ zX<2dz$mRpBbs>XOWsd{0bmix+5*66-)cN?h-rMI1&SevOD%j)6% zXX8tPR)=cI5$NSqt}qWvj4U@r^)i3om-UtW2fW^lSN;Igxy5@ij81eP@XB!e2VUWt zogy>gP5qBPb}e`>-XOw1S({d@D~u%&}!(ccfV-*I}w zd?eB+M43qIpg?xVkk}IgMKBQ(n-r&e{(2-FrVsQqd$&F^Xp9VYcL2jRIAZV*oxxQ! zUPmg<|1Mf3-x7((Zj!oIW&JEvq_&4!-dm&8lN|2Z{mCfc^?UTyF4MTobPd$MBW}iVSjRbMr(iqn$xB?v90b!ixK~{QRmmIh-G! zBvZXup;20ch`GZvj#|wzGhBf`fg42|GxBc-J!sCJ{R`hSKUyv7Mg4b(-(1{@AvG)I z7ng}Ao%(JJDd~Y|J?i4t*nyxbTcnD|rd4Dd1>Dhb?zOS6cSrmm?Mo1ma%|2>#vxl~ z?t<$y1I2D6%I0Xc>#hFC+!)hzw;{ zVBXp@^T5*L;iNh+lGu|-45&$$KG`Tu>iSE+Sg&^y&G#HJbf5nK(k&lQlLOvF!aI;; zlYNIK8vlh2OdRU-SIRj7r(2Yl%a%-exYY0dsVu&$DS2?ji&Vp>(ti%r%RKUPzKG z(yAjk1uL)LMrFS|6mjsPhtG|M-ik=KV%^xPh?4Ac6pm4n^hbC{AjFNjXlZ~?J+!f zj4%UgtV~uQh#62>hvTxy1v>~At&nQE)JnxQCpYyft#NBE%B2pu7?Oi*V=Cn`yrcGd zSi!-vOu{-e{+YQRWmT+&_Lxv!7a`hZN%5)5Fby^>&&oI45VJp@q8j{+aD^FmwB6%` z{r8;Yrn<0fq4wvoYto~!&+y&%!@tLl=}TB^Hho3QEvr2GXw3ewM}?Ek@#q-+gh`lP zj1_4|cT^eF&AtPw4;6whtR`Z>5u~tnZAn4>}qWlkabyQ)mS%H zwJUI~1Q&PA2QVY3|5I)XrK|`))K-l(ZFN;+MQydQ4!K-~i*SXcv^M6ZfFTGhlN&aJ zVg}I0OdYZ*>pHC=z-Kevw&(5N0im6X3O-8dUs1|*NH%|Py{Exr79^%=-2;zN~OPpar=A<7wb>x~BaqRKgD~B_4D6i2DbdUGkx_IR7yN?{@ zmw|_v$}AiM+ZyQCABWuTB&h=R6zn6;0=|6eY=;hgno{;&+BJTQb`t&0fZx^l@6x27 zD)3<}9g5*yls-l2uTk1I-U9d=K$nz@)oT1v?J;54iSa)=sfXtfLl*Aeh~4mO`gb74 zA2VV%tY4Ghh;lVph3=(Dj3j2uLRW{7e&5l5?S@zl4w$rlLu_*m=xG5&q`<0T6_^X= zAuFchbJTA-$d@O@qdcPMs)KqvQs*%`g1aB32#j>M7;O-3qW*L9?musi64Gz}nT3R& zZI3#`DU~EqA}W|bz&Nu)%drB{Bo9;i`Mr(xy%YU2i9?B*{>EQ14Ov%12#|4p0z7n< zCno$eeSI_j#vd1p=s+mBn{<~0jss|AOZq%NOz<*NcYLw{rG5xw~GTRD?Yz6qchGMqBTv_Y6 zOml$fa)a!F0>bI|TMwxduP7(i2*c_SLA=uOQll(%k-jZ7ai@$5hSwK$lq9|c$!?#vZ zN=VnHFf(`NB4*`7z|$QU0m#) z>D)UxxwrG>Hr>M1tus>{F5gd$1}}{UAMf3>r+4NI-gw5AYHm=iQs1pc91M4-N`OKA z4h63O)l_b`HXN5Eh6)I74@!IadZjZX11c`<{L<-5%C;3?QY51Tz{Gg~`dHq+BCR^` z_rDwJaNYOsziy2_8j2|wv4}Dz@$tm=^{RIEhC;oat-jHTYU^v#4s|5#!Gkn9hR`lF z&2?wwLX-zLZ}c3p4G`xOX>Lu8^A!6hk0%d?hJ!=C$=6T%5@9$7cgXwMaO0m6=JJZE zRDOhCiuAa94)pdO=ymrF@Za41!m^owJFbXck5)7a%>H`qfHvCS&4|++t#m5*j(laX`$xy#}u9ZYT^_q%CD(@ti67e8`ZDY%1SR5v3^pU zyxNZ2*+YJj$cdAjNJXLmGqio96tvR9D8JEo?{ePSfxy=&mW+Fj%#OvQ$^0_Yn}={6 z>bFnMQk%?=EBJAMq# zOt^Zlr!yW7;SGnUwRmi34lc){0LC}l;~96le~e$@-#R>rUbjfAP)zVN$0jUbZLk8o zKFEM&DJVj-IvZMbcJ|mpW-2{h)av}eoSoe;&022u$l|R%HfnKRkQNDzIl%#gGv&&?GK36E}Sx)AL z@F@lNdFzDHNSVr@v8O zU$25g$hvNtqGbY~4`c!%D72}HfZa1&luPx{q3YpZ6h@nfzTHVEg*RY7#Ks{KypRhu z=Sf>!$`ebLt3p35TzAa@ccc4UrH0O)zJO7^;z_`X^mXVa1k{Olj!!8uW%6o=gUGT(adg zk_H|R>R3f99oXK=*331Ntu;1ksafX7Yp`9?bP!FLIf>SbGW$0BR4YHqE+iM+GCJ|3 zW#Gg^p`V@3h5WF6s+U!I?pR~fy^VjE_`-0E&ERF&?i>B#(c$40*XZjWKj1T($Wvu# z@qRu|pknPdMGZ}~C^FZt*ycnQdeC398kcRSL5Ihc!I%dj%!Sg3UC z@imvDUB?D|;l{&YKVXh8Y47tzJR_A%q-qXSy4>D-h~TK%R8+lL0=G=b+ht&dH2jkIRg%!kQv+O4D_xj zCND#a`2tMhc{V=Xs~SbCoZhC*<{zL9B2mODwGPl1AhMYUy%$WTSyff&S`OY{&VjEL z4m|AQlZi7wtft&UPBp+ny{YNB>7~$JS4Q`EVBKbdOKzpBPrAeb7IJG)YYv}yy9%hpLtpwVn=4-Qhnkq%DD$wD*CTaqeP zjW0hC$qWTppfBd%6;-VTy)-SN-9wmNRTw(^ly7Vnno@A(Mk9Kf9Il@q~LJn!Bq5Ofg=5o1A6=DT8!Sl7JKcr5|`8U9FunG~ozOljkX z&6i@am&_L_jQ!;oC8uSX^GOTWP(l|W8K`y@_u2Ubos^e;0^D=oGOkBXMvRR+S>O)+ z^sA>g_U_fk;Tl}J;|~4QsTS%G*URaft=F=!;X0zWA%$)DzW{VL11C(p{ZPeFIuHxF?)j zoa))-9h)#a8~>g41jGGZo&VsK1fMPiDTIIm;VWBu(JXHRCTDpAkWBJdvhKyP@qM5T z{nLlx;h7^c;Pv3stK%5HJv%xNPZ{?A^q=74H$E5{aKO`teLBqoMNTCUz1L5clRWqy zP6AEwXU;aP!XgQ)w?Oq_Wy7del_DXOcCTw|XjA2nTqzj_7*DafVd(n0VVEQV&1q;< z753A+&*I_hg>FaBzO{6Cb7h-GbzXC_mzenli}pdVu7F8!(HJY!L3QO9q2+#P6mkfYunQ zmr7)j!2ospJ{k<0ysSGY{yIqeWq$~qOtXFj<6)sM$q$@7`GEW-{mg?8UWEg;1{c26 zD0!dw^b?Xx_-2^ZNFn(119%$Ujrf^f)eNO&htz_)G|AX?m&rq$;%jb5N0JH~S z61*SWeJ;nJz$xNNlQpVUe@|;J$Z_%Re_kx@*;De;n69JeCb)O9FkV}{L^Hvy3!~ZH zS&q&52;l^fWf1z%W-T|CCiFys)%T}m-4iYq&BTkvy^F=;i?L%D?>)MgJ#c*SSZ?x; z5?n7GIXo9LP919H`8?E9vSg0gW%%WXVlNjTfjie?zf-d9LmiS7C46s*@o`U}xs(Y0 zC=?~AIVs=?5MGdE`4CkJFA!*h@UU-k(wFj0O!|hynMhf?AruP*0WfE+!xvCvAz1d8 z6m{7jkw-@4Fp6N3{xJRox3E76Yp7lcb>E4E<(=JlyQ2O|#NXAmZ(mmz@;N@yBV-G{ zLr&U7Qc&*MZTmbZBEmG^+RqWY%+KwVOH~dh&i{1luUc=E>NPS_UaJ#)5|hYYxk%UA zP8xM)N`h}{Cr6|uN{)=!=fLEL4wKNr^KEcItT=dJ!PMlRUpP=`)E6E@sx$pA9+AFp zM9t^NV~qCd$Zoi1e^5&)nGT6nEGcM8nj-BRm6Em!Zbd3bO$YCKHIk}s&NqCwlz%dq!#vtgQGM!mJ^*O~`)vTORcLSfpzTqs3N(d)imxqnQ> z4)0KG9g4kw$6}i}i?2ulk}i-vI`lEyWes|POfW$(Ty;Qb$W5TTVh;S?OOdLsDEjK` ziLPE`CwjY1%mV9AvL!oDne-`58Fyiu+&z>#D^A`xSr-ZbCz4Xd94i#Y%+R*QSf$jc z=3&yMWMRV2p|M74_w08oA7k9Gf^=x_cu zb2F!-RoXy*KieJtkGrC}qL;@Ki-Y!RLGkQ)ybx)GN-8K@A5kS*CCx$T`bWaWlJK0G z`$+7ZyYaQ7ZryzjXoCK4thPUHwv>w*_dPdz{yswz+7>a$Ml7^p86CCM>%6=C>f+++ z;=9}5Ae+i$j%PB9JG{u9<2@GSd?0Jbdz1@8yvM9c@gB>eQYlmhqp;ObiDOg1DXZ~) zqmI|g2ESvC?iTFVyE)<#*H@-OR7$9T)_ZD>%YQT5qPa=q`y3N4;6Iad&7(&*L%UV> zjmy9e!m_d6JTlr~-u~6+Vc9OPi8eb1R_#kIuQr=&$h4iST>Z*xMk5UB$?JxK9`+Ei zmOk{RAO9!e_|>B$kxWaz~#o;?~+}3eG1m;%te3^&Ji!z^d2DXx-??_GMj5H zEX_vk#B3CfTJaY`ZttSSqip5rYSyKL_=P0Z$Er{>D#x&gF4*n(s&R5(V{PAY%Jpp* zO3d{j8tg?j`ZYAX*S?X%Z@!T9sjBbKfLIAC734YWOO_*jDk4)-`P_ukE%W?nIf6^Cy@k4t?4;ss0P;q!XnHclB%8UBAHrCUf z9|VupxynswGW5V%Z*p>CI5;O-nA$yX%v!-S!!Y%S+E(p$qf%VOQ{g+qsqToddarV0 zO-f-U*R-I-PkhJF!@&dYkxoF_}3p50+Kim-gXOUb{7 z54(tu?b@OIs+JrZOPb%y6T@gEnrXtOnhJvT1W#qUvOV=AtMC_6>F-B`|k35`u-{~v&bien#-S=Fv zCHD0GNS2_Y0SnxobH`HHZ*Blb%7MBho3IS^(XsL5F#{+(6mP4M(6b&eZ2XII< zppEhg>97UxNl>BC5jpS{lMqTw+#I@819xE#_mcP%3R*8jWf$zj=l^OP^-%_yO@b6ta-oj#XuK<(;* zIZ*ZYc1OKF^$#tKF2TovEQeW&yn!)IHcggmg!jhGuX7_(qXDW@1_Ue7D15B7MMaYW zNDI43X_r)-77*QQuQbXGm^|pLl?@Pr8L)K08e6=w3P;kFE4J-H-SXB?x2%F>vW9Ad z_*HD*0d|b$qkLVlO{8!H)bN0t107uhi>VfzyFy^eZT2W}7_$~}GH+2RSu98xdnS{> zbFfBK;~()tc!3o~0oTEYiJ%n5<#wZ}kb%6LQIYI6{)v~S*o7M}u#Zv}AEwcC@8Q8r zdgv;ZcCTfxN7{m~unlXj-34{tgb|R>;cTep01}%J1VU{#!G(M)=J!WhkO4=6LH9`K zm1Q}77QqB+WuyLQp!+;L^;-y!LefJ!^GkPaG7QHjdAz~W<5Bt!^qnBnQd(6AeCeEHs zo=ZqVIU+`>KnHr-%0%l}88)WS1C0rVvI-RT3YKc{r`Qk*J_*Gopjap|WtGSgjgsW~ zN{}@kqFkIINo`7MX|;1>nIsf!*(g3S2(`ZhtM&ive$_k_>J^&f^>+JzbrrvQNob6>G~3@plJUC3 zMYMDTD9KsrWXmoF404mu2pLcx5D!ELAW>3)02>UydMd4SI{V+ z(j90XeYp;x;LCWt%u}DZ>Iqgu1>CM@m4k9EFeYiY60mh*Bp-?I9NjCYP?~48&5FGu zc^|B@@y0hHb!$K_-h47GY+s9V44u7WOrrVq$sH;p)`aAu z>6Y(uQx?5#4gQ{r)!=V!O9NC${qr@T?$Oq)y->kM(IfSc^dnC=_ur+_!Tz$`vHio= zzzL;nFlnc!+*)FR`q2FKOO!x_WbE*k5qQ7;UCX0+DrHm4*DtPKjlH)Jdv5#UD%IF~ z3bCCEY_pJK$a0d-ju_D_iMC`CZGr6^dtdaPBgJBVx%VO1;&j4p8Jj(Fk5MWb%lTOB z&~iQ*jayeFAy%|U3iFtsu)-F$foXHn3(iI;^zeH9LfOGe}Qu8)#-zh#6Mh z8eaz9kcFJmX>k!*%SaI-sZ_##Vi~H2!HUFnH1Bpvz1$Y75D~|qR_34#DKV!o-&u&Xa|KA}n~o$hbSoXb^(Gv;?wHu)Up%tt-(#Kh z4y0mJup~~!QUkqA;)(;U$E)ay+@lYrK-JMB!-=;CnjsaNbUG(vDV&WNy!URl!Twqb zS@u7kY}Nw?wHfqhpGTTWW`8L&?@Vv+mq*UT5`DqjjaxGp5;1>o*%grSa<4y@xRANk zxV6705j!&?M1rC|6+qy15}wHD+>usOK|AmY`1ZG1SSrGa(Xz-)So^$)r{dsP4atC< zWD;t%o@IRmFz5aw$suYj>``Q|@SNA&OSB~CGV8XkgVrW7`lMia*A@}j299O`HPc#~ z>R0HmjQxOSunis^4k9Ndo=+%=?^FMU=OYU>)Ar-a65oy~E8KNg%rxHvTkNinljEV~ z>?C6N5rQ*ePj2UD!EyRFWA&j&RNXW;WAklYX?wX{v>%!$Y1<_#;HT9vAz?Lerb6I* zfWN0vC88JM{U9xO`jeKCBl?z{2(5-*VG{8rtg7pZ(x@?s8b-8_c92y9MW4$ymmjrh z&P=4qBaawsYXIGBnKVO78kb)sH5)5Jwd}SPo=7HH)l_R`YmY&*)Ae`qkjVsT*jU4K zYReU75Pxv5ufqg`MM!*&DlrZB(FtAN+3R%Z(|>`x82PQ0*+0S^c+}0QT81~ONXd4@ z9*wb!@oUm!@tdD{Cicvq<9UpJdh@S68+*3R^C!+de*!Q~Z{vDHR2jaNtGcqu>n2o2 zKOa-y>~d2pmqm$1II!$! z7^brE|69-&;G50#DfjdRo~AuUHk&&06K6(g*uN6&?hbZ;{U^@+1S`_m-`|Z_NE*Yv zV5X?9wxrrtV{o$;jBZ2&+1;7U?%9KLdk^m#oSr;X z7@9dWF>z=nd(+aAV2NG z4<~eGesbEeGJ7zzIGvBj5AU6$VjtGW_e_Qo+F&R&s3k&^d&YGKyYbM>P~p(z^k8&p z>831JM*6<{57>BnASbou!z%Hs+XLsEffBon*=*-Od z_(XP>S9krp>~62_y=h@DUHj$N$L|}Wqv`a>f0$0spP&<|d(&*)$2nodogk}|IcY)K zBT057ezzU^!EJ}|m+>lGp`dRRvPb5j3FhXTVVDgaL+~>R7YT}_Lgz4?i%9V6CWX=E z?s!P4KwNydhe_)g*Pru0c&hVQ{!GHlJW_K$GO$EM|gNB86~;KLZo^l1b#@M@hrv^}PnyG>RV0>B1tbP>nh{9+c$; z!ENrfN(J~|eWOw_&3~z+*R@4wB8{}+-Z|Q(^!vsWfC5@1WT+x0i5!>D)0JPPE7v4C zVfq$%w!*am%z`J%aXd$ub>OgoJ^@YD-2Nb_B{dLvc1OZmIIJC{QdnPb5F)aspuvW_ zqtRqnGWvc^W2;n9o5U}=Rc`JUbRnA}Zuw$`g8kVfLU#&ZSQ@`NX&DBI27%o8^vG#V z{!kc6Vvb3P<-S{Xqu^#CHokZ10!VUY^djKpzXEtvR-3il}LJuYkc+HBB2vLvppP)G9@3Qrb06DqP#pZV~!H zO~b4<#18Nk)7+%#jltXDu9$@#$c&Bk^Ote{CymLl3hzd@5`IEQQY zTfOa=$8*d%wl}e_GwgKU?R3r#cAxFu)fwEINbC)Eo<8Pu9`jW3+GBYBd9Ixtj14N| zF9a7x&nn{zeBL@XKE6IW5?okY2#$3 z`FiZ@Cs%cwAVs}?I!gs7JTJyD#MbfnKRgRVj3=Cpz9Qc)$5#N=E z2jU0+M&r*e(@DB*+grb_93cq3(sT$iacypu_hqQW7?gRDDpFiuXOd7JR)fmqRe{kf zl-xxevxjmtE?Mht%Fa zi0l`N_ulgP?QnK~p${;&`}%tE##@+gJJ4N;@j5sp;-I&(NrX<$1T|`B^kt-3k@5A)o)vM5OhOq=2NVfC zBChs_k+o{97s&&M=_S)#=SAuDy3WneelR0b@EsH|>nLJhTBaFYR!A&a;A=0J7qU

wF7DI|Kx|V1sBQ9FYs>m5C)C zC^&s-;)-p5xIz9`m{?Ao6W*g!7;RwcsCU8+^e@V%X|~&{eJJdJ*dgd0ikksDOa=7~ z3X`}#w+*#}%7j1Ga7a+*LFono(N_&|d8I4|VUf%O5CEQL3WYhCZt{45YBo59;jgIV zlaD_^rk0DgQ%ufSz!?v!PKV-jMV!4ZkLGcCJ0os~;&7^r;TH~f#OI+eTs_S%P93=2 z@%OCCdX{OPaQL0BwA<0;l!sidA(yAi;ZD1pe&%(_tRKE|Il8>gL6>XL(b46AQ)jErfZzfDG~EcjEKKyQ_|x>K*4CU8#wYBq>Y9>a;~-;fj+ zFi@1B$R;-#%L>z%^UJT=5yBWe2=b05K0$58SShyGQY2Nv8EyFSV1Ao;pL3{0w- zMmsvk^lbz}QL7m9?H~-dO%vdR{XCrG>_%C3KE-7TDr55-8vH5GK6VXw-A7oFMy+y7 z<2TsiMbWR2-sbjNPPdZUqTOW0wQW?JMb1HX!FzlS=Q5%y0n`(KMiKidz$z;%#g&E6 z7Ws|<#qVnTEvBqTY%!_}>3Ld62wd5Nb$RL#@IHrP1>k)O$2IoDyDwmLi3_`96GxYT z8#+3E0|;(^z)0lIHje{|kyXSNZntZt@6wFOD3&kniXH;6f;Q_jJGXA~?j*!(+fYU& zB@XxHhXK{yQ7?jE7JTu+A-uQ&N^=EcsFj$GJ;MOWZ4JKHYpqBhbsjI2Fc1<8>s!C!1k~Z zTSzp^Azv+6#u%*nhKZEn^%|*(H{jaD)tEdLmZ>SQVowIUx`N>9*bCsA5xJ*1J~$8A+47~40|8+y`ra<9Xa^SB1wJALtc;?!S>*ip|U z{=B3c;OLgAw$7iMvyD)H5`&5#$i+sdme7I;HS`;l5vxJ>AB{z+`xlF+_fZ`skA%Rg zPdKm~x2^r$9$heiJdRD*?HwK6D_{#6`ns-bzc+fC$)`tex%COa6?_bF1sjr1e~>pW zWTr#fNyjRpo1|zXWD_zLp`@alnyFW5wk#6i02fi!ZkHk07`fpnOg1_SHj)fDy`W@N zaq<9~A**h)CLRucII&MY{BZKN+a838y{boUyDj zAK_mf=^jCxwvnGdzl03R?#L8ccW=6# zmCb>G4o`1ltf(ryU|2gEMN`uQ16BA+3k(!B{H_~x0ZKx?c(IqANBJjcPH*SCj>fvC zP4r&8C?^!U2ani3>n7>{>-86r@yV)!Mjzi)4v3g-#RsTrA^6u7W6e-3)w!X;pJA9L zZOAi7l5Dq0Q^$~%a?&Eqq;0nB?b6wh{XHMARI11N1zRG1YA>aqBE!koefjz4zx@0M z=t{M}2LOmL;jR=lvO|8Fj{o2i-p&@E$NN7?Uwo5(^faZCXA?~wf{{JAll@=-2mvLF znlv@lPGN88dNI%P`Mjx@wjs3}8}swPHo@N)<~gM&qP~rO54dkxGBOmg-`cs30bNIN z_R98*#|zd>S(GG>)Yig*N}_IV2kPB#&z6SXc>?6pCt`a63uI|R(@=WJJ~?**J%cXH z#WKebVE9=2T)p0~XUvO|!anVgC?fR$Jtc?d$j;02{HQ6=Y)AK!?m8G-cyS?ixMTdO z@mTy~e36zE!u~TcaY%<_3-JBh#^LMuCvCfjYZCT*q_8D7u0F*3l1!FI!)MK40y%n0 zr}cdEoOGo(fY(?B(311ZBL{CiI0Hk^O;U!c&h+`S-Xll6XXmGumZm_v2Y(yDWkfQV zG`^z?aT&PM!V27OF^&~6Uk z1pRn|Qx!ByEF^VoWsElv$OYKfVy`?9yYWL8#*5*{1}5Gx`Uch!d*uzWQ$PR6tA>Fl zVK9%2zG)%?t)tmW1E=pF8@vDXz{Ly16`1!O?pV3Qd-%S27AKD2`xV26-psu zF`1xugKFDXU^~%7El{L9+h8w4kBo`h0U=JjA1o%aJe;6lIB1&8H0c@G%XZj!?425_ zpR~qCv4#j$B3;WdkG9gUwQ5~l?aK8c!vAgdqw8(v#NT|M6>~lzWyzjm4ydEOT%N$^ z+yZPe_t@vgApvW1@;B|YZ7Wo~2GwY4(O6kCvDfI4#zzT<1SVpTOx8)fYwDn3uuLwf zV^!fh9ElC+YPi29!5$`nBFF^E@Pf?s;J0g}gp>a5<2rI0ipn442=deW&_TlE z)w4Jl8a|0MY+u+&NTKPA$64QBJV)p+GoD*@An7~dYTenu7=jW-?yvo@vC3-wqBzv`| zzhl)eJGwJ<$C^Psja!xwB_Z_H{&^-iLxkN;iG6lU|l0m{{2I zNv@xzjaBG9HO!WN7DTZoz9L&WyBX13rpP^z)AcaLL6g26o;cIX#qH31B=lk0O%&td5kyw~ZxnX*Rg(Nj5^K&!`KGj%=8q=n zm-jSjzk+>nUcAaaw1kt=1tkQFd1!D1r1;@j21?mGxetA{XW<5b#Dsf((ig@j3;QM@ z>=#<_B%=Y>A1L549)kjuKe~5i|B-v{IRYVHH(~O1N-47FF9cGw`pLw2qQfRgh?>51 zAV^~84yQsZ`oKK{`pOOd1LfEoMhA3da5D6rE83NP5g?Lp+jUJsN5==o53I(@w^* z#_;M&nN`|LvAMLSO-K9lI$`wdC`@K%>tPjqSB6fU3MCEjz`Y)2JJw3zsVrfDq?R;xgO8Cbr#d@*0S}K)`)&b>dw&%&)lYHd_c^T%3EoDMOZNPsS zn#(jz-1v@YzqZ_HhQwT`tzlo^*f7hD3N<$Th+ZsNT#3JIK2wpwz0A7Rdhc{sFSns* zZERz%?L5_X&Il5j4CdD{G4OPQjxb>rWFYB?((RA=oVCI>*o!vSoz0C1Gqg&sH}ii* z6lsur^#?z04i1`_FoUSkcagvT?_4-`>;i0(#pPYKXt6ZT(*d#qx13%J*;b5n7`t=^ zMpl`ON`9|cDEE8)U(QJ86TW@p>Oj)#iDVofin1r7?tG6vd&(RP7kv6Rf`Q5GtBy@AD-cnTW^xp=jgXQTJR=|Ak{qQx!C>4veXS!(u|F`mQ~Z1 zrf4FfvZ|q*x`8FaIBPw$0i1b%xNd6j$DdT!_0|KDj6fH07@X3Og_gB*S$b)`RYHkm z56s+}Ev;?Kq$NvmJMw&X8y$i57FAYWjh8*py_1PRknCAbTsWIQyKDEEVNZQEQSS33 z192}|!4!+T&Yszw%aZQMj`8K7HC9c^Fas}^&q-Q7OtK^pN{$nTHX&+_~vjF{Z($RO#7+dO6XO;30CQ)eFV>fnys5kK7-q@#MMAD*DAwt_$(tDbNY`^Q*Pm0Krc}f(C3R8EAucG*Vb3n)Xt0}P z=>=qeSzBINS*{~}52XETkFKmx3soDs}kGO_9L^mXvCX=l#0qbq{=8UF5Vj>(WVL#%W^Y z7Y=%p zw^43Va~Qlv^mh2h=xA>+6H;QMFd=1<0VU&fJ32SHJw$hVcKf@-f&OXDGp0rZ%AoA& zbaX=dEI~bf4eBv3osjO4o|4{+qW}uv!gA^w+$YO}+6oWF$$^U4>|4p=x!L4mY?Bm85v4R4^uc)PsVy)4_k6hCMPrVS%B2N#h5%9 z@bx%@&c0sd{M_;Tvhx`*BO4vmIvkF@g)v7@M+b9s`FchpxvtJ#E@!k)J$m=i(C)Ll z0|3?Ibv`e9T#4z~$7W~Zo{mm;bYk*>$%#QH8+WnAJ^SZ99q!#n_ZzZH_a!IyBM6&+ zV8FkpG?fjfM$?_1j)@y%6Z3Z+j*N^%aB5!|9qeL0?~kPC9Zq+b!x2dB?)p(@G&VXn zb?DGkXJ-~V9)yb>lD$sm==4kuL?Qzdoo-J@R#n-6I_kQ_Vlk)O4Pp9?gHEZaK?i|Ay338F_E#M>A}lZNJhO%zb8TS#=z%>3i|r5nd*aLmq( z-?-HHvZBE84)$y5HlQKdwqL781gpc6Wxz(~Bw&9VaU4zSzz))*E#TV2L8o$LhYOjJ zqlTqewHX0%@vv#VYy0!TxqL9cU#X#p)MN@u=qjX!sg;SBr39$urEGR7V}KR~8ApUe zCQIi2frfeI3NX4gxD6AWOYe~+_9=McLBjS$;hKk=!4Tb>Q=877YI7XO{AI8o4)n2p z-}}2!`qjyt>^SHv{UGVmVTshhWcc$PLDxgRUi_N%ehU?#rek(+4v4PNeDpM`+J!fb z)M%a~h2sNTQF~}e0`d}Qk;sOH0zU9&qr2=N(Ea1y-P!S_>2zQq6H$`$T8POWkpC>q z8qii{e}o{)%`~_Vg3sVM5O0ypz}E)`yP4Ay&uU}G0k3~G;{QXAU+&=iJD0wbz5-v5 z%!3*;5Tk>08zdVP;m5#Kj8o}sqFP@+b|F54wQUzsP$77h;>HGPYROH9fuLA}zbhL3 zwfmQGlyrnz2bL?F4~0}PuxZNYm@<7_HoUJtZOX@|Pru%Kb@s*^X90cv%mebV>C^Yi zSErB3`{C=idP@(Ky!#P|-P@)kKnlYyV4M7--5>Vee`?e>cukP)k=rA;Y%PE?b!0iZs=-(k4iYR;=3=s->K=!`|lb z9`+=$-#@-*kDLsmjy9OQHny;Iaj$1F<=vH?SX!F+d;R3?72?L-dO(GPfgg76(I@uq zoe1_Xrl~|#((F@5r#DFg}%Pp8p%3Qpd`A6=%RWD?2zb$iY_6Wr- zoqe2mW{qe`ova}aO3U!BW3nfNYZ}^>(FzCM3qLS5;Mzt@UufR8m}uL3tUY^^qubT( z^sx@7+u47?>Kg3|c^r&6JaBl192G9Z{d557JRLymR3)7iS>4ieaXOsOW+A)2 ztY{b-w69hn;QtK>)^!D6iT|y5+C*`>Dtf0fJLasl_t>brcAh`Bw3HejPbCr~Jv~2% z*tw-yv><2o{ne%6+&iYzsSAmbz(in;P;}ozcIT4RWz&%2s1R`SB}RHiLJ$lwKA+HL zTMNj7oXw5LgxR5IBCD(8`x+)rEHpy+AJZr;uC8JfoW_@|t2AnwPG2RQjz~@^k*pT9 zpESd9<|!ZICX%#d!6lEZ=4|DzQw6It27Jedn2NZdN9(eB+TYb5Y-R&o*+Ye?JobY?R5JvgcM<)Dy^$@}fuwZ^Tz)uqxhaiB0Dx{$hGjcG&oLIUm zxV)dS{ma3-mQKurZY6u5|HFLpj#{`Vm z0kTZrFBOq`!!e>Z)iUsAU_*ie^fl05Q*j5ZW8e^~aH7MK_hnlXw=JH{HU+pUDhhrn zJf_|d?Tqj4-5v1jV99i)qu1Bxa292Ex36cxanqDD6jWj{CD84NIKs)1Ty7*i^()w& zstUOunSmk;ft7tI6v~e5>f04q)O|k{@b?UPy=vc7SMQN7SJD@ZYw>OtW@_$OZu&<+ zBm^O)44?u+up`P+V&7ulA|x5YpJ<}_Wo@$*IhRGl6n6`WknajW-f_H^KdZ4gnWg;Z z1Nv-$v6Iog-GFn_ANvH_r%c@*<)$g`s&UH{T?gBgPeu2F?`^1ih-_5ux;-kQMyO=_ zGs|5RfmkECFAY_A$8GL?5)$OQ6Vc*ua56qV4nXE*UVsXcvN2+PYk6t zL)K6Wc;KD?vE)ZhzJRoXHV-M>l&s3JahyzsmhflMMRCAix&MR8=c;cR)8X$P_6yM` zYDMTgBv}iyimvEmZ>i}hK=m|^M4u?KRb1-@GR9h7n8Bc$uHRGK7tNZr&(TwYAcX%hr@gd5{?;@%R_=RkP1d2kg)pA zhhul?cgGKFhvRqacf}6h+DWe>mx_Bc6eoPdLOgHCYiMco9SIGwQ(NgJo>j1>Zxai_m1Bo?*cl=(5 z#NJGC=eg$tJUFij^lzEd8z{r$K3oMD*X*{Hg9lfJqls{6kEZQWjt2H5`IY2A^9pK`W(c6r&6!=CH#hzow9vYZ2bE zJwpptu!UA+fBQ{m#JzBRi~Y@6A;|WPLdri(5#Xr}y7mo9Zxm8~g-vd@C>N}M(nOV> zlO&F5&YeJWe5UcF2uXLiId$hkX<$=G$CZK4oK3f)cn3bgkv9DE7i+#bV=j5`scz;X zCLVU(r#7FmvMZs6UiYTkLu%6HaJZ7He`x;r?%U|J@#_RFbPJ&i)d7C)hCNdZ5t66& z*ayo4X?bejz9~69;PrXoBr`C*G)-qw_?7)3slE`iZd97s8WBAW6Fgs4J1Z^q$Hzmr>-w&L zy!(hS8zFCLVU@@<)7gmb1)BZX7h@B#SbQQLi=X`B$yjXD*;n9*uEgLBu8C))`4(bA zg*l?kX4$zd1F^KvI@kNmrp#2XtRsYP8GCrxK-b+mUyFF__42q}iV#&G=eOg2v9dY2 z2V}&C&dsse+YkJzW1x?sHu}=cY&=bU7p;SNE7YVODMq+KnlvdLkWL`|FUt@*5WR$Q z>S(%U3SvL2m; ztc5IveOFZvNndexcUz*=RNEfz3qkx7k2zc5~Nln5U z&QadCZ+=MAhWsJ5FBuyL=(jzwbYfyM{)_(ANw+JiS=ls61`$@U(hnuGQ{mSQM$^SbxMg<-CRN1g_Kq`v1v+i z9jcYIYk8YhKeca2v#W@tr3QnlUCDgU?$q@3$ShP39!49A{knmFVzdRCg*-Bv zLWJD2$a{dYO2!MB3=RAK&N6Ln;|6WD2nU!IYJS z!2u);^b$1&zfsvW#=;Iquk7e>^r%yQSJ2@Ic7|PwOMNEgb$EhKHVAW(C*8H?fLsm+urvU78w^eW004LaV_;-pU}69QI0+O% z1n<-)>@NtICO)nVA%tQkj`;9bi*sKEb3;O$YEv_B@8J zS8dKbe?S^_|8D)3Gz+T$X8EtzUiMO`?4?p^@f^=yr^i@;!d^zSKHw^4%vy~H) zDOinpKDF4KqfpZ(J=98wDbZDWh1g4rtP;VnkYF?S8Je6&gMA^3!s0mu_Z#zo`VUMo z)278>Q`EVsT#wd>$f`?aF6Ulp;zne0HSCV76Y=2HRl<6LI*(Lm@QKe6ZD`f;%5{gC z+K;GJ#)d65>T(}9qmkNLF>|s~eu;0P3Ux@k=JTHNC-fuN>|yhp%o+Bwff}QGV#HY4 z5@tB)>Bk9Ui8IR)$Gn0;q3^k~d;owwi6=;k>WBW5XbUkk!F zlyl#9+}BZ!O%$@qsnVcPoNWt>c^UGg1EV$hb0z9)U!8=J1T)m%&WWv#Z`aKs zz*J&-FzcDCtcxwrwq>WVTiL7ZbM_aPoh!<9gZbSy5iQ{h22Bk%iKrYZ#>wO$4L~1LIk+w-s z$&yn z`cQp`{?t&68pd#Ai}Bc$%)(|LbESFG{9^STsm`fs zsXqk41GH5E006LT+xFA7Z7bWhZQHhO+qP|Ym|cH6TH|+&jE#>SkNu99i;qd9PgG8f zPdrWP$$rVlse-8isb@fDAO?g$KVT(r2KWzF0wu5`I2+smUWal)2Gkpx0H(dOu1tIM8hS5%j=o2~ zqyI7mnXb%OW(9MZ`NZaB6}BV0hrP@G=i*!=ZXx%E&(9-#H+}|xT__=NLR(?Ba9DUP zW)qX5BQ6l{OZg;HY9kGhX3H`8h_XnXrY=_xs<*YwT3idXk=l0co?cA%^vU`uBah)2 zvyC%mL6bH+nRCqR<|nI&MO%%nA=V1(w)NevXsdR6dxSmP-erGq(m9Y5IJ2EwZf>`Z zyV`x?mGoM8+q@6H<?`64I^qUO=YnrQ^V0{|2O006LT z+qP}ne%sdBX0~nHwr$(CwG|v5AAWK~xe@LWb4DB)@y6gaD29E8&&J%w9>yugWybra zoTi2*r)j!rx9PpPlG$U{%nQtW&7UnfEu}0zi)vYHxn|8{ZEtm1M_Tt=KiCG?6x&AI zQ+pM=#V*)4**`g|I)*q#J9aysIQ`B?u97adYpLt9JFk1NJM5n8-sk@2>EMZb#(Um- z4PMH-!TZD4%cuEH`m_6+`AvS&e=krg5D9D#d<)hJ27)t!dxH-{Swc-i!$Y$|S3)1d zWy5-Sd-zGDeME^Ik9>%hjM}0^bW`+GtYWM~%pV&c+Y);hFA?t^Psf+WA1CT3+zBOd zFmXBYFIhWjND9eq$y>>{si7$)wITH=^*LQ9ZAlC1v*~}CA(?5JD?mlS07L-<7z4}z z)&iG+$G{gb7gz;s3U&j7;3#l0cpCf!m4jMAL!lr0k#G2DFa7eAEO`LjZC zVX!bt*dja^Yl%K_rg&Z|DGiiXNJpf1a&@_@oRC+_N94as6D6apP+qF7)U-NP-Kkzv z|7oSP)|yj0rM=dR>3wxV|6dS1Kv@w0007LkZQFK_*|u%lUfcFJH`}&t+qxNb>*sAX zw~g5r+xC2WzwL{+yW6krD6wPs4r0eSAP3L^m?xiHuZR!D z7vmCs27g6lBWe)ah$L~JEKLp~N%98yhpIyjrq)qm>Lp#29z?@THl{H%kzts#%xktd z+k_p;ZehdhEv_85oWr<-+)KU?--hRfVnSD8vET@=#gbxwF)kIA+Dn9VUd|_Xk=M!l zZ>9%%5${2uTHtlCV6b~|LGVZ@Tc~$vYDf!R31mvG`=H#Hc>3mFR>wUAXzL4B`>G4ry8UNrH-b4rrq>;zluNC z7k1{)08KD3UjP6B000Bc0I&cU0000000IC2009620000$04@Lk004Lae2z6z17QG0 zAMW%xE$&+3?hXy^?s@{wm~*7go5@<0wa<5cpo9Yo$SW)Zjv(N9)T^>QpKAUBUcd(b z0WVB+il`+O@M2m?Gsz=QeDlIJmt65iGre@v!+>no^iltgbK2GOJa9^_DIsOzhhUsw8 z5uAUJ9c-IkV~b|JPE5QrLpKXyk}j&N0DosT5CC`qV_;?gga6G8MhsX004PKOxB#p3 BJ$(QG literal 0 HcmV?d00001 diff --git a/www/MaterialIcons-Regular.570eb83859dc23dd0eec.woff2 b/www/MaterialIcons-Regular.570eb83859dc23dd0eec.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..9fa211252080046a23b2449dbdced6abc2b0bb34 GIT binary patch literal 44300 zcmV(qLaH4god-Bm<8i3y&NC1Rw>1dIum|RgzJoZ2Lrs zpu7QWyVk0GD*tRm1RDn#*n?jf3b-+JGsXb`o^K4<|9?_)Fopu#Ks7Vl-V09HrK0t1 z8~Zi}2F+TgDCMZDV{d4SjNq*5tBjvq-#O>6QvbMhde0G@=1>WT6AD?FYHu0ikega; z>#mApX-iw$(w6QH48JEw30FN{_sf5mTE?Y}D*r#_=EX+*uo1&#?f0LDsnA_;;~H3% zLxCTdVy;vtIwBs?ZoLX9$L7>X+VkW~9@$mBGp(v>Ob<@a910>RNex5OognF)o!ohs!So!2}}rZG)$IL^H=v$DKWnv|V>w-8hao zagH}G<;94Yj2XA;q^>=(%^d5(wx|WmmDKWTsi$hebmD*KGM53NIwPkx<@V<0<%C7b zQ3^@BU!oKcp8vnvoo~GfclBBJR-x#20u3VxJj}9%>0o@O93))a-xfrYnDq0!ZvFug z2s1C_1qdS{Adq{*5`qetJRqzDWxe|t4%kYf;$S)Id$m@mtr~kQIgrpbIo%ngDG9Rlp690_YS-ueT}jfMY{APPG@P%2ZPKjR9shqiV}7sVy`{ z0|v~by%6)`bN^R5>(}h9YWLPb5@~{z33et(!V?KjfUCMN+JyUgbh%bvyWiYeEilYv zi~`^ZS;_XKB%r!`_DxmpW=zm#clXua=#r zyBzKU6?hrq`2FqYh3EGz-A>NUzmpIT-6)K?&8GByd21|V|7bvg!|BpeQ1st7wQTh- zQdcdVvYfJt&avMWwy4fU>HOx+`yM_%esITg3*GE!fRiZVmevY}oC5z04;aqMhA1a; zL?6fzWl+*xE=q@(%PXC`>ngkGT$C>PuGS2 zZMmoLz0@IMc!&`)-1+7gPM72-eaBTw3Bd$mgjNV4gjN`nH#1**`<)+suX~vNnf1TB z?-~)&A|fJ6lqlsWCF0$$<@bLWLYYoFm#RV#0YwCT(`sH#fB6Slu3Fk^)pc*Gb)>IA zA-nI+4%<7Hwb-gv1XP@;u(M8*lcE1V4=X{;sOny%uTMRy_2PC! z7{p5Dv!l%*wV%8i(2MD6gJlN%4&434HC}YXtI+FlpM2Q4twt9{w4nYk-Ut6sX_!U( zf5p8!Pb^S%XdmFTu)gR}ULZPet=Kq%!{2oe>a8+P9c|k+c5U&T=RM7PKPX{+gg8WD zcvK@9+BEZA%{-(WIlKIIx9ZJzTCd^eDb97y@S?eA8A}MIL0DyBc>*xs@VLlRMZ$!V z*_w0VR}+_wyl`f46CWl~wnU<)8ZMIrq4CpItF2O_PJL~xq{TWP>h#qhIf|qKq5@Py zOf*ialDL3Mh$@ggs9p88P69INp;4&7&|YJ=&rEHqHF*oSItB5^TW5bbp6o(tNs-m%p#=hv(v3e?@xGt4L@*mnkUuN1rcwH9`shV5aEL7P2Qm0@9^aoCsw zXw0bi+yZXLdsnfDJzNC^5eL>TQI=m`1$~pl50)}o0j`}UaMwC-DDA5ZM2gtJv9`#F zEmGetQw|sTW>ag!tJvy=00=9g58EndtD<+y_eEf}SX1xjIGVj`iMKXRPy5W1U~3G^ zK4OeNuAEuF$*U%xo(=c5&?9-QZ@ScsXjc)?3YNPJJ>fl4(sS;}cGz$d$Bg)JSvi^a ziIc6L~Q{p3eaB%`>}#A@9Z*mFo8CfPSY^|77lWWN%)u*A;1STVU;>cpnu zg#4PI>d?IC=Hws;eZX{JR2G-x?XYB2chll@H7~lfYzJJf*Uer7RVb8gJ++DjE&!Kz z_LhqMui9$*((F6D+scmcfr4^bAjH$Xp|AI)_15ChduX}M3NNbF1(>g+1_CA(;B3!V-e!$D0dUfTrzVUEotZ~*77 z>|yGpeoF{UPMy^44)+;PQrG@$-5j5*y6yzAt|d*6PQpNrAcPW&z-~Uru8;d>X{2aj zbXZ3}*WZZK?O&mt_A3m6Vu!btFb(R(Z-odMIM z(19nDmri#pXLuC#A%lZqHMQG+q}94|-N&;sq;a~GPUoXiay~M}=Oa>dK0Jk0)~RTh zc$oqS%BYH^!pN`H%L`NlH*0*K$mqmhSi;1$=K|{J`-}xT*!zuo)f@*$Ri!9^HE|v? zTP4vdk5Xy}1F4tJ(GL(YvO3O3t8J~d;bUQT1&3$9Kb=Xk(a{~U{5UG?unZZUc}{gQQsqJ61_3;8oGz zvwSBh-0e7KY~}sLDgSns*y?FkAyix=GRR92d0OozDk{~fK8&zUarRT!-)PzJuIAaP zM6Z(7R7;LjRYW8z-l0?xP+|C<6`L&&hL&ADqkcPyxwG_ginOiU3u2(cUDMCBWtQNtVMIvbWf`JE}N2#&>_ zJX#qhD>w~f#fT)CcSGx13LX$S+8B;38K9WoT2s(I)941yT%WikbWo99ImmQBV ztE(#dY?UpBMvv@HP)Np)4g@^W5Ea0~LLIJs+nSY7eEL0gY}I}zJAS|0&G_W zU8kF!I2(?}NgFWyTcpJBfauVXI_%_>c)4u?!-d>pO=s~(@5Rx1A)_7DULSYbmP72$Zvs)fbSr%m**3Yt(l?H!! zu$CN_mimVx3RHE7Z=i+J)6vMAvgjO!ilJInGtnM^Fq8e0t6`KzBe1>bPDU_W$~aCR zDe*)y8pJ55dq?{KGKpcs+n0&dLm43QSt@4j)(`zog*BoqnO+?dQ7?dfS6jm_S8-Z; zeiYw@B;R-7XN+cjO5M9bji6Y5;?dE*q_e(gA7MI|LK!5dY{%FmCCN-Ci${#(~c;tbMD&yxPU;C8R}K8q zJ&wdifFbqb;e!DaOw-Y$X(xxc=ABVv|2C|f=D_{Hm+iVJb+$~05@+%B;Mt`$TRO?y z(P+~_G#kvN>9tU4Cr54RJRb*;2^FfF-{5dDXWT<}gXXGCn-TQikijC_u^yq!+8u-u z!NF(Ir3wplRSpV)zB7V#;*u^Mf&0332w=lhbRa&0@$B83+sYbK?5FQ*ok=#k=||Qm z2gZsJC(v1#rgZc z19f{^wZtKbAT59cyQ?ArtYY{P@NW2`%LCvz@%ki1M4e8xgg%6?$IIh>$`chl2kM@C z9SUic=t4ZUk39qBJfJ#&5?6jD+g|#8dZ6Qt5YH8V&6U-1>f?y#8LIUeyTc8~-(*&V z_Xch(({a1Q{u8Ocm^?=%G5R|5XsIeeWUp;ONWjEWFlCV)>JC&Rd${j;#*q@LzcmM^ z&+-gR6)90fgb(xOdH|QU9!%~QtRKMOTz*O;rOsp~w(Ye*QEH0tldl4bK7EI%UpmL5 z>|oM?RoYutouF2q8;1=#f_Kp*I0EiAutdUP>N(Edar6z<_2^itR<^RFGeq)@fAAw{ zjy4j-_!$BuvC$EqP7pkxWZ6$_Jpye`Jr$s+qb^eYfdtV7dG zCqa0s`U+IJ_r*1OUR=_oa_wd#2nmv_T##B2*ybQndTDe}mMVOqfD>LO?%23Qr=+W* zARrGSEg*=GWGs4t^*mq>*%E0-uU*(yzDfRZoT==)pNQQ&%Qy!HOIBNtk(+0kV%6i8 zW3r#wt9f*9x?2_b&cX^qQ9hgx6haH=A5jQ%kxDozvxTLGz(_SU0(_L|R8c|Wc~vIt zCBnhsc*Oy2c3sG&z}B*;_m-7L{Imu7Y88qg!s$TsNN#x$oq}{&X_S_JU#Q3zWb255 zyx6?fjw57$^Kwr8o-5i%2zV81-8A;IwGq7UKmQ7Qy-PplG13YvBF}1CwaW$#H%;D9 z|M8O|TkMDSBlX)8sCJyO!4~IBX!VzI>8b^)haoSpsi9&@tD^2Lh zjp;dMoTN7CY|BoV)KhiW9EotZuXA~1V6Z{j8MTN;_ym&(X5bPJctim|Y8yw4H=hkQ zoa+@aATev1c(O$tg?l`XTbiV?4}m$vG?mf!l+6a~vTm2rYd02+@b)Q^yx{`;GgK)f zbetX=D5(*%n*vAk-VV}CQZZDX|0t&P`fWrI?Jbq}5>#J<7)@RMp5BhoqO>1EfQ^^_ zEB0RMCVI{^M!X(U-1|)=E<5S8Q9mm_)-pJZyP+n6GW3FteIiS1~Uy`1(4k>UP4MK_f6xnc}9F!LN?3W zszgNPMSPo|C~*2T!lNOsvFxV-(csidQ9hNA;rMlgq0`~on?7nC*|hyVFqU-N{!trN zb=SKh8opbyJPiF&U80?10+Z-j&r$~Ah7aB`0{wLiE>Xu#ZyObtMcVe?7t&MiU(NMM zEvs4%^jb+kJA#Z+3p5&3K=b-a5Un-T+;7Y|#5{}!Xs_OBnDkjNvl?>%{~cC1oVtja5cJ> zvfF$UXfN6T%8n|(Q)=!EFuf(Zm7+e2Un_N4SV?6*lB2Mo3@35kY`jQh=Cu;fbd}}M z>cI*6$h2_gep`7^G-Ua8{LX*M(K95hi9VAvCvAw~Ir3q6Jn;yAV#d|vtf zKTA|RQr0~Byh1P2wE1n!vcZ0rJ@p|7Ukh8rqMXw_1|=I7$NQmWQLC%Kod8r;=+Eg# zj4603+$d62>wbpcJ2OFIpRmi(|At1y6Ch=` zWixz6#Up*Ry4F<~z6UPC4_h!Nic6jQHa}35l>Ny^r|}A0EdjuN1OF+g;!X$?)#eMf zv2i;%`g#17iyxX)ML!GlGsk9UJ@+FT;)qn#a~l*AE2rVo$s#oG8SV(9g~c&a9C8cQ z*0D$iAsICl!qIDIdGT0LLIcH&NN&Qu(O@0lS)zpiPx8P^zP0os7i7AjfP?D`N^F&H1`6~fV&Ya-zEdJ?xR%)rTtI_eQ!Y=>n{<>VB0>C`(xi1kup)<*g!{n7ztmjYOjo&h&;)MoHjZT^8w>!pEaJ3VkAbB;h# zAM~aTCUHHl))b}WX#k*Jy5x1rc1q?1Uy5lMGPoBhX!8}`2X3#nlYk_xkCM8z2lS}i z;kAxeiv=n{2(hrNm*|t3k9$s)8twAz=ea6RtFqlx@_19-I8kMY6LrfTzXlZ55HLdjAaym*Aj=%}JQ(7N zdQgnOkg$a9VUA*I+(=oQl}egbZ?PU>n$YB@yZgc6(eZ8XcwifV=~N&`r1qY_Su`!&wF9kjcN0wax&z1<&Joo z&relZLOg!Mag!nD4m~#`4S_U1@x7d%s3T@=pwBkCmg#7sEQnD$_StN0G7+1OIxLIj zL1m0wX6xFHs0$Vd4~oKheXxPioGi*qRxL-W4!?!Z$?`nl5lEBPb;9wp8wz>}<7iOG zRaXAc-`DabkCRG;_Q{A(3r_2SE_FUs-gQz_&p4)GaC0R$v; zHW#pB1a&xQY4*-=596p><>FFSBB%9o$VeRYW;wY8&`=ey_p2?^xv8h>5# ziS$0$L(h>iH1g7(Rr9!phk2T^D5!Ysv=JVFMiQhTmWT7FdoE^bg{`WrA-0?bCguCc z)+&pA%)jT$mfOQ(7gFT*egSH4h0|ZQQY9Lr!z&JT*a_Y7EBckGLe6UQe+jaEwypeu zDuDQMmNJi-z^bXy=v7d;5SP=;~;mYReD|mCa-PFO`W**hXnrDuM*9z=44a_wHrYwmCv;h zitB=~4JwR(%a+>iWj3Rle3r@5^r~TLr*-OXbErAanzU%(P|^MH<1kI7O9g=>yu%nW zgCXqo1=ZU0y`eMz83Ni9W(=;PkJ!; zhb?T9Ta3A#^SIV0afQW}M?3{Ew#k#l$v~b&yMZ9bc#O>Bq{9xS`zCZMd1F(~@;(?3 zVKk>|Y=5;cIXE;Z0^Y5HN%Y>wBOD5&_z_M9qv=fhBB=u3lP4{Ct^ottBbzSgCzIfC zfW+r2s34YTemf(+`c+S*;?6l+FEz1W< zNDp!E$-T0U0*_V&gX4 z=-L!+9~!B)F?q!>A-FPbHrH^p!MV9G_5;P*e=lDo+agKa!fn~vC5?Y^zu`r$(JO-$ zmQoWG^qR*d%$*=Tv&BJs2WD?Ymo4oE7k*`@O)B|yVQm)S$N0i9(%#t9Z9P=k&+cGD z@BL5iHsVt=*(vcvI0$Vpv=5_gbhO7lPrC={OLZJz2ze}MOC=#C$OT_G0hqXS5n!b2 znbLpsNsyBLrMJa`4z^;u07}7Unp=Vme+gOMp*qP+B74E86-sGtola0xF`6amcPREL zCW*U4I7Jj9DtX&=M84-(+av=t+jZTS_9+tx86GZ~+WSGAfm!P#Mzon3;r9ug8DG+% zO|1WI*de|r=HL1sWmLB#l6}pP^{a0(!3M|Ow^$*NgiN*&LFsP4{rKm|(g=;L?ZWSp zS$;v%5y7d(GKe40io^!jPlbIE0-@bx*u~ROUJD$@Q;E7`>~_3?#XLSs`K1k1qm># zdoR$x-ne2(rk_STcg1yAQj9e70T#Tm0yet%VBCBB<4|9pCMLfo*_YyuG>rb^T96V) zA;B6EWyyk84kglED?HAQif4q$V@c|R4eX3JnB!o!ao4=@GV2XGjfI;*rblgiZq2zK zJM3<#gfl(LTqkxh)nous7HvNtmNV=z&kBeIcP>Y+dkWk}9m9x}O&^-vlLYGfwZIlT zBFDn4o8to0Hq$BF%0Jpc!(a_^zUJ0$*{Rc{`qVl#s@u+XkzdSDNo7kYu3w`|*{9)| zWJ|+OlOrB_j2!92qR68W{;7vU4x+=e$(rLQiH@vICkPpw7Nd5}hrCnu8YbZxCD-~IWP+V_2@NeOsD;HUl1jS1$S>nc8y-M5d zq^x3o%BJCYL(@lBoOqNooY=7rJmjzw{{7wg2mkiR{^H;M@vr~ncP}31E8XHgUVQmI zz0xH&yZnkLZu8@w_qzA|5>I{NT|VKBp84M2_`!?cb834V`aGH5+4z_Bk18sl=D6NkS?9kh(F^T!w|)D@@6}#s8^LgHaVR87VGv zoiI2E&MaArAB~#P8fUrQKPsllRKMTV)ng;cEi9He8YH_KViME6C`T_rc{1&+7wao; zAY+b#0IoHEM;QdBA!im$Hv5?<>yObp=zt}E&1-X+qEc7}X@?H>IzN#umx=3V+C4bz znzd%Kh}I>@ZKWCKk-lQsL9%SghbSMU_sg^YS>q+8iQnv5dX&s{plBtaOj9CFO@Xu|?- zI^ydEBRye*MekXZpRrI6Y%_x259?fL4eAm`RGiK-hnACsKBjI$fUMmHoI%ZhW;X#D zkNl1>+lYO{TUZRB6e789#9Cw|sfE~pj_nnDNhoDgX_oVrlpqs*EP2U>o73UpfB2p! zPeA!O@UmZ-dd+qCaDW*wk$7bro*W;_bJ_e5cFQX#6J?R8#Cjj0ar#$&)?D63RpB1B7SDc7-^~ud0rNG zJg#Q4**a;xhYSf*ybNPp$MD3P``44bCs(^uie#SEinLjU38;mLnjD3(2b?%<60~j; z4krsIT{td)z1EGEc^2A8Kso;}xqx08yKGKQtEX5?ZnpFp zN$WmtXw7tMr#+_@a?APUPkCQkC%JuL*INu0@Gs}GS zz~WHW=|qzw3*eNxPY_s&oH~2=&;?vNK)71VB}~&Cm^e zkvUey1JZQbQ09`KjB7Wvp(=5G>yr@znJ*NzPHngivxy~=ecYT5!LgeW0sd%D?mKCV z7hGS#fxnb%XM}m+(VY;P2D?}>A;7&FB)-hfM@;liNfkNVk)Lmj1={Eq4fz22)WMFy zVnh1y$8BB#T3W}UCvT9HlHrT^=a)6Z15}lGFv}1dT=XWZkVy0si{*%1QZQRl4_~aj zm+h2x+z^C6Jm-_PSTs2oglg*b=)tZP(vpt!j;{nRR32-KC1M0CcByya@=0*w|Cw0tXGc(ypyyfDb&??i;x=3A&8EPcL z5)wYiMWLe=v9LK_$`nG$OZ7cA4Z(#lS2iJJEK06w`&%_D3Y@YjsS0R`XJbRL7Ck2M zH zur6XsRqqatNcGga1;{^^P5vee7SfpNAq&h~X}W;Ri;5A6O~zrANM|BMS+Im2@BP+D z%ZMYojQZl)*7$p@=x31u7TD>kSHTcX1fm$zL?TB71ZR;TBx>x$dlLQ^kn~fl?-aF! z`E8hMt$~wXyEy6RDaS(FBLG@!ng#^O84)odnPHcZ^_)!BI-*BRYOjKCP{%8YUnXL#(bEhEVjVocy0+$4giL%QWNz z#)fD@_-w19Iq3pIB84<`f3V-6S+I-Emy1vkS zed}i5k}mAseHYHBVpc%{1(;!(z37Z7N<+djmc&Afvu0nv+AjdaIOza@o&-|KB%6GS zA@rkSsrT&41-|ivJ@&?iOy&J^`8fPlo2$N{o~$1&`iq;}S-qy;hSfRd9n$|K4c}af zOF`DfED@PVX5m%q9-m^r`2Xx*=YK(+sg6<0)Ra0(9jT5`hpWR>S5ynC4^ymCHF^c)C{AK=P{n>mmEh{mh`is8199a%S zfSvFGyay|w18rzQ6B!4uGX942gqnz7i52+=tN=U}CS{NcEmW3eck3;9Mk3GH9KuP1!-`d} zx$CY=?z?ZcJuDOWGM>L&@Or#MdI7~7ctME7pOB;GAqC?f44C*QGhx0J5o3acny|+l z2S_hLbmHZ(bGiu$o)-hGjQ2Wn>h!U(O+zeeeG ziDKx%ycH?=7%cY*IOIjD1Eb_MNa5v-;KiYZx5kjc^2Yg+5;bChK7={3$*TvhCZE6y z?*5R>n^9si6CoY|O6s6l))<3=IW<1O#kc}!`5AC(WX^3(Wf&i#vP0_<6WahPQRnNH zz9#n;l&SX{N2vc(#W(M&VLSLhhmue#o-O7!X>2JaUN|B^pdN+Wmh7;qrK)r1a!t!d z%OnsWWA_40VNj`>U= z*{9D-O=LDvP0prTJVvwO+n8uGFxu1*_`1QxCC|UVTWe($8OWV-`C;tqOmJ3ct~3%S zwaUcb1o5*=qFfC-NAYB0Qx*m%&8c=iX7dXK}>+m=5jZ!RE}EoCX9FBMT*GXyiG} zy+^c&-{8TUY2`2gP{N-m(UnKtIY#18WRXM`U+*LI$a&7$m$*^S$f{&#)HcL>VuJ`q zDKEPqUPNsHBV5RVRINrM-3*^0I4~qHW@XKi^{z>UmJAK(^Jef!FDzx0{;qYKd*{Ei z**UiBlrp#v9PZ7$8to!xjNm?y z#=##A>CYm`E^Wp{dPD}vfc2P9hqDTfJjva+m;t!eKRpwvGCot!u2oUb2{n^1{3NNn z5HqtNYqoX8ZQ1FDt;FH_l~Xc^Qkm164d~i!`G#If!_k=PQyv*$mK~C*xkOWK$V+}B zorCnUWoP53UHoK_s!FL1+)?1>&fSMoVgP8BYY`x<6q+Uv?vpyPFV~}D?EK`@1|2Ts z;&V?2oWENNn+zr@D;X@@@bX)Vq@%gHT;m-xf~8l9h9_>5&_|@Tk@}qU7uIAD)IzZ&o1q-=^)TEI%%J9$*>f|0sH189)7Y>Jz zD!*4~@fIf3jABrks&;$>2nE_XOyp%P7X~=%4y;6=jr&uc)$!Wq7*n1?XPj-{-5MDg z5oCD8)sqKP+3+MpRG~h82sg6g@sKN!BFSB>3B;gsjAR$TP}IcO-%Zqt!(OX4!k)?` z-@=Ba6?hb)fqQYSzYz~BkxN?!5q7joL52-Jt#8(cdq-;B3_F3fDs8XJRqGHjR>c9U z|7v-l)LF^5Fjm<55S1Mc1N;?H#+jsPwPws3b3{cJ!Hr!+AZfu#sG_Z6hC{rCG91N+ z0yUQNuSui4@1m*?<(UzlOZJ53mW+7xvn_ln8tI0WqTzM)h*SjC*JqVPg*yYr%KQLk zJzRT6mY&L0y?cL>gDOt$HGZ~VKcct-o=uB@a>{y?u0|U=ew0-TM?+GQl?<^3Zt#0_ z7q?rBnXquJ5tY_i=Nc+^l56iEbe5>`9U+ld32*XRk+J1dfx?Y%wpqeg2{z`lSg23ex^!%#s?!GAnIq(Lw5*4Z7H^EPg4A;38F1p3J`y?kX~zJ;h>^kctt(g zvrrNZ=CyuxXIv>)rC-fngI)PqFpdxz#XP~cH-d_z@>&W@jkb``gAV3kXG=Dw=_vz9 zZ7jic4})4A!B7mDbMQqNW_;#;d3K4X^*XoPpRWl|pagH<#q)eQ6f>3?a-(E{c`L^@ zeTZJoC_Ax-cE`R)J%WN;JPVG3j=qu6?%2V>?74YwRxuGlfwYJsFx6WOK1OuW=HxIZ z!gCv{qA%KUC4<&Dr{1k$Wm@aeb97!3QQk6@v>S|xrXR=VJUDPZU?E8&JeG-MLVY_e zKJ=ilBfVh~5tBvViC%z(%+&J))`*(`v{c19;yP__*t_vFqMhg2R>?^w;F}}Mm!gcu zBmqX|gcqQ7xB^O{)Tq#rZwlmgZvJJrbp|T?!v{lN=)|ltVn?M*^q53^!-u9;Y{Tj- zvyy?zG0(c<0FR|t<=~aeDA9)GIsT`!^14{9S=KxvHlBLQM&{DLXEp%S{XqOv+ z3&?kYq6e?!aWDMkm*l~L90;MR#(?`~ag8ZHp}Rt~Vo*a7_t8#khfML8F6cCKVi|m} zx0%vHr^L{vo6HWE<1kGzft_#Bah@0h+IS8ARG#k1rb#AMvD7WO_&SjU-cWqBqGMYC zH#FWYxz)Q^Vb-lpV`}beCQQ&3=JVU z(QY<<(cxiaE%4v>o$`a8$}c}TD;}M0+h|Jx1d%TkoYp@Xz%5oj^_`cvI9DFPlAKeP z;ZC}0eD_VF94VFQp681>|0m~(C0C5Agop7Q36!t@tK$o42Uh5WR$xo<)BQMSAP@v3 zE!o^^A_aVM8FdN*oJK30!%oww1E2X&aJyzVesU_pwLMEZ$JUYE7h&qARSjfeh@6HD z_I*ysIBH~PK;H?G1WzV;j5U#vn8S2MC5%lbI^IJ$Tz^sY7(?luiIh*~} zRm8;18%=XpSC#xcUM85I>&>zcVdeQ{t`JqZk|UY~0YSpH*<54$w@;?xZaWR(2t##5 z?ST;km9Rm8$_>B-#Ol&++g+n<@d=X1o(&iG(SNq6y8fe;_Aw3uu z5?O*i+$1!Mg$x;_+3AkD-f&%WuO%X}XJI8EQxx4xAvR<|>+)eEi~VA)L}$VL&c5i; zbI4}n&~~|K4XboR>8OJN8YIazy$Z1Q0#6AVEikTKi;TTu^qZK+b2fw2`u3B4cn)`S z21dx%>I4^%-`cj`zqQy_8u(Rt8Z)Xvg@K~)ec+n6iR*i+NCuXNsZ6*)InxdXCgrq&r&U@x zHHgbWwKOuX3kBhIc#&x*B(jA`F-t+YCAqhb>}&5t^rD`JwQmE|@vj2aKD$FJoD1dZ`dF(VW+itjz$JeQo7^(R@P_JpSvJ`o)D{wmEp1IlR zb)hj(+qKnvH=(kCp-hxorT*Y#oafM#R1)RwFk}HXO$m8y$sVKp*&KhSdGg=AEEKUE z1um(aw;A=&t(jTR*q=Usqj5G0-k*M%%?I zRg!8Y+sTN?>xG!J7$ckV`1_tc9lM_OM-4!G1N7OhXypv%%DLd_M)F7b2-1vM4#$WR z)nIMS37clL-e@O4>NO%;YAX|7BM7E01D2?FBX*w1v7M-`BWwKRG_8hR6M<+OmG>i& zh+bNFDYm%WT_#t9%Jk34(PEUk!e+dYgEgTJu8Y;W(?%1zdpF$xr}j1;BFn`(sGRz~ z4$7ZSwL2Mq1M|SC_};n!ONYpgFqL#S;0HICtpT1$+m9}Z=&Ob4amp{RZHtc6t04wn z7YJW(@$|F!%yZd}mSaur{t|n02tC$VAVu!AKif<3%z38}HSBZ|K)Aru z7Le1aT%`)>$V+2Ds+FMKw~vsJ&;Mk&c^LKP&Qa)5_+oZ(v=gRw{d4e9~7gqC;o>5>LC%)%II@g0hACrYboe z>X))#ci5Kdja7A@P$EuZZE5P{O7IxwJV@7CZ>l2P@v6+yygk`<>71%glj?W>bjgDj zia}hL8*I~0`V{A%kUL71tQ+vR=h6*hF=_;X-SzZ#J8t(G^lil=fKWY|CFad6YYTk|p#z~PUi>8ZJSEEcKMTzgAb z%=|D(c8I4d%2}gb@N<}QpwnDtkeZ~PN)S}Y?l4o*ZO5`DRS7fpu|>z~CF9Swj)|+y zMjx;6?r2uw{%%(;*siEJ)n=W-;pXmVCR$9|^w3dfO7TxuA$OCOCiBlz%5{}v2n!(u ziVOt)-s+~3#KVJ1Qzxex;K{_elQ!wJCrO&2KRso-iH+370hb0qE}z+O`--3Oa|x( z*j)#W=!KI-pjP1Pqww1K5V74tt%&SuM!Z%ERhVX~LMVaWHsoSzvPgqsqI0w6bSj;r zZz+XT4yeSnqP`dUuDBGxZH-Iw5E#kXNcc+TDlqCBL37N?SzIqThjNSixD7KO6Phhv z53oUf-yTQDdHR`covILW_*5D^dqzFazS(m*GW3+?9+}rfq2&u5HXeo5)L!f*Fk_Yka%AAL;&p*AQ~$jy@wH?zO54wbo%8x^i-BH< z*mJ+_8IN}_g4R_u2>hH>xiW^;G-$@#;x!onYEg8|@Ls0&p>vEzt2^~N*ggk@$GXG(BJn1& z=XP*@7zrFr(@S`;on;e4Za%C8qJRPx93V8^<{0RJcpzPOl+K!RuZ5}03q=4ne14Vy zuAIFIbJdOaxDSd>$UjIUV)6v=pUPRBzrq-%Ua| z&2AS~m9tL6F}Xyfijs0G8nPqK6C9{=#g!#*b$M1k7^wj2rJPfFn=>%($zfiDcs;J9 z&6K@Fe6D<;_9iP-OD-XtT`6zY3?$c{9}a6}9wr5m0u~7dNwA_hIGivLwvb$BaDoMB zaE59j-H9Z<60bbE zYcVn*H`d~3+jrSLeSuA79mg^;)kv}-vvHzZ-tnxp+KPGkz~^kY^38dQQ}mzVpAfGv zz?X1r5iqu&fUk{<^DrQnBy=*fOQvr{n9LN9 zAjOD4f}j58N#?+D`UZFr3zmgI6{?nvFPL@#{=>OoV4;m(qAknxa9V8%4{*kIAf`Y! z2lq%BNabvRZfGB`Wu^5uT_r5=44biTBBPln_V>eNJ235W-}Rl@gfZG9Weog+#@T%e zb&u5U#3eM*gn0PxV@vf~J^cr#$UI1GgoE@k0pa{o5i&2?_4L|`AyB)b9s=o#>3A%8 z3Z)Kaqz{_yRI)sDjVyPXcxDsu8u!6ZQ+A2ZW-et+9a5zXG@30TTVoE)D?M#+Mn6Bk-B~xkM zx@jFEZ0oRNv~i@ES_R@!-f{p$(Rwg1!;J~u`52k;IRe^dh+lgS30B%5`wTL`t-p2bbGSGX$ zB1+;X${@sw*$q{Iq;uv0AbdzU_9&m0f*_0rgXoovy9kEfw<({7@oU;E;7O!j)jF#7 z@)*bQp{KEsEz=GItvK-n)(8P*OnQLd>PpJ(I{q9mKFIu*jR)nDl#kSFV)=lO`c9s| zLF^h?0Ri|xXG!JlP36X3NV0HxG+Yq@`N#@PP(c^t1g0Al%fjG7H5@zD(Tpk9Kyi+~ z;0v+|!6!7)m&j?Sb}0ZrkWBe`6+IHf zN485}Zm4hAtrri>28&MoEC2lHzXh`~yj;2-q+y5XKMZ6T_;=XCOvg>)&z@Tb@^LR& z$U*=5a&!A;;mS;*E$L2xMB$szLPOy_ELHv~t>4h+ULMuCS08dZYp1hvhx;p4Xh}pM zSsKQH^wClcK3XrvH=-X5$x!yyN8@?h+)PAuW^th{9BFHr7y8%=&wpFCC{Fj5XtYI^06aj$ zzan1`;>^_y)=1*DB>dWaC|O6-Itf(SfJooDW|Eg#BN+Cs6S49v4FphO5&19_G6QfJ}Uo?Ae)un^!B&l4r3j zCI2R5GITlXY{{|{R%&5sPJi>V7Ej;xC&xp^x}oz28skSFi2LVuxOucbW9x7+(_~yT zt`3a_k{q>g7|$6E|I+^V&oQi5rA4!dy!qsW6YN_|gXL7fm6nmM9|D(bx09dr>4g12 zJTVq^?RjeG;Eb%EKr~ArVXO=vYWhF;JqiaIl4y?zp0)VZ)Okd0(BW&IAuiYe7K%(A zlkgOI?QfFQ#R{p5*^-YjNao(0YR~>7r#^W*-}$=w>k>pSy8S zB`+13in3N6J5CA&TA&*Wt(somOfuw(ybe6i8TQ*$ha9v16nt&oJiH7i7|4>jnYE_9 zcV!4_gy6YXh*dLjLo(D0g7rC+>*nD9Jvaen^F&JifTmWXtH!zhg)(GSh#s#hQ(p*Y z2dIyhR}W^r3>(xN<1UgH9!KW`Y^-s9P7hR;l#TS7*y|h_7$Vb_F(Ep+BVdbUCVJtu zS))e=Lh0{!HPqLMCsx%>FtVidm7)_HoGAKeWeI2}%1s9jBasgA(}w_Rr~3vLA6{q+ zp&8RE2@Aa>&pDb<5UBz+v6*Or5pCej6GQQ8c1yO15%`U^NEi@O&d~bieFzBZC=v|+ znk2$Pq^xyR4_khMheN8(mU8r){Hi+-UQ80`R41Ceo*0(|l@N6eDxwC?@4iU7F|tRA z>c}oor4=&57YNz9YdsH3Zsw12rGeOT(E7RRsVX+1;UpXChZI*}Xm<1@8y zpYgXx_?1gLlwC8`lU%>`(s=UVF(W#40Y9TUlcbH>HSL5KlZ}Vy;cBT4kbRP?KLC}X zUfS*ZY3*3R&r0&`D9xQ0cfod( z(iOs>BLNGGySU$w#l)!~u8C(MJjVv8ps^!Wu8rgg=gcTQOa#aP_fh`KaIjhgXpl$d zJz}c3Nz>^O0|Ev~NwCa53ecOxWpaEs(%Rej?k7=&bm_bV3bt*gt*wYOJe+)rIA!KY z5MJnT`cG=$Pw5Cfm&Eua;(#S&amkVeR5**`dgrai_u+9eE76Ikk=N2%A37@J26vJw74snDcfdts?q@V8A&H?Oqf8s)0LJx=jdRr#VcaTyNu9x668<{?~i~+Kj4Jw=2GrRs`U(k!L zleTfgC4t2+z0tSnE8;Qp;ICVcAA(lzFaMyyQ%_vs`uULHBsxe1)ou|hs5q6cMBStz zux5R2nk5b*7Q%#+mNnrwFKM4`KL(6(dAp?_F{hIq;jPibe;+z7e69C-Nf$yge%Gx!Q;4oR+i6z9IO56#jYmJg~w!tXYOtAhn>- zS~j85N})+EoZrsj~8n$!+DDDJVAePvNww!1=AaL_k2Pv ziCd~QAoOL^6VYZ&vLjAs!2Ad>GWpciq>L)a9q-K`f?{iv)A$lwgtA7Fg^t3gMHkp8 zo_rj0GHzWf&4)UH9(HTMdWsP6Kr<)B-fV5P`l+;xWTmbVHgQD)t~Xd%Jfk^7m9XG; zG~I$i8WzJu0zTgf@Iu+$OhbZ4XeQNsFA-%m4U$BWWwyyeEGBoqp_yH}%<8NQ-)gCS zqLQ>B+srDU?rcQl1PJY>FiglXg5H!SH}nz>2N`NdX|6mh?NXl?Ff0VyW_ zdsP)rXV#Lb^lkcd9wBG7$*du7^k?4>YJ6Uc=~|1C^{T6hc3q5lf~I3e-s$4-m!|6h zI71nqgkIgij-CHl=OR-pqXUs|uR)D1d7Eg(Cb&iYu_^AmcYJhmYK%Vh@F4q08=pft8G&9YAcV|wiaBHc6l?^rmVX@T)B<|6>cmKOLf zhcGBj4&yf4w{1u8K`_nrgnX3WBX*x{ui|s+@nqN+(pno=?76u($(Wl9CT7r4VL=2t zs{YzB$W3iP;E(W%Gmu?Ob0>_Y{XFlZ z0lKTm64t#Ff&hZ$r}WzlGCvD!_YtIEsK29(8UG^ihwx_jrs&)MUxQLc$)G!v76Mgr zO_40r!46|^rebORQr|qkIuDa1`*xM>IHuj(sgG{|_Ff+8jpFK-mx)wR4`rMU@{ z-TEZ_g1q+}o3-WWsP~W;3uc4(!cC+}B0khoPm!l!8HuP4W(<3z&%vt0-!50B;pd@; zY7ih4z%E>5VD!-W)9^zbm+*Ew4(!zI8(8ZiwMU8-jxKY%QvG)F6DWW8zPCu|K6MpM zqNnw@M=@K&{_^Gzwb)Z8GSp*%am3gxnPH7i;BDZMLQg)bk$uk%sM$zngm9)=s~d8C zCTh50uGtAIopRtn`#zG3J)|#GgABsTyne3NQVk3H#SSB`O?x9rIe?R^U`}?d|}2o z!`pipFNdbr4xDfaL1lw;W^Hmqj_JAs)4Y6BYpCMfJ>JbM64gpmgk+It~1 zv~c!&P>U#U8jgWw#i?+FyuxOPvh0(X^(VaFan}=qxv>gWB?HQeHzn8dL)5U_mgK8| zb}!WW7uIvQ?j)MEgPJyV+TJvc#W!(ruza1@3S^ZS$O}#b z>C2in`#NyTPg*RQ;*nxDuBxJ0tD-Dt%7Uf@FsHERTB`?nMxN8BLp5QD+x!NBxI#?3 z&3Y{ol#?eP6wvj|?$ZV&^pik#Hye9qkY^^RmIz~GxgO1hgQLAe$n9L0T_j(Ac~6&} zR$IPl(9LhTHh|m-LEu!tW+13R3n6p7ApuRZRliSazh1XiR{f{xq2i=qx@0AeRo(hZ z3e!N%pYN1;Ux{~9PM9De0?N=&wrXH`CY*y0MTvUQmOVSd?y>(RGJ>JyeL@btxn*Hg$DY&;|YGl;?IA+Vu6z{6{bmriLYpTh& zA2wJIeMEMRmzp1_<%>15uXkzZ=ee)`6$#yIz>cgkdGef{pXzx5nYxW% zV3RvGWeOYvHV_SCkS+0+@ZS3`?B-AN#M7?b$xL?_uN^H1zl7}O&t=~1K?D8TUV?bT zRf6>8V-g>2H*T98y&c8w%gI!lD{JJy8C1J4ohfyQVKM5|yXsJLO2(!3x0tRjCK@fW zA0F>_$=E&{Y3@YPkRPH+F>Wj;DSRi7O zwXEip1<7`=t1OOUQ6@t8#*r5yC`RMlX%Juq;!>dF3Hpt zGtN%>p$E!KcaxKv@x14M2d{i*dT4(}0_%scN+o=DmH7)D^XON}c<`;f(AADu+2Ij3 z8{V0glW%XaZCiqW0@$2^*q@rv`ECfm9463B2amlMrK5mM9%$Fhx9OpMAMoV|-Z#;- zVO3|nS0$lkYn%RZl&+G`HIm=vFTi0V>lFec8L@?JO5=`(GEKWm(mleOMSU&@?XMGG z&y>7(j7+17KDs!|O%5HEy@IjiIfX|3SCc?0r11<3W*H;PtaIh1&PyP_{-}mOzVJ;r zgq*@`{8zFL(q!t%pH9QH**M$W8F}xB0)Wl<>C{j}we!B55Hjj;nGlff>0--%)UlnA~G!b_e2Kfo7%a8u8|?? z^~Q(;nyv&wR$auw3zQR89i>c)p*n|ux&*25vsEThVuT2LB}(cZEoyGcO~yg!abO<9 z_u7vT#eF>G&b$n*u8@WsOUZc|Sv!3Btw%&SD!=I!5w3^)=2+=RNvKZ=5PiK|wQ$tb ztHZBE{XQb5T^FZr+8L94uvFm14h|I$NTE!+@q1f@i0!!-vyh>qos!)V!n(_MFz;NC z2UWGE>o=KHE6S)#N6*dwo;VD{5*eLU1GDR4VEpOpK-iMU#h_3NcqpejT+jHzZOac5 z@(c8XDl83>9+Dd`f4mvfeb4KP@i<~>M2{22o1j#^10yYBW{iF^8XX{Ck^v3OcnOtI zqk3~Y_m@(|vsuzHp9CtwKu1&Nb2q-Vzt3XCgPzgRMfbzGG*_rP>U1Vwk5b?Js`oYf zAjmd?3D&gJex~jZauZo-FE*Nr?qW()sV&h2=Y~kLxge9U2_nS~_NFF!jHo1Q9}UZP zRB?kf9t{I%aqzrYeM^C4st=eiu7;HpWwy)hu~=1sal%Fud)(!0!=i$jSYj}61XZa% zgVu!$mAxJs+HE{&5^^I^$z7zjRk8ipGE*qLA)1&0-9W5jiC-KQIAr6T6I&5yjcwY8 zrknqn3*PIhWS{2ed&l<-Aa~@45xVm+W*gi;>=btK#Pi>j?JH3n z90h9x;HLQ+S|4S01Yt5ydrteAETBBrwkI%)lZezeiT^M{whhxt`g)4MBkNmG-~x26 z$FC8hskrOX86gW&cN0A|-J#a#etBGV@`3R?t*p+|?;Zn9wPOqWO^(6kEIF4!+y(~q zTh7*nPpmG85*gR}xGOoilAI;++>py|<4#k;-E|=x!5!5Ecs`WDB(e`)6a^KK4Z?(x zi=>iEL0nDaPHHvkdDKo->2gf|Q|v3=@IqzD3F=juZUp&!cRp;zXj9N{&f;xjveyj} z)wf6JMdRg(FHga{3vUe@FIxjgPsiUF(*9q{-7KRI488qa4 zKsEIb$Lqx-l5oeULf6CQs>$e3s*zVFG*7qfA*%YT#I05XVH2<}Z}S|3?bATTM|q;j zjddfqz>F<$X2o+?24*f7*c51GqQ=Ol^Q3XOq=u#%T|&$RYH$gt36(@WC;-5ix>2O6 z3D!)EOD)A%Z5Vd(Z=MHxG)Zvu81YV8o>l$bqyD*8qyjc!s0DpOmC7;@f|2^7PS)iu zcxZJiDm|%b%3=ItXP`QenJ+O?n*-|5CCBuTv;c?yX}4K(mPNCIEwO6f-i4s=n!PTl z5UuTiEU3HGOP;INlD}W}NH$tz`g~Xq>4Cd_;!yTZFQrd;MKcZxmS?5Z_a zsFADQQqk|KsFzp7n0{qdze7Bx+p1bzdCv)14VVdDAz`yd6VnK=)w2N>+s8N>|x$=^aH`%R*7hN3mNyco5$ zbY5)tKWOl5{>;<%0Ld>T1Detp9(b?w?w1kug(Uz5I7s=Us zNZc$xRC0tIrU&T<29ZtXBDRL%8PP%|9y;~sJxE2-sPTEsE1#uE@w|LVrDz(5@j+5w zR1e#V#4;eLCq$P(_Q}JfOz;JQ1@N4!mB4*Hz(H11v4(x~x}MkYxA5L`{{D)>Wmk1C zl?doC>`f`Kgf($NH@q!;07)dvKOv5r;pfeHqYduV@|I0HQ3zzUK9yByawTWG?LHMY zm%XBtJD)ql`1LY8}uMSt1DTI21lAtuC{@H-^Q8I3!amqt+ej#YCt_$ zbbO}E|B^5CI=#GY$_6g<@f+N|7h(PcVgle zhIgozn@ax;?LY{@UpF_DZ7R19j2rLac9;4v#B{En_)aa1Gt4SToS9^@7Fxt=VTx_l zvLnMjouF}3VQzfJUg7^_hSdC=g>|0qj{@rgZL=&2fEjg&X6}gPg^12wQ6@|}Ry@~9 z5`0$yQ;u%5+7oYRFIfYC8df1-)SA1ndA?NoMt&cuIu$kLFtgt~zL=t2Z7X({tz+6~ zkRCgfX|J``_4K!AzHt`58Y|vY?XBrk!Q_XdeY2~5jXB@2_Yqg9{E5T5zwT?6#ZyTw2 ziHen(2^$xO-}UI>a2n?F<5Kav^}>~r<(YNqUjie#UlS8}u5qT;GQBc8oH5=-ePR&jD) zq|+@cwyms-s;7^YfxMZ;I0qV<^H7=(BNvdo<*yKYW}Rz&EUVw-CaR60*49%SaphlW zxU$t5lK8K9Y)i`a`Gnr+&mjHnAs-A*smu)fn04EaQuADpZwudkQg^a;7LQi2)JLvr!l!Jr!}x(KGR6 zk|(8_7A)9)espRwGh4_NXS4Ytg}Bo|I--HY;vfS_d;>zZL>a#UGI&jZA6BrD{Y39J zY_}#Fn*Cp$iDI0~)Jw=jdON*zrq!7!)F!hHK&NAFoV!u{9Lyj0m&Nyuyg94>vvs3G z)@*aXM5FE(m2b5RzVb8|Kp43a{?|hxhZhzEB+TDW$TfNCTl;(82}hg?(Ko(^i|+zk z4%!}edeyN?Zq22=_#4s=#^2Skfu$errQXgVMczJRJDq4L{*9PbwXVb_Ts!%ippADM z*-UMb+ZPIhQLe~qlbLijpXH;uNt|S72Qssn996FY&Px|o8B>M8(XZ-|GjqVz|0wIv zcye$8>xZ-FM)nY8DWhkn`R=E%IaA6IXY2r@q*odZ&TYd8tmCVQ;r~e}b>eZZ$6Hu> zUuD>hyvo)R z@;cW6XyByP2OrK6mNtK!GEkGvg~W<~n2SVSc?UZfC(mu;2A#B!p#V1e8mjTfk?xT@}O_t zc7nEcNEq_BxBLA;sN~NtldDSM#|qtDoewK_T^>0-;x(DxqTl&npPo zGsxd9AbnlctxHAUa#}_SQT$Z{6CqQas0RX^0@=L{3N( zd^i_Tn;z~c({HB-cAkXSPIk-b&c^c}sX80Zi#-4$D5W@H z4|cPd!)Vb2ZTXqsIp<73(P*YVVozo39jAPxpwM*B@=D5~mH%qqTHDmrI6?|Muv)Q( zT;&(B>=MgbFnWAe;=%6uw}-uZ#q#o|;DA}uDZA-kKHuR+g$0}?Rx3wciE7_)+c_Z1 z^;W(zBc(k(;%x1>?nq}_+lh`rp?9-?_UZhhbvJcPWYbntZp(kfTFJ8foEk8% zJjKRTmWkBeY-)YanFWobHRqP-)Vl)X95*Mok{e{{s~ti0!=lhOw+nkXuHbnIDEWJl zgg!~|;EF?F|~Ud1XcPhGmZ_E4#a^_-l+Su$ZkB**c`hEcj3XVo1C9VsnMF{-{$Oaz|R685$kF z;x@7CZPu>n$RH{xD4aibL5k29LjraMM7**mIwU4AC@9c$Shi}pgo4`Y=6?s?8yHGK zzcUX@Ws#%KdlVTBza8xgkVUS~k6s}Q3=B{Q1OahTfrEiTIQoOV z`=3>>yZ{sZ1A%`j(NB1D8DvZL%f6UiD;RC-pBK>qV-y-{QU;P8qik5jHrW^jrBh_! zGjtRcWf9akUa8h){z1QjSJTz(^Xxc%kD#>Z%}U4>nxmG4xl|f;$H2vY zBfeWk7SotrL{`+#Vk?Fk@2@*wcYznEDGGYWZ$E`*v4}n2$qX+d5#Z%ss~FtUd#W}J z(^2>6HfEQy_uWX|2zidYtbiy({(RVmnF%FZ;FBW(@oe+wg1a^V^QH&<(@tuP;yCV< zBp(v{HUeXK4s%e*_)8oe?S96HXe1)C*nJ5>RZfQc95XX$e_9u@~zh+CHz3wSde7zZ{N|EuABWP#q)bReLAQ2`=o& zwQrpf82+YL~3idhN9O^kKVlyRi*+@ZZ~@9&K<89 ze+U*pyXkBh<9Y9%-6MQRb(L4_1r|B4%VoEBVW$&!4G#l9J{CuDb^(E*Z{G{(Y)=o2 z*(V5aR0%*9+lYDW#5N3xvG>|J%(B9zlpMyG72TviMF>SrighUb->@l0Fy`wDaHNi_ zPBKwhociG3GiP`0_Ho^3!HGEx$5n715xetcZ`hRU8+*GrO#7hQe-H*_MIm$+Gi zHCh?0(Tp%Gd&5k_^c(=Gdie=tw>zJ$2?pfZXz%*;_3O*Pf7i;7eD z;OmUe_aQ>XVeDO0$#uBm+?W4}8ET+#JLBhwwj6$39Ya+jBCX%-`_~NanH_y4)H7Ay z8tDxD>A(M_CQ`jE;h&q^3l%**;;GXCxzrT3jJj8zH))zfsp*ERk%ie=>-$XMtGkNK zuU%dY!sWi?wJiq@w5DC)Ssqb`ij-D zU%fQ_(;!PHHK)}#rzO!-{&9hIy|=w{(S2$m$QV%&fZh$e^{1Z{KmQC=S1D+_6caxf_Oxx@@E3#aA*K0|T5V;|?qkZ2ZJTvjqh!E8=2H zONVTOtHRJeRPigiq@5-l4RM4frmYPigI4~6&RQ~m^l&L%@W~XAO|7(|v zA9NO_f|r~1z-!Wc7u5kl44%6n!Ywg6LB|t~NMSCx|IGkD@CQkcQsei=(u{Of?Wt8k zeL>5l_pdEAo;Mf%5P$(ey+LcvTg>OrgJ{vp5x-mP7yI4AmObkNsUvmSTcZ@)XNY4j z!H}e~QJGuH=L2Ih_clQO{c!5;_OG6PTAaEsczz&K! zDvS2ZVG8Vh-ZN*0hx?jOn%xd?b<6(!Eo%)eErwUd-+F7jWY@`)yS|JOGp91e7`X@( z1p$42EpQQWTw8u|*yMe5vD>a27Fw>$B0o0{dQ!R`##}TwXvQ2iqlX`l4og297XA3! zMGWRKpiP!qjCm(<*l#BccZ*ESv(H24tW z{kkKN#Y_0Q*arU5aH2DKHw|v2TYHAKJ4BUPp-|laie@rxlCAh}PHT-ygF|S>Zl`w0 z|6;=ato$2_`sQXsAm9+=VG#EuZ{957!>LJ%V~*V2wsze?ce>!^?tOK2eMCkmBIB>! zxS?cOQ4bQ&Z$IB>GKZJB*<{QeUp%){{Ks4j7!eq27qDPo#2kj3aMV4qchrGwb0ENp zq9}4s5w02#bwU4^?<1QhT|bsTJ|e1OvQ)_zUwx{+Dpc|%dFq!n=tzoQU$ETdO-US1 zNGY!B4_RK@yBL;OR2}s3p0h}m7X1|U^Vd-FR2PtUV>f4#EBL8N8NyXwHY!63{f#=^ z)t0L|PRk|q74{`?+I}91C?MyW;DQ79+`*mqX37PY+PS%PwRa4wTbN}kx_pq-5TJ+< z;=?!CgJk@-m;N#j@<6a#qIL>YTkW=!&34-k^beCa3Rk#bvtEg0g96IWK+C2wI>YBY zu$H*VzQu0mEyQe=h4zv1RUAEzD}eoprTybC%j~;L(9u+vv<~bQV9lLpA;($Lzt|c*q<9Ff4g1h~b!i zEAjvODGE2{-a%i%eEPVwPd5I=(#PKtabSPoX8ry!#3A*FBHHpBMbR6yW~jH@j;Kj0 zJDsO>a7`JXo_#mfubHB3y(F{scbhYap}-IVldB*^l)Eh+FMd?~Cj=}A4&)FBCSZ2$ zuCHHXL6*#s`jO0V`F=ZTA{SFt6mJ&SGk`ET}>{?Sa-Is{&}EW$fY^*63~_zK3;U@lBw`_nSDyE zs}uL_tvjza%WLH7Q$sTa=wO{yDOypv{Ml#MM{1OsNH}1>v5N&m5u6$8Q1IL#(F!`) zkZpvtMi+{JQ>!APBc5QbDs@Ul9D)e!DLgFX)?f76J#;?@^v0k^ zjEtV~u3F`VmMxwu9(>RhS}|>-yQeXXR|cg8{6$N4JKz1~zGY)IEj5I|%(LSs;Re>4 zT!^Z)*G*%)Dk>|w9L39e;WhjAYjNu^14qCbD^zE#$oO+LXn&0RLID95Q=#fL1A^+; zs>Js;ZdZMAr;*#HZ*SJLW3)bmX|8EnZQ!`Ztx7IkO}UDlk1OZKK+m)g(WgoYLdJS; zr_FiG%3uAGLCJ?``{SG&vQwV+0D&gRgw-XPmAECBC4yujbeWgX=!S>E3~st-1PmnO zZBxtktP^Mn$z3K7<@*9BYC?73Eyw5RbFHRE9nuAtwYQfAFMVafa^~x?{vL?b#wKz@ zi>aS}`rXRGR&M2g*N8^x74P%{j&QY&-KJ3atDlnr{;4O6{#&M)4TjSugQr|RcaSIp z9On2L5s5qtiBiFcGc&Nc9P%|6u7SGs(NXs9C<}<7RGJ`B6q(!&@xsv^zaf_zryLWO z?FcW}O9A4<1e%DM3Er`Dkb{3#s(Erisrh)CL%ebQ^F|hoiI9a3hez$e$R_8=`jL_K zKD|lQ=x2b>jiNvi=2Q5j6D>ggezv|c=+AB6?S{JzW&pmM~{YdsoP8)0}o6lOdUNkuAK7wCtd2u z(ec+0mhYV(9r^EnM@D^KSWtUDYUPIV_D^L;kNW+beextIAzzY?s^^stE5QUHc{qKv zL|&_-;FQT|9(?yvgP-MU|GZpDl<~`U1(~xG?L`3!pU$TMUNs|rv?ESNmp*Ge?`UtCIz1cnm+$RHX5mqJJ`TayimjWv=!4{C)^cUPhB*Liho&0T(W zfK?B$t1b1g!oPH2e{0d|u5h+5dwq6gclYt`?#i63b=HTut!zswnlnx2jheB20?W>m zC&Dz7cBEWeRDVD6UB_g~3rp2h%2L0`sbXF|FPWFkN{W-WbpGEIk>->XtDcQc^LJE~CQbg3&E$mOh@8X%<=3(#AT8Jdenv=YXU_eI72xcZnt(2L z5n;r>F{Ii_TEV(+De;vS6^Lqkl$e%3X0-{ZFVg{iMq0~Tg zNu+$F;YD#6K#5lpp(+c?p$mfrj9r`Og(>$YmWG7333q+65} z2@dRWfUda#FOk+2xU zKzxn^H6j@QhR=#zxakqmG6IRQqnyVfdc@xg>t2+Pk|||T7G{oN1j|3itJ)R|G#_hz zhmWKMR09%b4y4r0f0aM`7@J=pj*hC=G5Px*dkj*QD$2Z=NKI+RsfdclmAWf^y${q) zDJKU9ry?V!h6X2rRq9UzrjY%Zh~F`iA61KXyOaENk1I8`#N|REasvw+Ug? zNAbO51sIj?)7R9PYxGhUvV|68B1}S!SJp^DcU~fsDN_thHAw5yyv58eCIr`a*MyxRQy+~4P(?9iCF?6jJf{xsaXN#vH$(sdqV z+NwtBHkG1XHrp6`N^!oXrX98OuH9lmU4qO)wFx{e6vXtDb;0hy{|t#B2&@}n1Zc6q z37CNT;LAcoUYhhuNI+>`;1w+3rhqhPSGu-LRuM1#XQ5%+$`?km^3$GK5gPsTPm5gv zD+3P1uJ|c7PyhEDS^&pk&M&frC5#)n0W^m={|w8rEW;tLUwcji_@P%5-gKJgWf=Pf z=c>1535f8BlT_8vZ)M>s@s>KcYnJ}FdC7`Dn`;{5imR(%R>!z~9(h&d-07bu06gXv z*1R+D>50_|4Qbmf*Hf!q$yF{*`*pc?Y8oNWXVY}o_6Qy<2w(3LbRV$by;73pUAVfN zM+~yMY|uljf)y6j(&)z1J~4b!&5P6S$^oJWdxYs_X4^zL!?>*q#4gw-wdgDH_ciTYJ2vn&d&8Cow^;TSPPkW(zoJ4XH8eUU1w zq*7l|+|~KZPvf%^T5^$^)cd2pP|X@Hspj!~9?Y#c^aRrRbhPZ+A+NOhcBLgJtEjme z+Hy(fgr~|tGLJzjxbj16EmUCQnLa+`_t&? z(Uh3^d0SFYRg;o}hWE4T6JJ2Ok|@>TdFADKs%>|-=DZq&zYr3T&%E|@bo^x{Wk zW9`Q$#cGzfzk2(NtOs?Ux2`(a}4aYQ(hIiIXCh9?LiQMND=dF!Lu=n zUQsipnZyejTLGHGN)3yMMt(9EuQWdhZ92!tJ8}KafjVqx<_uWp(_tl1GU8&>X%6f_ z0y9T)0q=c=kv;JX<*lAk!{+v{Qi&rQ0Z;=5^9&2i2hL0%Jc5V!kI-j2PSGNL%CQXU z5O_{v#RKTtPauTyol63o17q_pm!a{Ay;RlxyeIgd>$5ZpyXe+p@ZJ0{S5S0#8F*!i!3x z9UEI4xa?lT7TN@h|v^nOk z_!Wzeoc$(p2z;{$yzN_%=psVv_D36HP@ZqBRdCr|XB)PLlsPWjOZS2E1d~Bc2~Q9~ zY>{`f2rK!gxz@D+C~v|ivfwavAg+^ zqsXaObpC5@>3q6RDyd3YrKYm)re-qjsEj(AmR&CGljci%r7uf~n9oUp5R3w2Ase@s zNZ^Lqjueu2N!TwgN`eksN^-_}lx#{~`HRA*m|%{#-9RMQWa_9e<=$}rdQ$}iJw)(i zqHMuh#@UK%Sx+ z*@EmB--BkW#`vDs+rz^)22(Sl&5s)4onBkGl7S1Ta3i8xs(VOnzL5)8goi04B;m}0 zK>-Wsc8aDmES3z(jcbQcyo_As<`694AN*;^Ai_JMz@FQ}Y^YU}Y9_4I7-;sdEo8uP zT_Fo)!kL;i0Z}5~vH22rJr*pswOy*K4+xUX{@g+mB%M{NA|f@B5&u0i`$T``QjpX? z{r|93#8%Y{t|`BKik8QE^<+iOYh3!~_v66K0z-M!%n83_d1N^=k)iE5XW)W+U{~vC z8ES)*A#Vyy_U|mLfSR;law@sjRSI66yAu+kZIy!LpM^PTr5a2h&oG>RpDmrmfE2mLG|#O`%vwv0?*CA>VB$jBRSh@_~G zXv)6|h%%K*EeMN#Hbx1%t}k47v~1mx^R@J=_D|Ly`LwK3b=P+3^vbxVXELT~2YS!9 zP0M|q|F5SajUI+QB>OLiU`%(@RQ-fW^WN%_k5QoT#fn4y3teyigx`;?$cmYJYrnWa zM^heTL6AzRG0o(AH3#^}!XZWyY`ej@>+2B0TJ_e2F_DXm{s?PLAqiC&C?qnSrl~0) zCrR@Jv+Va-LhvH;T8rdjJz=Lq28vEyQy0dC5sIIe*~qX{s^uJo^wv;7`^lB|L^ma zm5q75Z@k{y`}!MR?^szGkrAM=K?mzxKTlgRF$%%#H(E=%)xQyocKAutSiTeAo!Hct ztm@9}JyqTNXkt%x=P#;$2s`tDSVW?B@js4S+{YiNi25CXI28mc1oK>&+xQEMvz5jv z5AtZIkPae2{?D&Sf5(yQ068nJk4*#s3AJ9uvaecXb@zinIemdEelzzht+71%Oj*WQ zZ{jSca*vDW=a__gj$g%8i&$iekqDDNT4)ENE z(dP~b(O2K6b*Ba!c_(s$(IOJ_XE;k#QI|ffucVYudrjTaLA`5}M#`rWv-7gkM#g{< z$GBgJTT60Sx2FCvSknDoyfqF)OJ96KPJ6{T_G02U|)b`xA8m#Rsn~exLdM;@oX@IjGC61K7=jxutXV1mf65p|>{l9FgV!UaWt3ZzuQ zvi)8$?6h>>C^A11sZT_PfS!+n-Dt5aB}5Pqhr8bp8RDTZwYJ?;YVG0iqZAh>CTm{| zkE;G+(jKuQK>}jkKnXn)6cbMfg2vRcqZDTKw(jDX70w!aLl^L#rN(5~aH?*>;=!^h zJPTzZ#LHn~#Lh&dY1+ujCMgCpafF(b(E#tsC1V=U^1n5QU>E1vMf;2cKDSElJ+b(r z4EI`{N{bA~3QRiu48HGx0DBcD9W`cacVaRWhSGDc1_sBf7atgO`8~YY&c_wkbD9G~ zTl`7Lb+@K{U3@e1>s{7YHsVc(dQR75#arxOij1$@wfTa#;15Sfe>akWBiwzx8+)75 zbtX&PXUde@x9=NH3Qk3Hb0{@9Y52bK3z?$)OxoS3RyTG_!zv+a0SQkCUTZv)<*fVO z&)pD%j`|Z18f;hWPe1WlhWo6)1Sf4Ci<}Om?MQlAoEjD_i6}$is6*oKP+LA{#OVC4gWg90XsI zBYJ%x?6+*ewNqL)#w<87RWbg8u`5+#2Hs)4=-iHC%^1M~V+`>T3TBBDrVO%@Ce>u} zrLF*=@|`r#nmH{$N)ev35!GNv2XFD$=np>>MKd)KcE)k>s932M2$!hx+*+fW+Qs6BMJ-%@Tx z$ENGlC=PTDgBWc)Xbhh<3qNDEm8D^n4BHmDHkML@RUBv@GDfAGE=j3WZzODw!<`)R z=bW|9svgtO;eI<+Te~i4FX^vW^AgL2%HsSdo3;jNwUXOvjQ_R0-M%?* zWf#V33+V`ujo*N5&kPLIBYt5*n5V+>eZ!sqxz~tu9Hpg{n2aLE|f zpeCFDCz2sN!^ePS&{ixH#X))x-xDz8;V^dEcQT}LTVr7K8RCR-lD+&h7_G}%h|BPn z-#fE|)#X{Aw|TSD6Gw`M6URp^eJ)9hMm3yMr9HliHlfW|!GL(d_N1o3U{$H~2GA>- z1O?U}*_O)2Rfgu~16;FVjim{C=|q`Q#zsp_K5w{*LBvXP_@_%bnsLUy58TyW+-wDW zl;Q4VE3EvFr9$$nVz^}s+(KvgkRzgsq9OwG+BNUd%DljtwO(BpyQ!ry_Pd7IR$mN{ z!FREZFG=|sYbY~8)|i;t7)|?o$}`gmHu3bvXiXzkdPEF1YF1Cb;+FD368YWk?;L&& zT$P^{9X#CA*x)hVbk?;y?OJUu(r*Y`TR%@X(_|Q$SsIM>dkD6h6|~|St!4x@QmfU9 zIwn#Ur5E&3GHanCQWL2c)QFDMymAhl3&g~X-d0NIoFkN2jG33yFEgfUyzp#s!u(0T zIiU(IzInV$nA>mU)X0{GyyxzoOEJuf2b{BpidOqo+A10pudnMb8LvDx4tnLcT>Bw7 z>RbGmlFH4Wj=wZ@Z0_i|XP2*I5r4n>q1rp%3!9kD@kMy!yU_Ld;B|P@ge`P2?fcq%YtOG zJZV?JeJAc+vHP!s=9=&oZ@es96Ko07Ca0&w2Ddc2GaGha)WxPh`7)LAWD=rd{_yIW zp0r>{wtWwSE>^`ZTNbF1t_*ApxKB7k@BV8~+v@!>tMi%Bo2jR--BtSkS4tA%eizHr z{%|_!6k4&X+x)c#%b)v@LXFwVlz8k> zFSTC%_0tcWR2!qs8Fm911@rTHS_9X7FWI+GB&yZ*J!{n!`T5-1RpouYsk3R@oH;#+TA~h2j6#408&*ihkIr;L~0jSSvSNt6A5WA6G0J zf(8ZP90poNVv%4CY=p%eCnr282cxVNaFNWitQ+AF!qb9Zl%|Y3k#kX7%XtJONI=qr zxcSf=;SP|}rGAcZF4se|7A0~k$8mES9wbUF!L1(beUEWq;+TPxa-4~=;1S1Iz?QyAC zB(E}wRyR-?H!=E9oN#NWxk%ZkfxJoxHZxRQH_?OW!&-2N3zblwc!b52q?woTY!912 z8gs?)5+3h1TM1s$1^fE@*wq$vFJq58tfp%NqAfrU zkbkAnO>N#>T+9_c@iU@0EzXD#MATHAVoss+%y}$t59gjcJv}pX%&IM3<-RsFM><}2 z4$mPBk=*62`tnT|W*zr%XilLmV1&o&7TD$To;hQ&c(owhn4Hc!w+EdpT23_&7HX_* z*4u#GV#IJyMP2g_-iOG@+eaP--D9|9m^C;JiQ{eFw$IxZ+Dx0iIE<{O;)@E|?CgF; z%#AU>4jUI>+rJH>!TF9Q8SRRZWq!j4nn~Vn9-y{Ck6k?NWxXI97oBzIH>W&HQ~B=1 zrgRhYv_e$O8vTBn^d@i`soIx5SK(P6*?2tjP0TynR57%m{G+oI^KAT5JRlNY`>rNf zp7Bt3<@4RfjU$Y}Fd^Ihd}ViKEFiC@rh`NtVMb?V9cD3$4`)4G+54>_eYxA-Fvre^{)m?{5IPk~0^1-;DDMp-JD`YJd3Y7oL0W+Ou-s zp_|}&i-g1TbBl4FgH~Wf6pR5vI|Z8U1ozHTa20D>gVarUowlILH44s>D^_U6DN;qi zgtwWRUXOzL?yc6SD$!+C2XAQ=U08tiiGXPaGsxPzGb0<3VJ20UDx_*s-QZ$=;vdoJ zmWLV-X1*m4iIU4QXJ{z0@Q8@Ghdrd4VpCBN?7dz+4IktNC|EzPp9A^@?`SPBIr z>=jgv^^V9$SXRN|XzFa_uRfAHGbWjCl z)pC6qI=^0#;`5~_{N>TtgB08GTZ*9T(FOWBaaTco5QHd81${tCG4@sa4Z}#CRG)#t zMq;;)HQXv#R}}eT=i^S<)Tce9ku@Cj!|0FS6BCx?irj-n{_x`-sPH=neh~4vv7`fzc@uz za7K{=cq@!R1OVMMA-eQ}0k;nCPc4d0CbHNv9}&r-*M8H^EHD^XeN)T2u+h~exMA>2 z^aRopms;OIr$@x~>zELY9I+G`Qq<_bzDFPRk^;Zf`Q(#}(PKVKs5i9MH|Bp%+1ff* zIp(mld{)1K_1{e6IlaEU`Pj^)dBMoqt|Ajg2EOsR$1&F$Y@o*i*2e>KjB|_9nBRSs zOXW)OLTy{TjBIAzZ@lie+Zo~EWud!9GSlC?3#;!g1G{1gr|$QiFe=*zPRq*OU!<9& zWMd-E4G=aC-oAbHsmlGn^6K_n(mCKEu|xmpqa(v)xX-siAAPU;8Vxz58-HwTR0giu zfOS`Owo)ahysj<5Rf0qyMwZsG|FIA}0*&QXPHvTpn8U(1_y29$I3+uZL>i1cyk<31 zl+2xsyDx3*V=MQw$t4%#nB?M%@sfFo$g|=v7AG@t7fU4cxndDjM1M-+V0Q<5;=Zl& zlyf_3P|uF+WoMSr|0;dUh^rPq`S3IrKCJ!-0B$izLAsj8nGD;caT}K8lM0`&uCB7u zM-N36u$X9{-k;{_RgXNfiiQuv4sXo!1<%LyK6e6dze&xcjM`eh&MZNIBgHEpuMd~m zR{VVZ$Futfz+|QniF&cH-|9dP&8O6yevbN7gEdunLttd>*v6j1^XBIJ_4H!HUH&7k z8T<6pg$p)1{hMlC8FW`w7BVSI{3;)=p=iK0kENH!8;VWw>5s+2Swlk8{EhqS{OPlo>~5R;(YknKK{gg4KpdQbhpCDdqeC`g)3Tf)l;i6OUe`p& zOycQ=>0DZ7!-SXXD!>Js$F{LO(Z328q7vU#2Kou`RKrwm7}fLt*bCb7&)hkRD=|k#*R@R2r zVE`EafLkIxyzU93C|vT-2G%HOc*HB(m^b_=fQ-j#1qmz>17{2jVxa~D&ar6F8X0h# z9BFvoTAwzqa|`+9Uw-NJ%kZ!lP7LBq!xD%(?S=Mt;a%4)(}1@l$V{_(@r%I)wot3Fd8BV61&t-t+Y0-VY8&Ea8v)W|SI>z#PVgW&|$ z)&cUbO`e{O`Xqodzbhgwx(CF*V=p98A27? z!dy_xz9{@6Np>DQSYF<@uw_fE@z+paem?bZ-^*YEnn3>Uu{V?3u?NFwl2#5>El(^% zd5#UF2lgftvdfQI)bb~f z+S1<6^Cr6k$YTelhc+oYqfFt7dObA_9o04 zO-1h1-J3}T#3#(x6xY{@)ICGG-G`mdc_u8a?oDoR+&a!e^gc5~bjhg7Vn3H|q&M9a zSlWDZv2|VuGNXQEEA_-yWF@@*w&A|sX*OOX3rR|8k8mvT$=Z7TOPyn5U8rv7&N}&` zK0#RB9i^E<9bR&QjiRC$=5vATHu7MP+|sk(jtnc(6@bCXmYbaRfhzb*8JZ3`~3rQ|ZFhb>bWoXqCZe7f&j`y+qpNYRKLIm^Bc*{mCV zr8MChSNIl!$Ac$0!uR2er)*QNtWT}BJCsD}6a-7cb5-_z7mhyAV|Q|0L3dR*haiuU zDTyhO9gYOlrrl&|`Ck#Ajlq>ehhQ@EJPfVb>CqjGoE4J(Z(3_lj>v}QeqX!4-uP&& zt}^kS)PdB1#vADNn(RBD(OegcCo=!QX+K5U4+{-(2HDGv#p!?hdsi{=qdv2Fo02H^ z$1KDI#Q1jx9#!TT4%V69kZ+&=tMjx$-y@yT+ut7T`YCFhJ7Y4~@t+|BZ|ua*`jK=jrQQ>24%on~_0koZU`rW>1mr3EBQYW334w=o2m2uioq5-;SS%RP+q{q^Z zqV?CfamNeW8G+HCc_BG4`2|y8!uZo_TM3DI_lDG`!Nt$dFHFxKoE4{Pr~FGxogFb9 z9b(=3FX+AiOpzD3MSK|BUMAnHK>kGolg2FhXBC5s{+5B4mzzA|_1FC)GkwdPrZ|m9 zoX%b!Irjc==7Nk556hPYWbKKTjmg4mcHGH;*HPJ5^^8{DKZm9!sXu)FkHIaJ1=yxW zb_Kt5inm>w0vG&(oj6nOW(ZTwix?)|D-ja;OJ!)BnP50Hu^U2*uF*WB>bZ34)Fme= zcL8%=Ik`kmny02_9;~ZdPEDEWsklUS2C*=nb(xWXIlT z?bZ;xy?@jC?8*(Tb@Xh`$<1#JN}QV#bF3fuL>jQ7GkO8~8s zC{w60&8*iun>u^NjcCTGl>J6FjBu@;Br8g~oPPX2i!NPkGU@9x8BBfV*QqHg+-fjb z!>Mssv713mEREh1s~7aTCp-SQIz_t6us(Lr$eMcKR7Jtz6%E33`zF>mYmzV|7eppk z9E`;b)|{wXQuR#OA!I^_!Y(28`AsGNjsy99Sc>e|N-{H@TbvQxrV017UsRFip^*6R zOv+XpSv0&Uv#wlO^HDSjGZ_8R>a66i*8yMnNdOYGp7kEBut>*x&5rAu$>$IF{u>{t z?b3k8fQGDIje?R*QHz2i;Jp9tG~Z!pRq3R`htxngtiex6PqwA`i%qpi;6wDA<^AH zNaxdqBxS7)sj2TDmhYav(6CXW+^{@j^&JS2o8cS$bjr~7r|P-x*G?4 z)t|9y>KLX(?YKQ%RpcpB`JHjj^5yVR*fyA*jyarurPbz2hGF>ce5?Ghq$l}L>(VW1 zB4eShD;bVaUa$U4Y7}lMywXC{5wStB5j(y}pGu#^jiA=3b_I?8+14I_3WiZ#=JnO1 z9{;3VUqt>V5pKG%WL|=>0Ho*W%zZxm8+2E$WUQCnTUVmHP<7I;D`}z=i$9(CKx?%9_NLT5?=Y5Rg^M(G^ z>~bZX4CHcMRlji;yTnnTS`w&3bnA^^M;~mV^}Gz^=?wDJeRUego}S5w;s;Tl)fuJk;5B&17iHYrvAtFzw|sO%PfwnY(|ZX&69Vs7K5#ITwTZypI7=^wG-?hL!}%gHyhKWqQ& zvv@t<(Y4_Fy%tMctV#6ks8SGBSAGKnj_qFfeO7Y!?&gHi=*Ljlm@XswXyWH500+lE z+S=d8^X26v>ddZIY`JIuN-Qa81;@V=kCjxE!Y#FCM}F(`KdDN7(m(9o!b~bPk&dVo zWlEGIl9Npp*f-sVv4UJ(Czjk2}p2pjX^ws&1QK9*{s-QbQi@i^``0U zongk22RX>8wFkjNZTRp+#G`BmU9##Rk?b7%VhZ=IVEs%uDxqDlra^9wmSK#S15b!& zg~wxMLj5Tkf&(CGxR^bQiC#p3MA7@;1AX4H|8h^Yczz{s?P6HMvdmL1`R2~@;JztK zzQuL>e^>=F4iKTkQp9dVM)>CM5@`=@&9+KI-hCqphY5=~;A27>dO=-!#-qz5X+r^_w>MH*9EV zj`ZJ^)_(;k49gN$q;T6Y-;1qs)i3;e41^a6T^e-sZ_;LaMad$dTX6Io?YfK-&4r+3 z@!EuX;uuSGuq>FYGq0<&O9adx04^h4g5i`Oc~Rg5m3c?d-YGa??`pRoEd8P=fV6VX zHM3UsBO@q<-^1Q?gz?(lJv7#};aRsjqZEv{P0TONB>6ek=n=LIz-ac~FOZ9u-X(b;H2t*BmM$YHhBDQ>t zKHlPm){Cy&S^wgT_1u!dp6UEYjC|ooHRQG8uI{cvjm|l@K^-T}mBy(XCSM$o8z49} zB!Q#jTvz#{sZ{i*CG9Y_s_WKkmPb@}nI)1&#a)FTt%0cVZb0hYsQay`oJ-0pD_>c( zabwX+z4yF~{H80WwQ$m&pZ~F8okBgMj&}}a4msnYO0jOkKYpg#*Tor3;x1)>tGlt( z7rWBUGgb}^a#?<7Gg9?VZ9_wXN_SJ2=*~LT?>B9JF6x?rd!+Zj!)tw8d|UbsV2aJi(m9@ z2735}Q#%f1edZ1FZfh<2-NBn~8IT*39gwY1NJ*dZyXNoyr8Y5=Z&Izhd!s&+ol|he zZY>A=^1gK?DrNcH8TpA$iaa-oh@@yIzFlltKT&ihJkZ1lOtDW*BY9+1H0ik14D?cv5~2V09Gfn=+c`pPOHFyWLVZBT4r1x2DwEZ#yrJ^ z{sRDpS*H@Pi>VCGbtz3&B|ZaoFzw#%;i73>}8!_{yV(CDNmlObGv5H4t z@#Mp_Sd$UFGjeB=CT_wVv+-$1> z@wZlvYh&oGo4^TI-xvv}yuVX@UiNRR6tO=4316&Y{Mg&t&V_4-BpF?Vks2T+I0;!u zsI{9VVzRch_IDRCEMWvBFxM+z9PG2wZsZ1Xo1*$MHfKD;)UopXGTIp9DC076^GQ~| zq!c=j@Or;f{@*2F@JPzzhyKHX=f|zOyY5GVw^@#f#Hkn>siNqziLCe6R^}M`rBZRu znt4BKB1@>r$=3xCZ$cumwUtdtnCwj9J>L<~p@}i2|r{-hEHX#xV3C zdP&UuhtvPXtgjDGazKEjIdW&EXKj#qqqFxmPnnBRBAwr|7Enc~mUu7cOs2tzXUf;Kn4}EWx2zfOwklUnPi>X0y4H={T0nJr zVz2K8Lihch{eL`Drt0>M!G;hxpnPW)2VwhsrjgsX&&XxYZx={E;?N!!AJ(3TaS2J1 zjmnmoa{2 z=<}02=uWx*&uI+%$=x$U<5o zY6pz0lX^6r7v+gHl$~M?1bzPlw6LLaW(FYz8dfsrX~D=dBJ;=yG~@a$1C2dIqL;WL zZ+ZGJ-X^9t7riw;{?B^!bfP)ppOvyGCQ3Ha53LfUsd>gF`7_V3JZCOIW;6fFGaTu7 zF?4%#mW(}?3$&b{lANx|Z-EeFEo;X6ZZ*c_F4c>=MmKW13&W&zmzlgbc-|;fm_0D- z^|kqmPHRX~D`z8tBuFp~$P}6zoU1ZIfrx&lEJr*uFZ`*3iuM%#N)gb*9+9R(*4FlNDV1kAi;@ z?(_lrfx1QHLExj}U7Vfk(8qR{Mo-Y@I+ZeaDOV|NZ_mx4B7$Fr40wCzIMdC)53=mG z*C(&L?=QC@4D@<}iQa5J_0f2Ru7(-sc|A@p82ST%sOTR*WR$ZkGl%9F@XqZd?t50Y zb=IuqADx=&Rf4CdDp-t~nC9_$;743T#pr6#F>0BvXnKORfFhZPxvRxay5RZN7yk5JD5! z7++@w1qfZcvh0&jdU>8@@4p|$s35@7*GeNL2(YIt#!fyRWZ9txfK#eKtqt#Y510Y= za0$1;Czf?_%xw!h0wX;~%jFEsV7fgGh~x(8e4~c(FaTtuZBPap%|OZL83&KnB5TV^ zxhL0fWs|rRnL)9iu=@m0kgB~Yq|(npm9r9#ki|DS7aW&vOhAPUxgGe8A+=7WAdnU} z_(y8nvJ!Ay$&mp~hDE&$_w+dv)_bFuX@I@#&VSlvN}>!px$zmdCOCFt zLfpGoG?jbLtgMT-_CvN==VyiT4DXKYx`XA|K8bg?eE9bZEhyM6{wa&hL@)me>Lz*e+j$~5+xz@QNgz_VYJ&UGEn0fP(u{kN=EDXA|= z54@WpXSDWfZe|-;{hEe`HAVIHMfnN>LJut_8gnVJt2jL+ic`~-buGRYkmzy<#yFF` z{4YEvID(Z_YQm4PC^q+?K8l*uOj0N{>PImG{Y%SRup}U%=@$G9KD38DBL-vo-$iY- zlB`b^SsQJOByn7Y42|ihU0*0X8)LOFs8V;R$?BL0TG=q?7pK5QkBM^1*w5I3ek0>D ziUKDv<>j+!wlpaAtKxTjo7bQ4(y=1f&ZM{B)0J#^YfIS#o`5|~THk$pzq*0mnG|o! zZTj|9e?s%*u}8;tCB1$0%cTwm+~ANq)aP%b5sQa!H_$~4jn#WcJCqaIa5IBG9OrR~ z(}rFc`O(%NBnv;%!{PXG@6MfLUiahJgJm%09iZ0a^777q-*CI6x%ogdIY2IHwi(HD zFevNa_Ro}=MZrax(YcZ7@r|X)nWs>&ws2p1ipG?f9S?}wSk{W z4h1RC{5~r4QB6^Jc-ZQ*K^pP5Ed@E1#f?#c<(oKy=!pl!pmHNAl@Nn&s(b;>%!26D^t+QEK zvt#j)DAnkzYpY1?s#Vt#^SHdNKN8)U^}pmbc<1K*vfjY1r3E_UG5xthgsxs;K?HvH z2LHCD6>AGC*H)C)xmfC`%!X_Nlu?)kC&JhPl*CGFCtdu6%?&M|t6L$sad>7;raUNm zXLxeNBavhM{m>;7pbn^x`dTVAN1&GN+L`Ap@Vn{gr|a*K^HG8<>IP3`=)Ag&pQ?1} zJ830R(jod!;~w7_5YR>5C|rqF$JO}EJ8uYCZPXO?H(bz=jW-^hLJpoVpEH5r2D+j3 zSM)^`k{y%L=;jY63949hk*L%JMx;wZ zV8!sH;yOV#^gXgFCE(cTw$=rQLQwGaVg`m&3oz$}pb}it6)Y#MZ$ut)_mM;Uan|Q; z3t938F?I0a47VRQc1Ns5n*jsVO-N8X%**d8jTL<-v zivS|WSkXii2lc_8updl2nl_R)ng*-GTE^*3`NMs#wEwmE^Z%6fr;9T>9!c_mCC@Am zR%}%g<$PM_;~9*r=WZ-Mz$MdCf{3&DfURHD6B8Yg*(XM2pZfn75Hl~|ugtet@^TmM zzh7N%N;qXt9OXC}S8E}ylW?rR8Z=;+8H4us3u;lNO8T$b5DqL%hC z^TY2x$gpiSy6bI))`YO6g$1F%ErAJcIG}W546}Mi0 zoEoDPoN?Ao{G1YUU_3HMXTCV>a;cc8@%PX+apkjMd0Jd}6DN35k@)#3hU(XBcGsp& zA_(eyEjM*V|8WvRt;$wiGR&$n+E-jIv&hlNeWAA;3PkR?ww;X(m9Ui6KP-vr|jhagjl0e(;u{$2!=rz1!tBH~>f?YQ&rbmD-AZ6fuTe>Q&gx^=#b z+sm`=$+1(IyS$QFsjlr?U;J@EZU8r-gxJTq@9Xf2`{6u5`i+Z(m)w>b<#elMh=guf8g0zF+W-JBEqeNcpd)Mmvq=OW*wL zqLebnS!o^>|H}$2xDK6xj!q<%jl{QZq9H@+`zkKO)kROGYUOlA2? zIzfJfDsJ%Br0LYUw7@jAw2x9Jr@yIY)OEb4@x^JYRkS-(suQ~xrKB;q zvEb%cNzGN~rUl59lB$y$$CK0FSs$pCjR^1iIB}@wm7cOG*B8C$Q?}V=KC$m z<%i3vK#u=EU--K*oB~f}Cjfr*ZiY|!cTfEwvh<*Js#4sXS3u{2>{A~sn$M0R72K0s zI8=ie-=(pm!l60v`mL)1?}Fk74?P)@_S0yx*Ft1}$PujNPeEhOtqs+|UoAO!paBmz z*n{$p_B$VZ?Ft_}lTexwO1rz%1oDary!i5l`)~&L!`;!B2Zfl!H~At2ul!5 zJtDgq!>XA@S&H=0GMf|VQoQ~R|2PtL>2&#Y+mF!JmkS7lqZ_pjoAU$dNwWS zO0&X7VwQs2n$}0Yk_JKk{XF_Lm2E1g- z=Y1U)uQPzwSV370dXs0>&JDEr2;vonwvYkBlul3`ii69q0_!e{e-?M>97SlbAw$}h zFYsJp(r}zPkg5@$##sP=NVtJHxpD=^`y*_VdTY?LV9LcfvSFi9HxV`3U@BCC$RK8d zW_R;e$^~E#Y`G9^+{!X>+}=dMj*K`=-QmMv8l3MaSe7-8&=_qt@VNx&WlZQ90BNV;w2nz>o8@6tD9MJe=-*!~dmG*n_gj{LQXkF8{(2#7 zl`Mu2K0vGu_IMVyTK6nM`|~X7t7%zw{45S^`BM>I`Au`Z^)XaGU3J#Q0JRO!Pk)1< zse0?JvmQFC3r*Kcd-b95dg!6H1ufiv<8{p2JL+eUybi6-Y;6tLguk^_$$0h1VylXhhE_c(^)D@3!>j9uBbt==Bc(c(rftQ_by<(>>?a QW8}wPUeo^@jR61v08@RD2LJ#7 literal 0 HcmV?d00001 diff --git a/www/MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf b/www/MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf new file mode 100644 index 0000000000000000000000000000000000000000..7015564ad166a3e9d88c82f17829f0cc01ebe29a GIT binary patch literal 128180 zcmeEvcYK@Gx&M1)4R2eLU&)qiS+*?6)@#Q@mX+x!dpHRhNLkQ2n^?%nyrxK)q?B3sZ zV)JZV|5B0+M=#vAZq1~o{wt7w4A*yUS+jq;)+-&y^A$+%+`4AVhU&7w+Y-AP^<@XQ zZ`-x|^p#SF#I6~l=MuG@X?}XnH|mdkwrui;Qh^3HB+*Oy+A$M$RE3dWOlmuQdZcu^om&H^q~Mv6Zi_T@_TTbTBt?>?5cVPbh4~g3xr$0r z{)|#lIz@`{vjpGMJ$jSgr+346O3y_a@hmFE`BS>8M@mYi{>eN?$|a05%AN9(rDmiR zXX0*%KMSF~VQC+pMR63l)1J;1UQc=}%C8j3&+`x->Z1J+4_iD-O5oc5m)t>SRp+%xbu@Tr(I{FiJ5~Yh=sm63hxn}>U9LkB_qchsR zgfwUSqf`=})3au&9ea8!&flgURU`+_>8X!DQOlzIb4wL9jG>MShYLNWd!i<^r$4%D zk_h^ARylH)+OZP%+?iCORua-sE^56O@cK}l=xwSe;R3xSdNsz=(tWiwN=X~_2fZQl z^mIl2NB7m#6LE)9(4Q>zW?(%ra~+nt`5o#dNTQL@AV>(uup2mi`D{REEUQ zWT^;8^@)I4l&5ORq>Q0%Mr`yK<$G$uDx8bdly4`0gGv*%6RE>IHI+jcM5*by7`1ey z^kSo$irUhfqBgXrGUy#Ohk)eeSVV8H!bY^7>Lf`Ucv{gCN=*=^aVO)P>OoJ$o}Lf{ z=vtDd;wWlIbx~_XrP3e$!22N!NuULiR0vKD83<>R_7jqj`2D=heJ%R{*ZYy5P8u&w zkUlFN9LgK28mb#=7-}ABADS?OOGDon`p(ch$G04hAHVDPw~zne_)m|&di>2d z*T4ClH-Gr%kKW3EtMaY!ZwBPCa2L^>MU^1oKd9YYJEwM9?WEdZt-rRpw$bs9;|9m|j%yuD z9E%<2)C||0sySKnZq146kE;Jv{Xq5Z>YesK*8{yWF9a|mlx8Uf))_`-!(?gVwaIXtT$fQH09~+f56-T;WhI7c=L%{B# z9XLn%Lr-9P3FnaOhrW*O8#uoP$8Tf%4$iN`@q5_b!TAl6bbJ=JEjWK1$D6RlasID3 z-X%8absX=m1SH-Ct8wBgMkiH$9nq_+&%@E++2Z(;1c1u31a!qJ9pJkB@ccsDkb!H(dF za^Ctq&XLDke~_fN%{c!Rju`2019t2a9MMN_Pe#94BkZALAVGJc)ilaZ(=e?mZ1QJg+;|VH$VNfL@F&SH=4{9 zvc+0iWwTe;IBK1B^{xiD$NTAT{qH{Ey0O&6|JpIWr-3^!fpoS;+AQsm4oIJqu9j|= zZkN6&Jt93Ny(oQC`l0kQ=~vKj-;@3z{h2XVz>KVl)v+el&L*&FY#v*}wz4>TjJ>TX z)`T@*(j+yfG@s;^&>0!9p#J`L)$=el~QGW<b(OJdWz{XV65B-EZri=K zm+b|1hkdqvmHjgNefA&OPgjqtUS7SU`e^kZYLuG!H5b-gQFD9EfTPqAbVMCDIi7X= z%<&t?hqcyPrFLHJg|)Xi3!QeS-?_xO#d)Xm$8}O&XWiDiyX#)AOV@YQudM%k{Wt30 zc9prhToKn^*K@94Hzv%wh)9KmZdBXE&ug|;Kd%ky< z_c`xh8|{s28y{&ZXj;^?zv1`LZ-Prb(w%6M&?UUM9wqM%*X!|$YPjsMVL2K~WV!F|Cm1iu~p-FVCRRpW0R|Ml^y@xv1eCXAb~X2Nw7 zzBjRGV%x-(6EC0m^29$(vQC;jX~U$iP5SYqHzvJ5>Gb4^$-c=~PQGXIi<94;QZU6c zW%ZOxr@S)d_uZE68Qr_OpYHza)W)ejQ?Hu($kdae_E0!{m~iIXQXC+dDg?TUYPasS-+iKJ$uINO|$Qq{e#)>&uN{rVa@|{ zUY+ZnyKe5Ib6=n5o40h{W%C}JcXEEg{FeDk=kJ~$pa0_g-}aRDOzb(YC)RU&&!auZ z7O(}@1@jhcTJY$C;e`zgw=8^V;fISl79Cjh{d3qkYtDIcalzuY#akCYw)l<3e_Y~P za@mr%mwK1ZTe@lK{-xhq*0AidWyjBLKX>1`&z$>OSQ|bNzB@b^DT+8Et0Rv_z8?Aa z<<-k)F5k2KiRJ&Y!muK+V*iSJSG=$ywX$es^~#o&2Up&+@~bOFG_sy`bQNwhNA4@RJKZ*}Qb~-J9R&%kOLM z+u3(>-^7&+WW^=L0*R z-1*&|r*{6wuHs!ayMnvs?pnF)@UHuIeRbDcy9;->?_Rk3g58IA-?ICW-Cy6G+Wp%- z&3iWNxpB`6dyemI*t>G?ZF^tY`ycyi_O04?+rBsVSMFc6|Iz)!2O176IR9^4G4=Uor8D6<1t-#W$~b?MnH|IaeOJGI;i zKfCJpM=VELjx0K|=g6B^=Uv@&b??J(mZDqgZ;9M;%`IQK<>W1& z+*)^Q*R9)cz2Vm9Zhb4x;`aEI_!r|pihtDK*1x6yvHtgOGv7Atwyn3_e%trHAbr92 zg)Lur_;&m4b8kO%`;)i7eTU|b<~!!yvHgyF@A%#wf4I|s=jZPnxbv5HNq2egT5{Ky z?^fwoqpqVXkKTSXb@cQXgJ0b8#V5Wvd|&B( zZTFpf-_H9UzAt&-ukQQn{mu6;x&OKQKYF0yfu#?8;el^G@NW;+J$T`R4?Xzx2Y>S5 zyAP%xs(EPgLl-`Dtq2qex;T%LF+@%_ZVKRW3#&10U&);@OaW3N7Le|+QP zvB$si`0x`|Ppo?4;1l0?;*BR4J-Oq_ho1bmr#hZG^wi@|{orZ+(^H>*;px*~p77=E zU%vm#Z$G0vv-z1jpZV8km1iG%_SAFL&&_&n%X6PKAHS9M4I1q_>F#} z*Kc$gkL=sHk%iL$ z*uHYzh7H$kSjIC+B0FCgmm98QcAk?trYI;KHV`(PsRuMFwH^kunO9+OcsLb_gcT*k z;^`>T!#2W_NM9t?!m3E=QEMvBAFx{GxNyl13 z?G@D(?V+!oTUB3mN(qJVzof-#Z8_v$QdCx2QBhh}w8Wn>+Mv>9p+s#(OVt+YGc86b z99sWwDlRq^n-`BCzj%B;Z!eQ^qu8_=H^wjis{kEf7eZ^3ED5Sm2K!(KU`I7Y9$h@2 zt`4tXWEtoT2CN3JUaqiobOky+UfETVNg69Qm6VwN#P?Uri??q-x_#lzj@@<34=tbH z<>SSQ`Z##45_rCSaqk3nvtw6NpnLi9?(yg5H@!i56mxinQKJM}*Gif@Ls>3Yyzm;hdcvrgE!!3y?geAdPAX@GZfmxWSp>2jBbbvx=T=j4H12Jf@4zv*qK2PufD=+ z@N@>v=suvotKRDoe_~j;Xt2r^R*U%i(AivD+q`r9c*m?+CyZ4}hpVEj$z-T$s<1A< zIHF8h)omfqe%O$S?O&yqpQOp2Q3zdyU8~-5}Df4-QD7>wc8!_ zo?IfL+pGc5{-OHCFhXh2SDSuE2e*|(>N$b)5XUv7&DGi9j`eESWY z83^N5zU?+x4F<2l>kZOh&>FN_4V;lPsnf8qao)Vfg@(?NGa*_;C!J%QSz9~9bk3y7 zi|A~o@tmBV%kW+|ADs0DGa(=Fene8as$s+I$t{~Fw|vmB!Ni&GZ7q{$Z)iyWxZwjj zVKKpeH6YPZ7GrT5ihIDLD|3XSxPqJ_xx&$70|OWd3Dg(r8K{e7wi*(rPO*5L zuGDfgzZasH4x2KN;3Gr{pGE^tO9_(uBH+%zVEhy2sI~v!7?FYlrNEI( zxX%#&4U!#XA#M3PtU783>g~qHqJ1GyDvvF{G@VLh8o**o66C4VqxJZF;40JzwGG1@ zL+XgCfN~%wZALE4b6X7%hXZ`Fs>(|c-^x#G$8YRqArAR%; z2FYy=$}UhTzwBjR2C@}olV>#VZJuG>+noNBgB4%m*yebX-+4E4X9n(&oEL+fhd<;= z9tloKtPGu)dX_=ZBVjO`Mnh>J3sSOU&z_c`OOZ54qho|){1Vcj5!|*0{8lmpKn4=I zgDUM%^$ZAyL8@mmws2u=Vb7uEkojjpyg#}fMx3?wV{7eeL0UYk6z|I93VNE}anFt& z_bjMe=5#J~E=5&yYA%`UjCC=p2Gv>AMQ~ohy~?0rjnH+XfB{Hn?on6`c|S2Y81W58 zh!LtBImJhbqF}TnM#*5rA4LfUsT>$lN2>b>UF_=g8b}KBWCoFeq%)Fbskd|GfcNWd zwtCwG9UZkE_r2Bhlja_f<*V|I{E9k|CDMpbNN zM5oYiCeF`*7h{UeiU*M76K8PhW4*oebD89bSimq2VvvGk9CL#*gf^isL2~lfp%4}g zhf8Q|it$&%oZ(a99=aN&9pM{d0+0hqm(W7FG{!Y9%E9l|$)q*P@@#g{K2xt38I@0D z@%Jw;C}FAemG+rhp4Y@#Z@*t$(1ZM<=!a_|W9fi*lGz_LdR+|_hCnnNjfR=Ci-n@; zf#^kh?T-Ru;z$ea3u!Yc1EIg@o+PM~IQGj&@SYlPnbO?*hHHFOv)9Ra| zu?-LU7nL@bZl2lJRA;X#&~~=kIE9&ovcC#`TSn0n%mQ5+#ljxpwV*u)-ZG|4JNMja zt&=9T1_Hypg9YN{M=fewRQy!sH;(^a;6B+##^NDMMC9S&VHU}v zT`ZYIXW}3Dm#e~NHUB)&o+^0mI4$+cT*U?f%hi8K8Og?i2wVyOby1GU1eZwae==xU7DI*%f4qFMaOf!%wB} zTIMsldc74}D!ebQ>+o;r_)@+7`Fi`M+s6H=v(weVE`;eq1Bff&Oi7We3LWHYtTUnr zkY}<8n1fc9B&j?cPRGJwI)l#5k{mu&U>v6<5}%>yr=u~_kh65Y6LAISpuQDQID#-m zfJ3_K4F)hiORxe*2)Cr%Lc4`_g%kiLSh_=Fh26&$Fo4$>Pyw##2`N|@gKUL5jaH*6 z(B$Q5^YR)sdV>}h1zL?B2ZKIyVbE$dD=TDA-mUBBM5CPx7F@7E0e^YPpwVeHidL)3 zLjpx>F430gH5#U6x~ekuTvMzs3e47*729X82k(h+o&;_*s&!sz4*axI@GMmf{wFOy zOM_h<1Rs}6UoXopWXVARq5x4DFoUj-v8UIMf|*~oRQUZ}nHK}$QSJPG4v;h&Uj|5q zat%O60Lv$U5sY?}X|zQet)y|lK0vE0zzz`68UWCI4MSQJPo&Y743CCLC4U zAYs+e0fHHTS<7n41&F{PzY24&*W>b@rBnW5(3I%>ZjA;VpPz?TkScP{2aTF0M zp^vnAIH>gDpGSTF*+2-K(2OD_{~Yc=I|kG_W1&-;`?tnIX&w=Wvy6qnS+M65gQo0^ zv7ps4P0`rVFsjXG9Sqt$CPr{}I6ObL6{?>g$vHiuo*0z4jOr;{!EcEB2x5+^k0+or)Ic8$k~G0v zPB0;xASy&si)!^I>B38w*0I%O&)O>OmG+W?Fzl+~a3B!qvUS;PK~|<}rGBMXHdmI=g=K@E08H6{g{i~~@x`_f4! zhtvJ6FWo;J3X#eLzYuh4(hcHxJBrp-KsTtCoWNEuY)L_qm$|hOL>YoE>5rs;S|Mo+ zwYlx?XKlt9iD2ktg)A}y$xxfKErv^aV6(lXkVQY{gDk6RfQGE+MVLE;353fuVf1~1 zTX06nliG}Rokhpbojcys+UiLU2$Ri&rRVKEue7;j`nl6fzQN5pkW8~UWF(yqejczL z)STNMRE*7)@)91Kp)?8u#QOqYA;|F-JOtCj0NJ}95i3G2QH)tg* zz(|)KbH>*=r=?Q^aKiBMROIaMb%rcHpHKry@0KN}M#6Z~ArDxwNsGlF!6Gw+i45Z$ z`lz^<8NeC|Ifb0p!gYs#R80YBLW&s0G5)NF59M%`X*iVSY@anaKm_mdV{Mgh`qN9#!$V1 zrM501U&)f+JKU{P!}@ARlYU{fUePz*)arKlrz%sYPGd_SIGC^GuZgX}K7FHu9>3Vy zQ0t$1G2Zdl^OqiMZH4+w78=#Z0?P;uH&qfJ@yT)9rm2cBhlVQ*&12LPKKg`aPCZTf z38GGkrUSJi#mWEfFT6WW{-e31q>3(TCP=Mn8siz z6ga~+F{*WE#lJByCquS8s(H{&$-dt)xr zWJm^;3!$z_)U_HG5sNk0Wwn4U!D9~j3DPTPQsiGXT;FznYhiIiBUy3!Q?R_?L|edY z=eM;M>TnO&seXFc*ice{d=cjkIvIt`A+dS`DQpIPJ=BrTV3*Shdj?%`W!D35%D7@@ zmENQe==Gaf{boH*O!_KkaR&>PO)t}xRf;?7*NZfjWxCSorOek=JH`FaTQY zN~U}tJ3hXi#Z%YgNHk@iw2)oRo<%A|O+$ls$w(J4gZRU>&=Yg)j?Ht-W8vQ3BQeLW zed&+qI_7e?To1TJ$tyve0=c6EE4$B;gok78J{HBv+Jv%?U>Jq0KpuV6gK=XgcnV8= zd_AhduK(DFnovDdew`2dj$}5#NgnVTpux!y41%fl9lj0igR%B*M>k8f?|A0E4ec?0 z#U-R{d`l518n@9Co&+F>jLx8tPXStL^~kR}Q%xiIO4F+8h)n<2<3 z)Iwn&f(2EsGl1d}*2l@A2D=Z~ppQkB1W?ZB6I}ExHPPV>+T2F3N~Y^NEW&u4VWhB^ zz~zX_fKgM0Li~RaMif4-tExEFmRL%INz8!Hf6+H!M5#tDjLn-l?~=yq>c;AevIZ=Q zpNKmv9ga%pt9Vk~xIEX6l}0r{ibz_^jsYjUj$A?}s&?iefbD@sND!bGET7{=fa3U>t|XEN*Wq1a!5hw1GPG0d3MZbX+5vKwLn`uWU+8!g|xCoAuE3&a7N~S z0^v8T1r2G1ggh127TA(hYqKTeGE*(<>b2@h>p~0^J=2a!r>0l)5w>VD1pup9xfQBBy=~6&IwFc&;R=ejQ)y z{m!k7{>~t2PO2P28lMW(X%%oN_|PdOwkls$m5&Dyg`v=JeaKx=?ehCwkPPZe?Do2% zdi&?0-BHK_;uAt403EbO^q&G;O@ZS%;u=wU$)G& z&n<5#EYw$YdY#&t_NVi$<+GYY-OC#m8f#h6g){AQD#sNS8LYFWEv+rGAi*Zn%yG-R z+h#2)tF(aiQ;#S-PQ^eTIa9{f0<4!SN;RV7Q#{J2;L!5gW~Hp07sZMY_fy-PSl(T` zc=i;NQ54YqpHjCGNpytHautDGPNRvfplzg_P`rhpwjjtOILSSJTw4-334G?HI+goQ z7LT>$>vn_v2gg(*kseTTN(bFfrxXSgbhcy-B#s*PZE*M^%0>8FIR1Ox@P4947O_3m zjm7zc#;Wmb?H@b(L7^W@Usv6vw;A6bpZDiKcF-Wop^^Wcasqju1CW(cQa$MIbkxs^ zQQ|THHF;zNln&uJgCRgYw~oOis|a-(xjS2iFXkxI!c0X-!%nlD1g)Yh9S+N<2gNiI)q?YORS=UCm<>n6^h z(4woTtv$SAN=L1?Y4(O!UD^V84qOF20UP+UB!wXBBr(dZ;9RZfD~LIMG{69lA6N$1 zyzp_GKF!B{I6vRz^fj01^<~XI=bjadSKPs!>!-Lt9-)0oZkByYT_+Bmb&4-6*SOs^ zpjL1scse(Z5<%hJ%G5|iZ@9=uL$bR3pVUJKZt4gV!|{`}DG*HCVt? z2_`cDlN8QK?t<`OhWbcOYPc|n4CYFJW97rE=W84bw)%d#z_B1KM8E2q;&B&@k`h_# zd{(>QNMGOT9>;>e3c=7;3c;{!l*owkS7YQo2wyvCEOw$zq>mA2$+g9JI)Gk4A#0a7 zL5$+z!qU>hgS2xcXF0~-Gu|<=`C^ccRkh(nB2`-W6MFQM!ZLa|-Z7=Q*-^`>k{aV6 zG$cq>ZivyudsItCCO+qL5Qjz-E*2fc0IV|douF+pXq%`t#=grqLb+A4o%=?V+fyz9 zQRX>PzMzl)S877kFN#r~AnOqW%j5?93@&m;N_-0Nq4;2M(^xnJjs%88Ts3nB2W8yV z(cy~ISOAZW6H^iw=wp?-3R#v*$XOfWh=wZYEhJ$mN6f;-2u^loXixZMqS93PSd!wv z;24)jfi(>o{-VY)G>|k!o@-wB3WFbnie1>PDBaDcx|^H371p|T=FIl=srH#O*Uqx{ z+LO44hkSo4Zq1^{iqolZ%ZCiDmh4jolJC_hbaM2Ne4!_8jI3^!%SrsIy8m@0e16Gv z#3myAa(ar(QM1O9BGk|F+}OGa zJ}v{>#MrTcvz&GO=s<$tzz_06rTQRtT8*sHR+s8@I;LpgnA4RyG&)&RSxFCc_7Ve}8H!$~ zE3MXOWsUXB{!E|Z7^F9AHE!~H*mYWF*Ax_JbPZaq(PA9At)sgP^Jg_Mpk{4LWFd!; z0G~UF!)G%Hr+kR3iVTyziiAqxDWEv3@HEz({soJWV}OgBKDaH2as@CNj>1-pC{TC6 z1GldX^v~tuu7s$gM^$YR%E+zE2+z+^ zMC9mcDb?3E))=V)9}I(vB#_2K zyr#Y0xs^R=pO`+3GD_>%*DQPMBN~HdJ2M)q$|o6Lw=C&Gs`XfCcxpQpZ80v2B%bk-(Ntvfzkq1oo65SAPSBkmJ66u!zLjLY%-xLb0i2^Y|kBB3fTYbd7iz zLiSzchNGj*^%LsD@QOoIR(4p;^6j<5Jb>2EN`T{L==eCikNL`0@3-eT*mOi&&-STjxW#KB zXg5i0Am(S2w%{Xz42IFl;-|P!&UfUesWOJhTBd5mLLZLM9fd6BviPm(Z23W7r- zZWr2dM`yh%OsEKfSvW2pIY{%?h^k>!V{`}+0|Izlaat@_=9pj(FheNbVW5aW%ysGL zD64>wG`oW(<$k5d@?2FzRaL{gd~ZyDEXUR7h7R=|>IEL#imoQ?1T8`PN$4)n7sSLN_7yA@0Fk~!pN{=@@oyKiKDx%GX$Y6}wxHF-;Yl+FQtDLUnu4dSh{${L z$tT$rqTq^eezRhD>!wXw&`#)4RmD4Yh}mK>(1;lF;PbG8WWj{APL9nO6lpw4$KsJ; zpD(VYpwe*aLs7d4iZi6hYxt88bkF?z`}6nvkUZs!!<>qAs->6WX(?h0c0m|r6PVqV zNJIvx{#aj&)2DoC7RUOao~8kKyvAtbvO%??!tU~t=UywU8L9L7nE7-Z4-P=d4W!ScU^VkcQfmz*Nd)?f^d;~A)=E-Fh zc|~mvWexRq3#-=VjqXKIcd{JwAm%`pHi)=6XgsM16xA@N3n}7m$yADF%D_y*Ljo|1 zjyOM2gg9ikC@_)Rk-&XPawSI{MJFH-&M!AmPyof`VT90;MVq_3nxIWchZ1aCWy2x!Wj1VTmyO0cUJ zBp0=Hk6&r*uX{7aNp5nDb06ujkB<{Ud&myJ_1+PR z8XYueIF;|LTnd9!B}yunA~ek9PJM%eqgc}nib@b3T;Y?kSgd>sTIzxwriJ&!<8bGE zZuOSseBOtUizpqnR!wPuTLhu&a^?lN?Q-5CZ4mF~az2$C%a)8>ZMGsl&Kp1$zCw!; zvg?HuQNA65!FfhYdAWr->GJ6IF}Y+k#%wO5WQ0)aB5sXI@PGv_rlKw>Zh2v?2s|LP zW_C$262Ms=Z391=fdU;7&}#ruW>Vwg^DCM+ zI5#v`yv%JKv8bnYc(`>H;T+bYV{d?F5GH{$!Da{&iI5uT1V!_9TRV&^$9K0aN-mfR z3OuvCb6O)tPmt3ZRVvHG66d+{{6YU%>IGqko!hddaZ5|({%u*A|B~kBJXgwMLlGd`^F5&MSXK>2R&9c)l&RErFGe)Vv zD2>)o2pTNOW`cGb5dA{F6Y|oKY6irkAt#I`JjNWfPsT<*(U2UrBw(sX(PRyc#}OhQ zhuzbX9!`;naWe*6jBKDH_c*8mMKeK0r^qSdScu>Tphz;PCle1!;+wK$LQhZQ`0AnR=_#TBYzo8P=Tu*>_;o4Sp+U ze$BCP`Gy%Zy=E@v*+B6cnOkGu-eH>@TZh>-OEJqPTh6cl(Q=IIr?2DXtgFtH!>O-r zhu_v6Tf4-$WQp@!l%wKU3N0(){Fv8WwUwy+hZXgfZ*R|;YsjM8C)j7k(x-B#8|FZV zxPyqjpePe`pwO_gLN{a!ND=BxB$}KKFgN9ZDmxVk;HUrL9B_?HMIw2WX0Own7P5l` zG1_G?GDPizPD37*y@bL**^r$rwqFEegm2)IXkzBWuz9hY?CB@%2hVXjWlSC06Ywpz zM}6|ci%QJqk_-o@oF#&b*_xYgW)xU|^=^XaIDp&|EEEsy8ObZUhqBoNsWcCBUlbNa zPQ;mVX1S`=jvG?=0H!&eh$~rFY%~_%MLSm{g}F4anJUKO^owMMV{?j)6cL~q$yG=C zeGvL5=Bc2es=bj^CQ{Ldi5KPO7(Tl9=+Kz#*hp@WK8OO0&4n$>sS`_#c^#ZUZR0=o zeilX)wFy5epQk&@k2=EgQ8TlEIF$3H7jT@bBl#JvcIm&rw6p+GQ z!YHih%00dsj9Lq78{~7PGIa&gBfOY0mm3@JW8)p|=TVifPx|D8(;W4O8k>HT{(+-? zHP!n1f>}!Rz%&QgOSbL;26jlrXN3c~ki0a{4xFySz|4(}lXIZ*quRPES&p<97M=;8 z^&JO0t9&bbk@l)eM4r$*;4=0H_6LlMj2r+DBv=4cQOvWzoG*k6;lgi#9MIl0%Qvg3 zZ06OoXRn_#XT8{er>ZKEO!{_?+?YN4#YKw8!r5rfORwj|>Au%Sa@8@PDXd*?HQd~DIJ6N28NDMSs;_DR_b7l%1@pmT8Z5|)G zaK+(mOS<%d@+JCGmBKX-iha<)1Dz_K=PU9}C1zJR-`u`wkW zDODshP%N+D*a4gcfqF1h@liwZb|6F){DCusHgZRsFXULe)-mIG$BY?{wdqrtn^7Ov zQp3I_^mHcvXFAr#=_aD?!=QQ4vNASZvKN7Uoz0)NXd!W&*~6pof$PJ_bK{S96u!j7?OyO`A$(>Vs0ET zS5Y9tBN7ml9Q&l0F(9U{iC|;0SCLg;hHOvX9Evv@!6%Y}5YU0rF-Z;LN>>+YD;A4B z6ICQ640djFv!Qo}Z$_^{J$aQQbrjQkmmgY|`+%p&<9JPYms{?CTI#2k_G#seZdn!g z(t8OH;Z-1ho!hdYj@k<90^Ecq0jmseDO>%s+U4CHf3(wF&z7KQir&qZH8<7}8@I3dSyKn_b)ubSeY*7m5W$x9K5vcF?&w}#quHIfF{Kw4aI?N4ZN8jQp`hB?9!hNu`?b0S~r zVjr_4x7UFawFSK}GO}mbv(K`b2hsWqi^MG%(Ps$aiGiTe ziLXBb!O(2G4B{)ac)B~>&!6$940Y)5_Z_Ar=GZwC!c5`!F(O0IE?;A>fxAOlg8Tr0 z(CQeZtK?y0>kb?^Ke1>(#pJQq4&bxl%Yvl@FqK4CsLo@^cD7pB-AswOsS z1#M^(DaKsq!#R1{D8-4+GE13}2qz5Kbm*fwBLu>XCswgo3d_o_q4kuCEygNXEyXF> zHZq|UgA|*lgtk=b8>t^^w| zU#aYGmP|JBdXLv{vA7}gP~bE}d{K}L=H!flSjaZclN}ZgDlBnBph|yOy`*&gE%{FU zEVjL{@JNBJ@U&D|cvXSDu+!0U;E(%T9qd?9QJE~?!RK5TS+Fur5kJM7?8v%FYpz4u zs|pJd4{0krQi#`@_y6%gs{{3Czy|vA4$ZHi7C`P-Yluh!Ly(QBCO9$7GA@tjXicV4 zGkYD(FbYipPCm z7`Lh(LihxoET+i#OA!8$#g1J0GS*wM0co)w zR4g0LgUMPpPhF)}9#`$tGJwfAX)#AD6G&t05%Xy4}!g8{QdVt{i!mX&_{?SGOV*r1U8m_7i(_Q z*^KnN8Qx717o=_Q7{j`t7vbO=**3c`eZ|+VVtbxvN7Faim9HJyn7;Y>9NMe}g!70j zOCN(Icd-D-aUOC(Y&Ix2#cNGK3fYhs>^5{b^gwyAWIZjrMvKM(_Gbw(VLd(nuGg1X zs+7!iVX4IY6|+U6VVDO8JPa+sh}p%=KG!~H z*~fJ)3VUVu>n+Wfu;az)6Z7qJHnD)cqIvbruN87yFKka)9ti1OScEAGA0g)CjRIw$ zsC=l;zy+9a2_t-TK{|RU66vRXlAi*q8zm2{sKcCt5&I%;k;A`801puA0&EoqWX&Ts zaA2XZTxAN`?2UF?2(zoIJ=Imh;31P=+f+5JwAx&a|I%qyrsh(6h236JUD7-NR-BQD zslQU3qQSkQuIY33?(tI385rh)7(6UR{XrCqOUSj&&aUR}p3~BH80shJ6QT$BjLu?A z>nw5dq14?xWgQEL!wW!&Xl!)AYeFkGw2*HVIu@FZp2);NtAV3BepBELttlwLph~Y_ zdh+muc8j-l{SE7RtSAe+YGfZ|Qwku3nshVwxw7P;l@r%hyRGMpo4tPh?AAp*I&|eq z*CeC6s-42qMC>TEqauXn*y?Fi$H99L+eLH|G7c9dU==q{Cq?^>~5z@rh^1^z7mX#k;uA}a)7VrWs#7$r+DWzc(0ZRUROe!?noe6Sv+9dw zz}>4KH_qUzYq6F!lv}6OG#SRV<~P^0SWGosXAg0IW)_!uys4G27#kh)Fe4Ii8azS+ z!W_*1Ope6{)PJlF9HZ~Gg;4t>YM;$%?EI-9R??U%%^=22jObL zl$aE~1+NGu%HbWHB!r^`>J{1R{_Aa-18>kd`05~_CY(M797)C^^Dvzgv8QWl7hTg) zJ*R7RQ<(x?({tJwS&pe4Xwv}g_%9`D&(Gl-&DAQdaS`8da#7N^XQ;D=vQ1^A-MqBt42yo>?^*-KJMe6HMn>X7W4tSCLcdt z|DBjXy-!jpwU%@>jtMB3pg`9o8B@;_#t=r(W~Ox5X!^AgN3=X9U_@>)^5(~=N3o|4 z50ej!rY(t{CUg*B0+h%~h69He-bF&30zt@!1{maG!I`rG37fg)g6f(lqa9SgfS=dT zOqaM%m`nGmm4pRUXR1Hlp&nBpf%_5(hylDR(3eDoVhSFjGAu@qeONt!&gl-d20yA| zrlzRt-!=MFOtqp81V@57!I9cQb)$9LcwgY0>a3nqTDqom95boT^dm5%f|*M|Ui`8c ziQY(YKP0tCBD5qbg1bOTa%AERPw-E^N*pA^DA?1wN&^1emO}VIp^8M8h=LG&2|toR zf&rogM4?bE)Ph(o~J5Yv$WN8lr%qP7DgaLGUk6;AMf3}T#ccmZ+(c93bZcq(Sd3%?Squhi2N z8Dn(OIHQ`Lh-DAD&T}1P#I&f&f8;p*AX& z&xM?NPU*easE%|G74dOeP8h~JmMW8_fGYh1bQ3CW@d^V007oRoZTy4k(VqXKQT*!f zZw=LmTElCJO410Yd$fWlZ(Zg&-Sc82D68+#k&haV01EvG+GHZ(7Xk^eV6bS3sH#e< zsO7jL#?Gil5dXvf**Q7Q45io)l0*4CPn?H%UI+l;(8L<6(7BTUvVc(RZ{$QAn{rV% zo>L|l(Kj*VMDJ634}U0yFujzUy~7li3heM^~t@&Jo zb>52Lz{SlCleN0^G5di<7u`x$k1QuH1(sqYqgi!KHD`4N-I%|~RdqyE)68sG5;$v) zW5K~HxiJ0CE1Rw>EZkFAQe3#VuyCut7HqnxwVE{OVo!0)#>IuUf;~t8t$eE=?roam zJcWIUy@Y5Zc(24m6dIKc$KBACZtm#%vq#0 zZ?cq(BKv5iSa_#sWYK8ilnj7y!$FQqxa?CInn0r?lETOV@)6mB*cTqK0B8OSITB?e zZw@lf=7<^jh+twA=EAcizLdn0dc-*pIRMOw0dtA~DH>ha;AV2A5|ih)(#8^@L?}eI zG^f-94d>a6ObkCT#VQhx5*>t%l447s$)z~LO9Ju3f%!dwK+k-X4eG{xzQOtP@sG9y zq+UqaM>Dx)=0wpLS4SqF*#f_K)>|dajBy_43R;8X5pFI7+K&7q1Of%&KfrG>GaR9& z>aBdA(RPz)t&r%p$A+I;&G0M<+Lq3@}qG({m zQqhe6P{V=NX*V6rb3GLT1>m&IgY zmPjN?%^D74ns7!HC0vgpQjr2a#e85M1&^`GtIiZ(DCQehLJ+_r_~Zm_cmv<>6L_y8sT&Dw7pgb@mJ*)RZ|K--xm-~7G z&E3s`s1k;6F;S~1wTT22dKxJhL}H}C@I`iLEPLP$z=PJ;7e6gsdo6}aG#XN3;5)gi zQ_|?qL^=rh?kwwGVlbk{G;v%t&BY^;!NLB1HB?>L>X5H$n->_&ZH-wj#-kNRmOmJ^ z_5o%GtE(S?3P2>nKVP~?UHl*i%3?(nzLKTtU@&)fF?sLacml>{ZnvzW1yW)-&8(-8 zjnh%%XKE;lyMau`dJlCKcn=oT=SMa6MIGDBJ%3WkuS@RX1Nkz(e<~-!=GvyZx-}z1 z+-&=oQIR%kBqqgSQ=AR-m^w(b+$yJ5Ukw29le|rlsizcKz?$MHWo5t;jlx$M%S;Rq z&<2?ls~rDtMFWR2RtH+IO9~q5U{=o%2dY02hiB(AU+?@;vqFY?W4!@t3k6u(z^MPx zwMJCT!ny)%^cor|6>}nR=sD)_ z2C;$>jx3Id0PxbHFTqZ@RbhC-)HX~53Xp^V!zq&dpu4@q$guF_D=fAwj~QmjRpn(3 z72e1F4Mln7<)v%2`Of?Y6th0hP*&5izr~`*Vw;6JO!_LZ zy0IQyHIMcVb9suaO4M336ER;TR*SiP5-r{kRT7a%Dn)h+HL`$G3;9b;pC7(AgUPx#4_b^`8nss2!927X12T#V5i0jQsfi2+j`;nP`M|}K3sxu)bvK}-1CL%p8r6B@-gW&mQ@FoarVE({M znS=osBA5ID9bE`o&Lsof^1nU4+TBy;n&+5X->cvUwG03tqK-migJSo=(k;GZ@)Q{u zkOI#KNmHT};YbxzgGuL-W zB7#(~2VV)w2tpj9F+em*+>J-ligBU}BlTDSSj-X;@wJGvRc5vi(SUiDEaXS;D=2uL zhRslIb93#nW9{EjP3(#cV?E8wMj2{s4=k6Mm7t18k;F+1SXebhjj%_(&yrTo7b0n>e{6N%;X21b6f<;#_im=Hp5Omg> zJT^~J`^=KsD&7ZbFPi!MVbKS?EWJTg=`65gaq0vV)!1EBMs;B|W55_gm!Oa~H|j8^ z>F9U0OaV>57h)=+@Xtgcg=E#p&M|opLwt{q1}E|qT>4DDCBhAS#H(Y3bi;g}LZyn2j}CE%%nB1#4Ogz7iU{T9fWeB+ZkCy52A zLbEnQzm#TH1W&~ zY+6~Dcm@1Bd=3oNy@Iq^Gjijznsbi?8Xm?>OUZ)}1G@5>Ym^=5bgxjRHrqUq69}~N zI5-o8JLQ@+i?=JwyPKyfm>fs(B$zF$Fw_a4r-)2ZCefBUsYx2gdCS-W44DeRtPQ_k zK)s|`8z_7^#VNcdEVjSmvr{7@6-tgOHBL2(4o>Z@aP?>EML3{hJADle_Vl^{!lfV? zl46&Un9*_I{xqANI*La`!K;!YBS@xyfK z1HL%5f{cy`^dYS%B+DTo8;{D7w7;DA4Iw>1a`^N-6WoY`@F>a^vIKPsByMiO2!Z?1 zSQJ(zvxJp?$fn@M#^nPXX&jDbOlgx8M^l)xYpORZF9?s2g(B@I((K*t(oMeBY8H8#N=K7Z5 zhf`NaRejdvw^q*~jKhPBSv#3yF6|(crzt=_3-#py?L(QX{w$S(Rfukje>gxaSs{|A=G;hB9ddc!w&?bgmf*wcYiIVfJTEPY#tIg);_}bl;U~m z3ViY83Q9rtU8~`F{__1I3o7Gzlo967>9O}7{_6801L}nsdLahcU1D$ph(eO-pD&;U z3!wNcq?3ghbupxjv8w^y0wMoHMnQ%#ltHz2K-PYRpTH-opl@j`sjF+NGo(lx@PVpf zIX1V~5B9}F2h=Y3yShUP52$_csXZb`PN^1|5HtZ;uJ|Q116*eQb7&RG^a2{tB1sb# z;6PY|l730R0Z~!WSOz4V5|P9j157ZLjy{^iK^&w>x(T1}84kMi&sZxNjNar|q`5^w z5#xZ)Kl1%WY2^Eh-QBt0U;OW**d*nJA>|252#X}qZ0edi&H)hRfdx|ND@sZl?HB;n z0da<|6#^90H);I2va#iPoPT79?}P68TB+6G8V2)F#(g>Wl8EwW> zbifWUR7=VuN|fbK0ZxBL7F}_T*+ zpegJW??DzR=5`ADSV|r`gJO(mdWCDafBAAoALC0-UEa^$dt_Q~`VIOT=mxeezjqpP z$i~I;HE$>?mU?n5FJaq+luH5>X-2*#-9^=L)z0NIWKWFdpp(L5DlFu;dCGCf|TIG%l>r+>UqB?=N9Wy}cuS zrBdi+-%r1*u$c^Nh+>*YsDGQXvY^=g4x76q{R^ZC4VM*rr=RIxs)c0d7dV!|E56FM zDhX3n2&;m82_ygelZwjJ zLRoS87iFNPigHz+wPa7Gh%JpgSHaiGZb@3U6?suO9ylxJlwhKp%%tSjrAxOaCoRp# z^#9>VY~?K#6}PO6#lKNl<|!by-_mqx9~*m^*a#}_>K=ax%o zevf}sy{*b*tZFT{TFbv&Zn2cZ)=!Ef3qOY#MwqdX#y|V_RSlJu4KuCf=~s9ff4P-& z$uKkkF}6qKb@~Fz$eLTUq6JVCGq6PHKZFW+$B;es8<)_<7u3L&K>7(MNGgUbo=eR} za=SDA^7kSMqGYEf+D8$5m>_zV0zKno4w@IIXAqAwIcDft-5K<3B-eO4c?&0K&k-$4 zr)bY}7Sk`-FLASvZnAz$E!Q7qw0amlBEG#qD;0w~f&F28LsvulG1AfhOq$g@d$?`Z ztTx(k&ZNxAu=;>7Q`HT*My6^#XM9H{NzQH#Nqj+uU>DB;B{&fwkGQZPlu2(eO;n-lzV-{Qa3iPeD#xju7%YC=wSr zNb%&+(kvW3E#bef57-w?68Rz1GkM5l&@vUr>=<)FK`T@#Ug#xVe$_t~l*wO#s*-Oa zfVoIqbK%Y)P_J-beraibjKaeA@h+clv4mwAWP@WPme)w6O7c^bD3xFGGUsS(Jr(xq z3XjKJQ*HJ@+!Kl==KGN)0X!2@BGCgoWK2oQ@JzKfpkzdQWr_t-S0*RC<9f&E$dH`CDI9{8nvUq!YJ7=2ZZ5FJf67zHwFigWA+bXiVW>Zn(7Jp0+mI0DlD zfv-wuOQW`8jN(fp+%u`RRHcLrACJMhw!JyNNM_@-Z+Mgo5_m84M53m|qc8^N6-n^tu&mSKUE;f8js=AZ}fQ{gTkF?wzH<P3iu~J6n8h_gnkLPY7J{RlFKyr+Z_d6v9HT51>d{&ckW{FUp!gr1 z3Z*eA)i+3p)?}U$R8;8DkvY^>ind}OLXD}`>0>;OO~L7-l&JW8J}CL{H}|lZP-VE* zl6e&8?VQJNVGr0Xw^$;S*B<3Vo~eK&AH6epM(K~COG!NK8vfpe{5D85{5}EreU5?J zi8;~qz57e`rGrvTx>CAM`hs+nbT7H0KA`r$wFBtY=^1sefnTYZ#AnHp zHJji8%*KLjL^R(eWzyBs&C+esz0$+d6T~aT$W?n%?JpH)MVF{oqSrlR-cjFG zQ>o9@t`J?7mxCig-fe2fiVjt2m7e2`n%CI8nImUVOyy9|=XVfdScFbQ{~Wbgy3go3 z4yoe%dD14HjEEF|gc~2>zywxc8J&_-hcdW>EFL;ciFD8&+~rg zNV3Nh=wD#}ow1~&Bk6qK`7ZDEdEfWkV~?Hdi|s#iW`9h6)6nt2dmiX$0N=E;Mlgnx znK#81Cq;)tFxwGw3a2s90myuz^F2hndWTW4__u5GQcwnL_U${q&)57r{~Khb_;F?A zu=!Psc>k&4>ZoQ|akIz^g#Q%XdZCHt;kKZjZswK>c)%Vma3a-g-a#?tT?p~}Q$8(S z$M=-;4NIbKAgWbDZ6&yd`LSfNFvv^&n#c3Sxi2EVru?U%>iyHbzAp62=Y3@i$Z%*Wi*+t|uvlT)sfo6j5tmpXcf=(|| zMR1e9cEWd>riE?BnghE90>ZyvZ*-NUdTI8`4jt0j`0tT+fAw13;(D+-K|LrvC@|~0 z1-aIDgdf7X2AeDFQ>Jn(?fas3Pm19Ki5|-9u<;agD<`_N#>bJ@nUqY?y=|Fdx~f?w ztvk2%3Hz0cQPu%dqX<2Lw5MJvTz6ES&(<6lPCT%0WU#fpt-bZ+#fz4zsd=jghQCq- z*I&H*$jCyVrKzL2wVk;)HFohU;z0m{fM}LM5EXb+7##=~34;Yc_{rf;CHOFpqw>1>T+W#R&h=Ji|F<`|4mu) z>176Lesg*q9FNWIV#$KTwGgQudx_#_GlO0 zX0Idtv`MwjKwG^+zQ)ERHVJKE3c{933s@U{G(cs_0Ah}06sH1wAyp_SfXiXut`?PbJ7KgX#q^xIITv*4NK*1AD;yCXVQi*}% znx;txG;f_$M<}7fs>Zo;QRtBMDZfWKLdO;STgHt0PTw)}QqaN|Mi|OY^&eDv@yed` zGqB>~7VX>p-i6~+2XsuOeM*l2t?b&OVvXbvRQ+b_Fgjrs$cgpl+Oq*G9F3i}tgz!M zC7pf}63UZU7v!W;Cou?0&Hs|0gBcm*@g!WvCjGbe{$K_>dhQ2%UGI4K;qvdQJoX*x ztCZLD`0KIz|AODHMkCOJ9)iaT)@~JmdC-<7?5!9eMS|Usn~RRwP+l0b_6TeWUq@go zz@tjz52~($ve-{~KRMVZ3)o$P6$efbIW4D{A`6fQ^KMVMR4nHIA~Z0N=XbS-oU1B9 zo`zxs&<4F8{P*HbCOeZATxowFoR!%bWJOZbOLg8le|Y{)zj||fi`UuMJvP=EA)=h`*+Gp<*Wh*B12z&i*@kqrzNxVz*xEGK+3IT#wYPV8 z!)?v()&{E%#M19bw_AK|zLwUe&VkNWHD+C=>bx}+NMx| z3Ihe-S~$eq@0pAjhAXrU{5(I<*m-3%)iruU-p0D7h_@-&)cm${*ZIAwv$eHtsI9fN zQwd)8OyZy(z2eQ+V#Ju(+>b9+4Qwyu3O-UsfEh+aQe(<>ptsOzZ( z6F(qWi2afcEMTR}My|X`--$n}Bea&Vk1H@HQfK(mwG*hOMdsEVk{nDJaFVZ#MdvAZ zAobVP-Kd(KSCOj+6TteNP={QXQ0S z>!O&$ZQ7%-L$jzY3s=cbYlB(OVnj98%mj8Q#eiySJ9J7F1)p7GpD^;z9uKcr-gi6p z>k)wzQW+I{a44~1V62z#(=BS0s0o5igMHmD2QN2HOkohwyC*?}u1*j1@4F3Ao{pQL}-HmMcb-r!15t}`kG3(6B-ziY(?yIm}soneI1iP_>|~k zp{bXP71%Q{oH3~DUo%=@yy?&gQZrp0F+j-@wl{Qwab~apD6m=Rt5AZk$}kBdtd&M` z`Pkwewb>;ROr~(p%2-_7zJ-xVO=0b8-?9hS5A;H{PAQ{QPUn~V_VS9weB>0`ukH}5 z0@BMd;ce93q9Z%dd7Hg3Q{aeWM12R@fHm47f;hoJ-2X26;j>w4xsbKO9xtA!fCjR> z!d@10NM#YUF_U%UAQVpFeI^8HC^eIPeQa=i-+ki)@u_{U?e-X+;S1t3{w+^;Y}j*y zoKZLGH~O1{v8jEx#Q4FWoL)_iE=+w~yvjMb%o}mRsn?G4d+)9J9;NkN4!`=Q`Yv<; z>`zk+73!xF4lQnu`&M?k+AllKE;w9z*H{;Q1o*x+)Ms zW<$NRzo)0)S>IrqeKDuk<8pbt&TXF*#h!Fi@=$X_`&{qfV4b(sgREnyQ|oE<)(sB! z&b6yLmr|}ewbSREf$AJnkEzW>glIkBCt&o?;$i!KC=X|W;7x%FdGSiS+-CYCW3jPk zVq>wl$*2|c`5v6erBgVi^2q1)X1v8;?001<-03&r&0YEY`)~@ua#(4!)cg^=8;k&i zkxEUWT}kVZ?Va*YxibCg-pNRiDYkvXhsx{FWecXd?Zz~%i=~$wCC&x+O##<%!!yjv z8X06jU}g-+Y$>(c`|QTjH`R%*b2peP%Gmwv*jfPz_HTY`>BK7bLjk{C#c#160=mHh z6ot!x_M?~=uHGO$B!XS%T5LmX2eV5XMEk>9+2KKRl1PHOI1|wSJrgKqP*HDrxm`zFK!sXpX&3h18-V-ww=L< zy_u3MXh$#tu;Ea{6FmUXQ$(~gjRb8ZluyZ&@uXE_ zO|9{^2)3p_&8JcJj6n*7sN$;yJ`>N!8Y1gu^Q2Wp}uVlrO zX}Oc(;jrk!R*$EYq>tP$*7*A+Pv4vz>zsXCD%Q)#h@=*~{9Z}Xw^!`wb8@D(O8u8= zJ|zMK)DQOeVM?3yJRs~|cGAIUyY8x7_j!0FEDZ-a^LV%Q823V>v`eAUl z0HxNe%Eja9=41FbA4^Lr zj$f#@@=O}0LwO0{} z@$w(k>&kO2Phw(K^o|{L>~I7fu4-kVrW13-)YpMq=l~b&6}>#fctM0)a0x@m;nGHY za7v_ZhDB#s*{1XAsNgsCm3~H!HM7yR z27ucHypt%vv?DE^I$cwo>nG(nj?sbj-j3I^y$H5MtqA5e?8?y5l z+t~rtT{qr%Lrfg`*NYQBF2@5m+;HRP<^6@6$8)Qvq0w_w4&H#kbb;X+B*%uF$7@RyGNXL<#W;U~b=};y< zJlWTEuBp$Z8v2aT{=OzK#(lfv>G3YcD9?BGO%BI02bcC|W|7Y(o(`Ogb@eqd7^p&( zy;XfjV?YF_@z^ibu0&eQz~=$c0Ko}b4~!PiOwL?2qrfu4=77p!{z!XkYdc;vxDoEG zL;^Y;**o-Tq$B&qEz=6_7K9gsSkxw>GvVFRS`eqH=J;dJVbGttX#CNF>t6K{~Q~LU}9?%boq+ z_6gY6lT2pxW6MBTg8xWNtUL*C9NNGt zWr+wT&XvKxsuc=>NS@3FaFMNTsT>eB5T8{An+%IY>`IL zHQJw%c!aCg5Q_C6;=DMzurS&^G}O%pk8ych)HsyPCy}ZnG=F{}IkYGBPCSx04l*FN zf)v3`%f8f98~!Xr?12o~QV$?0DeIx~Is3{X26Qr5&;VGN2x9TdM@2Nk)$-T{dE66o z`*2t)_(^<}gH>P>`MFgow}FHMho^)ttU^QiY4vStM|KsNDp(#;cX=Z}a|C6`j(_4z zI(<{ane4*3a|^p~!j7Yy_lNi;t#l3>gb7P3eIqa@iLssYgso%a?_VR}adq?YS=e`w z_6(I2fm{UA-DyXb{tCW< zyj}c8fL}g?}#wyHhyn(gfT+s;n3 zVnnjf#q-^GYZjlEGO{YRb(T})}dig z4~~N0On}#eTf!`2+n;H;&5}iD$b7sOJDQvU>`_FR9r=+F+@z%(0FU4cP@fW+_SQ_M zwS6_vl1T(x0?>&ow7SVOFA3@icF#~Kl*p$OC^!nuDv%A~IUV>^<*Q8IfPHLQ(g9XFKC9BgPv>Mh>07<Aac>wh%2T})_=7%WQs^Cr~hpMU}2Ox9TVzL z)Ng~gwqRbc*s_^096`1;<_>vKCkRWzMT@gw7!-iK+2CWx;{K?F_%y2n-qyB{)HifD zt+=8eZK&^RDu1=D)jNI5dz|V27ru<=fO}|B~xGi-fuweP6I`d&P9J_{(EXU;wgVT>@~kP{~NFw=M+q_ z{^G=Htkp&E`KTS=bZB6O!|_I^ zL%jvmCWc*kE435S7O-qc`tWOjYtN)CfC^*N2K#~?G51smz7Y9Ok%2M`RC;EE9CN`9 z!sQ5Yg<54QIhZ9V6Qw&Fz2V0Cuv4{-)O+e4Ju@5#oj#+wW6J5Qb9z-nV?&_6wchO> zX>Q-`cMm6fJ)YKnPknPB-R$p8r`wy$*I)1$=3mbY_s)&VUvhk%HGXb( zyiq-eyPtL34!Xx%gZX*Kn*-GaSHrz+zdtXXL7?v#00MfZ>8>TLXIjRP=pu|nhk9Kc zZX4XGM>RAwwb!?LJ-E}rtlvEp^5a&$?zZlZc73aX=8va4!^g&rrWSvCEE-8PIFr#v zS9-$VmQ1VOu&d7HQm(6R)aT=!q76?=bEn*ChualvOAodqMy{j2@pNz4-2|Uo!)U-g z01iWL$;`o<;9Pd)YKvzL(vc+!*<={hpT zBQ@}~j?j$QwM8piQhJhOk#L>!-U9zhq^WEWe0~$Xf~E~igXnG`^j5}iLKd*3B*&Y-cO41{MjVOC zXzu_{4F@QKPDE%vFDcA`;f0cFzJ#4!YniL9l8x!4k{ZTkC0ZM=JmyIkKfpto06G!8 z1NRg_C8#q{TwjN32NVGfIT(K6!;4u1k}Gk6ZC=#LK8!tQmG9*I0X*`{;H9_ zQ(+h(kSg>)4;?fP!hNagQzL_kMA8{Nz3a%`cON-D)fP?kCCVF-P8JKkTzbn}8jNW~ z$C{5n{&*|O1uM1%id)30qoidsJGhl+NGZO5?nxqbkdQ>ZAoo|P-(lx3P02O6t7b5~ z^yhM9>GxF^W64<1G*_k8Rew)@)7(gZB^gUT){~5V)p(nKPd`dpW%~E{?=8V8xo_W@ zR15|(`jpw;KT3PHZ!)f}XY?iW`u46MVAP9q0h$8PHrvnQ_&Az*bNZN7o!B(z&=vgQ z+-37o96X4oGW+(a6>)4NjEB)BwTLg^~?Xa3gjuSW@f7D zgun!mVA)YDCZ4TT9DtaDE~gBU=}g>d3AC{Ts{je2Q-p`tnuj0`E+3mwO>JFWZL|q= zwH5Nq=JR;7(bmO4g0?P5(n07U`Z~HE4eO24k2s8Y&s~lgsn{d?)GKg&%f2i5yvSwfywf3QsX?rn zt0O1E8MH)Z;nHO{v6v=j(2G9uRMrtil0(B-qmkD@0XBd1O;RcJV5aAktNs;ya_JLA zd_lMdawNl$t&DfvwRbs!@|$J5Kxd6a&3rNgSOr8&qVXxPX>5M2>S6)ci0)7eVA@S( zIQP>@gfNI>Ujc2_o$h(FME7m1*fta>3+<5*Du&EGCn0{QSKHo`?k;aG@QWYX;o1jyEu~JCZU^EH|#`aW#pMb@2u&k{-4?f3j1a&R* zt)cE7T*}9W77Vk1fI~VGifqg@%wI)2J>5e|>Bw7fMpPMeXCu##O-MPm?T7rsCq5i2 zKZV!MQ*liT^L-;D9UXXFn49a0&do)OJ6fETe5Ye18tszri2=njL7V)?KA4v6gMH}3 z?1a5ogrLvz1S-9CazJ5vRo9+9U3{#v3wVTS(-Px$siX|mB_DR}N$Wm#jFiOg4W$Ic z0wZr%|0T5~eb5wbJ3a1){O`hJbN%2<@>v$wcuDlM6>(=4&L156bt%L_wGJOJdIVQ@ z;(oN`=oVTGA2Z^|WCn3xI(~7z6npx3jGm*wr#=-xz@oh0z~uek!PW;KYz?XoiP)jV z{7;|_Ho?B3^;qpNLE>I1v@2d}Rwp%%9b0W^PA~mzYikMK=8^}0?VjgRV+9pKOkW$$ z${D;+y3%=&Uyxa6B!7lDk?kJ%l+eA3h7KJe2*0?!Wh#DuO536*EQ}yWbQh4b@= z#?yzIoA=g-0>0tI$i7kkH;}!0VI+2b9!?E)D?u=kMVuH}cmm&^KY#nKx2@pY?ah0e zn}-v|s2^D*s-J$vs#Qtr3!E4j5AEXzZ6UVEwpUg6j5q@!jB`^9{Q%`Z9RWyBM?fa+KXa7h_(k`Dyu&R6{*ACL5x6v=3teAHAPf*@Gv2@VJsMEyHK({!kzJo zBhuk4H02PS9_8;0d4muH%)ANVAm|-Zy9NiB2M2d4@aWOuTyA(YogN!X-I^MLgbOxR z-h5Aox8W|thMQ6UT@Buj_kavzvF)P^ zL*7LR7kD&Pesx|ZDYq(tn(d>{oI|RvmmJ7AU!A5`+w-MH`=*|c8;Pc-gb{y!3S*;N z-;@~=sjIqL7~zgh$tkfK;tVa}$JHAD0YT*LkFt07{@+MnOrJDM6XMq9>?EcAqYL06OOej~Xoa5S~Q z{QE^C|CC{7($jrG=lI=6eb-xi&M6va346`~stHe7Di}tFfJ~NAR@M-P|L|{$#^SN` z+8VYE3UL%NmlBC!Fp;>FNv~ca-00G(mT2g;DnQC)W&jSp6yJcrIF%8lon)lYKP6QV zihBjZsaB`@OQxyJ(q*PMPfiPc-3QH_{t9?42VvTP?bSos9bP_1!~2q@Qu4ixAL%cZ z`itHNdJ2V}i~An!Dik2@kl*bSos~JU;X!2$F#HUrXrNyq_`5xL7r=?b>Lt5?7n$i(RKq7rGvui}j&_ne*=rj(uXHycrL~pe2!Jvv(j7 zgF6kDD%A{Dai^iGa%Fl0fDGBu7eFDZimvBAr*v&CX&@^Fqf^Zjj$kM_PeE9q1nUF% zh=~17l@cG`}TaJW}7bAWxF12^^h|nSbhtKYD-*l6E&)Hpv`=a9AN0bQ+17y@WwrNWR z%!vUkY__)->zS%>CY9;^*mKG9Kd2)`=2I)efxVh8tsqpoWXUvu%R(2T4nR95c!VEx zhU{G^aD@z0ivaQg!B~_1`Ti*rx(BsP1QWD(nygpMHD(Go|E|ywQu$fryt$E5?Z1ZB zCow`$YqJpUkhEck!|%%syq#A%H=}{J`ufDp-R*oir{8TZKd*_SJpWdHje<&0vKp-A zLusTA>S=5ogoA2_qgn}2v}H}5=?fr;ShO{4PH4gspHAftsezG7E`&vde9*?axwf=s z!j9uuh3y7^p`aNInXqdwsgQ{=)0R4N>{jkKmF*KUa)c3@ zh-c0@trL(2#A4A$BR!WZb&W6%@DaY-;ZdQHI7(Z5As$bJd_Elce4zy2_*?L%#UDz% z^W;Tj5jc5KJt=u55BK_fy`e;79kamJH6}vxKHgBr9Ex=f@xOfF!~-Yr_WWfdVINURjy*g`bxUk54f%CDJHH{mb0`AFe|&m)21bU?MOzrSifef{kM%IMq~` zI~cW)F*RN<%9cpp2i9Ngw|#_4!#vCDhdb2XhGy6C=E%na%Kgt!=_Br*8w?F();U1b z{ppqlxBH1uzsn6Bq_HvcG*n;0L~C}rT?q{%!c}*5pfF?(#F8wnh>C-RG{B$peJ;1T zMb)L={KMcflw7p0U3)B2l<#IN*{GZ8 z9GN_v6J1?3i91WDr^|M>m)A&=6ly$_zx4XZkx3b)xW(~+x^Y+>-8)0PAV}_{m3q)T zdGY>Jr|!R~a>6MeSiExl_?5~Y+{D`R6E}vt$N;{Gwcp=?JAft}#&p-3ihz8?8RW4s za3SOE)5*N7Aq#5{MBU~BN<$>0BOgje@s9{4OUos?4y#)mg(1$4M1u_Hild*R80klf_w){r(D|(CR89>M3z+tuql=oR@BOpSIJkX0DQ zac8_E<%>^tif!C9OKFr+K?%Y1Qs4lj3=_R6p*Ik+10f_Np$A8^H_R)2b=<)a`rkcq z+jwL1z!3NT<@M$Ux*O{nRP?rq@kTe!;r;q$emFGH(ok6|963rzl@*_~@~b8%!!Fl% zMQSufDDL~~8%m{;?B=IMtux^jM81B?jX!>w!ERH~iYnuU{Iz{=0*8lxoGS|hgEXP5 zkQ{3LywIhX#Y)Q%T))&EAbQkU`=4}MqzNRI$5djtCHhSO+|9BhZaI{cE<+Y;MnVDCVKOskI(Il~Uca7OCB5Ne z6E@?D?oA3q-5ZvGf0gc?0fG5J^zTeQ^Zhh%Se+^51TFe37Ob7>1d+b>*JOLmpF4T( zrzZOPCi-p>k=Ha~UyQUD13iO-J%PXMo9OMGc%?RKQNKoHGzdqnR19rw5N7EBv3D>m zdA$VQ!D^O;r|ZS0`iJwcb;-4N) z4T2m)C4!PMLw8It6td%;ENALXBO~7B1L*_HUi;vW8HzEfGyI&X{Xo9qvLZEI~bqV3jhMx;rw1JRJ) zvAWFk6_ElP-f%WPV))uT9n-0VYJ#*CA1R()h@U(>-|qK@4_$XU4mSw(G|gw&OIqkM zs1Z1ooq_)CwM>3cj=YlHH-E`k&U~Q0K3VVm04I}E3zI3_1|O*R;_DxHUVC-`N!2s` zqoNVE-HN^<)@6Y8K>S6p!BZ@N>lg>ysit-w9a}gHvs^TJr7DEw;X_IgRlj;&D#|iJ zBARJTJoiNo`+^ZBeylc*535pGygmb6fR)jeBd^RL3LPTD`BE^5ijnY(!XT9gVFn|_ zBEfGpVhNVZYeos%)1OyMahV{j3*pO13|Lwvh-zL_SpO1~!cg9BQ zBjmS{`jJ>?{U{zIF|jFz@Ch-m3yzT3b)vL|OSUm_QcY5!(Kc8J3~)%a zO5YEQPS6+Z*>_~DWz-nGUYPM+Jx1_TzU%KEcLw{WjEtFnDxZE{i{3T6p@~uiWV4D) zvSmkDBFUL8TLJ~7DX6UNuqUc}tXcS`-VF%eO?iV9D=S+~EdZ6^ar@#YkHn84V_40O zdxaaHc=RXn_3e#Rr5{od7Yfg3RO#cv+4r*s*ZXI&(5m#qi+Sx7+j~;oORTcpL5~`WnsL(LObgQ@1xGgRQqZRH ztV;P^3-S4H=6B7<7f#e1&25_SWehJ$7zQ=sc6! zpq`n2arj#;QU8bA5|UK&=(O1zXSsmHC6+^86*4oQ8 z7A4GRQ(LNHTrMR~EMKnWj)2Sw&DRp3ZrRKioa(f8Y#?mTGMnem(41|gPo*bdIq%M7 z3L;g#l~|O^a#%5)8-^Iqy9U~rx6t0pl(LwCqNa5s1E(rYa~0CQ1#uzR@5R`m%*buh zjc0qJPTh20IB{^!f6vC@wtd&FudXgj!@llhqA{Ir>~jxB@y0IY1*7i2JQOPy zV-F#a_hBA9jBgeY6TGU30%6X8!Um34YqenJGJyB6A0&@z|1_?>ri;0*FRfW0#)T4u+T4Yy-3&m7UUgR4zNMA3~EypXYq^jJVR_Qye z>{Z-d0e+BbWfd-$exi}U*ZJJzlJe?y|MzxU3vu~bK1OulQ?5ypPP`cN-$K^;Ld`un!E8ZrDi~$Wm#Ze z!DUuO@76>f~`%e*H2zPl$@r$CcVF9 zr1jRh!*}0(_=r9Y9b!B=dlc9jtm}{BYImYTiI>fQ2E z{#|+D{`)BS*`2V_$nS`91E_(&_A19gu9<`K{04dcl00wQZvp-WHP5`cVlnw z$8RzVB`FeiH*h;3G=Ai0PHo0+_>%Em)c8|o?1qh(95}*vX^|`F@3ImjQCdiC0wiJV zhVL3*x*=A=fpTozKo6Ep=}39lUnCL9a+_DXpz1(}aEE!Un|I2(X&~+K_vgFJ(Z~~HS&CR6cIX$qoe*^ zZEd^!2v9&U6Ia61b1v( zuPCz;9a+)Hp^bsta@i7C$33lcilhnL#Hv-@aJ=g*3%?G;CRVMv3KJ>!l}(eaeTp1X zK*@VUsgAI03VVMk$KeZu-<^0Z9=i`;I3uJvcj55viSG^;`E=nYEk1Ge6~*n>=M7lc z=nAcWeBi?2y`%T-9sT=(3+-~j4~_0Ud|{ycje)=Cfn8gjGPJEF{%CL%be$>VW!+>L zDHA)S1nJXd%{5jNebig*;uv}Ib1!!VHcvHQEKN5-Sg7M~Iv5^(g$?}s zqkEpc(Q!lD`jm2_`^=wDVAU66<{_N47o}*d+ zzSXK_Hg6P;On43)@Jt*T{IXTc(!dx+omw~YZY~wLM?+S^$vmS=uG2q#=`NcGGY>WF4X!HKhfIpg1BON z-v0ZBUJXQhaRt!xMoq^H4O!%BQBJGgd#YdHQDWgjAsR%q;ICH&LEK8XWR5Q06+Xc- zl^L21manMGPH$1?8wBEu1_pd7K@Z^a?2sqWW2(!)scPoG8?)a>?Sl746UbJ#fmiz! z5L=4B3aJyqrv!mi^(Bmt-#*^ZGT`dy=s542oAd2zoF5yTZ+v!}Z(;n_UE>XP&Hr(z zwSCo`gWb-7f*3EP3%36N4KoVm+esof^`Pb^t{EZI{`rbH5y)q)C76f-hF!3 zN5F@m{?Q3cJSbmTjr^M9fsn`O$iDR1g_9Qn72BZ$2)It7ZaVB_7f&wkJOb4|==tA+ zK4>e|HRj*{vOW56C>A`=zO3>oK9bnEU&TgWDCBFbu8l^zt%)?-;sLT|iF4v`9FX17 zLtN;fy3ziNya9ppYcR@=)PYA|2SaX6m2Y`d6V) z+Sm*k9Y8!4s*pca4Um7OS`t|0NiMDoFoO%ELc`}L5fMVwLmk6h>0q{U2)%H#(IIl*UT-M7Y z_$1!tarPchV?2WLAyZR_Cera(&ooZQx{!=-veh%@U@2Hbf*#zv?#^bqI5~NAHaR{xkxQ@ZgZ$*=W{0uPZn6NEuaK7Ye6A?%& z0PTZ+Z!PpHYl<@VCM=iC;LLHgRwe?OAoLZXZnE?$ZaGp0(Aw8w}2#ZOvBgY`UrBlzVpr#4%XjN|`0nGfCsO9CLy zt|kN4)x#R#EQ1EQIkkAG+}g89Pt;oC(~F=5MtRl1e;sn&-ddIql-b%|UftAVW}9 zC_9DSW^;7QT*?z@3X_MYFxDx+oAiuagXbX2!M$}$WkWr7j#a(ly+~-@++gHUP$%9v zG9HWtZ?2U=t^@o&bWdC8x;uWw+sYrDd#rH=@zM<~fc}_0;|E(mvm^iE+D=0&gyl)3 zFu;=9J)UF|esHf&@WF+h5UH@oKF>6?^sh4zVd$^{cK-M?UK{}iF=3M zKh)Q^TsQQJ*Y9sOF>^Ze)GD-X#=mhO8J4#dxr&l3HMrIM#$_9{Dl>1Yzk{?Xw(UXq z`L#2c*MMUuI};j&1sY3?(>SI6#@pC@;`%}~nP2Q`I@;MBDL)AOKz?K){odxNXP}Ub z7W18jCU^Y>5jaY=6t!MyL3Bp&FS(wc<}EEeOGMx@Tfj~(Z^+g68F`48a&ef_fmMJk zQ$pWO$Y-Czm7Ayq2WtBn!m`R_YZ~!lvR0D_@EqA^sC}-0Z#jtTu#I%AIbg|0rSdbr zunB}jF^_h9m^F>J_ydeGYagLfhl~zvyfE3!!0!cOnhL|*45%QI9ECztPEIQhJnHMtv+}G{t=x=THc9fPAW>5Hy9f>+ubJt+w zSbg8woH3R9)>p%E)Zgy!_BJ;4ccU*kM+UrR1N6O5`eIF#_(ISXiGx6lYt1ms=oko( zD#jOI6;1X8RG=;9-yL0;J@!RwV8;>j5RKjxUra_H4fM4220F*bPoR7-N0?wC{An() zQ8QW!f#hZLWXcU$;?AyxxD_!XoxVcCp+$!(+Ey*5)64Sr6xtCmmqy!CmBSrteS}$W zJ>=f7Cb@S=Kf+wN5b;VVdhXC=nxWMIf*AEbeb|@F`3@^%DF?y8MisLsL>21~xi^C% z=W|7Q=r32^jNOh)=#yTqnvYc)K~-(kf@V)uFjqufoa*&;J?M4_L)Cb>e?@(1UK7pi zbUj*nO<1c+L_x`Jry?xukgOLEwbT}cnK0Uhc(}A$?P|NUXqtIyz7c($`|OU1hLNr4R7w=*XM?@}0 zsD}XP2E_wm?O7L`i2pPHnYUm5V6@YTA&4{^LIpVD#4l3bLpB|(KyhqMkqFpE35p{$ zcUlx4pCGFaJEc}lvxwyQlA*L^BfSQ;Y51d;mrN7jDYb5zh^#fuyf_`F(gamS{Nm0B z@=EVgdftfHmRe$rDQEs_Yiv{Qex#^GI}qrn3P|I7K|R$yH*?_JW68a0>DY(m=&tx? z`t#-GuD!{}&K;PU``Cx&^=^)&EdkM|$hAaJfcOmHG7N~Fa1&Han;V_*3z+Z=l+YJ^ zTdDxc-tqLUqsSIFfGWM@xK}mkoyH0N2klWh(SV@2idVFRc{L~NdW7zM(;Eq*{o54M2ydNwrnfvbh zp!dwrORvv*&+J)3{vf1DsQ=)eGgJBwxO;M3r{J%MZ*+Q zu@jP!zUHy9=KkiT^ zgpY{77d+G`gj(*T;p5I0emxleLe$^Xv~OQi6DyWAW4vrMr?*DZ*ZCc$5ECv|Q0R>r zZZPaCdAM-Q_x5A^dsak5y>&P{jHRMz*N`{(Pmb|aTrV%JmjtA|woZi{VG;sd&dIrL zZ%`gV^n5!uwNbRP0rYJW{&e(h8jv43gwtcjM*kq1L>7|Db?=|er@fz>-JdP5&pymh zsX-vOvG+II2Ev)lNKDCVcwi6C*?*v|4oBYUz*^E)(0+Q_u_MK`!pahCIB7K!MyX%) zLe?u}X?#Ru+*I(toID2}+B!IEzE3V~ASF(qp%IkjyCwsTH~V`GqbKf(hYh3esBYWU zb+F5Y!w|n3;xF(E=O-Fv*S(tWc7jqHrziPT|CSb>7{PD55mOpCg6T9?V<@rCp z>jGRs+LNF?u{3-3~0mQRPa8`{2}$KJqp0b&;cm{?PX_ zS>?azYIG`(@;K#QUNaC`dRyo7NK{|`W5d6<>vz7Q+{k)Vy{XRjcC{z+d%L@!>#q(c z=DI7~g7xfmy%5KM+(#A>lG_I`EV9a=hm}H9`#=O1wCa7P-G^gm+~uzyaU1S4kO|tq zy|VpwQ%h4Z^WJw(p1l`4r8>6EK?Vvz9f9B_UmJZWCtlQIcI1Y_r7jv!HQEgboLg-TegYMK{~i3~Wz-n@Nxlf3~+d9B%$I2rCiBZ{%RJDhPsy zu|QcMG6_VhbX;YY(=*GGOj^A$T;BZiCMWAMvaYG^fu%%CJ3c+5*uCJS^04i%wr^Ce zYD>PXP3=!E07kZP`SP|D+f~^&Y*{U6Y-g||%zpAjksbPhnB}#dup-UAadd71`TSZM z(s|@pj=jSly~k}O1AF(xfy`2%0cu%8Gc17SO~cUM?&)a1u966>s(E`LX+cxLjd)?J zLH0o4#5Rr6<`QwIz`hngcwheJ)2EkC!RM#I?MH;$!|%!!%gKS}CR&CpUE1(v(vY^m z3-=S&ay~jRI60_36o`n@61eQ7ED`POxa@TPRQoRsMxuj*(Z;%Sew_B7ZFJ*X)5-R8 zjg5`x+GN(q<^BPqo`8%iNC-Hw=$^nLvD(KwW>d$|eb1O{jvw4RbiiB$pyJR-Z(_K< zZgtKWNe{QSWV#WtI$gMlkfB$duJ0Wi?dzDXMVQ(v5PCmu0up*3NWYETw7K?nP${{1 zf8@?ce@nE6d#`A)raXg_r_;S>Yx(ztuzStjsWsa&giS|4uWfAawb~`XwKnr&ZHsTr z=eJ~FtZmLr)U>zdj)}8^sc!1~-SIbhvva)dx@+8VG2J^n+?)SF?%0i8&y1N8sY$5` zj9#0p!1*A!M>|qkyow7+I6>Op^-<_{t}UL+t;y8(`&Es3xfIHa;1O( z#7T3s9>~0~@S$OCWWzw#D979SAN=XPdw=@D{`a1|e4*vt?{2wpSz9WoH8M_#wuCSN zEciM^9sW=`P6m(MKCu2^|J(G>e`Vs9h5Drf7cQUF7pc8M14mF_fpz2uw_j!8_9Hrk!fpod&0Zc-3A zn#HC_+H{srr1*qK55`A+wZn_OA)7U%989d`K7>qL_m6i31{$5?nSeVO>fg1i8})&G zkYwip;wSoqQ{l1p2`sVN-B2gC;c439sSUXx69jaeP1LL{Z#*u=1K!MJy{I^7e zQDzygQ#iF(bea-P^@!f8Rz-sq8)7&CbA&fBJtReo7oRV~NoSf^tc6V&!At;8z+-cl zfw5JN%a?8J0sScC&+zcts34-bC0fX4&b{QQb`1`7ROoPKJ;)s()@r18D)B(WfsU-L z8L$RI#Kd_pQ7KuEHExR5tMMqvqnSmgX-(7^|Ij2H$&ygR-g|lFK;&SFjBomnU=o*$ zvB5$xh|s|YMFEHKZSTXKc2PEo1}asN>@oiI)8p#gjpx*dHG}cS%J{Q_l>-$@>o6K# zXr@WWBrAT|xSeb$*o#3(&V<7xbXoY6u@njJ0x`@?i^5?YGs&tYDf2U31_iIc+nK?o z;FFn`9Mj$PZQevQ9*ZWB1Nl1H?B!pOmz-k4E=XW$JODsa1&Rmr$?NtHcH_H=*4Bi# zwf?6AEd`^Cl|#E0z$90p1c{&FR{GjFaM{QJ>qG(=#VkUxmX zB_$3(Bi`Z-wX<+k#>J9v5U>oc2yX(_B#i=xrNO3$H+vK5gjbnj@gt52DN~qw!~R^7 z@^y9wDw^6RTBk1nQl%Z&ZMSUekk{w|L%cOH)rj<~da)W~uy;&3guXs{jgD;T39}J^ zC)u&fwrx6qg>7>Pv4zMO{IfvdX#|CR#lAsn01D#%`8uR~i~-CaRjDn&ySMq$CVWt> zv@y}^=M87NAgx|?vn2$ftb)g0>n^Wu5z%DOim#Pq#hPXZOi1Q6W|@ii z*S~*zq*Kt6w6y&4&8-(>@6N{Fx$_+sim`WPW7lesR)ZRZoTADpK08rF3G$VAN3eTf z=hS<s*y&R96aLw( zD7NB&fjL)vmI~VzL-yL?J^Mz=o0-M^6T#!7d(IJbSa881yl*kH>w0%;;(A_F+lAM$ z0^voL%!1qJJ)fy9F@q?P#P<3!I!*=pKP+ili%3}@MO0EL03kq?p$O?KM_&zN^mU$< zI+3~oam&i$wtuv-3MdJG2l21GIj;P*zouoBF)^fgUdFcC=m}USY5f3a?x3j_ zX+5YO$_iy5u0ThWKoWqTfnFw)rt2PVZH zh&hO5ITl(8J2%~Jf6XFiQpKFD%-ZllGvR_$>oNcw;<4b1j07+31IoD;Okyz zuB{<;vjvaFCO0p=fUN>nlS8)z7_@{pF#qiQ~pSzv$wYsZfKOw5H2Ozuf0_e>s` zoAe@0AetjOV$N_lzzZ^~O-eH5 zh%d-FF*Xx45)q?*sNRSqjNr`JgmZcFKxl3v6OSL7pO$7HG)DH0g%auRP^cSq%f|MO z7*2KL!CgJsgJTojT?-30rP!IRD?v0Bo7=K&AqYEZDku(gjrajt=b5<*c2Yad0;=K4 za-iu7p#(w=NMfeK+5+<1r`u`V8;N({-qcD`1+ZW-|1Gg#+;F-(KC*!9=k2ek*GWh7 z+#@;1jQT3*ay#20&Xh9_+m07az<2C{BnDGGnJ9#YY*O8IZ~T=*6Y!tqXX2x&-StM@ zPp0;uO4v=a^K$MtUKzi)M~)^22Yz;9aORl20e#TBUCSbEmK}n5Ck(9kY2*>zOA4T~ z0{{joNf!M8n0I(c$!TqJV+%|L$p0{){RAMoSgU}f0e#C*i9rzs(&+XGqG*B9=6h`C z90h(O56B5hy8;~px(i7qjiRpfaBdiW`0XjUEb%RK=&#E+a9Z#wpl-E&r$y!7)V`4fvVi75X5u3`J|(7v+C3>}epAl8|0dZqppv zq_FywUfirS4I<+O)xja$>MTrP(b4NVkTxp~&~8gKl8!{u2c#9%*3pfMto<0$zLu`8 z-lpEJ_odTnMK@G!hxY>y<955bTjEK;}Mb#Dg;>+!l-g27Ta#wL-W~eY-Ap>)o(a!E;-LY+&@1W&91}VHX9#- z8SL!BlIzS#nK{Z$qAgGX%%YwUUe;I4^>uS)DTm@TMa;0vkq7sHTn0)m)^)|@2;+Qk z%GGP9RD@K!h8lHiSY0`0ms>=YSLT=^QkO_yeI=}wK;^gj%5T=~uiCf^ zZ4pS}rxvTS?OIfhxEpMlrGkRp4+Q8gv0N9q3pCV#AXw~Lz(2bTWKhIZK65n+wmO%T zBPsFmHfvW1qqD44fz4Ee*l4BEsNr$67E;P)m8J@S)LzR7Vh?VnZ>e!Il~@_t*sOIe z{T8-Wt)~}7Z7|@_owg)c#FZ*y#^%O`RW=*aItCcK8ifvE_so^xcS3*(i-4<i>I?Epd;7elp;YWKl&X#H@0hPagl&B;2r*ufJVo&cic&{J%}U`|i8nJ^6af zpIyPJ6{902XNwpi$HT+7-PRJi!ZE)RQg40hTia!X(VqRAI*bctdL$;>_R}1ar>d5k z-ymixqj?w07yNA&Gn;{Y#47sshO3>hTjy%~hJ9IiY62#w|hDSy=h6Xxj*Je8ghSE6G9s3;4jqq(=Q;Vw9 zSWj9(je^My`ngoBwJa7T<~Ri>`Bv;($5$|umgf)@xo{lk${U3OhneOx*4SVLFMNi$ z9&NqTXg=<*US<}d(0r^lA+7G2cAK*$_2l?^tKf6sAC^jsR z>^UWCdu+({H2#~cnIBO8B|Vp%pwynM{r((?z%cgwc_9S34MZ~3?01p@LB4BJP}R6- z|7?<#rS*lNZY_LuAFgVBVF%cKwRH^gPRM(^{VL^YgSH12JP4N*GcGaj5{*?z>!Y1i zS0~n07u({Yu&)i3{X%iyEuRuI`L;Z}zt)Bv+ih(=e(@I7EC7aWNq2=Cz_#FYkapGT zGqNJFc3>9BsA3i01^Sl;Or$0waXtrjVXqu&!mXNTr2-&dU@bw0G3=nf(m|6B=}S?n zga%vwC!RA+m9Eucxqot4=|!x0P(`Krm2D>@iR?ui)MnUea1~tQ3er{jbGh;w75J)LHi#18S86> zUm!Z5GQCn!*2-`sA)J>-7Ys;n#=_`j-Wu_To8WkueLPt~oulIo3{Iv zH)$o#xIgT223>Vgm#@x~_SDrkM%~V!(-l^VA2{97W{-SO*IN1D#Qxiz{|o`4by4Vq z)9++{@~iqfuWH9fbk=TE83a0j>Q-t7AwlVM@Es4o1YP%a5Sn4vRKZ)yUsiMHxoWj7nZFe&cPB5W8)D6N z?|Z0GsPw z3LjZX%VG>A9g14Dv#H`dRT^`%4KZEZfgjtX}Rsxh)a5 zNOUJHdSU_U#S-D7@u$S7*PBtREe-3aiLFqk1j%Z0n{b+gEHyNv)Fn;0CZc~z_}nOQ z1Z;E=kp#W;erEk)m|X4u{uIse`ah*JxAia+JO5J&Z8M?W#87LsUn(!vynE4h5o=5X zXJH)(S4u+(){ulp6n>VJhr+TnYWqfQ7oxpSD(ax@7YX*3P2*L?SC96a_4Q`|=&Mow zcTKx7^>d9oU>tb%-j1fG4um?@t>^bf&NeljjqJ^@K;<`e>QH%(McN@)$P?l1-99AO zjCxxu`$I?8zCmBflCIlbr9sRvK?de$k!oSeluzo+-)gQrgI znNA|bgcCMeL;XJ1j@PlTdd(V+ifzJ7IyOgzPFUrqq_5zl6@J?BXM*IvGU|03bq$%I zuija|gh#-iX{a;Y-chBl{n4|C0T@|m>~}XD^CDTaXSShXw!S6k@*Zn&_j|j&*ZKe} z$h0KUtmBB|1muEgB*H?Uz1RTI2dEZcAKvMXhJawJ!Ykly|S}CX?W*E+y!@6Jk26T2y%+VI(*3`5%(alW$5{ruOpNb8QgK*Ql zl`}WxLaGE3KNRZ{^Hwf*a-V2^&=cTBQIDVzom)_69@#OwAeC^a5L&LA9~zpk$t`Fa z8!)VXbLgbeW4FSVz!PCR z7AGK5Gr)$NH;SZ`lF&}9S9H`@+MqU}F-G+0Mg*gS1oG2KZzhG*I9a%F!%!%IPu(G* z0JA|P?@uH$_TLLz(MPCc0Ax&|@-YssyBdmw`}8|5sqd;MaYVnIuBw4Oo26YpNK?7k z8JI*bs~&yu!QR_$yB`H)ibnLd+j<{-P(AtNlU)}tqPDI6_x6hyyPkYf%N2d%p<;$~ zM4y8nG7%26-~MSgIVG-_AyKCY1k+9B!;d}pgn_At)&2UIX~wQc*5&w5yy0vb+J9PY zK5+**{T=T=tUo;5GQd1-1D`vK)Hui;hV@a+?!p`tqli#FM51UivY1Q@o?9OfLT8TbN% z3GeyyK6RF+Qg}{p*Dnp_4OE2moj>nQ!1yTN@g~$h>r1RJ`oDMot2~MrOW@l%@3@JoV&r!p&$%uZnF{8HZ zWmCu*N>gM&AgD-=FRVx{h+$=3o_|ijtFL(Oi6@?W;sbJ~*xrf+M0|RyXiZEV*xvn^ z9RC59=f$Vg9KQU-b03!vz9T<+OrB*9^}Z(U2w`V4W8jYX!GJfF3a02uL)hOo{NN^J zsEo>FGI?WZ2T{AcIWt4G$uK@Uqa{5PmK4hI31H5c{RHdW7Nd4lH&U1lItX^k{id~! zP7q0D8p}H?9#67y&<#2Q=zV1N5DUpmOofXI><-d9F&9EDO{4J`?9#_#^T-9VfC{O! zUaF5zpJQaux#?K)C=(1H9XzwXUS?C&5YGb#_6(>pD^hpLUF!54sTr@8sH4`QU?DUt z>(N~YVzW=p#tt=%ykR63KOdhHmaIJ|rKw~53zAn$l8e;2onk+pqtR`wU*?T}LeTgt|cAavW(CreK~ z6Ou?#}CB8EU;6S@IxP8qqXtp{f+S9J$_ZRd<~ zT)Kq9Pjp1IcdkU*VTJ?PC5Hy#p#)NqO=(#gj!JkeH`yF5v6|aamTLrMu1JU}U|}fJ zdjK7P`v)?S+)5VnsZ&-5^XC2cG_*7hxf>GYD~W~~)zWa!ZJth#7CGK``|T*f^}awn z{$*!fL-V^DSc{AIRuZ|fA7fXc6hFrLeBO#iS8K(`DBE5rYUs5Q_!S$i_WTowgfave zOl%56Y6o5+L*+Cquw#6)yipvQBTHI=ptfPc^uZNtpZ1R|G#Pn9NNR5QDLdE@fs zoHGAsb>ALeS5>CH*IMVAah zpRegTXYaMvUYB>h_w}x|>BAn!hwpjY4*d@+J^DnAdcW(%pS&1^#AD`pBB4Hv*G&i? zfKMNI%{Ca{E*u<_3$k78uOlOZ=)ys~wCOf}&6ByAz_RU=_^k6+(`ls+0!O|Jj!nNi zz>sGoWFuIw%3%wUlOTb`WSNS3?uu$>#eQ@a)pZx4$rh}Sv=Bp4(%XiLa!FT(yTDSz--685vP?oX)fZPnOsUF5Ef{HNT36*Wiv5Yx;Hfi)dbxnOT^J$FJxK(AX zJS#{8O;Vq&Pp0ChHCEfXiNqd>JJwk`AaeuEry>nrP7{eWa!VbLwu|C0d?1}v2b2ox zpX`O_O6#H@HK_h=T28myD(XMEWfS`r<%T+)MqM_XI00`Dwo77lFcr0ZtbXi7iECvrd^k%Z2H*V2gv zpT@Rsv~tM6O77KOgaSAc6J_qjfkogpjTQ6o+Al`%f}-r6=kdga3L!WGMpc+i>gwokaZAS-}4g9a>c!k`7Ret~ViM(FaW zQYu9h@WLzc#*|w}w}KT1m#i_6Cg_1+PZ0M1|9-CkWnBic?f`TQNMqgoQNx!@#k)cC zy3=EP;_QtZ&(@6{c&*6z`@c|I`-S(zt)gp$6Oenei1F-eUf~4xL`&}Vyz;CmbAtrfWC>R;@&od?{iB)RA=e@X^=bzz#qw2jA*g!bBZv<-~2z~cIs$o-4*c&`U z>xotj-{4^o#WcBhG_&7~A2@IT7SZGcpD1aCJe4i*&tNYPUayV-yWOR&jG$)|cv@qM z5YtgQUI!imH!t?uidCY61vfDhBREAu((pBTU}OY3{EV6rJ^A$L=QShMkf0sGW(=fK zOr9@5>OCS&Cd8RVhn6=98G(Oh_vpUS(QRX6+$|&*z~^GP_;nJVpf|){;llqgdWDc0 z2cQn%53FrB-d)I#{!o7_txY&2YY|xEci({nY~%4@C$DUdE~!j!TDzjZqJKCsFl*D=gL_xh)Z$EQ?gsw$l6ixt}yyH zUeM!9zEJ3@FmvZrG`Gq=YvIz*Su_5Gd@QM z5%!JutQPxRkICA7aC6ha2RAhzyK)mE=nZxv`9W-qPEm_gZ8+|G7Y`DBjyxY+77hh%ITWG4)kfO2gk|a&41YY1`Oa1<#ynKU^iFUlxB71!yhKp zd;eZ24|40tzCP|o@5^4eIh);s&uBK=m(7~;OlGhql}Xj~jc2pj&B)lixx8ZGy$!18xmNS`!-(M(O$c4?!o7#QZ7=Ln!L&EncVhNeYWiE z#G;ma%O~0*^{G^aJ4`6P2lYK`?$`P}zEype?WR7<&yZC3%UCLP>Be(A;tSh*w{4pH zh4WIA7qd#UvZ*eTt7|K(I3ba3`C|FiZIKtH&T&M90Hxr)!3prg>L`Vo-qAe_1snl% z;}YowwSRl>`puiy@1uSX@9!T!ym>QbXglU=H|8pdc>;|B_W&oV5tPQbq8jhZY(Vp1 zo52}+BYl0@%{U@pU2oQx#TR0Bu(z>qydqgXl9gbIv1G+KAUJ{%PxxAy@K^4j3wuN` z7mS<>);nRx?F+6M0pQh&*J{ubY#>RGxj+)WY(W{tp z>S|NQv`aUQP;q5OsE5=rpy>>ioSszQ0mSD4UW;pCysK%=tvp*?<44)1n&X3m^h zwcT}@wmD!(-MN}fw~N}cqHPb&%VNu_Q;jw01--Gk_02VzmUyhpmVxqCKqGk!_&VgR z^Um-t^*&1~Km(XMfL-H!7$?g>_WHV54;J;grzkKV$sm!Au&G#&oHz!}2-lDwr~!wx z;WuAbhw@XuxC6Qk(XXrzqgZzwt#siDtinUW=&3$2v%(GJ2D*oOaHQ@BMg}(2R8+cJ zS2Zj1z9mO~sAs4fN7>D3=}lUD$nacSnM@j6UQs!xX>obkK@rznRe!{mBkGoITvmgl zdJ=9|JQm3=Sak8Ch3&CqS+sfHz>a}=Eza~u%)!f74aJhtWk;+UiAVY>as#V)2wQbS zL-q2p`8|!Z=X90DlJkykn>Td&;Z2>Luzee=m(FP^Hx-Fnx`wQamRnmhds+F{Tyxu; zCG%IWo?li5>D9BKqrNqsaK@I!1{#{08s?QnV@Vt>NRQ#|(IaBujEsUrL7M-T9puCX~KZ~-Lecbfzuu^8u@~@yrQRPMfV6+QD`_~*{xS1nbQrE<9qf@ zR3s-@7GLD|XMh8K9o(t~K2Yq2hjT4PXB!k3QV9+^*F`6gZk`U}N(bipnktj7_&nZ# z25*;f=144PR>R-b2PxT$O$hA09k+{GmO$y6GuV7Am)b)!U4zwi z*b_V{oIntVl3Eo*IC%-ny>*OX$#nFn$_SapQtTWUze)Eemi6?nSkP6|(A|{D4fWQU zcntoZrHe)YtL@cIazy!f7q$;#&tN~4x2EofUo^C&jElAR^v*pJ=k;%Es{ThkznpsN zc4(Bo_Z@G{*r@)N3Fx; z>KUx7tM9>!-2?xe$t*ZBK9bma?0Edh1;=hpyu9e>qZi@y_2YKL*Dg5rtoX|d*2Y&M z`xA+=9b<`AJcvCJYJqD6)G&eurm4RKUAt^^8DFZKw+V%nLzy`Q3BeprHJ8bC(7XL8PgX9Kpqpe^mGtAj#7e&KoBtp_|| zQ~{)5a6(xRy46joBO+zEaH?e-Ctd(?sid)t`KXxR_bgu?&((5`wl??9+@&i{JS2AT z?8HGm^H!{w_uqXRPT4Kic(kvk9v2PQyXAfJ4mo6AZTjG@1&5rt0)_|Zc+^{jRjsFC zolsxME$Qir$MR0n;o)(_nxA-L_n&m{*1qBHQ%>$)yJ(HPw-kG~XfyYU4b>;n5Qll| zG1qPJ7-S)285ly0f)MD%|6mQ2nPth^%XA~oq`hm(z(pOEjbgsy*tI`EphSXI0_(wi`4WhT*E z+ncT{pHp5Jv&PsME{~Iq3Kzr4306ptBcrGAis(;BpgrYmbwR)JhK!M3 zz_)j|9Q=O(FYDUFDXIR1G6j)tBk+E3%~`d4c&T}i*Ah7vmA^5_2P`5k31DLGUa?|! zfB)=kwzIPGL7tsE2AA}rHFzh$-W45-FJI6#dsDWvW?s!*awhLJa`vqUy*AJxgSDLk zRm{iycn1B)9w1;4RwY0M;(5le^C^N+R{YQ>hK@DssTeOL}&1-+VXX?KCtie2ls!pzi;f) z{=UAY2qIa!^VX%ybQ|urdCU7vU;o9M`uh$!W_an+;V#PlRXkI5v7Xnx;it0HRqvqD^9Onzsi_Z>uXP6v2F-!D?Nv%KYF#bSAR6U z>cWohg=?4gAwafo>Dq@w5xe?Xzds3vqB+2C67N zFiNn$6KrgFcDu#m4K{>kROt}3fni!;+&~|JoP^8ER=0Ws{psPxx%Edim$fgOwXCMP zZ%?vfPjXg8m35=>XsV)esXbx7tEiLobx_U0eHGuXsjh5IBsF~=p_`*245%Kl~9=FyJYf%g7> z9Aw^AF}R_y)o&b5uZ1n69dr6t^k-XV7av(85Qsr${S(H|m3%S?oiMln264zJhy=kv zJv5sgUYmn05Ix+Y*igOutQ#`l*!%IhWN>Gghng>$z}vF+iD#`53$2;HxgVdvO9cB& zY;sNWC8K7W$olQD>#=SEc-M&cQV#o(mymODjxnxSBg>!Tvwoc%1 zcsVnJ_`-&e99V6bbX+1z4iq7&G+1pu>wST1|XD^VRQ24!w%cr z(VT6pTi)BdJaa_N@|>pR8uBUT{MDzd?r3Pq)b%d!&8$cd=1T5?)5^tuA~5g_IQmc> z_*VCDj6X}T#crq`SA_lri!NWW;QWP`EL<4NWEUN>a-~^w+Hp(2*nV}pS-mKmi7iCd z`3qKDj;!w>FA-b%VEZlv%M?7u^oVoL0b7-#u)=UndIfieUmV9oL5^d}eR~wzBRu5f zDdS_~e8U`$weK4r+pTfk4YMlv}fe|=+L*On1Osjy266f$ryju zg`JS=z2oWewfA*3H+S{5_t%}$*LTpLwyX(pBife!StVdW z;B@47;ClFr<72+pHm|L%eO`N8`-bmrXlpCF`w`Qb(uO>g2;Y$c7|X=f8~Ti3Ve&*7 zQbFGRk$3d?tIvJ9oU~~6`0T~ovB-rD(8Tb@5pLbx7sw()kK7CK5SfDgm04UJy!Q+7 z_XEq}BOd9~aBOqgp+B?@RV1j!iY}Ow9}}Erbg=T|3G7&JgVx)PJ@^COq3}0C|Bqus z;!qEE-7c1`HhLS}*N}iiAGoLU#7m+E-zu0N2jyaBu8U^y{<^s~TJye+n4N=P>;EQ6 z!1#ap@ARFLBds;HRjrW=<>iCs^6dO%MRTTOAem~eHMs%Y)Ed2;{DrQ7;{ZC@pT8GJ z)>P%9TjWh<^jidyJMh{0aYKj`!@keL+GE&*y_e?mzF_wr_s~;*fuqB1;*DgsZ$I$E z9~y}oCOCPb9;9`jKhKOzI?nqfxQ$PP;$)@Tg;yG5*OGc);X;l2u2ec>=~B)A4nnO4 z@Id?}zi_}{^s!1J6lph?C&aVOC{oNj#(H~^G!@m&B%x!x~wN(|9qP?(yegX;1J?f}_m zckzYb;7exv%9TT{y}hl~b@f%bwtgHCx4f+@yRfsWKHDREjwUZ^!mB%X@7sO%$`AA{ z>&<4Ws+)RRI+|*&n`Aj-?KqIFIv4cvWWRs)Rjs{27a6MqHK28NOKpA7$-&BH zvllGrT!ijnFukp9KSm!%Mr1Yu-yFFRf|+`ThU*ZY1KR_ORZw0inhaKyvb~AJ4x9Yl z>YcgV&eb2>P~DixZ1^C8%R4&iKX}+-A3AjL;zLikvN;xYiRLRsBkF@jv`^kTAcs}W zhO4JzzKz%OL;(EC!2rY99$qJoT>a%PuPW4%wPlTwOr-wPvlBK}>r4xHQLHYK%G8_mg87NcmP9;hlbyy^*huT# zc*Mn{#+nsy1!t|Ri$vO@JFkkkJ^wFwu7CRHcAWL0Q}JBTM#OI~;hC*(gI6u}PDs31`AYq5E!VZ* zIroLWv*&G?f8WBh54!e{1tVo6cddJ9{jJBQPdV|lMW@|<=Ji{5ZG8~EiP#rm=~T;F zQwzKYmH5~8@)67X!N=08?h>!v9UUKQtX1*HL=@c55;~S zdnxvIJRP4CUlHFJKQn$w{Mz_e;}682h(8zqLwqt(nP^K4BvvGjPMnn3nz$hG@x+z( zc325KWug(^%~<_Td0Bk3$0~ve{Oqe*abPXSZVKkm#0cw zD?Ifzcn)T2i)ZyKY%4L6THFyD+oU{U)d@&d3)EWWiYd*ws*(~MUE2N@*H!py!94K& ziz#TOoEg?g=%(-t?^$=w`zLtq*qc_r1b3OVpbeJej920rV&`ns{04fI#a|tMn^7+9 z*Pla6?YQO)%2W1_&SMj(n~XeazX{k^de&vtLD-_nM)9@_RBJ+*&ZI8v9>>`*bbo45zVYImpjq44fU# zRjc$o=e5|gkl&8KnP&Ytn2nPFG4JBe}nvY!4vyCnfovvg~)eek(4ZqWko%2-f9!6h?e~Mwm+76Uf9NUi6=|@Al3_PPmV>-_rcp|3FR_b&v~jHo!sf3%+mvfShLhDaEp%K5f|#3Ex?K#2RmHdSCLxiWgRe%T<2b-DvZJy^{QX5_Roiaxdy2nLXVV`gc<5J z>yTRLTfm97NrV+)n=fe(AT5|t@(WNVw0Ooi>4@1MQpdAJX@UXv<)UXR`HcN+Y* zU*vyjuhZ;8nnEN`$@UfK4B>X0p*tnOMe}g?+TG3Ke;^$wAG;6t?HC_9GWf0cE!=BA zXQ4!w{de4heo%&Twc7h2?h72C+dYK)D%3{45A4QinMA-NSPNokDo=(p3BQynINHEX_5+9Vey@7K1-&9pDnF4`fte}hs}Tjdj3lu+!h z_WliZv?Hw+eacC1h#lk->=Dm(Xfm8v;t(ZmJMt*6_)L$CfSje#{tw2_u{GdHZ9l-2 zKpT4rZBExxCE5U7+#|?W-b$EgFUVggYtXJ~Kz_Iv#5z&~H3)LT-_1}zF%+Y-mm_~F zJlHzN+2Z{R@{4DbxXH*skrx;t+b|%Asl~=wBlZItTJ+w244-=Nn9Z8+Rcr~nGV)vrmEx_&YGN>U}jCpVLRx9*)v0J z*m5yLPQu(ULr&a$VTPQTxqgP6sQLU1IT8C1ayl?Giq8cq%$b|y8O|4Ri1M45S?i_U z_mRVqsXXMbFK5WLkL(tB|1)xm=fS6LlPP&74|h{rlB1lH^K&iaRWRcLeGt+$ zNDsHq8K^-YUO;+r>+D&zsfTO{mnS~8np8qbv&a z=@&(s6mzWaAWbA1%C^c?+RlcYNaL>=Jb^fwwr?S&h)T@oM7k(;t4zBTDMgfSu7flP z-~p~^--I;Kwx~;e5fY$Xp2*n$#WiiVMo{hjA{nS_G}u2uGHAPFkPXk9N=Sjz%r0}E zc@{=^r(J8e*eI0oV{af7pe?>Az9zmYzAb(! zEY;iM_r)KJ?~lI}e>5=6DK4#Cw3$*PF$9_Cb1`RTjDNr2V@@Q0JQ*8 zBDESyOx3VysZwiK9!ER%Ig}@?c_s&~C2C8hoR;b29^hWK9vIJhiAic5u{Cn|Qf_uP zN(!bRj}|65uv$rqx2#8{%@=@^D*aeXnEJG&kJ08UD3|BosFj*-mCPgcdmS;Pm%U4J zn(<8yfm9l3j(op5BoJBwb~%IZjKGP~N%5GP4lyr}yXJjJA%?RSmJ+?kZ=F~}`nyej zeaYhI1wHGOXB*HfmC!Tx%3Xzikw;TIV~_lPVr-N-t>$QfCt<=8l%ceM$!*bV`wqSd zMapmXlg|(;q~~sUs5lqgf3I^u8OL)4#rNXAhCBKqNQWFNWkjISX3hI?N1KKeJw?lK zKSUneA}ly30Boa37u z3RIyul=d!1YEYU|kDM)MXes(y6M9b=gQJ?GkXq;=shybiC8?nR7uJ^ZxOY9MSM$gN zJ|$9D;X}M8{Jx2_V0^?5NL%b%DWvhe5-G33{u6#nFr==lbQrrOh{>fhaVtz?I;( zbE1_{=6noSG9vqZxq?<|HpvzF^n9$|T$J;u)i3Z%N6Dh^SF7*#%#A;W4DO? z`iOnbzUAuN0=L#}b{E5bz0*D7e(7F@qrWcF8(9(A7}*lJAaVt)*sn(JjXV;0DzYEC z%!2nD+_L>MB>7pC6+It$or2-2 zS!C^r=*4t1L*2RA_RNs0yzT&Ur?&0e1GamHXT@T-S0Z=D8FGIuHIqxKKBoRoZL8f} ziBa&H8ZNDV;v)Sc96Qf3CM<#{vluU}jaGLDxH$PM`2}@JN?LNu4| zm|lfip_$<+)uX;%R1a~5{+qNp6zRlNT1%?^P&-Q7PVnt15H?pJwJ-)gLF~Os%CcWN zkEDxMce`+Yg#=qr?eAqjl^Pcb`*_`3^Xy)Pd(4QTi3RFF^ik+}Gi0o?i_aVD1BFq`qBAUT+`49r-UY ztl4`AckDg&t*nblNq?SPQg|L^-zjnhox^dj3^~KUq zCUcRw9_xrtm>11kHf?+Dh#j*#!1wmpyWqKd+CFbzwr{|8tAviqxJ#WEVojjgsYY7h zL!3`Q+I}1T43{ULpwu8XbQiF}d=DvIxTn@ldzCfQ5+a@vGo$8#_b3suviOFX6`oo;koFw8|@|btM&=3s@J*Y{;K-Z?lnmKrI8civA#L- zAf){3(R6eHywyA4tG+!t0YCMdIDd5kd=+QL#$z|f?vFhk`+eMEcfgYPhWHkEDQ<}0 z4IjmG@z)b&@J|dSHY84iXW|-oCGJoBH1S;GRYb4UCcBeMlk1WvCC|ojIM*j{Pd`+%85S)>6~$nfwihXhE^)%k0DKl`^R*p4=u<193pkr5;y} z5|lNpi9DB*tB6md1btP-CCFjfKIY$Eh2~8< zF_o)Gq|{2G1FF9_v-@I`6mhevUNt(M-uRjCl#q zCg(ySQ)R{^FWehyFzj=+`5E%UeW9hVexa0? zF0|)xU+6QTZk={qu_&(5UjsL7CC^Bd4tr^Sikxr{>0@ONE6tpeXQ&Iv967Fk@QRek zaVj-p?p;kNhb0JknNh^#(IciDS2>&?r(vFih7j%nWe#cRZ%WdAN_V$Ny6V@A86sr> zb4)MN!*HRbhy2I+fJ`sUk6K{O?gpfXahqBt#$@Or3)dt13dXt!>A?s%YTrgP$0MEn zCr*WYfc66DCsQepx(sXgM~`P>o-qSEZcas_H}vv5W49Ido|#A9yuF7~eVZiiL%6yg(JHJ+(5S+fBCqz$mI zwwRsfQrO%7A=E~DCh!JP&U6ua?lHk>>I}MaKuHQo?Y@h2av!x=)vH1&^IyOwrZKvS z7Chxen`@L*${+HqP8m;w5xFOhi!NXoeWLu77+>wZihFHWB~*iGt`@p4YTZ1G8P$^hY8&>cat2ja;wjgH`_Our+3e^0ZMq-hUVWLI z<5`HL*5{SW*P4I8y|$n@^ea$VaNlePFn=Noy+)VCbq;^P2iJtTlrg*OaV4p)RpysC za55sedGc4kcM?{K?(m*~t(L~To`5-3-^Fk6R>B6mz%Ivn^9lA8cawN3sDF@JD5uFW zX(dq#sMk5Pl52jAbZU9JB1n#|8VfO-b1W9QS%hBDLS>E2;kW`Xk?M?Tob<#p#9}Q| z&?|{KiuGItB?gh-P)||&iM^$kMZS_XOG?^e|C!73ffub4W#6r>X75hSP@$z@Rg!g3 zx@65_gDXpz@H?*(kP>^5t_JI2k;@C%$F_|Yx(P&$xP@|P4xSP&b;CNf(vI!1budrVg{ zuvAWek8-{aY(9kAO6&7=N5NH*M&?ZPsI*kLe~=4i>ojF(!;mYh|Ea-#7_(nmkKh9! z$+0$?Z5UZ;3Gz+l`^{ztYAnsC4J6oY&H}7Tb1BErd%O{v+^-mN#MfEoH1MvX9QQbQ z4JktDxfyRByA4*t+osd3GiQS{Jb*L)CT$jRh+FKH_73})ebITY4c?p+5rufYyT?7@ zUW!<}Mr>JREV47QD{?#5ZhjSc4KawF(dE$-;MKVzdQ0^F=u^?(MBl<*iSF3)*v8n_ z*rl=S5QXw!?5WrbvDf1Xcy|WkBk^P7o8vp<vw*eVir zb{JeqJ$$s<6{6~wQu#`#D-S1UNZS?Qd4=+nKWc$$+@n&7&oS)5LQkAY)~&lHSYJ?< z77Sfc1nLSz{8up)-#CF)l`4WT? zd#RdLUemTm7L~}`E;26JEnwFbl^{fQ#MBXllcNsyD42;t9n|sBdpm@3g?yHyt5s=&2$`QU@uKN#5tck#y{Z zI#rJM`#FpVE0SZtlHeKEM~r8*H6cPdR*4Z32Bep~rSI*RXDCM$XB5Kh`KqGYR5vBZ z$eP2E!+Mo|NqssGY3RVTl6e>Ib+cWQPiN1F9X{gQh~2A+e3=#Ar4aKYP4M0D`1fF5x~G6UX-r#9^-L$B3(yD+Mu^mIE4Ev=(<5V zDNmwA?Fdo}wG(UMF}8z6se}cjvN;E-VLA{Tw~Qhw)Ic5v|C>FcDAo6B+V#+^3uVbY z({@Qwn#8BsMMY_xi6;9=q><9eO#?5$zezbp%n~DVwA>u`AFvI@Eo!69=J!SA#0z8o zS?Z&&N9Ud;uSHs*mvTiHwuE^>q^Hi8%%JN*3OQCSC`-M1^B_-K08v5@kTt)P`=DP* z^HR}$LQeV7*iZI5ZucTTXgBB0Hvd{wK4#~`7RckinBtz3Bk?)Bc^NtyDGH-8 zzmaR{h3mq#Pp9TZu^FiOP2h?+(SSXt8jafO=1Lmi?0O}QknHh}MI_zLuu@;Zj^Iw% zg^HC4GVEAbW{X-W9E{xQ#vmB!{X)h}jVSQAa#jV3-ZzAA5~?L|F-wIz5`Jti zWS`iq&IMSH$lQdkm~C@L+olezA)VyNI0hrwJ6i8SA+B zdcXAEFm#I@Hg9w5L14Oz1u#7UC+})@NG)1@6x2o3 z51+QzB9-*$d-O0S-%{h4@YZNj9OVhAMerNxlrS9ecVtFsZ%v82u#ZXJv^}%;A+NYi zwX*2r{ZHi4Qy1iFEqp6tFDoT z_h7!zjLwB{CwsC`1ZkKYKJDEAiqNPD>~JxE5NQ^S?IVKoeEJPwb`3Cql5fDU=y$p=BAt5|3w&8D14lh1 zC{K7`mE7Hh(Qsyb?bv%CXzoRL)ebf1!AJUY^EToij|QFHik%y;xU^g9PH|Tt?(r%2 zYNS>oATEvE8kvZ^5cQ(j=m_>}T#CJV4`R2*>#;QAAC8Xgh+PF6c_Q{)?9F&>d;y{# z&V+4zbNv4J)A8TKB5q17!p@9SaE8DxKlb6-#4Cx(WL2^wxg@zdc|vka@`B`L$?KB0 zChtQ0!=uTklg}ao;b zVw?V~^7$Az`#HZn=YsRe*dk&bIWOZ9*f-7sbui4aTZ;1J?L66lGfk{i4*=;{X`i~O zFPq#~kk1kUjw!v9ii%T3dvil*F{nN8-6%BF3L}h&SH$N-h3_bjWG*cuwM$B5E#5P& zrw>rxyj!_dC>LdJJZ zTZvjpMI5=}0&RT4lcy3;+L6bs#y97A>L@~evww|Jffl3IFfppg&IA0;$=5}yQ@vib z8IGHC0FLPnk-FYv?%c58L4XmQdBTGjogalg#VWZ^*nBLo4t|t9)!k z3?Lcp616K&TtjI<-jp1fG&-14&qdWA^WgYA(rj^!WtiRtu2W;LoI^z8&P| zZEJx^78G$ia;Nqx&@KK7xzs^9MqQyGFC$e#!kV}7TgrD-+p6|z9OW0EWds%HO(mZyZ;?+(Is&|~ETd|Es>ZV&PTTvPtYk+PNsoW-e{xpH5&NgoD1 z&ei6kP+no~RL`X^TI(#(uW#p@|M8#GaWg;fk+Po;)fsSN(rY6;k=%nDz_nQa_nLQ#lN}R4^NyZP8!cGNcCc$KKFVskBe~sR7s0z8qbW zD%y%=tOe^+yr5qR($PK$9j1gEn+uT^z|5alyHP9~(tyr?tNCBivtsUdm!WvRPR*}|5PQYmv z+w8B=6XG~~Oap!=qj zA&%%8X@2Dor6jHb7S6Aw?dc(;cJnCUrgki`owTcRM5(O)wv0YtYa)6 ztpP%dQkCyxAw{L#_mHDwWl5z5p;K$*8C_FjI=O(ZmC@Q$&6b)5`3iSzr|k(y53qxE z`P>SJ7}6##)I?fEw5(;k+Eh4ikW{r-RPQC+ekztSDU~u?Gy(7kdYlT>i+DMlFj$<% z2)O%^#|d)>1MjCbDxCnaB0SgjYn8jR~_{vB(|;S`&|#|3TKd{~|%w(yWnxGL$}~0gq^UfAB(<%T?NZyTVlIn_r`t+i@F8t&0FGEVK2eY z|yT#!6Exg&WMb`DG=pG&@3R$I29Y(v@BvMb7ND|@(X zf7z?$W#yga%gZ;GZ!Q0L`3>cFl~0uKFMp-NRy0%$RIIMpRI#ICyyAw6J1ZWp_<6;P z6|bjasfJWcrHx)Fr81shd)Fr0!2WntD3*Z0e=dYpJ&@W0h5vO_iOM1C>iF zM-1LFCD=+Gkoqv^h~63ckI8qGB8$)BQIBNUmqolI2FCHxb(MbvZ7F^6Y>|M{)WRWN z68gj;wVkuTB+Bb*Z&LVe-j)(9YY-o(7FUPso>Mo@v@{}492g<+Zu3$Y=dGc7OW|Bv z@1Ias*LDbxJcQ(`WJZid`|sWd?qmU9u%ZVSrD3M+a<9f7tPc`~V-ni4gqoY5U}1q_;wLiVD6 zoHs&_l*qYKyr9NOT1~rSQKqy{yjL%!@Ob+VQl@l#%%c=0PB*%-Y3lKHN}mffy9ZGw zG=2e&5#rrG6&o@BkZkspS82^Bc*aHrmtj}^jGRST-xqIU6jQf7w4OrG^v+5Zq7Ra*UE_leVl#vuiYl( zmex($6fdrO-?X{D)$dN6CO27GCyA>v0r;g0h_eLrh&!QBjV>{w^%?D&=$A{J6oAF+pAS@n6sE{iBt zT9Z5>mUA!KFTO=exTBF*3RPeKvNt2I8#KYyUd7dXG#;WOO5u|CH`y3$kuW^-lw!Yx zoS?=cTgm$R#S=j4*G`n{fa>6*9=M{K{r;6$`T>TF;e_AS>GfIWLRcdcSD%X%{ zF{odGR>K)c4XBQ=C473^&!jA8h!m_gLfU*(QrRA((S6+VoH60FNw8Cqy9i{rnY~lI}>R^PXj5(vuTL4#4&PP_+HGxNYnK} zLQ3`SF{CN?41H6IZRPW2F`bel_%Qp5|~Nk~!r4x*dZB1LDAC#_)wZk^N<;-l_# zX#5R9JWl>8$166ko#Gh@?wAnmbLdiFIl3 zZ^a744BCIjl|1P_fGdRvcd<}bR@*P)N@?f`T7 zvE)7*r8$2*VSv=Cb_8u=oX%!Gf!u%#5!Y3VB>x2dx@~^0de7)P3FwlvejduRzkzR( zGr}H_E^bAhT8TkS5uX(3x{IY3MW>P@MRWysfz(+%9>1>`tJ*)|vFf^L&VCtOO=Z1~ zfZSBP1nwemwNeNX22Ueh>6#pgI77`hXO1XJr{zK4X4dTxo}h3f|5o^Me_N~BO)ky{DxaNDH}=ZCxwJ~PYnR0_R?AIaUDPvKK& z)h0mM3PJWGja>l2Jy++m_WihLugN)JP1$nX7wU}JO;VngB6)JN`8eo34@*Oj4tqzQ zQz6%)L)b02_MdP&am{rK@CWlr&@7`Uv-S*Ju|$)t!WH%Dv^!UF!9U$Opkzd!xwG(# z*34zt_Sw^#qjb!0nbz=-gUacY{gEwASyC}{S!+O6}i=p+nek?;3CiB zM2uo@_#VWCJcP)Q=M8r(sLrQWE3G%3U0M*7Y@{feTXV>Jl%?dSJb?aWR^qvLt5>a$ zQPl72?$Q?ddcY?{FS6XPPfAiLOU+Cvj+{)qyXMpQ4eFpzoO8`F5W3K(+?BYdt;DrJ zt~LnXqJ-+npTJd6KOsR+ppT_^qZRYSvcMHn^Q(#O($I6N`Kg8nns*;T9>=aRPfBAN ztI=+G5^>NTZ8rL%NUJ%-^DswSV~y0!wU3trcY-tzIopq@{x!EHQ1~utg zDQ$s9#}oa6dZ_gVlAO31q^ovBe5>>}Aw8&-F!ec?_x_S}uGNrVdDYg;Kea!MV+0eTX&qp7j8N_A8*W zVD=fY&&!B|t~0%OJJLpTCf+Br z3;W#e!v5GN5E1C6{8i>bQYdfc4c{T|r~*q=Dj^uSTokn$=4{y|&Ta2fU&jQQ7B9A=E+H#9c!n zsz%gea1tZwhgxL289^GkH??ANENaCnCn-hpJ}+B~a;%MUFr-@e3@rCj3$_6Y)bnz- z4k;|f6RxO{b|XfSQm7D{Sc7}*74g3X5wMhEz$1J}LA|&qXZLrKn9Ct^{PDS6B2^Fv zVeiG2!tx~WcZ}113v#8(!yAR%XP^_Q4MuI2G)SHnNDJjG$`2iS+u<#-9|RXs3pTLc ohyj3!`#ee%L;DTjx@8!5k5~VH0QmdE^#A|> literal 0 HcmV?d00001 diff --git a/www/MaterialIcons-Regular.e79bfd88537def476913.eot b/www/MaterialIcons-Regular.e79bfd88537def476913.eot new file mode 100644 index 0000000000000000000000000000000000000000..70508ebabc9992e64f1314f866b2d7ab90438c58 GIT binary patch literal 143258 zcmeFad3;;dnKyoqti`)5$yc%^Tb3=$a&*1Kl4UuYqioJ%CnO|N7M40831EdRkc1F6 zmC_Kl5Ei)mw$t5k8E|9iKTcyj8v|KtH&n}d9;mLZWk)#?a z%2Qv4^pwgabx3W}RO~x&PS5{*jz~gPs=yBQ>+M~&bWi)gluDYm=jr8z^B44LnY2=3 z|4@qS#)ZqzS~*(vyZi7wj_a<4DMcs^BV#fAOw{3z6x5JRi8=lJ(nv z|7pjlBo*BvNqWr%yLY-I6Pqtd#)EjSy>R_y+fSX63h+Kbr|`lpS8TrIm8#n$$u?DD zyS}(+)B272cW=G``BC{@7vYAsQv)bd9#Z2)m+aiLEx7sLaD76O3=eGCcES38?_G<$ zjd$VtzDw5c*{=0U@8S7HNblOZ{*p~qw;!J)v0IzbUx&7DyKLv0AHM&z#BO_4l7iDY zESToaTYs_P_OBUd{!uCsJ^R+LAAAk(OX7GcqmeYczS)jP_Q*|pDkA|K=!ZQ)HUFoj zI|Xk@hovfhn-VgfDvS=JpB9*OP}1RcKiiD!h1ugDrE2N=eC)zAHjYsACjH{l)KjOj zrE7V;@@wFd6g)FgLP{gj(bfNfpCT!eEQPTT<1fOu;P_Qcit%TZiqa{lDV-(xp3dk^ zdY|5n;3+*9X~eUbl;BV4ssSk}mHH?194VIw&M0@vOO{%YR-B2uVg4+P)<&eu@hpa; z$es3duJC%&TQPp6NCBRQ0MI#jKgKsoDd9}K)q^uCm40+5#^0elrSY7oWpszioRxj9 zNcGurC?%y((@_56O0NkNGR3C9h zfv{&mna40LT!ujeFV5m_)D!^%v(==NwA>Q5h)E8c|ZOry{PBq{D}&a zTs^48;wp@`(Ype2V%$<`be|yN1MU-SD7ApHfKnW9P<<&M+AAoX$`SccTEb;I(mj#C zXbrtD-c_$D2T@1bi;~o9#`6&Os1!wVXVd0dKu;+T37f$Fa$X~_hZ?7=`HHDc=lb&LzFK{q4eTCx)ya3@S-v#+#~3g;3!HFu#kEFVX2irr+$;c zr3e=Eg!a^ebv%{0t4N*5f$q|tYA5bT_>syHrBe;441opI9(ALdirUhfqBgXryyzV@ zhoI!;SVXz3!$!28>LfwnqO_tVl$sz+<4)9;_Eam{(-VoOruSy^w?vtu2K1i#hXnY6 z|3e;%LtP8OOlfK{etX$E&CMLdr*!}>XxQSUz7HZ7K~Pp){i!hwv2X+ zP8(f0x?}Xk(Z3&kdGy2gE_pBU-hJ==^u1T#d-J_tzIW`{#$zuZ`=?{CzhC%%)%)G= zkG}uO2bK@oKA8Do*N2yW_^act;|q@e!|`7o|IP9DKKl3sJ5hc@J~92oiW8TeICA1= zA4?zWKQ?}>jP*lylOSwB}Q{n4L{{&e(}_ZGZ&5G6l| zlHYjmo%cqMH645L*efX6@P6_8_V>T@{;~Ie|AG9$)DK%foc7^QkCz{JAAeab`J+!x zl$@vB^U1hFPSBa~* z?v1+F>;9?k)w+x87S_$Fn^7043)HpLH9J3a9&q03yxFb`$79{_5)Sdirzr0 z|NDO=0ZW?EY{4^egv^b87x?lu9BC`VwjSGFY~_+Pio+=36Xe~|YOxV+jXJQ^<9;iS zZfuP>@5GVP5$<*22)T5$1Lrev3}Bc%>3st>yvNqyh_UxRBz3k9M?1D|oL`LNcd(%h(r?~JIq!dhbL8>4fLkt<=9*}zYa&F zI}R9W0GH#a`|*Fk`SUm;Ep3_?aQuzfG=GQVdt%d|tsi|XHqDQ5L>*6nc4*KiCjg5R zC`0oWj?f2Apstz`9MShDrsEuNJh2qp3Y?>TCjg@pm*M;)9Cu+m0(1k6PM{tqeui_v z^91?<#YqLgyN@;4^fd$p-}xpL0EP_j zp_=^1kdH)L{!e|FcdtOJ(;Etlic3oKZhrM?nN)79Fqtitvei~qZFkhvI_q5Z4emxy zllQCN`tNB&~{ClPAFsAO1?vWmlhNY*a7o?Y@*QB?k zUr5KKlhS9>pO}UfGc&WZ2IgaaHl597OW4_LJG+}5W+yZinsu6|G_PnrEzlHH7ECX= zrQj{CM%$(x)IO$tQ&*^)tGh;bSoaIvC;C!-r#`G-qu;APq<_btHB2|`HQa4T8IBbe z7TOEj3O5(-EPSN!4@C_{^NY3=T~~BR(VInI6gL%bC_Y&HVo6KMXzAS2r^_xXd%av! zzN-9Cd8+&~qt@7LJlA-W@hRhp3Twsr71vd~Tyfk~Z1S5{nRc2UFuh`~F)uRjH6Jh! zn^Weu&7WDEmTt>t%R`pWDle)$Q29dT+j6noFYl9|lHZj-x7w{e)@auqbZqFjuj8eTQGc<&)4#-jssAbe$v{=WA6ORH5;zbz9C$NuqO-Dd zZs&&1`#XOY)C8M?bA#sxuL<52d?fgJS9#aeu0>rtyPoL!NvJ&385#&(8afbqJ@o7D zif(`R`Q7`wpYHyA+SF<5rd>L1|FlP@y*^!<-ZFjj^e3jjHT}yO%`>*n7@G0ojAJuP zXKtLid*=R`ch7um=1*q6J!|T$MYA@}IymddthalLd;C4u^c?DWwdeEMO|v)8etPz= z!< zySMkQ-luwhy->f{ z@?~E`-~7JKeK+;}q;Ispw7;$Y?EWqN@%}^oBmKW!>RdW=>2*tATKeU(-ep6}-aM=P ztms(}o%QSGJ#j+I#R-{(EeYXDW&1b*5vUFwJ%Knw-uY7D(@v6a9uSTjO z=SS{~yd3#$bVGDsG!^}Pb@A#&tM6I;#OmW~O4oF**}Ue^nwQsnv9@XL;MzOZKC$+- zb<#TXy2f>vt{YnS%(@fj*w0yZ&ZXzvf6m+I>d)P9?tSOJdhVC!b)C2UynD`j{ruAN zr=LG~{v+p)d`M&h7r~L)%~9{>2X8j+r~Q?|5Lx>z7tt zy5!RPF8$!LhRX&od*HI?FMIj2cP~3}S!QSB&aRz{cCOpGbLYODckg_0=dqn%?rPlC zzia2NgS(#C_0q0)c73v2ySrw0=kA@mpW6M-<(kV|F5iCnBbR@$$G&ILp20nj?Kysh z|B8#Q7{21my)*aj-g{{8D|?J?PJ#-kC(@n#1F<_{d(coyT88t>lb}}|JR@X`n%WZ zud`pb`?}Y^q5Z~^Zyfx_>(>`v@4tTY^$%Tt?3?y)F8}7xH-EOzx372K_I(fSduiV% zH?-Wa=!WZVc;<%B_qXlezW>GjpWj$>WBA7NZ`^m|{Wqp=JaJR>rad>^f78g#g*Q*V z`MR5r-2CY+b8p#m%Llg>-`aEQ;H|^AetN)nVB>-N4!nJv_O`a$&c1E%wwrEy=b+}G z|6uRI4F~T!`24}Q4`yz!xxMH1!P^ht{?hHo?l9lcd&l4%!*?9Nv+&OTJ1@QSkvreL zYx-T+-*w+z&)jt)QIqIT>`fdx2_Y~eU_nss7d~k2oz5Vyb@4f%tSMNQ3U-^AK_ieuK zj{DyJPUm;}zq9u{4}9mf@BHEZ=>0#tKl5GxcQ=0bk?+2BsQl2@Lq9w8#rKwf@22m) z`n}8pJrC@C;GqZJebD^iss|4~_{@VN5B}+)s)v?6bkRfCJ@m*!BM*J~@P>yUc=*kS zGmp%FWa}e`9{Jg$_D5Gey5-Sp9vyo0sYieI=qHakAM1YX?8mk|cGqLiJof9y^^Z3` z-u?Jhk3aVKm&4}{-!%N%@aM_qI`N_FYZhUgz zlSiKX(^D@!b^QAc-|zqaecylgaP#50hp#&P)Zur3;QT?)53c{gLr+&e-Tm~|r(b;f z%OCdsaL*6#_~Dz+6hCwQGp|3Zf41k@OP_t_*)NYwKeFY>V@JMxZqIWsKKIGW{}!`z@+w>PaCw-zxscm*S$OQ=>iQ- zr5_Z~Z5`cy+Ms7&&U_jo&A<8srhv&CFu6_pFWZ=c5Jr<8g6@`Uydi7xxs~vyW z02`=9vOyX2cXc*3=qt_Hw?hHhEn|D(mQ9;(*|d^plR}2R2rf6>!W=v=OI#rfNCDYG z*jTnM(5uwC7#xgOV`OYB9gRj5CCn0;7}CRn!%|3JBGtjVNa;~?DlibNV{&~k6zuGx z&2Oz`P9_@y)Fc)O`@&)0HLaO=Yq+Dbrm`da<5krS)hCs382>9;ZMN2{0xL?4<&~A? z#*!6*w8;*|j_RkvirS0Ts;$&#Ta9u!%>K<>T52w}Ebs1K-d)Js%w*gsHD8Py-OK+y z3qUREA4dICpbkbZ!%JOMSLD&f^Xc+?10u^{XDDbhc=d9n)!!BDZ1T$P%52hjskyAo z{0F|jQC_}%`=RYiZ+GsjUwzf;C0#yVtf-HZ*D8tU+m{baW4Ajmn-c67ls?@vd8=8Wq&aME9 zmllPK%F3`Sbt%d&e!_3z>NP;tlo>HsSDTq^Eh;T7iqg(n5-yo|HDouPk|;65Ui1a* zVl0Vz5^aU9%21_x)QjjQi$tTRq^K{-!ehxKi)MyFi&a>cNDgWhumspb+i5ip$K#Pm zWLVUV7aCSZ6vd~+sj~crk7}WT%`VQ4vN+Ck$kS$Un`}%zawK(x#p7`%#VJh?X_9Ih zOUUH*hW>~YNAUQR6i1T0aioQPwHzafx5jG-*<^PCat(S6-e7`XCZH1ap^W|+ z1Kew=9yUV|nA;h$(O9zpnJW!m8gXvf8-imj(!0q~XY31R50OYb9EpZE_4=pOIqHLb zOc_7LeY8~rn=YsoXq1uT9YAkDi`p1E0Ye$&XciOnsgmtz>st*7LL)5X>uPEkbV@a`*Ra91V zo?hM$t}iy0mt0?BG`^8nGSP=Hr@7VeOu`gmVIWJnCI$Q z1C@VF#x{egUgk87B_c{BqQs~GL6f3PLFUy=ru&gdO1%$SRUOHsebpvL>{qC0n7NG3=9|vqWvKAX@?#Gl zs0{`SAtCU8T!y)!aZ~Ti){AGhe%iRn%o*~xT4(ldYRvqs@l!fsaaE?#fM~~9oF#a@ z3Ck2l90mQFj6mubVZIEkpm?g5O?{b_n+SWx%M62IRPnNs!}u|uT0|bbF97G_aud-% zRfv2ZTW)SaD0Lk_k3zV@G=^saX=_56Nb8K^Bxd$7I4TeFxn(T$;nRGJS1Qu6PAXuGE+9sb5yoNVp99PCTrqmOi0WCpZ+N|7I z;ISDX=;g^xAXmd6cbWg6)8z_QUVivb=Bg@lX4qUsTu4!pRCp)TY;9avZ3Z0zHDZVX z&|%!gFzyn(tU7R4&}a|%7fEnkVzhTo9_)nS7U-I+WbVwlmo?SaHq|aCIqZ}~f*T9_ zKtU4~R=eF=@d}>RHm&B*kb+4?rD9BE$At#`f#i=gB1WM75?dBs?MxfRp;J9=HP-oAVgI^HKKBJlvtYh_=K*TWD;M2ZPfV8$)NN zpJfmRNnp&S(NG%5i%8}^`s^tQnioloG*a+WdC5DF7)^-#ss%TeEC7^&MDvhJOH_>n z0%VBlnu;%78eiIX)oN%53!n%b+RhS=4UVH592-Dtn${`awW&4qG_&LW9XsytuV3kM zo$WfCV417CWT`jR$EhMzYf%@$mjz!lLK_>W_e2we5av7+@EdwTa%3dx8;KH=RQYw9 zj~GS4$VpC+((=nNNEN`1dc?qt>tD96POpI^wWjQVGLQsE5-;_7o}3W)U4z};V1LN( zuWRyL)9d&5`gKhnr{B*SbG2X!lGqz=@*hB|&MuE0srqS--(^=wo*B6zs zbY`DpzLw`UeZdF6D=q3neu&gyH$x870sACNAY}5o8!HXLSR@vUFjp4~$1=mQD|b7d z0Nx~!7MdE;W>Y4jgM-k_D2dPosBS3^J13XID|^8+ygF#SK`8JfNqVsh zTA9?k2NGqAXG*p0oLFSjCKj2|K4+EHRT5;KL6%(CIu`40A>FjxUdm)Q-X~E;(4%#p*SnrW8f`g%A8fJ=Cse4(H;zr z@fQAF`NjJ$MsCYCFDqZU$Nq#>ZHp?Os`4El1zwB*vZzePMV5@pV`F11nnS&KDuwRE zKX7oO!ke=d6o3v@OH%}G^~#X((T`2;d`*eemVB&dL8Xr?Lh&=GNCQyN@h~p5BPLDM zadlFI)WP0j|BRk4l`5gHLH+P>8bek9U7(!>Y;LdH;I;(}7I%m(zwXF2SN|Y$-%6j! zJ>adpq|*DN3;cmi{>K^|&owx%+t&7n&Q7WU4ozh^z&{ z60)%r$?lOzCLW2<88md3;t;9^BRM6Jhz-L)CKita-?e#kzY{SDkQF_Z0sm|UNP%m* z8;lIh&>E`55dtt&;WmgyfFe==oM7}$jm;`U?>2z@7%&n~(w$*KvKQ+#T8*Yi zQ&6BSC}`H`4O(0jX*GHr4EpSaL95lQt(2Pz?%KF87VGTqzo=gUzj@K1(P=e`R;w#O z0!3>n)0XKq8m48sYNL9tDb<$*d-cXrNAE`PqA2H4;7*g;=am*pH%e0I43!N1`8GrS zKds4bKS4-g`i5HOMwT2HAPo?v-3F<9(tpeYlSbpq zg2_;!0ni9!g#6l3w073y_MV|z{$$XU=>i^&2AyA6fTB@8AYsG- zEj6KzIt}5+;}anH>jGBLZnS6^V+8<8Q8|(q5?D~_@?tbfQ>N8v$|k~P60ZF1V}ZEZ zX+qS*v7mPHna097G!|?^=E7L$?~KL%vaxX6X#!eqtjn;pT`t|6H`Y5L1)OQL|JPvt z8DZlrA%sFdX$x>r>BQeY00L(MBJe^pfu#IxBjDM|z|M__PHEAf9S;RWBF-=#f@i>= zFAW;wY2!hwW15o5BVt0E&p05o1x$?N+>m%~aw|xt7k-8m=lh7AVo>t3%BgGv?;%c9 zP^njNKd5q{tk)o!iL9o;;MB-UzFAm=2xwP%8qsm;E@V%>`tbvL!QH)V!}dFSEsb9bLx-cmMq)!eeb=O&;$ye0bt z^gWaZVFh*PHVPGU^CiDzlig4rgQ4Pg0&gMQ@isgH6UFt)kliDb-p(Qugua|#kMtQU zm-xK0XOiZ@%{cYJdKQ5ysA_N|%#tlcf%zhuTyXQfT-8YeVlR_HM8&l+=rg1{P&*{} zO}rr+SqjFx^{6Yc-Zdwa9)=r-kE;^b(10s!_4$N~D8{f$BSCi5ArIKUNyEh-!6G}9 zL69NE1fi>nds%T(BO#}->t?tB@sFx008LmCqdCr>_3BTUU&p<4cGZP9uVr^T1t8W8GOpu3bh2=&X*GGcZf{@iFLotCH#~acc++DMo z9{LarsColSZ(TvYmKC2kJ?*n2`WojH{n8q}qMvfG-Qx_*R%Xwh!_IzaZ=q7SKE59N z%xzA3{G;~9y1?vf@J^tCzw~f>I}~fe*_@9C))N|Zr|B=;8fva4+@WC$1NCWY3wlS@ ziKw?pZ$TU@Q5Qi!h`y*~kNiE8)n+1mEa?b399{cd3K2i0+&q?}C7^XFK|SK}K2Gl} zPv(=6n~A{D_#?k^3L}WO#VwzvA*E6&8rx!YK#iC*Bu>xc4Dd)z9AmL?cyccJyoYcI zK4kJll6H6+C6!PmVl`@|U^w%^{SL#3O2LH>azfiEw=?84As;D`fbNu+3E2mP{YC@Z z3a~mr^wF)$4w!lt-sKt};1auew-uwB<$SS(E6~RBAW;ov0e#c6%_AH$u@-|~b80tZUb#xTYg;edhL+#RSZSw|K4xdRj(@4;w> zZ7)c@L1cus0-V#ex=p@@)fB2K%)W{eg&zh#GGgP$&#_CUGtqPkb}gT8I1P`00)3VD zBUlvfO}faC@fj2^jJl>!*BaPNthP{>&B`q_eJwy+i8_SB2FCyqQ68Is^k*vW0WlnF&L zTNp|pyfJO1u4=tmAJpqFW(^nXabnh2yGs2mY@BP<8LPydjT=RpDxtk}L+e-Gg2OG&~u?LMYv_!?&qpB;L{E z>|x1{9nU@N$k<3Y!o43_vRhUxE-&#_5?s#6rN!k%V2JTYS>+Q`xLhTg!!saU18;~yTRHZQgAAz}rkMinjPRAvd)?l(UVDz8#E0|EKiHm8A=P$mt zxu&MM=E|J0i{dg8t}3Uq%JoY;scBxFZ}ZBa8X!y%8Blg^Jh zqa_6J3sHdMN08$P#0xhpgA>O}d;9tAMP-f6RynL7q=MQVwLUv(v&V`@#?kekn2LE6+P2VN~fk* z^AYxIZlAW_!)@8(d^10Pk?%7v=RL?z%EtKBW^wPd^OyM@vA>6(i+x5MXw0g7g1k(? zbBsRQIEH7r1xwN|ub1H}k12z~S_fv94d9`?MBG^!$(QI!h4C>0)Rb-5U{WUeoMim6 zqI3kVCb_5#T18~6sFca%cY@oU`Z8Qvlu6;ak^-urjw0S71&yH$G(BMOlFJd)1xyJ# z9NbO51O+MA$7Mv4M~^*IFF4w@I_eq^|)DX0MoEksO^l@8}w zS2UTe_incL|Es|-3xpWB)HH#zioBT)CJ3oRaS@uqF)pq2V)@5o;mBN0shOC3u7gSEvjotuI{N@-aE@|5=Hd<#<6w4u~ zF9`HFZgRgN*Qi8J0<$^kPUpXq!)Gmd&OHzdLX#?y%nU1erGpP-(h7s=I#)8mDInFd zpMv+7P(IvOBQ#a72Yyua$}+aArn$6m#8lnQHhktE0>yqZb4$$>z1{S??t=gInV-i8 z{a48l6eAFX9F>+DK!@j|hBm@a0}zzQT-XculmmbBuj^Uqpyb)8Gz)Zu1+cahd@wIj~zs1@#=??DLFHkd0r zsy(I|?xwoBwyw6bY@V76rZ1V+s;jK4yL!zmf1P(q@1|e6wMFncxQqINcJORT3PTP` zVYJ)8%i7Uj5P<@ywE;duun;hR;W0OVmB;+*!a}#p*J9M`jV(Uct~JZo+{0byWcl&N zB^qb{R^L1Q&i;rH4Qpyk+b)_QMY8rKtge6m;NUrZ&i;QFf}_10f}?SQNQruArE@R_ zABOLqbT$XkDbgCjZHViuwwpkcAKEYw$<`%K5D|HGad~<1UfQ`+3!L5ecRQ!ITmvGq zt}c>Hrpt@}nI8Rfv5_8jJ7=}DIO{;6NY4;)6I@4RkhVOqu7DeHDT4&3Z1m69AtsHh zWh^#=fmm(gJ5(F_VCFaIoTxYGfZH@q$5kSp|4xkCU#~m!tM9F6ErHocN4^<#KoEA=bY_v zT$dHp7jiOGC}!p21t-EXbS(U`(Qkr&7oZ;!z~eZVRe?E;S#G07MKqF>MILafJGfi` zN)_AEqbNNsCwp32dKA{aVgCG%%*l@V^EWJT3^-D_hlhNB7j7+}$BN6PWNjrf^k1@R z8Nk!Wqo&AJL{djN1N$aRo%MPW%&H&!l@d9xY%U@p5$-uR%_Xgw(MY7J9X>wLBJ_V4 zIFteoQFN@zfdtM|fHUQa{A>mcN(@UHp^SqQTwY11;W~~)B61`uV;_a#5u}DAS6E?D zC2X?aqdr0c!dZ%O5#<>m{RA=Uvor@)o-o=(JZDzoJFPxPEq2Q}#TBNKUBwj@#h$jt z?{g}s)``ik(u#^wS4Bx5CF(0Sx)4}sJu@FZ5e^XIhfXh3 z@`fT)Dl28Pd2VyFwYD}wng&A%d2WooD0f<{)m3wwVjgSVSx~bJXw`-+%8?*WZq^`ax8Em)JJX)PQ!v26Ng~sMbxP$*aQc%j6qP~w~;snI|FXeMhv*nSat67!b(D^jbE} z<#JJbRQ*JQkw~_+P(4>t#sx8z0!xs^V4ud+fILM-j-8UygM+6VF*RsU1oR|{Tt#$` ztT&*45tSAU2q%KdD3~0LUTjk$Ly?RWAu}Z};pp<^ZN{zB_rj8FP7{zYP?0C`TL<#} zCC<#CuO4_O5b~n;LZVW04tW`{9C0vua5-=zxd2opQQOhr+R7ewOwU}6Qp)SukFC2K zq8fu{J2RQ8D`uEd&7}=>A7svPOou0G#8O(HIayu0+jUkeW813WW+Am2icDAZ-5kA08RRP-=$HB1_ClS_||GS^?IFC%NNnzgp) z#-Gmo?hZ$@-C?P8uqjuq=~?^iPjB4u-S;dGd$YrVvdK0>cA^qs2d9%kC~9(mCE~s~ z{t@|$Bd3L7j7yS-MHDfl0AX7^P4kQ)b~Nhaq)y=C7!N0nrYFf-Ia!^eZztF*RehX^ zye{EEve|4-s)4eEXF_)+ogcND948y%wnLD9G$}t|_9R8OMkfT#T6mqKfNxk5?W9#( zV4t(pd+ROe5wzBmAI(FQrQUD5gf&&3lD@ucNpuNQibVs9YZ1&Z8H-uMni<`tCDEVHgVhoeip>p&|xm1-W^I zB7`TB1fXHiND<-(g!F{svRe1$nQg9MhH%1fpvXhayz%>ul@OqM{VXL9DSg%>)s5BF zjUVy7Df5M#P@fz8>N}z@cswn-obVLX1u!6i#Pk)q#0=I0N@-&W--z#iK3Oa~mZ=`QDB}1rUg$dM+_Nc(w>4)m$!*Em)B^WuHuxZ zxX@8&ao5z8=yiofMyq4$G~bkhV5h#PzNUF*h%ud^ytrnDsjRBR?JqG`7@4WWu+!62 z*i>dH`d^Kug$`$(v)S8dsxn&}XNDSr3wpec`bEWs2$9k)mW`DKB~u%XjSUVftITrO2A45}9-qYHfs5i8S%OR60#FcVJlI0SB1hC*%U6oe9WxF<>OO zJ^|xMpCjiVML!_qE+98j$N|Owk*fno7HjG0X^BQ1UauoMIGoAg5Y66VvDs^8Pk|gb zCGPW0#ept!ctmlhGWFEoXse8H9q4b*i-FH4dHZQ}K(ppV(ctZ20YAI3KecRXPxo4r z-@0pYggKX{mNw7nte77qyo*VQ>Sr==TJn(FoqJ!$pri9KBWMxX4!E8?PGw^wmMjnR zeFgu*pjF9~YGo#b%;#H!BO?=-);x-P5dLA|=Rq7CpCFgMXoq>}{fPuzL|;GWlGS_; zijbWs9kp0ZX=FBsh68#LPhkB5;J;72w9;Xl_wLJhXEpboRZ zK}AzwTuLH^Bpk+Pq`5Mx9OlMX(A@Yq$))*=B>yFWy*#o9{y8HU` zWy>blrk2XrxQ!$pYib`GYhOpWhc)!rZ$Lu`qrkCXa|F>u@D4PHlEpi1e$(3So~g@H z{j))p=T~&jX~swjp^iDZEgQ#N;4TP+0+Z<(gdw)7^^)dGTC4VK%V`MLwzTYG*38K; z%elkB`2M(icRr5kAq}`tFYb7NBk(JUCUhrXbnrCF$&@H~Y)qw}LcGeOpW!TT$&(W? zdkDA{2>p3EaSj&~&DD8g;%-QZKQFCNrNoL-H%W;qoG7-Yh%6A8IR>fABnM^z+A#a% zjAF0^fkcxvVk{D|hQk0yo=O$1HtmW=;8tVB@Q7ENeRk6rfpg4crxBF1xtVB|63@Gw z)v|h+A877q0Nyaw`bGuO6`qle%u;nqsl;B{ANw@UFtGOR-I zUVB5Z42NFIo9S~jQn6_sP4roW89z|c#%K9Bw)^cf;}>9_&)JyolPl*Je{DIYjdL&H z2ofSos=>h5~dBDm|i$WLB|5zTta?_%+ zyqElWMs7g~Vcg4LZJ0R#sttJ+lUabuAmm{OTkg0LMhxHZwXx*83w)P(c}oNxi!Co_byW-7|NJP)^BhKgNfu57ca7&3+eI1e ziXkh&Isu(EhI$gO5}GuRQpnOiGGUR65g1CdP7%R!L8-}9dLQlF(KP1u!0xJ;N;5wq zBOY5=YNCh(s-v2(j%=T^8JJZd&q6q!=NR#){5&Ivb{`r&Ekib*ALJ6^f8fp&>$WVf zUMx8|gTM9t9Goa(6#iL0r#Rm~3s3Dt_iR4kI*gDMTv(f~sIs!bY;4|;SJ~eiWfF3!mVpq)UdRQrnww{xd+uI&18Kh- z{({f+324mQY`iA)It!!;E5)k5ydNaAX`2p7L>^PSyeQU}m@15gpxT<-| zuQRVYJIH`5!pPU zj9>BDi7w1c9qeODejzMEW`W)Z@t|+;s=T789Lq33>u;9BE6n?*W2K_w9bYf3v7_x7aFh3m19eG zdLQwACM{~|4sTg=^|lpVOIEL3vCZ6Fyre7EUBCM3H7lU8I?pe()F1%vpRBwHa z9Shii@2YV)Wf(QpBu`L8u^=9^pwNeagfMe)cL_!MLArQM`9Ga5~umqnUfoDS2}Ua(V{ZXF)5-HH*F# z$FGP)hMeMKzLOLcnIDhL6&c9+h(ZKy$37)yFo|f51}|aQr4* z&M)^rEcGi(`>JvXzw_Hx%_9N46uJOE1#xnHu5Dc*9a>8P*T7I{8{RI_R(8(M>sI&p zKXcG*)Ygz_jNZdmwzTLfTqUb}oDNr=2e)tf`4m5}cDjS+rF!%N6rt9QK5wnd;p|ym z;;PWm&Hp>=^xx4JIhvotb8d?>V0{7_%{Cmpv>FF^RfM!w61t%;MF?}T=F>16&WH=H zBMO^{2IH}wVIFgoA^v6Ku=we^66u0$(J53FF5kJ75Vb4Cx=3kMyg4x*UC|gC| z(VUD*^G6^LFbeo3#QZMh^xu=0#P`WI!BikGiHFr>m zxLtlS?bjDzjB+&u5pM_>ii5b(iEk(hvC(4x1_WH_{B(D0h(F^`8EP>!NEQGJt?fZNO#wD`!4+4Wmt3}oq5;{vSKzp3S@OKhuaZg7 zYBkn^{LOqOKiNjetb;fr()5T-QafmavyhZ%^&DP%p5l0?(P}gi5rr9?4udq0g}|8g z@+wwqvC()Ftq@geHC4mrDNe~2k`34x;i0yuPkzjXgH{$elefV3XX`j25@f~X%84+K z_;}@@N2bnPKfspYBeOpNaS1+Nz6#r)Et_oX4NcyFlXp~a_%5PfNfqZ zJFOgCSg?n{mHA`Mit>$j7P|Bc*!JS${YCcTQ&Ms94MmRPPG{>CpY3UPvZEy>Mp?dx z&krxLVx6B7eu_8Q{tITTzXfS;C@w}UroDK7FcPSl?PBj_7LH0Og_0KGu1 zAz~E_A@~D$ta-MYBp||!<8EVzYO|G^|MUH)r2Y3ZCaRV>#g7NaA9wLO%p9=nXVU)f zW=@GJFvgFL>_ZMqRX!CoC2RfTel@|R$7jl0La>F&_)8KNk)@AaODoCIFE<>eIOiF; z`6T4sKEu$r2;n9`27enipfT3CiswRyFpHHh7SXSk?e*@7Ex$s0vnEJM!@tj5@{U& zpNThAPel{=jQI@AuYzJv2Jif6$-@89(LGHbP~(c9YA>TPsYTg&wN7JWtQteZgjqJ?E; zg)!PW+v<*XpU=8<+M@DOtevLQ6_*%G%Zs$SZq2NvE>gE$<%JPS8YwJy*_?IIh|p$H z|My_&#QYkIRRY2r3gGI8i3a%5Tgn`Z91B-|QQxYtH+KH2wdGp&UTNm|634;|Sy&Ku-(z@u!k`Vtfr}^T9`^? z@}8Tk=ako2YVcn^r`p_7?x=J)Dr?GGhQX#GHIvLteU|1l4h|c2jUo({GsGNusrL*F zvs4UCEKPkvG>ps8buF&0mY%*-(sr2qr|FZT7x)a+QcOcFbMc|o(=zJ<28(MyNE7jN zKXegVccPX2w$R1UY;wYIJQ)vN)zQstd^T23q{vpVB~`k8?C{moI;`IIjR!XJXjK+* z*UCP~t`x!wW$JeB&t<8r)=s~m#$!9Ht#{+b-u7iYK6UL{_Y9M#x`V>vMD!{&s1gJN z*&Aq#CqVxZQAU&#stXq~V4D$;q5i-<=#4;OU^VC$&Vy{gg}}5xuOIMmVJ%M_aKYk# z>{zg%gB4TA-6%og=uv{)D1}~SKBv1>9=_%k}#(_mSpsnfqmIgvHqCSb({khzH@3AQ1H6Kwxq_KCJ#@RpdC( z2=Yf5^-rPxxxC2Ukw3pHgmpk>OY=x#atCFM4$=Whrle^iq(PAY#oa47Cwn1u+#pFa zw5jKo>~)Oll0;-Z*+w!W;sh6vMrljKY!b(o;=YtLp9~hKz(u%hFi|H>Z^65Q$$WSR zCrROOfeJ=;zW;n%7Q(A^7QVR%xC!Tx0Y{R($h=JFMEdEP+C|rNRL|*J-BcDq*Yun= zMwVx42ii1DJN`?H+VgYxTeJ5`9v>FoB(#V(Yutx~R-(KwkWEIEmg!bB`vqNFu}} zN`kvUN^*(f3{UV+UQZk(!vxsV+E4=i+~Pv`Kmn3On}~)Gd4|~k3%L4CsaAf|1pqp!XXCO3Fx6Qg?aE2bNYpE3Km=HZHl}xxm8@H`cj<& z*(3Uiq+*qv((oZXq`Jh>J?I=1k6MY}UxsT`Cc%U7hG0N2VW^D`$9$MkooJ(bl%9@M zN4kfK_&7x;EaRO^mC4aTl?npBNfp0%g@FWsBogB`{z3a_&;QXVe)X5~E)|B<9$rsW zlg2sK6M{Y;Hw1BdPWPxC1ZO%|@A0w2kwBpz!J7;z{6ZiCmPi(D5tUUb7PTFB#0Z+u z4B~_MKQm9Kd8-spLJ}#Tg^Keq&kI2%9G+NB7CLzfU=}cn(*ViM`ONWjJ_nX~H|3*l zJg;m%adAXmR3jC0zB(_OpX$M;u1K1f7YsMt9GX%|1R#|Bvu(_)6V;996-TfcDn)tG zadO4bPVzU!*_AxDn8%WG3p*rmteGfm?IfDg8njR$nXBB4H4wt2XLPrshDc ziu!QpT?j;6-qJWztIHg9T(RuRyC@%MT;qJX9HS3o8jY)Gs_CmM*Y4Psj;;n%?Fzu4|8q%>#n@U?ZFE6$i?Lq=*?pp(J zms4^0jwXAIy@+Tgc)-MZh1|~O)xp^la%#4-ZpSoFd$6x&AyW#Tn_jLgWCt^^I=Wqb z!G^Ad-!+y!-&fIfCGsLY0~ta#%*L5mXvI1UU$KtjOy1ZWkbS$R+V)jV-Noe#>4s^U zbQm)#N#6=jk}Julj|dnsvN&A>Fg$R%;}!w|(pd^YBPE)~C;}Q15rZfg8Mbo5|DVW{ zC>42wkaaFktRsLJDMkS_JX7LTDJ&I8nIa+qI1~pCl>k~a*08}*!M-IZ9rTX*d?QPi z;2-(vp+5~k_CA!&FFRL@M!h;x`D`0_+jAZ-VVX?v2wPAe9QSh*BanFfAK?`!3jaZV zi&@}QHP>wAdtNT-!YQ;_&<7dv5wxZJwh-0hkO)DapmS_E(s?ky?DSyR>kT)VWN5@; zpG=%mG%{+fY{7pxY>lR@QERakN;t)TiuG+_j)5K~^kuG-K@@Y}i8 zb}@PP?nDxXX>RYVrlnruIL)pFk&6XVV{~dMj=YhK&H5(lEN~@!T!0_d=o)pLGtZJ4 zWxpu9pAYJ9@cj?+qIhneQeVG*e7IZe|1u$(M~&H}IB?Q@pzG8_<^@yC4{{UXDglzo zDIWHuA`4hk+@`DyTVpYJJ>%Ia3If_7o3wI60briMxcRS-Lk?$o2(3XTg$(sD$O|&T zXY>=9cy@!D}ba`+=;>^1SO9`K&k7+ z7+354*T(V3Ft#YZljfF@{hufcnI~fio{MvxC_OY3kB=yvrh*c&FlZRj)OwJgdUPAj zmzOAh6}(sjdKKq3o;rNPSfaH}VXN~tv|-H!V1^sB%^{NTWe2gmBffe87cIr?Ki;5QOFeRD?f;}jB_`bGhtg%`|wagg4IIynsL7tO%z!M|TIsZ1_u z=e-)`FF`NOFEb1ns ze#TN>S8fiw$b`rqhb%YMWDwTF$|cn^7T4?R3_4*xTJ#Y)YM3NFDg5UNKfw0i^+p9@CJ4D~ZSTVwQ?BzhjgJ&9h`%KlDIR(Q`C(M(bKy>W&`mcv&^h zD>BUdG?SbQViAo5*umaO-zUrR1;j+rbPy~1&Xno1TQXz8zPVH7{?_Shn6F@#uVr>$ zuw${#J9V+>BbC0J`FuW6CyG#k>w>D5gWCZ0cZuKaY&8^6AYuWBR}vlW4tQ$difzjK zMu`TQi@ND(y%vf9_ZmE>*D-yob6bm(nJ3jWajSD{i*w1u>gMv)Q>>_mk2qWC^h{YS z91X`Nw;mDZvEhk15*-zOB2k4U;1=2N9RT=Y5B1lZnNKNr zNBL8*Z&83XOqt$VSKnlJ&F`qQxxDRwx#UydJaWwacK~g zF8_Ue1B!n&1;UJ)32g9b=&^Yj0YQZ9C-Nel2^J02_n7y6l*u_KW^~RFi)@AS^G{eU zHk-wogsG#tVcn#Ha&<1@F^`~&ppIZM0a_RCv=S%;-51TRZApeu@LK5Y*;(VXqA)dp z;zLCI0oA{f^j-_ZNInZY{|Eqy@M&65A7mMvKwf{7vg53tHOlN3dlTdp0&pS$P6g3V zxoQ3K?aJz&me~p>?oq4?=JhHJwL%9_^rtA3=uEvdMQY=`W^w_BYz1H%hyO6BUdnV^ ztm2<7PT@6S@jaDan;jjmP-;S{39312hYtx{F6$!8em8vq`p>fLzFo;@T9%Hd0(X(Ihaqaj=nE5h4=8rwFIWxWnP) z8}=pWgv^!*B_ho!EX!dbJx|J$bi`bA2<&=U8^l-Vn&gHT1YuFWkT9rgAeAFu^8bf1 z254-O{z-lbtQSI72ro7+H{eJs(qcwE&iFP_*}&`_TD2h_i^cgKhRHO-!RQCji$wqx zOwWO%bp$jc9EG(fGs1lYToV!chz~W0XMNNZ^Gfr)f!l&zc^+F<>feHZ&KvRdD2>> zWV4|ej%q*V`}by`SU{6J;HoD){~W?PywX^FJA2HdB^>=}Vv^5FJvvPLaQ12_N4H>0 zqTAvh?v){tO1(q(^CRTQPV#rKldJ_50NsX&>b)Pa&~e=12LY#~bTeDbZl*NQe2|DO zMiS?S$N65Qc~1H!z6JA5N<(&Ho8dX0!Gj_jD(5+r6QSp{tPRTHFFz-;puUKsFXE8y zB?h;GC?=J8tDh3|LqS?fCreS7`W>Yk0plW}BhZ{En<0);sP0b4<8Sa2_*xb8F^wyA zopE*U7HJGVP&zC)=kW$Ye@mxGkzutbzOrBB=tex8kqom{+e%CO5@+K?CF{K4a=PT^0(7*k^@Oz6|@odOrqp8YU(*>KpY8{e4(#R zDH*h77<33E8(LWy@8#a5(df>_w-<2Ek|m&%xQqCv?htqk=qA>C%kh~QUmJlrPoB&m zeBW-en@-XJJC2vRdV)ITco)7pn$Nu4lergyp5b2@QxrK51Bh;h!4p!v-2tpS3fe)G zI7|PzcF&~_OgcpVSydL20H5bY<_Ru^1xV>7FE*lB`GlWpOaumH#+P65%UvXWk$7Tc zgo0ZpKN9KSbc1-vVH&}hO0thp!%}YFfPB(bfKH)kCYtQw9vfP{n$gD$Q?pkOv5z00 zGm!ZWeP4AG+g3O*hvyMP9u%8Kbdq=s6gBG8$$W-wAH6rqKaM&~@-$pqaN)=(zR8~9 zcUaVpFio0UC4;_De!_Z-{17`uWW4gUJR_-<+-A9()TSiuc)s{pDV!ASNrX=gk)p>2 ztu9_y(XS+*{#VQa(V`4D@cUQL6=jL&5^4H^vysCFoC1;$CYdlET?k=_R$Zkb^)5*&qz}lY@DWHjsu0qMACmYmBcFft z7W@r_h4eUe?7%m2rg-)V5$i&`o45`k#l;idrx;BmWGNUrRonjfsNp6C8bXjlCdhur z`7#QXYi46T4*sDOKzAL9APBmLKrU9n{3agGUc+pB^)fpNhN213;Q%`wU`I4$4E%ol zn|~Jd%V1XFbjYo>qgG{dO(6E;TPOU3)@3yBC~#qez1nQ5Zm+P}Dt=gDwN}7)K4R+v8t+ZzO5qj22T^H00jbEW#HQw*F!m6$G;Xso!MNW%mcFloU+@7UA@3#QVBb0%d^#?%J_jzXX0ykFIkPW$Rk zR_hYq+ac&B@_-5MM5rX}18@?sB;ZMQAjwQIv7qY|nBex(WQc%GOmG~XBM-}SXvczl z5@g#$oqPBCAM@|!xvb_c8afQUnioZ{SGI5EhA@lJGw`2po*1h!l|ln{YoL z&m0(gAwe^;(*Ae|yXtid$>je)Rr!1*%#tFlM7Wqh$0CD;<>iHO3QWJ8clr{mH6qI( z9~>jGL`X7SR+y$l>B6$tIFH-VROzUxY-+O9)>xV#5DG;U^AQObz(pZP5?yc*)=60| zs@4V+jp#5GQ2yo536z-KL7sf`TwV`u;81x%TnrEH<3F44F)5SGA_-N0Z5)Sh&`&WLec@2Z6HgR=t zfCF?JwjIzYXg;Lwe&t$LaikM+Jx`Zih6>}ErdT8*Oxxw5l_^X{EcG(h*nt%(^r(CJ zIQ#`XXijKu&HL5T*Q5)jZM5pDi1V=d>Fa@5rYeggDztRj`|5Kq(gbi%jjva)4U^Ml zudUhq$p=mS!5U~yvNCINamnWV9th(`3AP~i7M_Ie^xp}$Gg~%@v|O! zp)bGF+>}X#ZpUfo;;CE4ufuefpfpQ(1{?Tuf|W{71gyw^J_R$(rb%<8#nMu6xbvh< z+@sFfSrf-AYo&U$H2@@)DkLc4NT)(+QcCp=60tSeX9N`$I&@@CwUwf+*oRSLs&(cl zkDXI+`UE8^J&zAhP6#Z0EH2a?uGwTCC3rg*^IO;hcB`${DCMi9Ev7;vK(R$9Oj8NkCJ9r~=rE4)Duf z-Z25bhg3+?H=&_h{g6Y@YMsmBI0%3YsTT}n_hXJ`H#^ulHOm>n0$)m;sWF$9St?3q z;s%6u{ln;!i}~vU;$r_C-6_LYC_cwy!e3)?1tSQS74bYr|2K7S0@&DD-;3&#EXlhp z%aSbFmSoG8JUZUSwk*$hY@f`Y@g%cFp2=jvStbx0$b@D{NC=4Sh9p4QJha>kgtVm8 zg3`-v=t2u>N@*c1g<`)hw|(i}H-3e_zS7>y?N#pY_y5k3WREA%SK#)|SVz*4biVI= z%YXm>{up&rzB(5QUBOJ4G6T-aY31!If2`}2vkn?Td$Zct)D~!IZb$2Nh(p4Oe+-2b z7B)V-Q+}xz@kiv$SzP6b5dN*HwnjHWECNgNfkUtl_1xL?U;ueF6VOEuz{`0CNZxlj z?gd4-GSlWB=Cvmi@Us z6?&>%HESd%(`HYso=}@wd1T$#*V=w<6|316^D^r7at5J|O_)T?&r_k$+*MO2Bh~yf z^3`4PHIga(e`gDlM)mq)d6=?z7czxvuKT|MN23;_OPLDlFMxts7YQg+Af@oNAj(lI)MkEh6%Sa`C2UDGn|DxTc?VJs|CEQt>-e6s z5B(UBj3J*Oo>r29ndlP+-WQwcOEc+A{hG(~`I*ln*QflapzX=YUSF5`5Z>~n=dV)H z>oHwJH< zIUfAwub&t>ka*=&b?TYA>3cl?k#GOe$xk9<-nSDn6n}{9} zZ|3U-ha5V{`U@<_^a3P(+GQY{i}xu5tU%Gw%YRLCFz(fEzaG)Vl)tUr5vr)(+nQ%k zvV@jF^L}(|+n3R7LENX&!d1YIlliqvMtb7(!^M}k5c~1^LmC%FP7{q0`U-Rwd}lq+ zZ?9@#l&UR`{I(O`*bGO*rcrha3`+lgz0vig>ZRE$J9J1_C%8x2{grEV%U=IlC#whL z2SsLOydX^?JBB>M4hI`8tXQUUEY5#kJ3F_>Ib#xM zt+ki3o^36|e&&*twLn-Gp)Qb#)hmP(56kgv&Fj?@_s<_L$ZWH!+%RL=mj)Y-FD?o6n0NZM?8I zxUMX)jEIiqWy4sOfh+0#R6^XIQ7#n=`ju>aik?IRs`KYVw`NP9wJCQP(x$A=a$a#8a*ZS>k(tXu63N_X!T-dfn*|xGadY};tDuZY{U?vc8m<1*3f$ELmcGyFC zWX-fypu@vJnprHb7r6zj`(m6v?c3IU2_>_+F<9{S`+|dJE5Zry3tB#6oh#S)eq)2x zQq+}>33+MtL-TBXjcQE8HOEGqltIO`jh{nb>#wruCRes5mRQl6V8OdB#L_9G6NAUq zP2&w{;5w<0P)3FIjdSIq&?W0reh=N1_3&>UH|{}w&&1Q9JrEJ2aX?#Kjq{UPxUx6% z%+~ewy$i=D4(Qy^tz$sjytcboWBCKs2--T3jLpo8jpy3)0h=8cq%A@0xK?S~dJ=NW zlUN({e(D@MP;UMgWD%lA$m2=4piS)$w)Y9K`4|x}(Cd2pLl2dIR~1T(vO(mwJqLRH z{=dbLS7Soxmk+_~g*~YPFez>~@&!ntU~A+?qoX%e5QeS237f+2k%o()Ri$Gas&0m| z*jzJMFL~HBSFz6|ULCQCK=7O(;+grTO#_o}k&IlvA7h0PFp04oz z{=^+XC~9kQM|bykMy&oYf6qhjlhq%QA}oRoLB_n>y8+sPTp;!=W0jJy`p5W^CSpWk zz$!GBnV2=*Lx?;(sAJ=G06p#k8w#6kL%Leu)YuVhZ5rup^|goE+dI7Bwq|#0gH<16 z@pq)#ExtBiOKVeSe`l*3(DdGpWM{O)-3IF;`tos%)y?Qjkp3fuQAwj<7lsNpVV1Sc z0mi}$BUhM2Ko_LtSF*}zs%!Lyyp45D5pPqlsrjwvuJe0UXKQQQU|VZzry3medpvb@ z9*=);&$O@3-#)m<`@meZduS%!=Jt5pZC&$dzv{Q(K8ffxboB-nl8g$eT4eD9sb`&) z9T-5yW%^8$yxT+z0K<>YLVf?B#dn9gmhc@-vAbqJ0%(nGW z%;Q$=k=UVORO^MSW#=_QG`AR|DQo5f`;|&#wY?p>r6(d^SdmgGg^REnO6-g57-Wd8%fg-_BwOautM*R81;<*s z_H5Ox4PB=S+Vz0Wiu^tuLCvZHa-3>+vekYG;ZBHj*}f9(1wxxbbv(Rcv)|*`uSW#Z zi9IS-OpsPCA(By&!PEEY7Bx@QOTp&B4sVwiFEvhtUx?^klwfqQ1~_`@Ap>8o_P;ux z*&19@?s`49J3<#$b{Z985+N`JPHS<;@#L5CotRH-`UvO|;MrelbhUp|uQy#yItN(` z`aD22&_}It0Ixw?Gb$2h7+ps4oWWR5tM458V0tUv7P=#gPgCzj3C=amAlD-f79~e! zS$Vx6h5*RA`m0phM!|B$dOBD2(F=im74oVr^WhC7VT#jL zIk+hDQLR2pO`(rA1Y7s|L9}-rW1-Cl6nv|O1j`foscWk2PS8Kb%N4QPA=6o?13EW? z!C4X$6?(~>g}wc|vIZ>!*UVZNZ8|grh^ebH7qq<$_5yT+`ERfnD6n2=wosS1OV=|n z<5^IdOUD-Os7263ikre+D`R0{`&I@roWdT^erk9vRiGD!%d|2|Gz6Jba9X}C4PU`^XdpG_1^C(*$OhFC{ zd%QSKc)Tgg!|X+I3zT3*3JLIM@gfvX<9#*+0V+L}dtGc`bpGDa{`kcFYq~v#XV(Ss zKmV4eJGRSngPc(}>NonE1F?zuTVniRKu)iuhUX?eDjw>*T;>h9;KXZ2`Mr17e2;S6 zZiioeU3~{y0(PoxDe%&RhRBF1BwC6)O)_mDP-2_1ic!poI@&=GBs$t&V24Fi8e~5W zZvF7^KzppuG#l!j$)291v%bMJ`(h}4QHk-`%Le^K%KYM0}M6P z{q?kZ>jnmTXWCVrODR{K+UavlGv=U56RGReqADSa5D^)091y9}_8?JO&LL_z4T?mJ zbXxN^Ganj>jXV<@iM>_Etyn1Z;6y%?#wk?*KG~b_7JsqdmC0~t-iSAM6$y=?0=a?M9+2hIYNhwtjm5946J6(SFqf6F=h>09Rg@aI`7NarE7%vS z`0WaQi+vH$4X#3wxQyfi6hFh&Iaap)Nn=U2Akyz9HqT(P zS8ME6^a<^uEA;)-m7VN_vvjZV0GkhWK+y!jA%dEdkek>!9W|Up=S!qTX_PNcFrJUh6D1f9i?6Qo$dKY%N?(w3FgFXIVP2}Ox7#*MJ9eT% z`9s_Mn-!m^<(P(-#G(%R+5Y|)h#nZZPi*=33HIQOyw*5`W%(H2;GcYqoNsxzPhbc4 zi4A^6&U~TvSo5i@3mnv6slUPsq_?F_I3c|Nvsf3%K+7W71ocOB`U3K3F{((j*6;;s zw+yk=vGl`OZw0Pe&nh2}XPS@UZ*ehxNBj@fm%EJeXAox$5Y`tRaYG#gU~$|ywx|#I z_Oa&00w0TuDvn>Mw(?XLBf^duaj3-zjQNZa&n)5{4_rUC|FSj~Q{$@DcoP_5j4de9 zl1@5fy9zw)ORkx zX&*=gI@R-cmA@K(`ufDZ*({dlrPV~BWmlph7+eb98)!iZmSKz)Ws?$Y945G93wC}F z#t!?wR(|xNJ9f9+_+&!&fZYTsAov+^ijJAm7YK+8(s}~jc)>K60xf_sLh}W7qA?ik zXdK2Hse3|xT#YY7yp_#uYzwmOt3NO6Tf7$&s#l`$3{)E5t}W)eVOJ1%xfzr*wPtj?nF5yU=UZF?7LyJ&;#)#gUfiq?l2!r~13QFl*v zQkD&E7vR;($_i568jXZuB)(fC$0q>OQQr72PaDQkEs-ZltgKlK+e^rrwZ6M%jA%C~ zC+uRZH6H}7>I9#WC?RhU42$x*Q)IUC44)=O!_Ls$tfXre_^N;{N+j+>t$pyxRF8B$Czk zzX6n0s45pCL@8X!#^#aGPdec9keKY=P)aMn(r3TdK9%Yo6?`^&#cKuv+Va%{!Mp)K zqTpHLuW~UHvKa0k+PhJxoD{DOX{b#HShW*gJ+wkhX4W**1HMB$fh_S8(NNTn%WQ3} zfP@9wrKn?H)gse$YsZP!3>l{##>iMSR;xF$x?vQrJw6>0tx#Dn0tpTxfF*PF5K%-0 zigkepxdlso55gK^7@h4{NS(j2WtdzwYd1j5BAahvwa_lafP_hs9^1lE@u|YBa_-S9 zB1cpTZJvWe@X=qi>qArC*SWu4B7wv5Ai-5g8zZ%#i#3^*42bQk2WT>mXBgE72#oX={Hn&ZS6y7%~V!lIY~e zYDND2L>j>^e5gX+zIKRdrc7Qm5Rwcd3)TW9Y7v;^dIj890sIBAUv!>8O_W<=1act{ z+rc>MY^YLx1MmokCoCGl7_*;N-=ywj*VU%-I zZqH4!_efv<5Wl5W&tV69!uCqv3XD&cSP^U@JLdn@60ojrK0Xa=5TM*pQ6gBB22@aj z>N@t^5mF56N`)&o`3X1^% zS6ZKCOh50jcIU`?sO%Jk4OVstV-7h!{HT{e$jp7ZRgIMzWLl4RctMPvDKMOI$PCVdCqlq{%t2#JKC`^>lpV0 z93kxHBZLYxn|FAy*Oe^a} zSL>eF>}lmew`2ZL3C1(?Mt*n8WDEET=*)kQ&5i6=7^b{5^}BS%F3%w=e}J` zBpB{cs|tbN=sD$j_)*8xRq6JRE_TU|VI$52wdN=|(HM9t_$cg7w*8t$-yGR@76xv3 zptWE#K7~+A5pj0pR7P-|K~Ha=~#o?8I4+ zV)dcv>D;N^Mxv{CZpbi(=FXo#RsO$jyz#~-o_JEdX8I%3)1C2_A>;K!Lx;}aa_DpT zVBZr@JV8DFtm7p)AO6+m|ahsjDHG}>^%kQ;0Q|>gkLPjJzz`HJn15 zd9?ZSmHa%kIY3LYPid=ilE!0LXIde#S1`( z9ZVO}&n_%XP2o|pqkAY+!MaRd2+J6*PiEBHHMLt2TB%&IQA6rhH-y)C<9)HF0)cFF(im{Mya5~hRL3d)==2%Y9aBzcoztrt8XE%jt@UpAP;>hpzk64z*W+nT zdg_}4nPz`)Cez+rzW##8F#me0-|us^PG&nB+=;g4_9L(A?B28M)vwNmU2d1lN#}~w z<7#j>H8u_S>e9`Pv9PDXRZC8*1A|vu+Fu2;6=w*;T^?VyxH*v^&IYh+HpH* zAa4%F>m6?o6d3oXcz;{(&h<7W1Ji!@V91Y~^}5@-JKFWl2AV&b=?otmHJV!dnUQED(cnx)8(o<(e_JY} zdc&?dmrJ>>x>cW#_lh<=EzO;BuN`hztSvLpj%>Y-`o`0}VRsY!b`8S;cR#od=U>;b z-2@-AYk^xFY=G`COV0r>pedCs)GA?VWEkms^158Ct@TSpPL|r!&t~_-lHbK7I0HV&;ozbt4wbB;p-s=LY){V|x!|^TDt5?V3A>FuJ#OO(pI>v3G3d=GgWB zr(qnA#k2eOj>Ylm*^YREE-v^vY&t=?kQH4Rg+Sae@+BD8ap(bWLNT6+6y!zg;PR6} zRiGX}=5)UQVzcXwiP+rxoz8c^(bar$E_Mv;sZR2Z);(<@)9((=)wPvEZ5|WsYObTL z{AqQXOiI00Qj;{j4T2^TM*vzmtP(on6p*wU?c9#cMMzQ7-@6X=1Y-{1HCjgy_J9{C zEzjuFLO~$e5H$>S)_f87S!>U$tvZegr7|0aaY3@kX?MhfCtdsi4`m{Via|kea3N3y zH5ZEO>rnm>mq4=*X28g-{ls6)sEVz8R^yW7=7?a4?H6MHI zu~w8^R%{Ej_uqo8$rvEOr>Gaub1z=g3xZzT7_Djgx=ESf1Bde!rlNI*SGfuLsPwID`5Gj**<;M$I;B2GRLg?&ZaqouHX;nE}M_w#RF(6J3p_M z#W|8N9zvJY0=|Hg-!hEX;VXKss{5DTDBAmi^V{8D)u4#tN_MKMXh<+3K&2hUV&d6a zl>*UN(Dal6-VlWTxe2?Ewi^HzJB^_9E#^-MiA%?(R8w15R~sz{U2Us{CG&Z_*=Xxx z8bezbB<$*SbY>9iw9+5B3puE}9aBL3h0zr&4O*#=?qs|!vGU+lLna7b&|A&nWc#u+ z;T292hJ{e_a>86cm`yJ!R0x9Q%BsN7rDo{W1xPjY-?lCoxQc*j>1w0HcjcBtBljS= zKvxJefE`*i004|F-POi@%^N^<7!Yt@rT=G-B_2d7wn!ZEJ)l53&2RP z;e6F~eqfk~k_n?|LCH-Jo~+FKUX$_QnyJp|mYm7$)B3CLx*H|))QT8wF|8o0vKGI) z#h8lgdEry*Rlj8I2RrWzc`D4OadDqvy(7J50(P@eP8Dm+EMoy5#6#`J;dPnJoAC5D zI*T%kah&bP+wy;prDG4ztC!*RE%R3j1++z34L9I)KsS$or|w28+w(TUS+qsg;nKxQ zv1G@m(2qXySXN&JbfaOc(L8LRNS#0WMyaoQFxzv=RsS*`T>3;2Ul1MwJZPA}mGSnw z_ANzFw6tuOHLa1eiG9vV zgD?zRV@1r&O;9Yq*fEHZOpz4i(Dr+RyMX2Kq-7(X1>fU#f-0B&#$b03F6LuXbB4K! z1V}6chF62F8s@K{rJnA=lyv3II3r39ICZ$KM#n8jJ;hunRJts zLTDT7=h_1;pf5@21ui@`*AGsmo@JSl7e$9#7U$^d`GX_BE+t8*^5Fw!uE_PBxF;=7 zx^aDQ9V~LM-oc1~(ttASrP$NQW9(Dllb;MAkxJfgU;_W|VCw@9v<6j&l`}*h@+YwA zHo*#_^<3?8naCkG&h~t>o~v=}*h)ilX7OiRTTAd@mpu4u_dJiPGpLVZ`r2?-&ftkM zm&Sa4LFS%V16f9&Z1?J?g$mjlJbdo(aE>Z_>r`S1D20m#F*gKM?w<2=bLVFdjb;ut zH}9(t1$?^_L-WJ_uK}-nZYXws7H$!Bs|4CC;Kb0}6ZrP*`P+BDbs67oZ{FA3yenZ0 z`+;;({q###T~FF*-~_>V=(qvU7{)BwR;}vJVTYg~da-&m&QG<^DB zAS~h`I84gl8uSJs8khwW;zH0nsCEwwEDa3oR^ZyhyYl&6!caM-j#WEvL;zwY3*;etq!7wfd2RXnz=Baq zM&hegVP#gPD!(GhqwT}boCC<%iw zAW7G*8fM{Z_oCe-SBQ@PDqw9?S~8ZGFH2mP=Y@%6a^eN6iGK(8N32%F2&xyrc_Cj1 zT)=FA2^bu_Be@@X!iMix})P=mYbTAAggKUnuUe+*%|L|{$#=^18+8VYH zN|LN*FC`MeU?OoTn_0QUfTl|;_&Edx?e|)R1WF78tx-Z^fG|0c71f?ZWi>e=bs&oS zBv@3fOe9ODsm#)40=uUsaUByxR^vdy13CZ`NDj7bO7`#;IvU=SDwR_2Zv0TPR7w`T z_xG%>_FSBQq-%8*Vi0-Yyy&$=0f&c*mD2Dtn6C**1NcWo3FiVhaajFi*U9Bl@c=fE9Ndt}3slofs>6M-Kvpt7=p~_dI29y|f8^h_pUcgN}}rEVyAoW}qtT7w|7J z>mbtpqJu#NL`yGU31vVW@p-87LfZqhzpz1ae$pZ`pzy{N$|YDF8%PRbA;GesskBG+ zspH|p=X-l^ITAizjQF(})!xZhjQI0^@a$gqO*gssp51-8FDmf@$Zvu9fb2WZHf>pf z2p)*K&Fxa!-l(G*At8&4LJ6DD*M>Y+$uXzw&x?U`$z5!~eQ-w}F3x<3u1o*OCg{%fdz zN>pFOuEWx_va({z5@B7&2iCUsNGe=0n@{$j4i`?^LcAK3T4pQ3bo3tJl>EQ4TtRdaR-RLc^;j zQ;D`V6N;1J>}=a;>vS?M^hzok*c%8OHKOWZ`H{9@unm{qVl!lJ0OT5n6*cIc%+b~W z>xf0Gw8%|!9uyE7_sMRki-a*9kO%SI4vz{A#ZltpbMbg0)_-?^`u~A9`5z|dP9lEx)9K9>lzawc^_}6BNk*`L;NrAKXLyF{N0bcCtrFN zIy|H4v*@WMIe0P31F|&5vW6k1ZJvu&?`Mpa?kEkDIrX4~Gs0GsV*e5lB%wP6{ZWJ~ zV&lg9h9MtH=wkEo@{BM1ydYIRMTkwnK}P*cBm*C;Lt&fNVVa%MFJk&@nwkWStRT?= z1QL5W$k$`*@{xdY|1(toh`Z+oLx)al z#1eI1rlrB{ej=1~xuK&pHfEoOip-$Yn*DCqiNlz1?OmO`3`qoeEQ`yc0s(df5$}AT z&u?y1h<{i-hw_Z}*=t`%nv&m?HFxdSYO~{5w<{L#6l0-1FZLx3CpW?AYgr}D)s*+( zLy_^rdC}=rleoe(yk4%ey}U-^L^@vn!s{YO#$}x1)?6W)$6;}J?-ZjF5z;hn0VtX$ zFWz_R)O{CKUijwy3s;UGzan#O+t`Up3hfm4kwu^+c0jTN_W*r4yj3-t0rCXS0DH&4 zrHr>trV6r>tO$QZ?QPDXI7TWu^np|q{}=&f>B5ZQLz`Yp9xGv`aph}E9o89TLKq3; zK}uu4Cek|I%0uJ>ECUj1{Dbuf|7bVRFH!OgBnP4?v;OQC&^_hb@*B;+4Dfx%Mu>M@ z8w1=DR7`SbANNG8JIsnd0P?X;1bSUZpO*>%l=3+=AnSSyefMc z^I+9BB8Q>Gj~xu?VT{5dlZHz(uYwRI7mJu+l zW&n-F6JNoWE4Yej<%QN#S3|{dWu)cfB*QzfW+7ln=yU_Fhe29J1XWng#@`ov z-}_>}*X)nPkB>COBj(4?M9w9#*vEHD1jp%-6_GRUd%PX~DlJHRe2hUK(CE1Rj%swg4 zU(K(O_VBR@TeHXmdLLA52LCD@JquFvgXrnmLiYP<>JtCS{X^N2<1RL@9cm}h5M^L; zxltvIxp3~}xt|*A>l^F4MZ{s#giSKiUJUdM4D(RhmLN z8zfChBeoS6hat+R7}y6(TMpi`?>5yxRCtX`jw}Cj_7Bz$1aXGS1Qi6JaTv3hva_x%m+VbLL*AtWnFC8+`^6tK8Dv}|6P>C3 zK)&I!az&J53481*j2B}-;jBSek>e@fd*0(y>*a@irU_+$cxpPAkFjBt@8PHbg0<9S z>_aA{PmMT5=993Q<)|O|*nRIY6A9G41_{ms)Lt@SkjyhM;G2BC0U|BqXJ6M#DYf0& z*T{AWcCr7D~i;Dbsqnt$cG zbd*JtL}b&E_#7h>w4wyRqYG3|R;^Uyu=sx#ngXlMD@Q?@K@@}pjyuxRQCk!KRT!`e zAk<)uSSt9f&RK%B^Cj|0Y@1>Uw)l2<*sqs)h9&~hM{_hOKF6u&3q;F6>*T>U*$RAf6Uh!$8zuWBZZfSr@*4=OFKY53z9< z^_{Vy`UrV&q<$#YSwD=&P)sb5A$+1^Yv&vxu>nPCNf*R4adnMD%h9%56wbviP1{DG z-(Ri2w=bQ!57wWcFW57GWTa)-7`|Ru^j$qh@RPpl?;dpq`zDO6nR%*^d0q?VTlPg0 zr3*-H6&rAENP-oH{t=!n9z) zElxWYyy7^jQepR8eD>>w-Lvtz6E&}Ke%l%SDer}L6I++V^&z{9EX~*ju252KdOhK5 z3ab2dne5bZW~49MHv(U)D#UW-#WmC$?%VAwm7Kf#tU!dS-pUxZ9K9Tfp+bpN%c=GQ zYpzA$BpF{3?RDl_s%v3&<*5bHUPr&5>Pp%{pEzY`iT)0BAV8EXbVhk>%ur}X;*jbIX3b;RaA=TxV)dj!dRmf5{IPn~Xgy8KEyP=ZA2JE@M-#y$ zuD+(r;I1#OSv?F-b$_+Qf?7xpmK-+(@-{QP7?G7n$bz&JlP8kyYfoZ?==dl+Z z55|5@KgqrSaB_|8+Q_TucSU2POF^wZ_+ZTbQxDp&a0=sIQ@2kbPcbM=UW%!_JW2lw z4jQ(v7deaw|EE@v*|+#*h1^Ev?5z>j5xLgtfeg2lrlzHF{#mX{IYmsu`v;3`*e5@$^Gi8Q%@ zu`l2i*Sp3?g#F!(hbc7^3M>o?(+n=OV(CbE2QuW8Av%)I7M10u$tDy(Yx!w2!w1FK z@Yixg>Y_Z?9NC9;>^WHM?CaUrsXSX&Gkrb%+kJ8!jqvb6IdxEuG8c>19){$FT-G`6p)6hCbQ`1Kg$AjxR9UsQ^?nM7M zZ^R!*^c_V#M&gi!p=vW5Xg`}iC=8SZuo-n9aKhCX6%NI z7ae#d*QE_izRMbx;>?5KvWl9L-!Z;$L#%`s%CT`nY-=B+&wxP5kpNUXq3S@TWPA!( zLyyZEY9M9uCv}BP8o(M@W)azbFFIoKO1}RfzK{Qyd3?WGr;)K(e_Hvz6llB?-{-!e z|MbsfeZ*-6wJq_s4?hQ)rdO=(VT4;??_u?FNvfPkFAvD^le6WG+2QuxiGzvV?d88# z85A;ArndLU@$4|Nh8Bj0{kz-RcKgeJoX;b#lKk41(TE4iEFoxE@D=)lIm&;Ktw8%+l2NmuR+ekI-;2?iH;H#Yw4u2ZW1)UI1^ecjXg zv#0MKe|R#IIhR@79qEkFI6&K#_VIW{&%(Ki{Knk{+r#7(gZjA7H8M(ufumT%sv9nT zjT7 zc+c2(28ujf_(_{|?{H0VEB1K4)lf+LV7pY?8(gYNQ z)jR&igW=&|tKc4#8}zzv z5Piz_O*8bCzFs?jhtw!^bdJWL8NBzhP?HU`_wmnv&1Vr|q zLg`EFRFvpJmJR-TRS<-(gp20sMqcIt7Ow2zbg+CyU3Pkl8c`9EW;9XYO9^@ym!=0j zfgV#`{!N9(ZC!U07K1o6Cuk(NKba9&IknYR* z(c4EGTKZib9UbR=Gc&&3jk6;ovyIPg^I44Ex_h*tuK7O?c3d3nc%5(GKHu(B{NgE& ziHjDp*j!ES+s=Z%( zM39sj9h%RaojZ9EVQM>c014tL)TM{T?c&LWoyVZs2fYUNq7P#0vOUYNJ8xM7{+I00 z2Sc&odG=+6hxkxp=YAC%eW8%AvARAQ=^AH@+ZNxFHBX!qhvR_kksd~-4rsqz8i`G_ z3Q6hAXR=^_a#IOX60j+nOVsx~o-D#1yL*~PUNO>~h~RbB|M_E)){@#$~i!ohO$gf%sfV5NP0~M#4pM1@a>%xvN%2Ck!yF zuig1>Rg=!`pdC{Cl(n1;eoSwuW%i^WvBDJsIS9)^{71O2_DHEWidG11u!@KUouZms z&TCq>RQgn*^VeQ22!6g=z1Aj*AV9DJ*o)=;!lguBux;0r09B|$ z2vI>n{*`KpVO3tR`e*xpEB(_~WB*FkOCi~Z{d3e_3Tq}08Lo(Z+)B&g05y0L7C=J6 zWXB6qbfTRG8a>oj)Jg7&`xdg+6O6~GyklNCJiaU5)tg;VM&%{W%bJ*V%!(Y`3_1Z1 zRy7R_5pZ6C{PAW1=7{FPq7pFkRZu2XabhBx@TEq--336w@y^crhEL#K0cY>=G{z$+ zsWLHfXe<+t^&kMI5bFZa;CQQN$mRZoKBGT%dJ;bO7TJYW)(60cu>Nxr#li$>3S3z# zYH8S=f~`og(cRh16vxMpPNzl(#`2kU{h}~FzF8=gCdLoX+}b+SvOkj@7%h~qApfG~ z{RE+&v6i%qyou=HM)6&EVM#(l6jTRmx=1>-zX}E+6LyIW&Y2uGkr}m&6asMbttE10 zT~YSlg#DAK)f`#9It`?uLefW?Hywc>jY!(S?D3hjl5da$ffj~c{_8dvN49*&EDYSNE?|c^p5d;%=6PS(hfr# z;9P?mxjDgjsQlWqfLm%U@$g;H1f#rS;J;1}Z*MKj2g+=1FRyQG6p^NaLdXTQSGBKL zlz}$En%El42?eDP?j_szR6KaFc<8fR_FWYpz7e*y94azmJ(7iRBZP7j*mu+=IE9wk zRXis;FcGJ)B@sFbL*%tM5O5h@Ubk2_)T8HE|191MIQQlTqkv*V@y4OiU@UlZtyFRy z(g8yEw1uv_f)j-Oz$iBeQ4pVC$!MT*Z#h#ym?pW$iuxP%vC8#4 zyj%>?scvr?%Xq*Gojs<0X>20o$Kzu@wc2{eni}(!|J(3q`eJIgoc52seDJ-4eSJ%H zgD-pC{$>+%r?IqFuoEGNie$^Q!L4z#C{IzbeB%1mXsWQ#)pWG8IZ}QAQ3{2jxy-wpqn`fNRJ2&=Ty1jK zUl0ML#Ie+J)q153>XZmIue1U|XG4;l=f} zKZ$EMQBw}o_BF&-a@A&nUQF0Z3TdcA^M;yt1$;|ET#2n@V$A_dW-67R@r6yqViXH# ziFSVSCdPLB0mhp3p-{U-9P+Rh!^krQk6I3}ym1*L=k0egLH=K0$ zxWWMy@+HS6$L2zJT^`)$0Vk{L@0{=UbR=6_y&a{cgxM2*Lr0>{)!a4EI8xttHg8O% zzwzZTO4)WKyS)nWN0`B>ZWcR5Rhh+04E$vRQw~c@AQpH?fx34sI9_ z2zEOz9lFIuYw@*8Bf6e8`>KNZBI*TIudi!rw?jax=JWk4YIO6OXlAGD(N1i_u2o{( zmF#+|$z+eVl|U`FMPXWuwjojAf zFiA;Gi7W7!S}-s58u4WRp&Xwz&8eoCGuAX^mcN@ozKB1XKmr^KzQfOrWBI*>r(?0F z3r}6*gj{+`#+fld9|bKWZlimXJ3qbDx^c4838vY*dx?Xps+$EnGk&O zoE&>W3A`x}GQWZ@2w_}75C^AL%v-y64{S8~niHKydUw;IiE?J|5mT*AY+L((I?nc z0zniC1+}v{Da14KRoGU==z#%%5%F_r_sp)L`Jg}gClBD}l{4B|?_pMMcqoc8g6Y92 z+-1c7>Ho^xFTX$9>BJC3nhk6Wd;QQSLm3cQKv;$1D4QTDu+0_}PjvjKa1?w3Odxa% zt~}E$qBww{v9@ev*1$pyfAsRAX(Ciht(zwDe@(L>j?9S+L%1S-2^K({m!5OtkF$N| z05Fdg`R~N+))EHtHIjhgL`x9$CsqMld_g_cJu`LS+@q;|YVp_y<<(vB&CF-ZOI`a? zkDfa)HS>`V%Jbd4epM!7tQc1mgATN#Yh@!KHpNZQGut@ngkQmgU!jEl;QLZFQFf81 zZyklmxD{0CMaRo!Tj2UteTSG1;4%a77I^(J1>j*n3%aS$=e@5ye*Bf*&l{)iyYC8K zs5PAUe0j0{;b$HeSy}5~br^rCq&|Rft0Y1%!+sA2d8A?t4emYTeSc}uoWJ+|-ZMWZ zJwNL`vv(0FNC0=JfB)Vy6Z$U5Tk@jU&>jV%)o$H^$9e``z>rdi`_q}left*cWq+?T zzZ6NRD#CL!7lkU^Iz5G) zNIaFFoylK66FYkTo+GpBmDkT4ofx@e5$6{VADWDrCk|Gx`2^^Pj&1?fSimno5PLTN zT6}XY_7$zCi7g!_gf2lg*K`tdXh8)N3dN!YP+meveWQRX1Ojj191P)**4s5q;T5|g z73pgp8EH;7505nWMN-j~%nhMfr~{BcYYokTa4ZxK2j_y}1%K4r-|vmkP}7T;VElxS zh`$#+)mRO++)4Auoh|%&F#Nfwzo}_{zNtx4JwX$zv7|N_AKTxvilkr1N-q{g0|!IqKdp`9ut#?MT~@;OV@a+x7-U zA_}Afb`EW$Xl?!I+jvZ|2;C&Yi{vGoC3DaRWf9rMQ&qlu|8yba{nhFHx$^q-LrmZr zK>Rr9z-C*2IGY`cDR~a}@5MR$50uv7C^#KhPugahq!(WZIa(R88ctb_h5P6s(Q6hm zHpYuayNTf6ojeDg+Bz_8zDF)?0MaMW&!-=!tvcVZ-P_hM&cvQ457qLJj$PLp8!URH8Jvsl^H3Yj4g!fe$-;@WiitpCrTo*+>u`n^ z5Xyb^;IHA7HBE{!ROm}J7Ujo{C1v}0YTCtogp*fIxy=;p?2tb`Hq-J)Eq!9iev2Ic z^E)oUiKKl%>$`e;@0D;4o$LDh_~gPnRF_3?Y2zW!e;ynk3<>eVND&1~=Ywny;UcKE zM7U=d$bc&`F%0!#cmjF)i_xMH3>wSh$C`XpG<;3R#$g^n;G}IMdmd{```s*UG`GXm zK|64Dl^?lrgf;r?29VOSxLVki%k3(Jc5DW7rQ0b<-&qF&{ymUxAeLFycImyoKEj4T z+vL{3u~p&ou0|)63XfCn=GFa?#kY1o51{_?9~=ICUBB}sUvzZtJAv97H_;*2i24 zEiQ&ukUO;;S`-DMfVZrX$>;Jq&#jpH8*B1y+?$QD$r|6FN!s5@NK4#6k)GEd zKTW39Xa#bxO_Sr$CUz4k#?H3GS{CBZ7&FG2+3&;HUl0PYUBNBH?jwF6P;!a|Q|f+E zJe!&QKlHtt*DoCDkEWUuM~)s*hOt!6EE%J_cdJVhB6}-<2aGu#Zlzy;G}_qR+|m-o zQ+H!@DIMRtH=Yi`q(d4~m3Jy!#14x6@+&Wu*S;o^>FcB5+NtvZO`bT+b*$z7BIpD? z^vsEqkN{%c*i5Fv=o)z$B#x4A{6)>x-X@G>#kwZ-G2Iv9fJpB4RF!#Jk|$~&NIUj8 zzF;1oFR#sCFIRojxkXiXAA1_^&oBs@=OC%-t3?M0q3u10k z4%t);c&l_=WtTEjO9G#*-ViQt{&|y=6)af^wz{7*zhjIlb}+cAJS#6WLO7fYeD%hGu-rnplx;-!MEg26V!fhD-rS z(y_PuqxZNiNV9j29mp;Q8lbQ>G{a74-n0vP-8~)c*Hz)nFdnwf?}6L}9R|1Jg)Ju+ zWOBi#QQBN&q$}cWi|@a;aP#TYi>Jg_sKEP&g!jX1OOJ=BIfVI#ekaRU5=^zUjIamP z^O%D8*gr5npgs_Yh(Z&%?4)cF?d-VhbpBNP&ksbR0|U{)=p1g0E*Xy=QB=`Is<&&FgWSHGR-Bo>;)`h?Hx!%%Iv@JjvQN-%u!Q z!Ii9S&`i{{x8Lz>u*kXcXh7ZV*Uk!!6Q`^hhxv*^< zu(Cp8NKbe~i<25(Y47&Fr~wh~ekK$i9tmGJGK@>Vrltc=q5}_w!^6Y+5iV_MRNHh* z(4{3WuNF6_605r0P)097qebAub{geIkwjhY-To1S zOvvf&_ZC=?6Z~E4+gy{C_$Yfd)~>uQOO5NfO5gN)zUtT5Ut(FPy~@u^wE3261tc^b zH(}|A#JqJ3cykE!BS4aJyfyj2Pw(6J(+?!yee&{!mUq6h<-%pQ&%V=s&AcgE8o~^O zK|l{gAN&-*I~hE3d;j_a$+zkY{PNf>bM=b{E?hpTFSGR;4ID>(4Ii#Du>Csyw;u_r zfo&ICte?B(mufHQ#$7nni%v#C)AMkUmMnhm&vq2%t}-KeeX zi*&}ie9hhQwzi&Vq}$gPO19P=?K#z|fyJDT$L^XTlGy*)^GKi9fAeT_s6G`8t(|G= zZftC>Ywip;wSpdo{l1p2`sVN-0&aEvco@G2HfqCKx#GY)odNXZPuW4IKdFDY<*_xUnhe5Q$oySfRJnF$j%IB)(k z;(3+h^5x4|f2PboV@;aqCAQ=L8B5OWr3%aLC7-owkxZzgLYK4aLGA{zZv&>P#1}fe z=*Zfd0qdcL)B??4I7q1%-2be2JA9PVhrOtvdt6qEy5jU_U}$v=V_ z9nI(_SA#*MH9jCpI>d5&S7MBJ*i*R?)#s_yjIu}iQ%{eob2pw-AC!yyl$gKnIn3xA!H9>Gju+J4(cJAfUg;fCPbTZ5~iwn{6D}v66=r{niX1N(-7!!$Q2@OhF>wKGcFGS0r#nk&*$4N9JsUVPIa{F&Mpmu zTLuK~{U7eSI3C?sxa)M{^y%I+iQ0C!ek~7lt&C_>d%I0W;4&srLCnQ1?Rx!LM7!!n z0giKL*Yj*uOTgx);P2{&kE6K+nw5J?3VrYj;qK(*J$p@$%~`@&RA!U`ZRj-6J4DUKTci@ z^fsJTzvhei%1?bWlLZj(!^g{ii?5H~f8ub?-w_Y=jG%Al8WJ7%pBNfUbav03tsNI_ z>yYsW0YyJ-8NnWr9L}+Se|B%Ua4_Vn8IV`lGw|hQe)M$BaJ->11H@&cMSa~_hw<=2 zcTG9QSrv^MGv#dr{q|xQQgA*}Rf3n63z7k2V$u|a#ClC2Sxb`UXSyg1o)O1q1{Z@* zW?ytncGtIg6VZ4qngH7Kb+YZtKQB*tMffquW*IyX(xg@?G|Z;1+dt5a?U*OpVeS~;jyKi}4RvZ%cPBp4&r#K(lz!03WCE7six!PaH zSP5D)c0@y>NDuoikI3)a>KH_p0`eY~)lm6cQt!Qze_AkC4F0jtKPtV4vEHWmY_vWV zfZn{tqiW-aTxBnqBd0_<6qP9*Zw`xuO&xFcCNc@Hf(Iop)>{I;5H!U8T)+l9I|G&b z+7x;cro?GSf!ZzGn&vfnz+`kySat0CRlQh=F)cl&971a!xkg87#+ZE}ege3Zonvj= zvjfnwY>pvT6B&hnmT-HTO~HKZTeOB?Roq8kh4jxDHv7ZM{o8zsaZIhWN6~KxU|{>^ zuW{3e?ObV)RjARz;&;EpI5gD*lz6UYe2-zAdG-h?SQ$-yv9tk{<;{M-7TER$}i6Xyp;FA63#(Fld;;kcSBY z08x4B-CY+B=kwVG-~D*R<&C;!*ZAQJ=3?Gl$i`v^7qY!wsDLMDxECQXT3FN`?0Bh? z3NLR?)L#)}U;-A;r^5EdpuJ|--ua>OW_Dr!Sn&Ap-g69STy?>*Jin0LeZ4z9c70W^ zUdN7rH(C%Ax6S=TAzNE&2e~PUtLyAA-%I1ZG>R-6^rx*5NYs;AMXUkUiXx=4y!P`r zE8njZxg0TGIa%cP&o)*Nn!;Z~G%Rn9D*x8s(~iu1oRaVey-v)=eRld(~-$f*aW{#L_dit@&L~(h5FVx zKHbjYq}~KxQ2X!_^GzE+8FZttAUvV>p8~0iD>OcFbqOj{VeY%gz^I?hTOw z0^VNbpjYhes!c%i+|NZ~Ieo=5}}7$fZ$`M0iR>Wl^G zj0N z6u@Fs!PmalTw4QVwH1zyZEs$B0UHM_D37j5(9xoRvQ*^?j#Qjp1DofG9o%+CLHEWD5?><)WyWFPArR8vFGcd9gju{Dq{)%G@@< z&i~($JIh=;S^1#hOrZ@^-ff6I7*prtFFGEI-~8BPvB&V6uVU|$=VIVaY8l%LV;;P*!O#3Jpr!6lq znh};BToPj$ApPTVwhcc38E1?vR^2OeU;A1vhKfq0)FKO_cteKeJ^bY>c#a6MFY zPmLpl-QiQVB?w};*mBh9sZX666f*F9M@vgb%QrrC>QgE&wBS0tZRx<6la6dc=fupT zw-tN0ne<2PS6^?dcvHIhgC&eQbi~W8#0{g#)G?iatBAoy1VA)Zc4K=Ti1f$2(q~XI=^A+pI`6~F zSXLVv0`-JtLD1lZ6b9iEAT`KZ(-xE8KHW~k;848#_NG=6Ed(SM3*QiX#|@{u<3n@6 zes6zSy#`k;XnAK!eHk>mo$WB1l`{@&ke9p@mClgv<%I*Enk6%u)m<--zhZCn>&i%$K;xF%!S7QVHKRY%sbxhu1jkQ>NUdt$Lmeqo28H{C_ z1X}7o(gBTUfM81jk@O>^y~9JgP79Tr*1iBaB8D`{Fh>__HjqG|cUdYrC?-LA-5vo4 zK}+#{CDgVq)eh)!TQ3E=s5q(>MAs4V{>)2fSCqa z!8mK%?+<1xuF?c;s|J;}t%V3J6Pyqm_1z{8YJMmIw9`BYPJAfOLt;Yc-jj0XH|5NW z4tb*tOBkxsP};Gu3YA{utlAA?15{B6u#<4qvp|DIQLpO&5LgBw!Y$EACKAaUkXBS% zM>p!(CNZ#mEnQu`O}$<3$z;^BZm8N0?*|@BP&k?*JM7-OC9@Um3ml=={;ry1xt#sC z#SHJV&*Edu2W2|aGPmF#!O#FCKIyTRMA;aE91s@{gp9;O+bw%(a+{6~%_86X^=HjR z=NTvj=ZB-Yb=c^p<3li=ot;~BojECUM_H;QGYvHnC6%z?lk3ao`ntKim`AyuB4*j; zD1eVZS_4HF>pWoBAe#UuX~NZO14a^_16BOiu*UMl8qBMv{K7&hpI<U>hZq$J2&tz9L|5VKYWwp9`0qz(R2UE7*(15JWE)wX8ZD+0;& z!OhGqHSVes>uVdEwN9$v!uG259RuGRgAVPg7C>@~*s-~>VU-_;B#-IB{zkb6*h}*z zc(9P#!h-5*Xc58&_ATZ3N$7UJ2ZG7Z+T0*j4|4?e^UqD zgz`S1*0%jL513fhQuBL&xomv9atW+bTb|Hy-4VzXNt_$gH6;cn5R8|ECmfZ^JPgcB zdOBdfMA_f;RL~iDcFiW{8zU~)-7eR7cgyLP zJ&hf+iNtJ2(&Fj0RIqCQ4~%9WkSEe zm9)P1C*H9xQ;egyTDdX=^3p93M-g?)csh(Ue>*%LK; zo}@rx?KL?dKeKf);s-Rz>e5<7@TH^tYulgOA=JOxK8AUxXn(s0Rr=EgJrFE;0PKXA zQ7lCXu`^yNigGoCu)5e54~2bgsD2oV`)>K97}&QV3jbOgP{rHYeEi}qs#$^}w!sSv zUw|*#>5!OeTh4^6Ay!eW9vBX?s#uL30~O35_@oAXxsV6ru-6Xt+E&fI(g6@LFqt4z zCw9E6kN^ra|gLbomd6VI6dd9T%Oxrg#t>qXEn&_;x{lXF>CHK;SdiANiBdh`6C!cFJ~kJL4o>4^-~VH8C`JLUKmto30J+-c56>23 z#}Y8#Zj?J;$L&!xtWGX6kFB&1WFy#Bx2xig7aFuX;&4>%p( zf&(Md0RB284FcW*>;$S7OyWu9OG& z>aMHnb~ZFQ@z&Mu@;d9+Zr@+us*3;Y1dUx03?$N6ZKtfYQdUyCD+(C=P@F$Gp!8-& zYa&~cyEh62t5?On^pAueqX?qJGYMOFyU_9KQrjUx1$pqj2(2LN5Ukf1` z_D>bOrTj%TbDrx~+nxDa&gYI^Qa9-HcJC-M%6D*$LRY{x!2Zvx?}EOgFOV?-Rq9Ft zoz#mg*VUz^{L=Kt^ZH2u)bA?)18lQ*DF~#sVy-E*m zT57wvyGCtLD;M{49R!F%t>Pf}Z_CLol4VM}pIC`{u~e{l;5QP}UvE~ev^1=vp14A} z769txH{pN>fof<*QBazEO;~+P_}nOQTxm}>z;o9nGNhM2)SMrIgO&gAM^*k)W^-E) zGqLkOmC$w-+Exs;R{N#$V$Hkn+OB3DBSC$59nrLukP@u73BM|QG%zVbh?YieB5k`N z?HwbzSKKq=A(ZrU8hwCoR(#cP(yXsHlf$n<(d0Gl3f0G&LPn#ApYQExYU)6mRo!}F zU*v34)7i+r!ZHj3rUpfoV=U4RVM7iKr|e`4P1V&NSuuU@l; z!_sR5-fDALR6VHjS5jMW)(U^^_%q2JxH9Z@8+8rYps(IpzlcY`pKYi!+}>fOuKm%o z$T}FBYfQQuj(Gu#?U`<9n67ULy1d64+(~b@_gWud4Qbh=1PqKLjuVg*Ces$MJ2YGv z^Pw(aFQjmcD-ZnPcnZy{5RT|SWCh$UjzIb%EvRaoh(xw5VHZ`xT^DnC23nduPWL_} z1hq8`;7px6p|1T=ic4P0JK{Hr{!@p$v(7W=cKRCKX^&^n>-9N36P~(G_q9IwdaYEn zDn=U4nZuID=|zAK3%#@*v6lG@j#}OIsqtTAIrjY%vB6OgaT>t#=B8Xol|b$XV_jkZ z%jZwdi%y7Zd$122>R~jaF%dN?%8sarRMF`=6-jS)aB#K;6VWs_V1oVn;7R2@Ie5#h z4+9VJAz&pwU3Ngaqk!jz?F$?q?bvb;eNkx1eur?QrBI%_7 z@QHPc?*2*})G>6-61~9@iTD9z{$$FVO#{3q2iI>HY6c=;uLd}PnuLsi`x1$){rAGw zXeQKeK%C8LiC6UF>53v?X^5-C9nq*RHV8ug<RCYd0OJhngSp`JqcsXD#xUwUA0p+pam`b%peze%Sv%KtCupQcX;31c6FJF7 zL9hL~S}Ak}4BUNzb+b?oF#`@#Mu~YN&yG3SWCf!83I@SZ>KQ)g*Tg|GE? z{nSw2K*dbo`SaccIEZ}5n^5!Cm$<(F|K0y8pOT820oi@rfv|=$z*yjhZBe+GLG{3l z5j59K9Wbn51I0f?E*IoMRe~CpJtnpvB8?pG8R}d%A<@si6@?W;(c3wZw#6fELXyg=Y&Kgk7IzT6%bQbERHO{! zGgDgLGa>I$?oA+mjd(0r=e97lqxzA?Y|s?56GENVLOMYtm1!*PtcX0x#zB*bEAN2H zNja&4QpIQt7nRx_qH5Qm>rYRO&drU&6NrDC z0OJ9H$D#Zk4l?x)ElXQ?G>F{;vI90%MJRyPQ)`%|r=AKfW(vA09G)N)BQ9_SS1oUn z?IX8<)kH9sLC9C6mHL{{5nzeR>aA)AoK&vr4))sTl;hGRl)j>?qP=rD(hd_Hf@Jb& z5Z+A0J+dh+Q^TnV@8%|(qXj|pJIZs7$nL91iD^X8P_~D^pDu04MRF@S%%_Il4i?P& z{ugy`0v~5p?+?#8=b0_ZOgfXjNs~$1CT)^#Nz;wercn0EQfaLSOedL1GR|gX@B4X|&*!CN zp0hpYIm>VVon_1)s9NIoM~*%p@vjj9|JWs-W{(j&ZoTwUTtjwiT}Q{)q~))<(a-zH z*tc0NJ1)f76=?;|WTI;I|HWN}UVPW=6DqgyW0V~~6?OLV699^qKeJANOPFxY0tORE z(Wfnbyy}N5qu_$V|G*X#s66yg!IvJvyv_nzi6zv@;nCzM^D2kB!8-Bn_HU)y&%I+; z|BjZ+o0m;3nZkM5-GN3h}!f8ME!tt#A6}a6Ix2_buuopF-pIo{$ zd4BUnyR?gCX8bh&?wIei@in5u@wqy--~W5}_Rv-|2^w<%Giz1_7kwo|SouZ!(+(t3?5i} z${lB)|9nUz>RvjpJC1nTmaiOYS~RaQGJoaD`MdRE=96qIE60q!vsrwLc4M9z1wuCj z?<>v4xY6z4!KV%$+#!Z(T1a89{WZtPW_VFfdZ5{+V@!))(oM>Lhr5bpr zWQX8)xOQICa!fMNchL4a<06LXAzWH@FMpQl8JdNY_gnZo+xERvXB`5pd>WLSwt1jN zk)V*Az^~Pb%}PoyD;N~B+9n1w7`DI9z*(&OAwJE60GUQ8?WLot_vn!wv$MKyz!He3`uL-^^NfAlU0Bv^{rhb1CUp_53% zX^DDaiCL-v5IclCV&zc)9iOm}0AXRfhQ&}X*gzU3|Go!tHM(Y*fZ-jO^Fx|n8+fMu z3v}v)v_ap`126~2{(t1IOCwWJUf^9#s9g^VFM$Ko;z@ZpE>9m$H7KxE8?6uA*yL|` zD|#x_mZ}9j!N@F83Eb4=4|qpfLUO6kcMuM1#}|G?&kk?^(lqp2@?o$;o~5$@X#B(CK&eb33*ku$oOmIDu4a?{JEt(RrJ*b-WK#HL*A<3YHy9dRrxNf-=TjiGJvhe z_2E+202=BO@^O&~{J7?iVix{`npX7X!c+?tk*QeHqankw7m!=>Omx_G%@)5oIOCk` z)&Rfz@lHd>1uZ*{cNRK_kGzp*l^ueGRG(RZJMo$tc+k|^29F~=L2A*G@-XkCz_GA* z>zipeXp^Ssy-?p=v6rXAz5vnfoITHIyCwjs$TNlzG4h|LBSlegh-c4IN`fK8NyJet zrBrdpCK9Jz4UI4bG`1~*Td1YI8(%qj`DX4FA3y;d--$9G!y!tbIxRKJaP1k_{dBgr zo0~P@BI@()-g0^(aXK!;wfjt2hyKkf?tNH{WuJBWYNI-U5BMW@cQ;`L0?0LJXv0D{ zaKx)mTiCd}uQ}1&xBFG0QzqM|mNfS@v@LJ^uY)U?x~KvE!chnH|@znkj`?ei(PT9L61}Fn)n^ z0C4ms~ov!Z^}L;{92P)85#Xn0D@9653X+S1Wk_T!lE zkizmC{3oz$2p7_0ncji9-!Xl+eKS~d)j7Av3e*IKVC?hN8jI;JGz&31jB_n?8h(x* z86Jk*b3&Pk)_&5ZqReDuC&*3EC><{4(eIbW>R+r;nboE)n!8*_!7=ckII!dJjvae; z?&Pi{9ROrkj=x>4%9A?;O5>WU11yYUm`lo!90$TAJl!@eb`(qP z)+<*u7aIA-$;UW{+&(x><{%qaXf3=wb-)cB!dGNgZxA2xJ*H)z%c1)n6sL(&{!Mr;gf>}5Lm2ZSf;gHG}$|Dn|Pi%B>6G2`J-$0yk6zpA zUL6eYI&)KhP5)Zo^4eWzp47Xku3n$Z%{|YY?}f05F8qYU^`4Y0F2|O%$@SX(BH!?hw01jHNG=QD(#kn;8FbnQ*5SWas;enFJLu@{qj zIws*)>h6rx)$7$TXYblRw0-@C3%Wdq_e3V=c{=MleDpRg*|B5&_6s%)_Gmwob3YpG zAkdaOajkT{Q;bSXww0XG0#q@)iT5ip^w{e?2dJ~;IUG*IY|gt>xK=j z_&Y-*W8X~AR;|gKgS-x$)H?s9ljgUczj+r{<_qk0vKPZ~bqi@vX`L!1HEnI8CB5DQ zd-*0@UTh5N4gqio0?FS`PahcWt#7V}5Y<~-=847v)|r8Yt?QebI%^w)Y|FyGmOG_? zs1+3Yj}6T;e3En(gVF#va(KsZ>6SLS9x8bUM?MhXzI?Tsh-)talLNO#}8^ z^<8otFCotNV&>#=orR_E(eKZ5p}_^5VLA3YkeY+X`vi8uAGdl)GYz-{5&P@_-#lTp z1GGp(Is9@q?ix>t-A#!9cAN?uIoY@R`nV&$FEYJ55;=&!9g#?1BqFLC8iwiu4S~A8 znMfqE8yUNISNF}(>}$`zfjQ%y0Z>5Gw+($f{$nxzI3rXHu?rk}IXq0WkV*GIl$jMf zho3s4eNu=HV*xb80^sTp=;*gVN6k&ja6}GuNc@j|m_gCwCh+%dzp|^Ne$UdAE(-*d z)fhN>r#N_Y&l63NsT}@^dQYvyd4bs7iN7_v z!XJ17fh)IP*5zH*(Yt5Y(%W-^qnEQvv3Y)@)!EoyRdb;)()P~k>)Wkob)7TNQ2EKIbsye^`tEyl?kzj2rKz0LR9B`7u|J z_W^$xDNY5rGYmd7lK_ourF6|nvH_?44fpj$cH^jmvwI^pZ=S{sVJ~IhOpU*KIHDI? z?DW^nU<`-R=ULDK%4&LL0QTvX+fH!i8CI}rqlVr+23_xPxyO`kboc>%Z?Lc#X_;0* z2a%tCd;4We+n=%z89uCIchi_)n{Pm`E^=)b9~B?eG${-yZRR@2MP_3|W7u|(zzV`6 zXSC@+3~k*S+qyN4EeAVyrgrQQJ9g~2jw!LNqKau(?i!{@%Z#!%lIB77Su8W%c_bE6|EaQ8$yAW zy70+~^r>jrN{=vn)2IQ*$>CY7tIN<;ySM_#t)VU2yv%*eUVLRS z-oSx{;5Mee9zixQ>wz`_2s#o)B8(y>etnr>T-8gh_Nn5X9%9GbF zl|jE>$m*KllKF$xRqHL)Iq<*t^pZsCUN_p8?SC979#-MXTxs%P!mo|Roq3%ouhWR+)m z^ZfbE%c|TSe@|1BXl`0!WwCoxd8@5R#NzRDT4rnj&Ko-gWe%Ri4|In<3Mp|hXvp@< zH}3x<{w~@mmTx?|PiqHj_HVrWkNCT2($Gn!_7x$4j!DX@z1g>en7Jl zXwe5iv)W)U#ZG*f;et4)91a(Pa3hXuH_j^T^(*3n*Gz}Ft!|zO*W8MG-e4CKN}L5( zXb6_EKJd$4Z29`Izuvm6rk2^F_E&VB&d7nb)eyp#47Hw5Cw{&Vz!ZnCoB6!I2xj7>^}`+XaF`ZujyT-V$^zoBzYZzB*AcA|9y!x*Z` z(0qNw`pjZ%QpC>0eh72(yPLn)+!heZ)6vtr^eo&wuxEbgN6z`{lwGOc+ctanIXFSy zA$^8DO!Ygkfet@M^zB864nr6$-Ob568qJB^-~xK@Lpc{H+UW>OWIz1lUS=*OCOhDS z^0r1yFU-t4jvUcv&*&{cu%_b_*WTWP{DC8*#4kvTLFIYMJCBNoD%LZE1F3p~xM|$B zX>G2n&yl1XFKk0pb<(b|s$bOS=XKJT!3lEa_ z0e(y0pkIN~2KIpR6Wz!8LTlhoU-G;qHEri5eb2KytpCft$g5J`=Oey5y{T6%@pdig z^4@7`uLjTD0iNmDQH<{Ij2?&qB}}ck1INoP0ggprEz+IvFs0AK+~@xw^cF6)ndy6e z^3Qwz3@;Iv;zZq04Ozm#ha?S$-fu(1)s0msMXngovXeA@={LuW^1 z4;rSo8*Ao*)5mSTv(}3=w#1H3w`T* zmTlU!>@R)WE?lh#LQzZifI;YmmVkRH}{ zVy&##Q#7h>hWO;_zUZRvznZ;ahu3yrdP(=01E=fzTCq2b`gE_>XZrMdic?+ZV7}YE z9`Hr*H4p}H(VlJq8U6&(+7ax!2ARE_W}x2o>( zzPin7d$qTxTGfXdt2(Q~b(Zo}*SM8c7xs54y&d#T`u9C$;V+{OT*&8{=M7oCK2cRA ze7*I(;l}DE)r}r0g!CYIf!_Wwtv8l}48ak%MyFt&r0WoP%MQ(3=ph5)1^yX%q0wnM z?)(_;#Sr%%&=(jS!G&Z8IW3_#Ipjg}x?$Ky=(jeqKP=n0O9I>0c$h1n9+D{>Z0C%N zcxcn6h5h{tBaubH;3GWscPGr)1E=G5gF~CT2CrVZc;T+dqPk^u59-r|Z`7yuqREhU z9l6rz@y>dR9?aDW%#sTpIZ$L8%izrbK4@z-p324zuGZoot!LOejeCwD*v|HK&)>7B ze>3(Og2>peEh2`{-es|4&mP|IbM%W$qjl3;=Jf2_ebjZ5ni3#HtDF*I=6*zQY@szb@Q94;KzCsNYt<;M&Lqdhx~XHGStq zhKGkEci>K~mb%V)ZS}98U%zctC~&Qq)N28c{%y_K5sr-j#?3$no8dUPz^k!OovJW7 z2y9fv80^H@tWLI~r3ZbqjgE;U^FuzhO`=-4)>Gw)F~p>pz#$l7jhd%3#aLI1*yeFl zaB_RrN*P0#2k?oQ@{!E>)EXhqVIpA6nJ>5YpX$}%O$$Mhy*%G~t&xi%DxxvC+@kvI z+SeVv^`!pS_xJ6*vcIoy9hRf4%ignYgW2}GXW7Pn(bs?ZuKvE0&s)20-P(6&*KNc% zN_ql(%3Pzdu%WmY@}ki0h}q+Mf7^!4jC~6U$I2y+NEbQ1FviIhaExJSI%tUDTybf~ zu}^ViaN)ZawLH)&yj5P$#bEOdSmM-xCy#y;Z#(+Ug##^z=6lrYqts^)ev7>RTMsk* z@Lv3Ko}4iujOcR;y1GgGAS&ZmpCzD==^<=l%`1M}g&2m{dd=CJM(fYnBE*(+>PI)7 zy#_v+o>RiFzh27gUmxBw-POJ7%yoTOZriu+%vIf8OS}4l!C+q(q()84`asJLL;vAw z_br6g#cwzIseZFOB)2mvmIyTg9s0;NS^w%8p*VfFFYKPYys0pr<7p_o^^$qRq4RrxI zU$%5E8XR1-c*SD`s6!2UgVRji4$+9U`;Co_J&V@QTVHolU(LtsLcs+-U(>u5)wQQr zTb(ua9lad^(SjbFIk@s}IN5P!)-V=;G~$6iQ{HrmUx{CVE``wVWz^1$!nd}E@+*Cy zUfhL)tw=b45cr}IML#wR2z}R`c~#-$0!Z+geW!G=%1d+usvvaW7bL zY3qz$2lbZOfZy%Dp|P)Tp>ltq^<-=oZVW7#AF8Sv8od<42OFMXK`g>pYR+#z4eM6Vh>3mXy7FD{sWMqdEPrM zo%-M*eIYxYdt5gQ4_om>p>xjGM+&`p`Lgz9_W!RgKV9excEpiU_-Z$EQ z+H2<~VDG|-vWjKd2ChY&1ihuNjNFL42ojF~L^+l1-~hi2T+|w{|tRH8l2a>}}W-9_pME2W)S~yw8fS>rrrlS9x)88N4BDJ$QhytsYzh z$;itYC=6V^X=Q%Z6{}Wx8X^NHZ{93UAGu)NJ3FrL5L*W#4W3oV%CFpXHL^a5JfCOX zBONzj@eO5fW9y?0o%4>-wXNu2_>f+VatNIQ$5w%}W7-}2`XF}5noV~*XLy?)4(ack z*?GXM@rO67w^!fBMjQJuv-V_uR5ylOmQE3qo50jdyf*H|Ptc)mPIp zNRJoV0$L5qu1!EV_Xl>ME|_Nk1xOrhTnrUPd&ZzCX~U3~XJG<@*3?+Ph!VJpgpW>vP9s#%BYyMB2A6a+@+08otBhVXH#gwnzJ@sqN7K@st-7N zoj&8}FpkE1)y5S9vW8f((FvT>yx6;9^X3)a#m&ANA0pk&D>tpwu~vO@5{^*9|Ck2Q zdD4PeTmD=^I`3#54(=_c90c&_G0FzzA#mEJ&iWn@!-e8fjeYheb8MUKXzR6>Sxa#q zP|vazXV;6hht7x}+M)5z+^}<6Q)frt;?~y1eI5Ocm-h9o|7-m8GMYr)(>^N&gorB; z_>c4tskp%CGwsXT+dGzZw0CU#%(nLSirAN#&XjiKp+tGi$e0cec&UH#R2#y6(LjQZ z8l$c4yY4eCsDXtu3kN6R7{iup!g$Ltw+bKT_!+*$@gohx%8G`PcGfT$a&9)m>i*>$ zVNV|JGmE{&Ri}JOHqRr|ZmC%eb@L4xuDSBq(B@g}ly8S5+>O2e%U!3yE(yJ$RxDh* zhP#jk^;RAo)!Tm&Z>l2_m;J$%T|{7#N=P3i#bkY_M=VwD2He%RRJ!Y4)8&y%@Rat` zPb9|wSO41Fp*g&uu72JEYg%8mD6WpI@Yl39bS?J>TI)sUazyHdi5>l(@u1^aJbf;} zAsm`BuhSjZceQc6xSreaamV*#uS3GRGkDgEKFe}D$KW9<*oU1xg514NUIxkz7UCLi zn4CQFr7sD+CYb{&;LOx;ZRVOQoi1>_8Q-=sQJZ5ah~Y|S?29sXTF`j6ZFHsCmd4lO za|og~q<&!goM*$Fl1{Yzh4S|VARb!etu+Cw=Cp>$(9+e-*Lzf;raI6#&=?S*CLHx1 zsBUVW`#fG6%giaavZ*={tZr&5EAAxW5cz;GitG-ba-Y^18LDf(&JsRfAmG~_^zynN z^Ve4j2EA`{Qu(aN;arw%TeP;ga2Hk+?w~9xN7^;hvw5d=bjI4b*#e2e3_f^tr?@B( z+p;AVsPb~Qyx*bw6MUi%YkMeTOJL?w(4kdWafx-ogFUowz+T5ayG9SBlDcrMa|auy zQ7b}#AAtPA#k>|B^hr!^-n?c(Z|{OoW7E9O_I?~$x3PV3WYwa1O_3hGuj%OC`M9q1 zz~KWAZGK(fhTcfSywLofwyxItrtQHEi~9Q)4Mv(m?T^N!`vy zdtE3kvD9>o>Ri@Xo)&A8braEM-XX3}O4SV|@!8pdBjQ4xPCGBLTi7&jL9f$DuKE$( z-3u1B)i*iK913n&xN_y90W=WZ>0QwNRkU)L4J_$%=2T3Nx4UP}+D5GOfmQ++7pyOI zG6;B~BE7y-Pd)nUt=Z1b?AGYEP)kF@wkVdccXc&IPd#<~l)=GMF1)tY<5s@bYqfmT z2l?o*zCS@9oV5^JBfC~eZxhcVz*8Sduom0W8@1WjJh|Jfd#JN5^bPLo<=Ls&?LeuSNMW$ zKCfT;7YSJ-tp!WHmh!rV!~w=iM5Jo8taf+yI!j#;8d26;Puc30V?7()a^3b@{0*Y3 zF<9@ms=aMN0ppRi7$+F`YJF~~vY@vg(Y-_v>wQP;Fwd9$xE+>|%fD-fm20W!x5Jhz zC<=DijqrQzFl1cuG$b!!`BCR?{F$(Tjr?{y%o9;&?XYrfckx_$mbYAOVy7L(iC^Ms zJM4i~?PHKnGOny^zbofTy2f1-t^#zE0knD*EZ-6A1sZ2-N7Qfd1oXVDr-HnRMawOl~|8 z8CbqDvLRC06eO%$Hn0qxMA3g%`!QYEsr#BoZ`sEPKE`IQ!oP^iwKI{+Co}2Ds^u$J ztwMZm&84APHg_zX_UVyYRvZ~ZDE|A$)#x1vj*gW5sBi032|Q2`DBZZb4`&_=zo-)M z&AGN>pW^9&i!(7PXG6B#h8CTR9mD5?Gj4~Zdm*^;PS3{U8O#^0q79^tI2;k3qDw3ki^O8lEqcTfu@v{(^of4440_B8 zu~MuO17c9D7DHlS|O`1uD#TIdjI8|&Fr-{?W8RATFmN;9SBescG ziF3ty;(T#|*e+fzE`+Uhr+AInC0;8o60Z{%i%Z0%A}V%^m>3bGA}$hQOpJ>OkraEd zz%C`GL|SA-R$L}>A}UVc#AA?_6K6nBYtiMz$S#XaIZ;$HDy@jmf> zaUXnN_lpmT2gHZOgRoOPBt9%Y0^j+^#K*-a#3#k4uz&qw@fq=m_^fzTd`^5`d_g=W zz6isQxEW2e7q{yYRSN6$%xlAsXE96SKN)E_D zxmpg%HFB+7C)djj@+7%Yo-8-X&2m_7k*CO0MC*LpclOK@x z%MZ#2p zR;wYkMy*xr)Oxi+ouoFZlhr1*Sq-Z#>J)XV+Nw@dr>is6nd&TcwmL^`Q?F9zs`J$O z>H@W0y;@zUcBq}|HENf7t-46PPF<`nQJ1Qy+O1-0M2+H{zJwZ6<7z@B)gCpeQff-2 zRYqmiWh$rgs-ULTUbRnMuJ)@d)a%ui>J93R>P>1!y;)tQu2$Emx2S8?Th(>ydUb<( zo4Qfmq;6JkSGTBJ)oto_^$vAF9aMLyJJmbYUFu!xZuM?;k9v=~SG`xgPrYB=r#_(W zS07Xls1K*!FREGf zCH1)avigeps`{Gxy84FtH}y^RE%k)@wt7;1M}1d)PkmqgyZV7Tte#T;p?;`-q<*Y^ zqMlYiRXvbj;eoHE=yR_QkG@8Esy23e3sv;vZ}2b3;r>y)|zL9tguyQ z)k7d_w3@7DtHqjcwOVaB@TuMEup(Bc)nzTT7U6uSZmY*yVlB0Ltv;(CHh|^U3Tvgc z${Mf+t<~0$wZ>X&t+Uo!8?2M8jn>K5CTp`bY;Cblu}-zNTBlj3TW45jT4z~jTjyBY ztXEm*TIX5kTNhZ{tyfzYT05+r)@!U?)@!Yctk+o=TbEduT2X7a6|+XHQ7djGtTAic zny`}A9&6G{SyNWp%2-+JGAn20t%5ae?X~t#f#x*7ep6*4wNbt(&Zyt+!jZShrfYS+`s7unt%Utvjqct#?{?S?{v$ zw%%>sW4*_^*Ltt@KI{F~ebxu8`>hXJ4_F_v9<&Zw4_P0!K4N{;`q*)KVAP$+{lvT7cd|&ok2qw$c&A-r!sq!iRx5xBp1u=kD^%tCp?nLOy-NRsp))j zv?iU{7tJM7iC8|752iDPXfh4CFOe@K;_hs0I-jW1ztPcTZZwsMjwMs6M7+Kt%^r!W zY$}HDVTksHb+F=Aq|_F`cN^zfs*bcPyiCCe^Jfi3~Q&5dJKQTQvmP+{ZlgVr}ow&RZ(4lNDu{W8S&U^CdOy-J&l`mwn z{`~YvAz4VF$N6crcRC%9=J^}gn~WziQG2|6IyM@cs&N7w-|D@Y)bvy$8qe%YJK?G6 zLZZq}M-jgroX)C!i4i#w59BksLUaV9lgduSys>1CO|G)1Ji2OSF*vx=@1zd-P0x_+ zga%jo?6jd8!doE&c)+On$C4w7Tr|EnXNNGWf#TpY;E$mJg^%`6-q%N!5A^qPph+j8}d%m(&29*OTkaT6AML;+K&A43z3<@1Sx-R5jE9R|#%jmP)asn18$*9>eTU z=YUW8V{AsSn4}wP0f;dfdLsF5wF#zTBZ-u61TddYSE3!kRyY??opPsccOuGaA!_ zM-VJU(q2%Ae2mRSOQIvwBO|FqU0K+nQ=W7Nt(bCWCx9~{elCWR(S6CWB)=4}TO8H- zHBO98ttRn_8jud;fqj$ckS^AkFJQt)fkH&k6s9f@Dwk-eNam+iRWTtg?u##HZTb!Enl$4Qn7KbO9jLEr0&suiNvIr zKd7xHj@k=}XdZE*%DyN7Dw9hV_SeKlM}Z*tZY(zyD39c;?HIYV&Am~k!4T&(x*Jd6 z%OpE{6Ll4-CM_@$D`05ZRbXv{69ew$#)&aw)2URAlgdc76Ui6iwN7|CJ(&h4@sFgY z6NOBsFi}?wVWQJ%3|b-{E~Ukjc_MDStXLk@2XF%rAJO(761Zq=x{xW4Q+NoL@Y`B?7JWPChP z$T!%yN7N`0lKS#ghmKSv<}w9MLTl}kPP{4)_7C9#y>13+C}1S>(foek(o{4a+aCum zOf}?_<7x0qHj#F(=<4W5EY~+TwK!uK6(dQZJEm;o+_Hus*B_G%NU58f$WgV^G{x3m zcWNx9L^&k2}i6Kjl zIz6M75hXXkG&w!f;@1cu1ynCyk(i#If+(0Mwmut!K<{+rvT4XhP9O77LY!CggLh8|ShZe$e$Ir`=iKd+HgOVq5Y<1i}Hl5aQ=WCK_n4Q79KphJ~ zCt{=}$UQnQo};uw2&}bJK!h>LnY2>^0usiC&8fCakZ(D4gZ&pWRZzLc6Vbx{Y@$Y! za9bqv>jueh zVatMPx7K5-48~IQgshO6j@Rg4Thgd9kvQI@GCCbEa#%>NjDkp1n~;{{?U$#snhA40 ziZ4){NJLGJXADRJbT*GDSVbB=W0H}R;vpl6KqJ@(CeI9r-H_M$Q{ruqm8Y^q|LS-m zKS|MQDmGf{gsBE+_T>?GxY0-kTCx=f3G-4thD1#TIS%xzwx3a|#gGqm$vP)sG*jJ^ zxoIQ@^>fN;auAx6IGqg_Q;ITLsSt!;s5zsPfnuQvs3En*SPpV$E?rZMLj(^NBU-%m zq+lh;WJBfwY=HumpxRz#r(kS?cF-Og&lIpEx8FSlB{vb!B5)L7mdhmLH71tS55N8; zzL-J`appb1d5pdnP)F+Q%O@bvLvr##TYvZfJF*6IDi(h)zt8RA)2$04~Wi03cvX7*WVTiCnGL+Bm^RM+{I} z29ZHC3Yoko7AIBrLw$r?8%q~ziy>2@DmD$%f!22ekezZG6Ueu#b<7}|Plw4NO(0!U zCJ?PEj|`MY2FoL>%OgYOku~L!wTNUOsYapwj6(uq;4tfi}qpNKK)}4nl2C z7odOYbTEuuF`R*HVCW7oYIGW6N&#iZLltTJprS!P0CO<3x5}`nR3e=RvVlQ^@KaOG zLYdLJLoSnwW}&kbny6J2W6?Me9Xz&>@Q>zzm#fx9*ZXv6Fgjo{U}8hj)h4huI%EP+ z;ms>!P@97Km7;bS&`~r3LUJr+Vve|0t@HA*apj=EBqm~LXgpDXT9UU&x@j`Yz+{sM zIsp)u@#w0`=s;~TH=Dv3t(p@b2o&>ShRgUs(|`ccRZd{Q2@HBnmJ?s?1cscz8Yi&U z39NGh>jQSZ>tU*x&Ij!nY#y*S?SmCYf3$q!YV0(yim90M_820Ge3hLw5eL0BZ_?%$ zvcm-=f#@d3U<@(2doi1YG^l*JL=}GX6Ivzkn;?MRXNS^I3zJzN#PN8N`~!hx8quWY z3tkgQd+}vWE%Y;8#fO1CAA%?Xr6kI=^ zT5#E4ix9+U;8r3}obn-_pH8Ru*Ow7OSYR@fv~M(yHP?>2ufhY?s)v>}<&<@eE!Z|ll z$l+BcG#VRA*k#asn1b^YO?FNO7Sc4x)F|c+8avz^x>9Hk5Nk|$j0`Sc&_;+cxr(#fNSR9LHU;wc{Vk4m4U_yd6(55hD zn9{sm52$Ry83i!gNf1Z-gYW`C(;MAy7X;L$oxWs~S6mUZE2fRx?g;o^fdm+Bs5LEv zi7Q zQit*KAv+2=GV4Y&MibSb;R!egh=;Xw5XGi}s{qnOdfJ~yUJ3}DsMo^^5gtZ+167bs zVZzOkt9SuP>_Itz=BCrymEklXKt5k=j#n#0Q!rQ;TWl*eHCJTdTY%__Z)M>Qa@tds z*y~I<$yXv#V1qpd(A}hGX$!woEgGsZKQMt8U_1j-+HhjUve|r<_G3XgggwOsITBiX zXq*$b8x$x@p3d4aP%=98AnE~RQ*P}nslo4FNNrJ4-hdO)q?gKDK2Z(vghB%RQ+X#0 z5g%+E3cs;k)s}*A9>5R5S*T(m!*QT^B1lH#%_Sg&5&wD+|d3jNT5x{ykC)3EP-ALAN29`(YUz)fUol zJfkg$NB}DXSx*&$l}UbM7l0U83ndT`7uyROMI$KYnsGRF_S-?S^q`}JLh^viMNLiR zE%r3%SQY_lAjl-?FszgsX6rV_PvE#?VdFIA03jd{leS7_s<0zd+DBwZv}ZK#g-MaR zQ_xYO&@W7ef*%9w6s)J{K>|kb{pryFe}F5-tXrdF*<1$Qn?ja0LQZF4mrc|ZU{xSo zkSYYoLABK-0qeSdF9iY;Id~yKA!ueP_~<5KLqnjz)ObL{U|fROS7<&a#Yi9V1r-_4 zy+NVl^b_W%f!y;ea#N5ch=UM`aBWM@Qmv&l5Xt=&HNXepRIKxgFZne*(2dtr3^@%49f_qU8}*6> z5F{AL(^1$y=^TfFwj$Y1#7cx%&d(p11yf_yI%JI7)r0Y<79KHE0pq1gjsO}8`)d)y zLIuz~IJ5w^jdS707|KWG6886*Q-Dn@#|j#ksZSP`%GFU z?FBMvgAz811|bzQ7%T-LoyWD6#^k_nQ%Ho$vW;!5?wAye zURfILXTVjM7byP2?F`mV9zC74DBJrS0UurhBk5zd=)QnJJr3E0a;SS`I+-Fz#yrG> zK&dp$#S`E@5LC#T;Zw35w6+RKS17~;3gh6j1wEVdWIY#~wW z1nlnk=vQXHVKM-j18*Y!nTTE>GKvVadREV30Vkp@OK|;yiDt7@^|9o^P!BrbEUq*N z6z$O@X<^aWlt`qwGv14xfgqa#ozh&ymf!)Z+pMxhqQN?4dFW+P;;y-H>FLtfY)F8Qn>4JK2- zP#;Ja20I?FvZUcAT5RcB!E+poUtT?1aOM_AYfxE zKW?J5#pZkO)~A8 z7|S$d*2?laBM)RMea^fw5uZwydSue_T2v@C0xKYLoRna(Qaxj3Q5v#qi@7wwKoTv+ zwNz%2?E3fuj9L#u8iQC#qXT(_bh;{JM%{%BJm;|c!)pv4Oq!|*ZQdAoNc@ow93m6qO1e^v z@@aK357JGM<_C%)Y77DN2=WZL0sJ00tnz|+2uKXHG*%;MCJ>W#G6s~+5iSMOHYBXy zOT%)5FdAu!&~-#{3z9UFNq9_QP<?0Q=1n-tb5?sF@v~7As%j#Ivf!=|HxD%XZ_{}smvL)6U z66+!*%q29R^J=Xa_FG3gwn&q0<%r^cwK3Z0WfMU=T!28ymg*IC_*|3?QD|}#m13fe9UqnBc79oqyG1lGQRv%(OdEp>KSTj#2DBemrc z>tR7)_a$htf}RZQ8Ql*fl{Z7bIz;6x)|GHY7#4Y;8T%kzr?H5UYa_ApjT#jxKoDSr z5rJx#ff$m5=L|l$ac$jX^&X?ARckMo7I1R35rYY5Qq_s+92Vg1pTf$5>T%9^I!`R9 zw@tMb$X{bqPR-Rrwq8n@hvgPSAGB9HVX7cW`*VhCzYRGU0`29t8w@Cuu28q#?*>QZ-spv`uJGfZ+_^YJ=lt-c7mW;z+&6aH#0?XV;9W~TixV(H`i#OhoG%l^UnAPsirreb zxt_!>u3_w2`iS@?_TOy9UY2{XN90B9!`Os<57%O^!4v8Qtk&tA*Ylj`@7}O?iFcECyLZfc zh4*If`@9c(zv+G2`+M(EU(na?TkhNBJJ)xyZ^Bpbz0r5Aybotb@Rs8i{I=rk)PO63 zU$!`)Q$qM%h`$hat_M+y`CW*2y2A2<=+lYbZ9y&dsJ9LO=IfCN>pJEkJtXhPxBj

zBF2UY~<*yK)hktFDhgLmLwR&b)BS$xY zcQ{k5yVLa(oPxpDEI^zkc%xApzQJ;w@gUwIbS^~AFQY{f{AV1iflQp9s4g zN4^(C8$0DoDDy8`Cf|oL|7wPQVz=aY%T#KQ8I$p0sBB7d#tz8sFq#$LWj zk7ucM1`-Kb9e~(B;(5Hjb2dWi^Joj<&p;TVwhN^Vj7=i-c)jj&EfCis&p-jj2jSva zxgs)E@m?MBJ2afLHNQX}dm6Ue#Bn3cbmFXyA6DcA&~DBT=}AOh3Eoj^3tHgRi2b!S zdK?L(4XA-QL)__hjUlJJjXcpK%s=^G$cdm1QX$R;C_q z+IZ_DVc6jm|ACxRpUT=Tp9621JFjh^SwFJV%_tCS8~GjCp?MLpCWyb{n2Kto6IPr) z5>p8`e*m{UW^UyKQcGh+ii7(U)%%cIYGorJj#TGkNIeFd<%@Q`rhWDZh#QgGrSXxR zl4FK?#o0(LwauYKd-Unth9cP|x+9qK+%(c-wfI@Db_UBKXhp<|ywyaW9s zMFzcfeH3xi&RTqLvHTt4z#o($Uk$mUh?gipw|W%udH4e9KA>A%uTS!9LLBXqzr{%w zPK)|=xE49{eapQ%@{hp->}`*vgR-8--=?rYZ1te4$2 z?k@K__qpy7_g?pP?z`L%xgT>s30dVg?w4>?!q3oiLO5gx^syT~;aG4k>d_xV$Lr8$ zj@d6TkE9#qCzK&NH6D^$5t9s#k!SqsxaEutIma98Dlu=)JDfFr zORuOsCWqfa8^pmA)Q0POPLSgh?>Iq@SKNMr9FMr|1UYVT>j`o!`6zO_Ff#_8OIX+` z?$qyaz6e9)--OJ1S6F=kIqaF?hkV-nRx~1~d_+kjyY+bgCvqz1!NzXUFz21(xQqHZ zIfim_er^W8a%SAoRyfjiNH70BXP^#kcn0Z}UuVlgq6xgEygcD)fe6e=CB(GIziaM9 z`I6jVfqoCCBk0r);2U|7BTql8xk)9(`XtgcM?={KIuw=*!6(A_*9w|Im<-FmA*BLK z#M?D@G0<&z+LcJDz;tm7xPdbspo;Ppa0Bx#%2MwH2k6jmG|2x!m^xbvu=Z1$Gf>uO zmVX6jFyGw?-taS=4zdm>Z`^>>Eq)ATdJ#@;*n^W39>6IEzr=|G5$LBEW2gO{*!lil zXsABy5Ff^_?aQ&3`XSK&XRN=u>)p%Ur@Jo&^}pGDKWP6`?%#Vno_5a~&opXCetBG6Sg`p)!S=-cf} z`7ZZe<-5^$(08xzL2*CMWg{P;yg*E(R6~wwBy4J`l-doAqn`RS%5$uF19U)Bq{Vnv z=oUJi)C1H@HUZ*UFCocjNBkNo{9J1G5K3xDK^`?sQeg4`r*_t3xXtZ=NyGhEOF8yc zv_rfH<%;wh^-$8Cr{|IKz3DNymwZs?wBnZ%0KuvO|hw2L&FW5gEO z?L^}hjSb{v18ZfCXS}p&9UydUAH`~c~I4Z>FZXDOcx!?`2W)8^X7C7Ug z-j5h<5yV6Gl{~_cXd~jah*75@Mjs<(s4pRp-{M$sPDrmfOCh9mtDE$@>M|JVNzC{XVI6k&3z=DZXc5 zi5Oyf7gldYo-+fKyGSefJ+UU|P!YCf6oxbIh;Ob(%hMY}s!k zG4w>-qw6Wb4c|d2@$O^NwM+rqVKv&yIxA_&XLS7rGYt(SUUrJ}kzN|Z zqNXZ7j&!G;5q%~lXFsegoo-}Ug9ipG-i-9)P&qXVK3KvE14Cig)kt+plj~_sTu@VF z?+7`Bbk0yjyb7tM782VDY46fCl*Wa%b-H*js#CAYBMo?q=DKEl2-h6H4 z7B?Q1(kz4nt{V9hJm>HQ^)94on8ACtTq@2(TB((WAHNA{rPdgV`c}=yIRgfoBjWu! z#q^r8e;Bt}_=;_-LMwdY!Lk$|QoQ1UvJ~E{;T8{-rD**{T!a)u&8P{G^1Kl#PKz{c z68AwuD5rSW+HsB^S}CWr#9*w3E$WLpMmr6q_s=56kuwl{m(H_iL>|>KN`inDagHrf z5K}*`!+JK9)M0HWl4*qPk(QU)E>wuaDterN7~vqm?*^XgAIZ zx&`O?JchG(o`<2o5$D=$!dWzNoF#J&wAlAqAG02_p0J*REb|-rX|#aUnxjE%Fj}Co zZq_1htblL%7p2(#PT7Z2BE)Urier@G}*-I8PLqFuh$F7q(T z{PVWA%C~?@lYRPf)bQr$XmNn!dNlq)wh4;S%JN2U2e*-txOfPSdnYT&(jWD68dsa)6LQb{9^8GEPsR)@G2yGM!4Bs09F zeOT%P74;BSXuk=IQ;<$brM6_GA4*4Ixd?Rom=PA&Ahpy7zCq}{PM2l7%sdh=7O49) zg2F0;La2#ykHvAhOploM$?vo%n~JM=V^*Q1EB z^^~_F%A-r#^Q83YpePd-mul(aB|{a zoMiYB@lBi;_&1#C*Ne0FcH*48t8lK}gRtB^iSy*1moGzi3qnTadHiNx2sMsmXC%@R z9pZdqq~*ua&hql46XY6%hVBwHh|eHpG2)cEsjsqTYC?oFLZ(|h{4Yvak~#tB%g8Q4 zgtZKaUu~ffpT%?THz-#)UwGu7=38iE@R;{G%Y;<6@5H&5cob#kej9U(p0>%0kw>mT zd?NKBRdBShrARZ{1?f?Rjwf@#6xM01kwzMV=BR3Px~b366kxfP`8nlDVKCC_Q%L8S zla53%E7YYRW6A4*8Kv}_u@Y3p@2Io_fzp*eb?6GoHIVpYlBE`HffN2AS2~ZQeMn z6z}jp1RKTE-j{q;uurV@9*}n^Pla%*q_D)>$myu z^FQqWhX05D=ln0>YRX{M{HjG&%f&K`7iW=uCj4*&IgW&5GTvq$8>`q zrX2G-al$fXNvAf$$BqBDysox6b(Qy_sM)yop_GyF4echCHy&?#XY4T-PiUy54raJA zX&hsu8r1*5(F7s)L~ZALfNepDD=$;tCUQd7vwTh&`V+MMNw~0 zsK<<|gI~wgqe3V_Uc;J5bIG|X=rl^uR#jPo6qet|NXTjA8~8R-lCkQNPcCMS;%j)@ zjFcHSY7Gv}U!)EoY#^0hBw}h%?(bX|_zx$|aL=>USnxAnWF`C<-X z)>!htj3*(5{iSz_^)zGbiTR!KZFmyu%$ReAjYnHcIpV8$r@Tish})c4Y`61RuaT~c zb~~K0&apMLW=@{qnwRp~wP#czx>@0XiH&bO9pZMaO6t4;+g;c;$ zIcOZ>3v&YVs$E}zL|E2;xeT*c zgduSuVns?Is9BZ9;BAl#`6m7DPa@3L0E)!-AtM@`{k#qVTU0GVw9ZjW>&JS`-LA`B zH@ohGR`mqdC%hYLUi~hdL7&CB^4GflOJf`L8OIt#KC_skr@o?Lnlgj& z9FUWOQ>#xSoz%x@tj4NBF7qcq6Vtd7hZ;QjMZ0RzspLPTS&MXkn&m9!-^fHvrIj({ z`aROPnu8LC-3Hv@L8~IyjF4Vp4UG7Aox(Sar=n9lh4C$wX;n>#Q=VYGTp#k7juXbU zEFif0#L!bhe8}}8;^w=CLp5t@oH=3jZiG4Gv^)&zFl~hq@dLXIsEGWc4(lFbeJ(wZ zkbKo0&~7O~G~ud+?YKGO7FhJY2H))~@J4pwj)AR^>*F}<{~Dav|32utkK$bYC&dpH zam?6fi!g$okakczLQ7OTxEsGl>x6+%jv4c5%ji~|gJbg@`+)I&bA?BF{krG4k%Kgv zd4V#0h;`nK9F75Ji**;*E{YhSft;4!9W(0GlIMvZVcy9Xj0VQJrUbfG<9)@~#g8$g zrljp{!!3rKLBlKYmTE)1%pWFp+xhl4)mITWwoJ}(t!uTNZ>W5|_z%R*7Yq#j5Lo8K zTjg@hpXPS7C0Pf#OGFGJzr05V@>xII-6~e;)|Gn9 z)cN?Q^%q5{>qOtb5qafbraWu+Sakuy>2;&p<;Wc8gBeHnPvVp23|d-MD`w zj#X`U!7h-{@X@X7A$K69(TIlkz`+6#2)l)ZVA#&L-$)n z3N_Bnrw&B83X3GhYHlw17+NnTHTA0;Il^nL7y<37cuRc^w1yaA@VON?*W3#&;qPJ* z?uto+GCYhsQI6s+l2hQvxfb_ud__Ksn=RU5&AAAx5O2dx4Bu4G;huwb+&!=pcLLmi z)A}E?erWv>YY-Q?H@Yu`Rp%P_-R@7hpK$-u{Wt8D==N;%Z1+rfuJqi3RVa^mp71>5 zdCBX8b!WME*n7Trw>RsZ@!o=UC?D~D9(yL9@;-}Q6R-FrE?jJsYeAKag^yah8Bt;{ zS7P#)qi$$8DMMIp0xXrvlm8eE)U10nSVEeB_vA?$pE#4O+w7WPeNI_wFr1-3;;+)m z$S;xul&y4>XJRf&UpAImQar=E%ojIQl;Ii{QaJMdB877Op;*SIStwzAV8xY?>K>h< z@di*uiQIU`$~j*eWeB6}1^FUpoRCOLL>$9vGkLBa(Q^CgoV6Wtuvmg)#8w)~swip8 zvnomybr;<)y<0$@T~UG~YI;l=K~r+n!4^3)QL2Ml0$MNEpj;`R<;c0IZ=eL)Se|R> zG%t<7-10H3^kHqSc$ajS?IKT{hwrXO3rlV0 zs#-#mmJ_7Wg-iYAd)&POX+pN+Jxz@Ir!pkIAzk0ITu8RIIZEZkU2cb^>$Ds)Av%HhL88# zIb0D|!N&k4&O5A+5KkQEh>(v3(L;^_@ujHgyPneTkdGLcF(b^DZ>gxw$fl$i5pf!F zSg*lfVxO6ZFl1nA$&8h^x>cTDOlQjo9X+Omka2sAB3#yq!aV> zDp5I%)Kcw)T3C$bP(>=o0$f>SkXnuh8pb78k(6p64TJqno>7r%TQ%i5kgQ8(Nj<}I zbw!$9pC$(?(l`_I<(rX4OeZyUtN_2&<+x&&5Yb7^O>zGLzhPjD(rByrO+`6vg%SU$ z>!Yp5%sorqj5J3srAHUKgm^}CPcvV722~GINU`dHS;nfj4E(eWBg)ak$ckU3)e;>umW~Et){)p0UOW#OjTnXA zh+pckZiQNmu#KnUS*R-O^W_+B0lN(=RzHthwtgvJ!M#^)xVLH}?w{HTFHj1S z!wl|%x()X|EyvgzYR6s>3pldII#0_2>C$3x1ZkWr&Sr^garO;%kV@Zv5zW11su7x?Urjadyq_%*!>NbL7|texXyW*J-Ag z`10lcBw<2!p(X>Ha z25dD{9{gG4Z2Tm=ZqQ*p%JOj=|3a=WA*4MQ@+O^z-pIWO5x%?RdC;~%gXN8QViz5D z5h>lC`M}`a@Z)~W^#j+-xLI;FZh1^&HTnJ6Q}i>ePpHT3foICyxU=sD+_m=*?#%lJ z?!o&8W`KN#HX!z@1hb?|q_Uh3jGFxVKP_33w!-qOD1YKQ?NO6o!&siUlpaZZlTdl0 z)=|rTQO^oTkW#d zmhsM(t-Fw4(Rs&hnfwIuD!*y8EZTVgfIM32%G*mQr0@AJx=u3f7UtWy{F{LnSSY*9BMrL<}1Ksqm#32NMmRx zT}Z)A-ytOqMJ&X~E-)Ja~VF@iWu3Lkd80~ldeO<;$M_`T+4 zPT%%xnCIIs1G4J?0pxtkal>ldb*1YTwGuPV-Wv-ce<|y-#q4v3dseUUPQksX@5B9~ zf5-aAbAe~~VCTjQxa)Bp?p3@7>mHv_FXGleu7J1__uS1|&$wOgh7y+^QH z<0VfR>mSbbq&(L_N1pXO?Rmvp?_G)24`a}c@A7`i`=s|b(1_>z2Cy^ZQk)@hgT40Q z$G#VQNB#5sUH;Ynt^N!Baeu*omH!t1J^lx={^4=|ll~uL1;iiyf3Nb$X7F=|e^Tz% zz9fti$B)oMosQ7Pr}mS}7HHr9`VC|E2Su0j|5xRUYvAPD?ed%p&L`Iv5ras1xh{ci z<1A1H!yK!1C{NnXlMOi2gi2!pAlEavPubMwP3k?!X9)+!489YKDpR%erqVEPEk_utN_N!%N6-BQjKT2MQui{#3J_GzyfuAjweqgAh#op*@|Dz z^Rc}sYn%KmN;y)D(S`|86?z`VFH@|GSZCyVBh9eioC8oyb+WGOU(B6atKqsB8eI%~; zBcBjM2r%@Kk}==Vd`8|jW%;G|&D=mwksn4qtj){|aj=YHyFP&2W4}%* zk~V=S^t%oxoC9O>I~6t0$yK!ZIQ=#nAfdsYNkw_v$t~*EdQ2j~i2IOxY^xmE;)BSg z49Y$l4+Uu%u@W3s{2kA^bjL_rAy=Iu|Kht`LB)A9oYkyjZIz!vE$q9IqbWBVOC2

>ZEe9(2a)H%nxT*EDQjsKd0mH@Uqd-)!=S}EB=(l&mFCXKxwJ)_I!pL# z>-plp?e|Q-nP0R>$y>|nbSN?LwFQ<)?!k4&wNn1%9^6t6A=Bu5A;~?s|EIBYkFl$$ z)&LkKaIKL7#!e&#oG@407hDZtN%_-k0jRcT>$dsb$}jCQm!c^7R)_l~RwdTy^W zp59D%XR@VO6`QH;shlZWDz65s9qpGePtd%6j0R6-(7%+RS!&r>7FD3pTJhvs(4Wx- zaV2R-zgsp;MH;*71j{%}>*^Or&juc_^*_$NA1yihgV#k#{$)XO=5M4J_isTuNA;(>r^jhVx_G;aHBQLw+~HX?iFBz*>y>gR%;9 z{ULuqZ!LS+zZl<=JPD`E$1-U#TJW57t9x6|Y0do8dQQ5}U#Mr+2Dy4)sw2tg_vzVo zIh+1>(MA<7hZo`#b9_=yjJBzf5@}sk+#xBkS2v)1Pv0S<(;`xxQX0OG>#T3G_S>bc zk5(5wk0-xDxWY!_AAFLj2^lSGJe-lr(W+*t8)w^jgpu$$wW6)Q}vY>6f|3_3PSiX$NUYdq^i~7wH`RBK3+%>-;Mk2{g{Au?5-7 zfUls-6!Fs7z$F~=YvHyPK~;^TSXS=8X}z=LpXoUET6c1ix0`%OC# z(PG3RqF&@Q|Ek`OG~SjKqrRpVS4aG&Xs>#(oH%rQ>ug|nD%OEUY>%|H^QT%duRZubPQDqGf*uQn0S z3nSG06|;N6+i#+$45y;Aqa`32LBy%ey~>v>uBgDsfO}3b?zTZ*5w9e=yIL}}+_txP zN)U7+lm#_U4d0P0LN2C^*>F~TM7k&A|_^P*hM z^V*l*=xJ29*yI?OtYvpYYzOCRrNaDJhHPQw&rj`4V!a@lVzU@4&W#c_(sejH$<>*~ zFQZ(=;=WEd<;<6)dD^|E(>C+vVL$H2!z9U;72%$+M`sGBPdY=tQU8E$LpVHnST`YT zkYD|)$#3XX!Kpo~dbagE+w%u`)Wh0uUNz+|oh5jA%HiH=I!Cay_j=uJu&Z~x_pQE0 z-^qQ8`quZ|rIQ1D`~K4RcK@{gllvF;ukF91|B?PZ{p0=r8t5OGJ#gy4;(@gTw+!4n z@WjC0f$@PiYQA=CZBA`|ZCP!7ZENk`+K+2{YA@IRUVE$FQ$MzTVtrnHLH*MDy87n& zw)*z^;~q^NbxJ7VB^Uy`6zyiVhtarMUn|&VT?_5VhY@&vEW;a(zSTdIgRA#D~<1l z)YFQE3-tezPaD^vj8&8LtT2@GkZL2fn4Rs6Vn5hyp(Esbd++PPQf+oaz($tE6KcE3 zs$Cv;+XHSXj*lY;*aF{!g)9RZ>il58-^#RF%Ib#3REh)rmW- z8WA=Ez8NwZF2_>BavF7ZLar^tyK%^q8XxNh=HNuu%IE@%6JBkEFRD&;OuSo^GRk=W z$5^L2Kg!U;(DaP3v`at9rc6>`R@kjNrAVtrh4ev>V^^5pe~s$E*X%f8&1U{8MQsAP za%JrRwup$)lUYBbT4Q*sbB#?RB#TINC0ksr%5>F1Px=mfe{C()`5kuBPnEO>16@wJ zX(Y|!J(ZX7Ug3hk33u$SR<4j*AgpuVOc@LH*dNq`R5p7a+%=V@iZ{s(v8;Wxe)WI6%w|}mvMN@S^!E>_Y)rM-?KN6$ zW#cJ3qKcPRyvg^-7b)WtsS)*;e^4d4#|~e~|4k*xV6d8K~4pzI;zF<4vyuVJ;Ind`tU_&Fi$i*;EcIM{rIhPx?3`5xKm ziMEOZg7U5QUJ~DZUr?w!+ddXed05c=HCB$AO}|o5xYnd`_QOJgGFHa3J z3Ubq$a2yuIeoAsQTp^2}S*BCm#Ui~EgR&jYhQCkm=GB9%sqSXImpIyO(mQLB?`E8$ zce5_cv;Mt&IK}{n&L}R>8(LymIWLWHZuIZyS2g?R0VmEA38G4CvLP<8aXe)$`vCq!=q_JwQ=KqxEYWt$2 z{vk;<)Acq3q-l&2gzF{Msu%(XF9~jZjYNWGuzW||*&T2^4`Q3mus+HJ!($tNoG&cn zk3NRNqvBYkE_4n~rT=|hFvEz+Wbu>lYrz;RX8{_1O5}Fd5xI))X!?%`)~1X&)^LMh z6)c8pOZDgx&-iOm3gmHX=6+BRv=!1S%8u~WScmmN)+uJ@xlg4%TE&sVvn>d%w06E% zoNX9n91WcU$nWgVH~l4gXVgdzc~gEs@9jQ&{IXadPZ60s%iSV=Z{gAr(MfXF*Wz=u zA^a*mrxsy@p4q36d~n|o&yq#i^sDtmjhTK(PuSCqaCIz|{0v_gCoB6bT&chMn!8P> zoIV!6Jf>`z#ma+P=Wh}XSS|o-Z`Oro=r>p3&@>T`gTg!b%(?uM@Zl%wvu(HjR^Nwi zhaGprG{uV_S60d?ikGwK!V8=6x&?l_rZs z-^GVPPnrIXc9G}2KAdD)7R$^y4oMcHyY5^1oBJRp&RR1Euq%5id{fW(O6&!)+Ysqi zHOx-FRZqEpFhNW`QE9OxmPLC>Pe5C{iQ(o_JG1=E!V}Mj8&$^KE$7K3mE~%Tcy1!j z-($YSqTtn0-dBq;yI&d6uesOV zVcoULw~UX_%kV?xzEyvWD48=mNMp0O7!zJe4G7> zu~Lv&SjDC%(IPDj`)R62Z{)$iwTc;d&QeEe6Be-ZM*Va_sKpIeSfpdhQA7*1a}z(R zcN-P-KdcN`w3z5f|KOk#^^RmuCrRAx(m82dA1qT=HG>^v_7I3>ErC zp>VfsBJ;tpW|3>iw5%;mvY0#!8tw7LDgJUv5%XZP_XY(BC*ixQ(NPk(OFBbXIj@m$ zLs_Bv)AjvhC3X8X?-N9WPEdYN>6Grjr*!R=o7owfq*{;YU->^;76-4ndsF=T>W}uN Hzx)3OGG_Ot literal 0 HcmV?d00001 diff --git a/www/assets/icons/icon-128x128.png b/www/assets/icons/icon-128x128.png new file mode 100644 index 0000000000000000000000000000000000000000..9f9241f0be40661db1eed29384231e76d33b6e7c GIT binary patch literal 1253 zcmVC00004XF*Lt006O% z3;baP00001b5ch_0Itp)=>Px#R8UM*MNDaN$N(?b05IDCG1mYv%m6RW1~u3KGtmGr z)c`Qj05H@5G1vex-2gG&05Sjn|HA+;>W7}%C{ggJx%=nr_R-qsQgh#Rj_Gxf@wLO% zPH*a#s-Rh6fB*mh4s=pZQvmBRsYJy17_o~a(q!H`#xchL000SaNLh0L00)l%00)l& zd2k#i000C4Nkl8EL$(w!{vTD#Ez6h&Vm;Z@RJyJ5Pb=t?kfC0(@}L=|6A zC;?{4bI!=^4sa_Okxqbw@%_I8P!z%|z=;8HeE_r!fY3el836hLpcw$}37N77pePIu z0L(@lpm_o`H~=sW1p0kbywbw}fCf+p-6ix)=MzBk=HMf!i~;~4-H3n#XX#h5n9s__fIwQZuJPGk+1pOlOB*c>uv^u-+B*c;tv>=H%64II_ zBM3lp=3rHEWE4OEz>=hXe^qg06hQ!I#sGAA*)e1!u|+9ELMAVJhK#WNL5fRA-?wHB zE+cGn5aSZM-T_)%M&OYiE}_4hQ-R9}+?iZZ3Du9?aSh7|1c=a;ka_?pbY&EP03kRB zo9FpJ1Ij1^0TNI`<_Tax8A)_^iVc8%osbBP$tVN?j+lh1_YqBn$p}5CNU@cWdIKnI zWdt8mKoaVPhg2OTBlxgLAQCb|fF6<&d_}T zib!ph5$D<@wH=CS^3qCJWyHBNiEVSRqHoP^HW{&AI@lznXaHrKiL5)T3q1gx?cT7l z$cP0H(GoH?fR-MDfCUhe64KV2Q$fopV*yM|^j>pLD){5-_D0G`vH(t`gp?gXkunNd z07ptfo$KUL(aa7(zyuhW$Xs7h2tePy(toxbVclW-yS1Lo!^|@P|54BB z;t@a|K1m`x0Ysm^qlrTw0NIk~OlhliHp@bRe4-o_QW$7|yn-D9Px#S5Qn;MNDaN$N(_Y04&%5Fw_7r%m6RZ1vJ?JG1&ky z)c`Qm05I49G1LGt-2gGe059DDG5`Pn?3%64E>-4njObBw`{(S}RdwSpSM|!&_}=8- zBu@0X#@b+gK;5I&0000EbW%=J0PQ0&M8x(NsEw~<(cU)swx9q2010qNS#tmY2!Q|q z2!R10?Pm-C00fFjL_t(|+U=W*a;q>5M1f%57z`milK=nC8``FU7Ta25pmT@)f-{=c zA}fmHoH}*t)TvXaPM!K6<;BeZJ2YX+ih^^VT>b=(pA@6`C^rfZrny8xQM`dhrZ_y% zIC=3c{uYZ5F;1KnQ}LPhw)lsQ3kA@=7XPxb252vfziq4q+QH(UghmSVR2FY%%ivTyN48$&>&#l4MfJX2e7y=++AqtHBc7o4PZ7FXMNs-Y|^PL!#|!!#?% z5@jhkT?Q8SS%Ii2%O>E6AdCA^fvGN^syQa|m&FeXRQ(9lb661xD1~{h<%e!CP(rH^ z4AgxBbubVu11=~}TYjlRfl^w(qd@l;kU)Wm-4F5%WocR>Vw>d{kaz>3B_hTUmWjoi z2MtFmP=tr#OISF%M4%Y`YP^MoBO?N(2BG-U&3;gW$=J<-I{Uf!9LmfKgmpf3FbYjV z(WLXq6NphL8kC4U59KDIXiy?D5L;0oARJvXP-GN}a5!dUpcoIuroqE8q0iJrp2x&F z0uRTC40ORmaj5Wcq`w(GI27*%zr&qRe=vq{C|(PGgF7F1=m%iW_v7}XM@s~}6f-as z>k+6%O9TKVU?>hFPymLb3jjq}D2mU8mB7N00YEV}DYl4dNV=`P~C{u&U^j^R3Vciw9#Yq zP`pp~)OVmn5Ku%9#p@L4Mh{090*c86YUZ2#h8&Iz0!qoDSkHlKayUj1kWU_^hdEF{ zepX{EeNVr1o%a0X#}`2jM{J)TQlHQ5PatyVgTDU81AV4zr6 zpsVWkrQKm1n-bM^9Cu6<%onO3;5t?vJVW3bGih~-c(uAYIIgvUP zh3-A=9y#j6hJq3(Qx>lmgA#a?@1HMR9Zi41@uRnOP@lP{qvk!t`Ht0u)k z4^*ipM`i$&DhebhM{%7Z93ulDUok1R6rhJq}lgcd!D8d5(Rl-MxdCvFujhq|SDdyL%@u)7@?LGYU=t0U2l$ zFB9FpWS;&0gSX)B{aQ=%Imt9Y`~Q>k$FQ_-YZ2T%^YT&uy`8%I5HG9TeUO*s?mo=R zGIt;7E%Ut^X%gMC3(Jc>eQ)Ir%oNBf5;sefixnja{vGU07*qoM6N<$f>q^o A1ONa4 literal 0 HcmV?d00001 diff --git a/www/assets/icons/icon-152x152.png b/www/assets/icons/icon-152x152.png new file mode 100644 index 0000000000000000000000000000000000000000..34a1a8d645872c776c9425de45c3fcfba12c271e GIT binary patch literal 1427 zcmV;E1#J3>P)0{{R3FC5Sl00004XF*Lt006O% z3;baP00001b5ch_0Itp)=>Px#S5Qn;MNDaN)BrNc058)3FxCJt%K$IW1~u3KFxCJt z*8nrs05IMFFxCJu+yF7w05QV=FWmq!|NsBlCs6RIx%%hq)l6;YNo@Dg+Uk;~=yZ

X{-?>fGCXfYNSFwSa_5FdK zVWbmbiyjU>K0ZD^K0ZD^KL2TsQY8DMN~18(vn<;gTO#sXvhT>_UZ`aLlk6vfOgE>x z$T-hm!ES8PrsW=;^Kr6C!eqm8&oyA1v_kq*?gp^0oQ|86yBTb~R+yAK1#Fd8crAA# znB!KMDR(-UvsRcdcL>ZyD=d{e3TC$zlI3!r%+{YP;V#uJdT7g#Xqm;#0N{kF{1!}pE)7`+j3=Yr=A6bs)`+*fjoG~J)&x^s8 z_jj;s0P7~D{|#2dlPq?GcR}Ua z{+_|MsARG8yA+k{=P%eNDp~OG4wS2UoLa{Ulq`6lc*f+~J&)5nP_iJHz$Vx7307j0 zYyg5u$Q8r*0%Cw98-idFB-dsPRzs2%AXtJtFg3lhQHW%vZLn_oGdTw95XqufBuC^} zpqzrm$Z^33dMyITwR*jMs{qNumm@L#fi)2U)kti#;?W8&*b#JvZYHF1{36S zl>T3^PqJhK7)+ASQD$y?}F88 z9_@nlYJR5FA|6=i{)<^n7pz4J@Fer8w` zTCgqu^~JOcHmrGl7ucESt>yX3@;t&!4|~X?3%0KL#V*(z)}ssdQ1i3H+8(jKyI?0Z h@8jd+Hf^L(!7eV+I8=gXo5oJ1=hR0aT`iN0Qe zaus}o5<<@L@SFB>K_#Q-}bNaC0-2D8WTcCw67Vup>xep(As<% z=3-mw{}10XRU_N<&vDVI;9nNPIaiH5YwBENuYkkb%P}jQC?){aMpxSIjHkyH&7RSW?b}fOv0Fzd|8;gk0fXG$3O%~Ycs3k$y zcoJxgTv{4Wf;EOMb#{y>g#9+S=Fp$mQxv`)p#SF&5l01A&nhq9wKx>R@(W6G?rso& zqONyUhfTQuY&dkC=QniTSsSXmi}$HFYYLgjeO$L_8-+A$3ZKZe^iE~nKzdY-Hq+fg z){cjCsU;-_(03A70UcEkoft*md4!c+5(`>PR|-$uTvx2=`_H19XMVJdzfCSdEM`7? z1#4D=XeH`JGaucs1(O(S&ac*l&&b6Xz*OHd7R-Go;Ew6D6P0ci+^gdzDF6j{`&B@p z@j6`uP1?xH@NOVs`7WzdXvGXQQ+*pAuaa@WJ97I)r1mSMJ=5rP@jjPAT$O9bU=No zll1f-sPVs4J?z`BDR_m;5Vak0t+@30&bcrucPFS<#T>uYfXPx_k%A*G$Yn+QE5Xz| z&IGiGy$2a06{o*$)a(@Zve7jb`P^vHn&R}n-o6Oc7|ENh)Zv!$k zsVWP+0@zMw9f^jClX>5tWWt+;<7<2o$GJl9)dICyc+ZCLvPvgSYX0y3TAA4-qUhlS z`!%nv(uhy{Fni%er4I7qG+L0VTr*F{XJa5LvGJy>b7X6rmIsL72=66A#ke*Evh1Qk z#$`tK-W;>Y7_R`^KFmsAy*`zBm=|mG>>N{=%~(_+^z(?%xE)a8PaBEsEA00A6WHb9 z+xCRBgLXNP*afmZ0rvAQcfp(hq}zr;N|yXcR!y;J3@H>#5gT&x^*Hk1V3l&Szv76B zH3M(5Yg%T)IvtOCifljbP&mj0C?ztHZHQMxQJ9J`J~WekEhFV&#Nz9H9@@GCWs<5b zrwa|=;}sCw2Q{1rfhn3dW3_-vV|54*)alDZN=MhH_qEu~5-HQQLivg6!E#(i9eg;A zH}gi8%aCqb*3~`@ivFpP0Hz6lIhtLM2oC05hJ#{be(3xADD@CpEf8>w`F@C);P<`V z4<-{TB8{=RiWJQ=G(RA?Lu~9x2R`<$)e_E*aXu$_rW0VvG`%T`9Tz1dV0j)l zI{y`@$5x+a0fP+$#YWz8foz^|n`?)C^!!)w;S1e|SNciVmZ?q_!{iq#r#RIPVBo_=39)YSiq^_bd?Q`on>s0YhjUh563?v7qy#2$9u#%*lVS z05})L({oK^JCKHy}j*e2xK|zwiW$Lmh;p? zhFojt56#G=?$`{X93`94dMOjh=QDehwlcU9TJ=BuliJ?C#kG&EOT}(ud5`Ey4qFM5 zd8?y5+++jC5$$r62Gt0`(D@k-+R5+_1xEU-_Pg%e(ukGf1iJzL|IHC_;%HB0zZw3`PI0UO*WJhW-Egt-t{BS5{W0(~Cs9M@Ah_kDN|k zniS83Ut1iR5a(9TKYB4&C-69#+Klkagge?f0kPKeVM# zu3%vWmjmXKN|&>zwzZ=V#E->4T)sZ#VMLm0iV}B2G}87LsXhJWTY)q6lz0!Ik(~O<*CWAEaXpGgGAQzDcvg%3 zcrxPd#EpUTC1p-8CDWIViT{=ctD7TObn5hwZtxI4N4_-a-=+$j?|FzFQSN_`J|ubl zjMTeWdN0NPsBOv>vVO@#?&j&wpwGFpqOW{2&@W=MU zPA>J50F@e=>efLS*rxV-Iw@8%e~81NguImVFJ^1Qz25BF==OQUUL4b9>^h?0Pl_rT zKB>SB*t3E`m9lcHqjGBk2Ck4cy4-s=(D<}2p!?iEX%xM4W0#GxJhLurcaDD6-89b{ z-r2t&lq&^Y9sHwz_Wbv^n@kO${Pf2z4GTB+K{iTJ_g$z=ag5KUn1T{aUg28zpoM+4 z27pOYAV@z5T6l($%|fZ^-Dr%sU@dYRpl=IH_mp}uD}(!i&t(_wewtA<>?8j*{kHtt zlNt%Vvj(^ykE&B-l+n!t=ZU^P@AV13yZ3ekDc$%RovEkc3%IXWR-WRBb@Fc{9Ew5c z4;;hUa5=jgOlBQ;qu8MW_(4FpEFla84q=|5Jz#WcJ8t~v6ph2Y5>wHXEJ*5+yQ(RSRiHTv9%!m@ zwpT_#z)Y3daO?D;2VStJ{}z_>m4Ti8(kDf$LO*rqDBvqKc8L@PShV(FS^ z;tER1Ms+AgdgUg4*t|<^F0z-3edG^4ri=W9T1@_j=fi=2^7iy=F&`V8a?$c-dL`3Y z>~Bxf>(=6?r;3pY^T(fVMpelh{rtx6y<;KBgwpi1OIOfbw~fqfYv}RS*}COL&fw8j z`VOYV$8xil0ees;p{joa%GptB)?g2A#{HC$fk31fqV4?*OZZqrJD#mYhI zt{x+yDg2GFafKRjT#}b@6NnL|rEFZZgZ2o@O%Sq)uREm}%D)S4F zd%=i7vFA5|FYC=?3gNcRZ)=asN9>1Yq42P$?8N9nPn(v4?}n>#DyZboN5r1=mhZoV zNJG_Bl?%CAq2Biib8BeZz6M6gfqYJEwLRoq#$ktOp+mhroA-lo^QUY-EimHO$F2Ro z8=fLp$#1m+IV|ncT(q#O!(9(GN~A*N^XjVwPCC&n(R_{0q3b8mrYK56hsX>=)7t2} zUvE(v_ME_KQpZ2Mw=VGF6Xv8~Ukm>PJiI}nDjPfm;V6TTA}L7c8!}j1P@L!^h%g6^ zF}Q|INP3BS9S7-%`nm50q>1~hDlEGafX%u=+BHbUC|2OV_i@*sHYblZUjvzam4=>4 zUw%8jD?5a{8Az`;*JK6jV~Atdc`>T+Ef2vRLGDP~fszpJ@2jB2UO*keg&xH-M$;>k zRY0IZP?`RsA)K=ia>c|D=$6DL&pU!R!p1;VlPeH$-G3#uV$Mp#XGq5csL?>5W_z$& z-*_*3pe-^UA0xpS%|TsOfn$%fbXOBVYn*HuTl@x0Ls)z}Fox)2p zg|7#ZvhXNl${|q?{uU%W)i~hofS$a{%6a%~RP&y0s4Rx_(K<8ZzFet!=T+98! z;B<%%DK_o1!Tptk@;Cw%$wr-!zePX5D@-G8SPEhxmM>l9COae+O511;@T!A2v^6@N zLRB@vqjgZLjy_s4G$6JIEB39(7P+W3l~7%!(AF2zDS5iQ3<*xWp06d9Y`WaJZD^-X zB0CYSb19u7uR4e!(2zkN5l~No4`Xzd%k1>m!0uls|20?(9ad?kJA0zNcc;_^LLV=( zHQFHUzqMzEp8L%iVJF&O{j~lqEQ%cP{*7l+hBBYX!~@o?KCT7{Zcb%~D1uNWsP+6% zQ2~Y%l~Q>V1&VTU!c-K6&u=;^pke{uKt7^80Gf+ol}al&-MDj68BOW^s8}3dr`hT0 zuXlDg+}uTYyIroaONTQR1u9-dG8Cupg!-+FB|FLrrab!aCZ4 z{m?NPV6$^Zi@9D2(8F*Z-pxipB2sm*2yjvki^{%2P0p=rsS(Z)mwTO(gs*`ZrDOZ7 zWllpvjtfr-IDN4(i_E-~=ryS)!ox*zVz<1@co6m4ODY>*gQhriiM+93uxg1i55Wf`RzOp|--nnG9$B-zYN-M%;sq_wFvM=;zw z97+a0Vs#=`)EXxYk;I`CuEynKBxLv)F46tc9v9vwFz)kKEiHa4iV|7GI0)XV&02is zk;uQrY`1O4F^HT>b2<3uwESDw=5p})?R@&Aw;cHL=0R01J_3ty8EO+KK3Au=6};es z`sOqqkd5h0m28@R3E(ZTjS{>t59zo-#$__JVtkYDd4P8TDLZ^r;oyojw0j2q7{(dv zIlm~+HSiPNXE!Wr@E{;>S7GfWl$JOfTKj3B!Hu7MuHj5}tgI_0XV^pgc5G$xvqt;1 zy05g*4&>YU9h*?0Lz~Ag7vhDDEmDYuuxFJ{FvBZC*Z&oz>};k+hJ&-)%KNI(frSCh;oq|$%l%7pzp@|A+V&~bBLKeEFlOoU zph~O3kU;eL0tuu1o;N3VVqD4dkDg(H!Sdn;`HAXZdG&4&5PiQ?jGxu~iCiWro!M`BG7w*ig8oZEX&Oq7ykp`P6Cer literal 0 HcmV?d00001 diff --git a/www/assets/icons/icon-512x512.png b/www/assets/icons/icon-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..51ee297df1cbeb0354814ffe95afa6e4bc86ea23 GIT binary patch literal 5008 zcmcIodpuOz+kf_+vCT{~jFHUfHVi6Vj42V)9$k#^5&pV%)&-1MHtmpe&*IIi|qTJh+ z!!lt30LM+X$OizWSQHpEirl|oUP%%9MyZz+pfGvNw?G|gjBN99b%Co-CbUxnU%996 zV$V&Hm0;Zjl6nx=fcP1RHJEJ^*gOZDCJ<9hBiOtI8%lZ~tSM%6bac4$Q}^XNZ!P7o zeYUo4`|VE)uTE9=z>~(WFWx=3^64*mI8-j2LE-B~`FJmbe?)cn4-YQSHkK@TRiJaI zrjL>^BV;SL0Zekz{*am-gYz2xr1iV@`#BCp1+7`bKN$G`^?kVP)pp$xgKLiqcZGM{ZtAs8SwHvA+Q+YR zUtfRO*PXIL?@oB1y32Wcd0IAQ-_7U-XH&QmAC|Xw9Z;$(hdn`I z5fIoln@*%fgcsLNfaNaHqdl1>n?g5Ha-ZQD2qpLEx~@yfjf!iTl>B>ftr0~&6xY%y zsPwQ*V+txVH1mFkBcgU^EFF%u-I6=;zWd2*1L5O8)_yVJns#Kg9`Wf-T$<3_NOzlP?lcY>%lMQY+E^x|$nOnh zF%)rWD9fS9+h=7>6ls3XzdG=TF4_8P0^4JsruhUNViOn_2eMHjjhi)KK?TM=H;}DE zq=|QSd2lF0Z<}=iroXXkyc2#j+uJxc<3Bsvtus<{k68}8pZtAbZXJ?y=oV}T|N3M@_`748u^ks>QyK6aQS7_;#%RKa1 z*)JQ_uLYqGuCy*(BronhOdkTpRh#Pv-4m7%e+mboB;-IEH-BL7F?@1+SW8G=ysEhS z4t=OH``~Y7QfD+lsrZFv3bX*3U(!xce&I<%HDT>fFKRK^%QkBmCl?lQl43g8rLfSGf!55?+so z0o42iIY*^Jn(3hppT@H-MP^3N$=-DeA8avR>(aL(^8Seh7exX4{5SOv)!!#5A1mxS^0XHyeTO%O(4g8069 zfgH=6*)&|qMu!w*N8XWzwn?ZU{`v@OlJ3k4@F!j2m8?A2VBaIjp$^$s^vA8Bt|560 zh%$@{pSgdQ(i;bIfnG;A;3uR;TxdyFKFRY_2XpK4S#gJnDm{o0&_5Sy{M>{V5=O`U zHyV-Y`Y^#}L446jlgRY&Ol=TK27gtju!h_Z@yBozD&;!r*tGFb#JDX_)O>cGIo59I(x z$imJEazT*}4Wi70w(Ei~mZpGz8gC}kV470XFu6BU)3mD^2VZJ#4+2w_EPJ>VeHK|7ENAM%S!ViogqWiA zj)2m<7#gHXjV3@uvNDL5(-~Dw&Yu7wX86>&3vL(L4iyM7muD8x)VG)#v>-hm?=Z35 z=PN$go4f^0vV;g4KYf>cni3E-54pCb(bjAA4puPLHKqP7?Gp*Nb8IUFA<`LKce2kB zj1Ne1%)r@P{<@SV9~=tO=y4${MU_#6j?f6MvALihW2mJs1reKKX>#k1APvR^p`rPU zzaHtsl4uDd@_VGGDr#)OS7<5z%Tg&s2pj3KFYGVYPP!}1pC5LUp~8W-4r=>zv?mvdq?!3 zu7nE$-#An?5~=E+*YtT3)MbwIuvQL`kY$Wqe`>3?qZqV3SYt4jcrP+t@z?B@6@bl@ zv=J=4BSrPK z;=4>${#aT8WSwE~XIiz`0cNDF&n#ZZrb#s6U9N1pa(e-oPh_TyymoY^De8sFR|-TH zx_?6k>&rwfwvV7FPDhx{JnBxC?Zk+F7hx{DV)baMWscoF?3ON(dOigdr-Zrm^o)<% zobakilutyNDXv{6_Mzg68gix>+LyRE91bJyXcyE~kvu*TWTq%8!ETMw0-mAv7Ew$e zip5HGwc}IlW`w4yrn^~a^1ceRPDlhrx|lGHnVxqQnFL~@hNOuhagwf^ez%7R(MIWx znda~N{gL!;m!QWPL^s&`F=5p^VQ($%Y%s{e6eiR`N>e?cdmV3tWZEL@zxht`|akL1v6HTvGn_9CPl4B2%UMgR7=8<{uc1&F2MYXS`tQ1L_ z3rQ*oV-j)FvaNL&wuhxPcY$ryf+S4U`f?4`!Y#wX-yjM0JjuLFB$Fm|W-dvUS~!8h zV*Df3T!vb}1a14Y@|(WPJ}`-`AnRN5QB~NpY^Sk+pT~xpC>6t zxdB+0A4K3Oc(36qEZi4*P_sCn_Z7<&5r#!Vn%IEQScZh0>vQLD{pl|X5QdfVhC4I` z@5GYC0$(dck$Ike$W&>C5@kqyn$*z(HeXA{4T3alnDFZi3prg7B}egFkEH7_3s1bT z#nq3bhcU23BdV972aZb*n1IVEa-}Y;Z#5B~WZv%ZA5}=&vM}PNr-fW0@XbY9PUg~C zGn50NVE^7KuA-VeZvtz!rs09X8mT_ym$;LpL{>YbD`2jigNTFm@U%QSYpU{4DRMFz z5x4#m=i*5Zh|b%`5cmdj@O(A_l8}oG!mEro^)$PAI@+Qtq_ZrQbE)TsDt}bxm^8iN z^&oYF`m~ z&ZHteORxl*qgde-m1tv1q(qt-WV%tf4z#3!AbPTB${Vx4e8dd$${8Y7K~*4kpsXeBD9 z=Mw{v6d5ef)q}}~$hIC%*Nr zRdI9^Lr}wV@Pt6xAdy za4BTGx-JV*li2NQGS3CJKb=e17yxFg@x#(sNW@rVTPmv!Q}ewrzvqae;O>Bz6|h6e z^X%qnboFEU%eTI`9e9S48C1>b>MFWGMrOO|66MYxER}i`fC=-InICl@d4{&w&gQiA z+gH9nulSe>Nhv`pcko_1mnd^%s>4qIf*DyM5n}1;E37sa;l?@rpE{Uj8IrUdIfID5 z?n$}JcF3ixM%6AGFni7(MWxZx$AN!u?6*iwRyv8>`Wa?@q+%ca|)ROCx&BdNSi#kAu_!{ zA)coYZ?dZ$_x=4?dUJ|7nMpmJ?#W?@yNl>sJ@5sHry%C9Cff74((YOr?uvM>D9Gf6 z!QYl`?;Z`VL|G9f<42%I65>5WU1RHXqUW^X7_q5(yLX}v-$3EGY#qWvH*frNhMItk zDyMy!cDkm-Lo-0q|E7H{wOp-Z!eC%X0aKH z4YOuG)n_OiSx(1qB&<>feETCz)qA*6*tKGiP)|o0$qUwT>SEv8@;l!yFw${(ChVHB zMj6@q+SsC^{$IW*GlsK-zt7Id%dB2O4D6nE+tYO?GW7f7>tU(^!+dG;Po-Gq^H|*t zqZhG_^O3B-t>qM8V8i`<7gQ5F>Zjlu5Cda;l|`Ai&~L5N*HBE%zZPY~2R!4-<|85Z zPTI!|PiDeun1!6l!I9;LGq2MQc4+Y(L7KRhOtB1CZE0qaTnzl$t%`UTN1q{ee6X zHc!XFmvcbs6VFuFCQWO9@HkunwI^Zf@{~iE%sh?)kU%Y FzW_h>Px#R8UM*MNDaN)&Mcn05H@5Fxdbx(FQfk05I49FVg@p z+yF7i059JFFxUVv-2gG&05QV=FaQ7l>y@eERCUfVSLAPs`{wKQ$`jGn?>BzbqhH<{W zKKbNtQUHf}oTF z3K?M;*Yw_?5X(3{vgN@kPam<7%UPO5B_t(-pp1}F_K75<4DkSgZ^u+K7b78Mj^BPl z#(|5Pkg~#)5zE-k6SBin5|a`isF^_xmXa847bIi5%C5%2AYa1gw46>vw zsSoY(fov(sFZKmYMmM7mh&iLW8%%1G&XKYpLAfKNw%3}*kuoAdnJr`M>__H>dq~Mh zP-V-g+(k>-Qs(q}WXssQpxTy_-X}}zK)3Dc*I821%VcWFsJ9?(Nx8HAB~LQ8U>P-a zuTt*pkmh5n)f|ns+Q$5J2qLyN|84E@+#+w#(H$VTc!5HXl|4%iLCo)Vlji%N$p7+I zG8$BzyHCc90G+&N*{z@Jc&GJ~9n-C!?ijTGxE#NGXP;Ytsbkdo&MZ9H)#u-s|CMj0 W+lM#8Z~|xm0000Px#QBX`&MNDaN(FHWq05Hh_FW3Mv%K$LW05R48FxUVw z)c`Tx05I18Fx3Ds+5j=b059DDG5`Pn`|0h?DNx=~ap{et=5mep%+~Lyx#A^H+#^l% zx5S%GFfafB01k9gPE!E&((4(;BUht~-7>L58O~@#00009a7bBm000H6000H60f4@L z=Kuf#+(|@1RA}DqnQ3~1AQVNNP|ScL4oUXE&?Z$Ahc^JBfBJbB;3>Hreb6X6a^%R7 z;3>+#e0pAsnVC28G71@_nt#-0QkgM3T~@)@9nd zZWSG>a#?ZFb**E?A^ZVd{Y>W%C@dE6TmlD>DB#LG-_*Y`3;-|s%mDfk&@%wM<;-dU z%uZG6jBg_vFwB5~1`r-lj=dzaTLJ+PjAV02+0w|grk4Qi z_NdmZY}5-iXC>=8R<8=;$WuTroY=%%5X~{ z0fLsSe@zuVEn7+gB>k4?UVx64Eg=CVDVhGAi(*a6cA+O0QnGd&yjoH==>eE~y^Vl* zry6I^Fw^>X#pCEme%Y8om0EzA0pw0)Cde3FVdcRXGE-Owu z$vO9SV z*n9RAfjlf%zPAXgA1U?(2-|DBO!@#4mz&4@;tEKwkz3Bf3E*?bd_7qMWaO73wgO!I zZ{dNqzw6clvF-Nz|AlPY{=QqFiW35mQK&514$>`EMWAkRM6hnLwgYwxw;i-wsO_-b g0#)SEkt6>uKVWACA_logo_Coloured \ No newline at end of file diff --git a/www/assets/settings.json b/www/assets/settings.json new file mode 100644 index 00000000000..0e0dcd235c4 --- /dev/null +++ b/www/assets/settings.json @@ -0,0 +1,3 @@ +{ + +} \ No newline at end of file diff --git a/www/favicon.ico b/www/favicon.ico index ca27a164bc8cdf79e3b46727cdfecbd001f9eda6..8081c7ceaf2be08bf59010158c586170d9d2d517 100644 GIT binary patch literal 5430 zcmc(je{54#6vvCoAI3i*G5%$U7!sA3wtMZ$fH6V9C`=eXGJb@R1%(I_{vnZtpD{6n z5Pl{DmxzBDbrB>}`90e12m8T*36WoeDLA&SD_hw{H^wM!cl_RWcVA!I+x87ee975; z@4kD^=bYPn&pmG@(+JZ`rqQEKxW<}RzhW}I!|ulN=fmjVi@x{p$cC`)5$a!)X&U+blKNvN5tg=uLvuLnuqRM;Yc*swiexsoh#XPNu{9F#c`G zQLe{yWA(Y6(;>y|-efAy11k<09(@Oo1B2@0`PtZSkqK&${ zgEY}`W@t{%?9u5rF?}Y7OL{338l*JY#P!%MVQY@oqnItpZ}?s z!r?*kwuR{A@jg2Chlf0^{q*>8n5Ir~YWf*wmsh7B5&EpHfd5@xVaj&gqsdui^spyL zB|kUoblGoO7G(MuKTfa9?pGH0@QP^b#!lM1yHWLh*2iq#`C1TdrnO-d#?Oh@XV2HK zKA{`eo{--^K&MW66Lgsktfvn#cCAc*(}qsfhrvOjMGLE?`dHVipu1J3Kgr%g?cNa8 z)pkmC8DGH~fG+dlrp(5^-QBeEvkOvv#q7MBVLtm2oD^$lJZx--_=K&Ttd=-krx(Bb zcEoKJda@S!%%@`P-##$>*u%T*mh+QjV@)Qa=Mk1?#zLk+M4tIt%}wagT{5J%!tXAE;r{@=bb%nNVxvI+C+$t?!VJ@0d@HIyMJTI{vEw0Ul ze(ha!e&qANbTL1ZneNl45t=#Ot??C0MHjjgY8%*mGisN|S6%g3;Hlx#fMNcL<87MW zZ>6moo1YD?P!fJ#Jb(4)_cc50X5n0KoDYfdPoL^iV`k&o{LPyaoqMqk92wVM#_O0l z09$(A-D+gVIlq4TA&{1T@BsUH`Bm=r#l$Z51J-U&F32+hfUP-iLo=jg7Xmy+WLq6_tWv&`wDlz#`&)Jp~iQf zZP)tu>}pIIJKuw+$&t}GQuqMd%Z>0?t%&BM&Wo^4P^Y z)c6h^f2R>X8*}q|bblAF?@;%?2>$y+cMQbN{X$)^R>vtNq_5AB|0N5U*d^T?X9{xQnJYeU{ zoZL#obI;~Pp95f1`%X3D$Mh*4^?O?IT~7HqlWguezmg?Ybq|7>qQ(@pPHbE9V?f|( z+0xo!#m@Np9PljsyxBY-UA*{U*la#8Wz2sO|48_-5t8%_!n?S$zlGe+NA%?vmxjS- zHE5O3ZarU=X}$7>;Okp(UWXJxI%G_J-@IH;%5#Rt$(WUX?6*Ux!IRd$dLP6+SmPn= z8zjm4jGjN772R{FGkXwcNv8GBcZI#@Y2m{RNF_w8(Z%^A*!bS*!}s6sh*NnURytky humW;*g7R+&|Ledvc-`F5ux5*tDV1dt+o{MPW`r8?e;xuwNcoh zRyz?WuV|r1fR(Ae7qr%y$$+-DwlNLb>zFMX;?~yIiTJl!li7}^eUBzOi(<3ueko{a zGWoWamX;r(vvw1`MXmWpCcIClrYvkaj;;Vn5%- z6sMG&=2h5DD{1p~sSjeH0R;#18lDffE~p>XJ`(KKjDjY7Anik%==4VOlH~E-=*YXQ z2%Uw}t6;Gr%8AY}%CCcOB(g?D=i|NM+38FA5}of*Z~*to-$76J@txQ{3ySWwkE44u z=qnnwIZ}RO78umiYVvk92e|;6BQx%*bFeTh;k2f%t_xYVRt&Z`fnV1Lfc@Z z{YfQ^&qmjGMsJhvk-1=<5*0G#rC@z}#1eT5GN5V%L5_-*MN5 zes(G}@S92}!Mt;pE@9J1^$RrW%jiZ*nYJ^7&37~Mvek=2KV|aH`r2?$A5wO(9Q{^g zPk@=A1r(!}+AmNvW(O2A$k)P$W9_G<)^cmUMy}L3{|$KdEH4Q8y*i(Bd|ru8mPGeC z?Z78X*yXA268d=>J~&UIj%+e=#~)j#y{P#6p&#FTMQH;R9b5P&SrFovttM0 ziOp4x`wCdKo>CF{ph1J)jh^dhe^(W;i8{=GMzFgw%1Us*zhVya4k|+rqwIYD14fiF z%+c*YW*qJBaZrXXLRmZaLD_HPjf1WC=;4$L(a@noS0L^$pxi6|x3{;iL|^|7{XGFM z`7Z)89);pW}*71ih^jy9-L#sru_+`!Bd_P?W}? zSj7MM+d$N<7vmoLKX~xqHJHoG&WAXcc|W=*p9p@;hA#n%(v~PjpBk;dcS_WAem|}= zK-c~c`t{`cc3#T(No`bS{Y=? z`@=mL``jw4(4an;`RliSyhJWtrGakRw2?LeQ`3fKW$udo65Cw=(V3L!#BtaJx{9{WJ1^$HNpzyF{4UUq$oHcV z_#05C9{a1zU1VQZL|gc_3JOqszdEMBKNKeXPw&mw_+nctW9-@TK2H6PW&P}?&)qXN z)y4l^sh6RyJQLQYi0!2)#W_7qxxI*yI*f4?EZWWw^H0r>PTOCf459~ zqpEq^@1HoI(;6u!Z9h$H%pFsbwuZ&b`p;**cE}jqlJ=cb_M0Q6ovFn6+h3XWzbv(- zd`8-FgYp9zJIB8njBH@j*%bCz*L)G~nb<5#`9+YnXUpDK>3y5tC;D$Zno$P|@f$4d ze{wTJ+FQX{;GM3-+1o#RL9=~8j<@W-uc>@ zzdi_d2cHAYs3k{1+nFHF<8;bx;4Oszu6NXv@0Tcfzol*U%IQ42^+)_al=PPt2U9sS z>HklZKanadV0n4$CxbZWyC{za-H7>l-lNWcDUXQ?!yE#km zNAN2Ub-qX0v(^{1H=WJ~j^$ZS_cztfGZW|GeU`45IV85#<;3X{I|^hxyY7F=8^?yg zKMnVtWqTcNC z!k_!WUFS|YHb0}>IZkNrYi6EE-%0mVU$=A6*4jk)bs*09G0N`8LlaqS%j4#ZWx%6R zzcVJSU4Iwm`~0EU20sZbEb=$m_{MM_?v+f$x64yNADyr9xi{4F{8ly{tPdUxdNbjE z$47F%zY5fKzk5$DY%&l29z>r`NhajF-yPbXhd&<5Q8&x~KzqzD_fTFML^_p1)c+mj zwPM4<=EH^!Tb4a~Lo&ZRxeL9=MuE+Nc_7Zc2v=Xb(e!g9ea9GT`(qIE4aI&%zBh{a z*HfJ<`jxkDos4@oNn*w@D1neh2%n zYqvG=|AAice@*)6H*ceiKRY+^-}CV$(4Mg?Qk{U(P2du+74RFSzfmg_O5bwz@`2wA zeoGdi@hII1{MPUrt3Ue9w7O`0O6fO!y%_i%FtW?4dto5e9YH)#es3Jlongi!?1b!!}^CI{Nh@`JS1im941jhn@GZ+B+8~vOKML+9t z|E=T+@C1_e2Nq-&DQ^)U%(5!JeQ$pMwuFzto?4{%7UJ!?nK{TmW3-sH5Ly z{(S)Tg+{kBa-4Tr{(8pNJJa7?`ty1-y)Jq$CD*Z@-!o~O4$Ob`bUY7NgIz!ySd_@W zbf@1fgw?l@Gnw6H>u|p-CNh^ zH6U|u`8z-(@?6dXroSw0fZ)#{Z*Ec7d)srIN3#%~pVyGcTxZ_^pGah}=(%_a>=*?Z zz9MyPx6jC}dY`@yPP5X0mZ!}=^74RYj{(0g^2l+u&5K<}X!9F2CEswVzGuTeE=-k@ z@{N>z*XNP@L)-XHOm)@{ZKo!}O@qvDj!1F*DN&H&-=_WwFehc{Vg!D7za?J|95~Ru zKXCQQuZT|lHVM+gTDjw;N~Eu^ey9__MF;Bdr(>rZokq0>7gFS zmz!JT{=1BFBz>I?oV#bd2zk%X0Dl4IG~Zi}@gQ)n4}^L;zI$XskQ*QAJK#UyKr20< zuVFI>90bOKJHhq9voa6F@&88o81Ni87&zy9!Q&v!4^&Ij&RDz#yjM2{j{whUI{rVY zn;)IS_TU*{t{DV+gT~Q`=i|4)b%}nb{CVWlfUz(>eMROc2BGWGSsfazWiqF!gW z&|^COFM551#vR7HBF^EV#_F9p-JILfM6YP`3Ml>?#PQ|l0ncfc_CW9z5YItx&0!z< z^lYYcFt?cpR|ornpMc|m=jOBE^I%ob8`MrGp7(To%jP=I>r3DoU@nw9U+=BnqGRbO z9eWmab6u3ZK=}?}9Qxu+JWRjloYTMtz<8_#HUj1gb9i6UrgXmUf)3!O905!oz3@9h z8{I4gBxAm8XQ}u8vo&2A<4EHvbi_&zcuQhq7>-Kn7CXRU77{Z5HY0VsFVlUuFZI20 z487OPCy|z;@Sa$y!?!@bU8e0q>hH_Qta|=;OXSYYT(Ec|%N9>T;5;I!I~6Pz1qt7q zvhR$P_N20FDoD!C@%*H2(YMp>8Ck5l&!@#o;A_CYmyyNlHz-VsmB7tCw`F9p>YMd( zFeC~BzXd)zBeVKTFd-v12mCA}i&gW$Y_N6|1b#LA=#0#>^CWmzMt&LfwErWhj|)1k z(<@+;P>;+xT^TEZuMhWav_wX3e*S5Ytp+!T>c2D`%mw2?N(WQ9KNV2^II#aL-HIU2 zU!U!N4lqB6d0-omk}K4Dw;{NNZBihu?rR zq7ZIu?g5^i7eVa*T*}7M`j$W%4ekb$!4_aJ$da;)z+GS!@NF;)tPNfVvHvS5yUx~E z2cES@faj|SO+@KY;Ql`jTnGLFV*jp*vK_(q!3^N~m!Wl0ei#@FeRu=J{^e7F@w*)K zl$OJAbFc?U`*!YQKz8pV>Jbga>SYke$e!~ab(%4X`_3`W11*{Mb*L|hKjyP%LG)n? z<)wjVe^S7H@ZG^OpeN*6i~Y;zh58@i7l4DnNRXags)fjy+vkJe>)<4CEpUJC4^{vR zLhe`lDK)oI7?_+pKo8$Z?qSDV94rZnP@JRd^r2ud1a6F4LOt?O?P6fy; z-KhA>U>gh2ioiUW(r7A|C4yrp?~v4gK-ndeJP$W_mfn2JnMd?D%52&fIHsh}w*ccT zZ2+bL{qWB6-gd6jL8PrHOb!+OoB{Mna{SwXKF){=29~Xd?!31z9F#d~yW@OB?e-+FI_XBg)n!tH9BG1GrU}NC9 z8U=cqKQXPSia-^CDgspmst8mOs3K5Bpo%~hfhq!31gZ#B5vU?iMWBj66@e-ORRpRC iR1v5mP(`4MKox;10#yX62viZMB2Y!3ia>vf!2bX)UaB$x diff --git a/www/index.html b/www/index.html new file mode 100644 index 00000000000..76f1db5966b --- /dev/null +++ b/www/index.html @@ -0,0 +1,35 @@ + + + + + ACA Engine | Driver Test Runner + + + + + + + + + +

+
+
+
+
+
+
+ + + + diff --git a/www/main-es2015.910b13f4ffedd104e88e.js b/www/main-es2015.910b13f4ffedd104e88e.js new file mode 100644 index 00000000000..6334d77197a --- /dev/null +++ b/www/main-es2015.910b13f4ffedd104e88e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",s="hour",r="day",i="week",o="month",l="quarter",a="year",c=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,u=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var s=String(t);return!s||s.length>=e?t:""+Array(e+1-s.length).join(n)+t},d={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),s=Math.floor(n/60),r=n%60;return(e<=0?"+":"-")+h(s,2,"0")+":"+h(r,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,o),r=e-s<0,i=t.clone().add(n+(r?-1:1),o);return Number(-(n+(e-s)/(r?s-i:i-s))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(c){return{M:o,y:a,w:i,d:r,h:s,m:n,s:e,ms:t,Q:l}[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},p={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=p;var m=function(t){return t instanceof w},_=function(t,e,n){var s;if(!t)return null;if("string"==typeof t)g[t]&&(s=t),e&&(g[t]=e,s=t);else{var r=t.name;g[r]=t,s=r}return n||(f=s),s},v=function(t,e,n){if(m(t))return t.clone();var s=e?"string"==typeof e?{format:e,pl:n}:e:{};return s.date=t,new w(s)},y=d;y.l=_,y.i=m,y.w=function(t,e){return v(t,{locale:e.$L,utc:e.$u})};var w=function(){function h(t){this.$L=this.$L||_(t.locale,null,!0)||f,this.parse(t)}var d=h.prototype;return d.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(y.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var s=e.match(c);if(s)return n?new Date(Date.UTC(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)):new Date(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)}return new Date(e)}(t),this.init()},d.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},d.$utils=function(){return y},d.isValid=function(){return!("Invalid Date"===this.$d.toString())},d.isSame=function(t,e){var n=v(t);return this.startOf(e)<=n&&n<=this.endOf(e)},d.isAfter=function(t,e){return v(t){throw t})}const l={closed:!0,next(t){},error(t){if(i.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},a=Array.isArray||(t=>t&&"number"==typeof t.length);function c(t){return null!==t&&"object"==typeof t}function u(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}u.prototype=Object.create(Error.prototype);const h=u,d=(()=>{class t{constructor(t){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let t,e=!1;if(this.closed)return;let{_parent:n,_parents:r,_unsubscribe:i,_subscriptions:o}=this;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;let l=-1,u=r?r.length:0;for(;n;)n.remove(this),n=++lt.concat(e instanceof h?e.errors:e),[])}const f="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class g extends d{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof g?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[f](){return this}static create(t,e,n){const s=new g(t,e,n);return s.syncErrorThrowable=!1,s}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parent:t,_parents:e}=this;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=t,this._parents=e,this}}class m extends g{constructor(t,e,n,r){let i;super(),this._parentSubscriber=t;let o=this;s(e)?i=e:e&&(i=e.next,n=e.error,r=e.complete,e!==l&&(s((o=Object.create(e)).unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=i,this._error=n,this._complete=r}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;i.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=i;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):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);i.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),i.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!i.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(s){return i.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=s,t.syncErrorThrown=!0,!0):(o(s),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const _="function"==typeof Symbol&&Symbol.observable||"@@observable";function v(){}function y(...t){return w(t)}function w(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:v}const b=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:s}=this,r=function(t,e,n){if(t){if(t instanceof g)return t;if(t[f])return t[f]()}return t||e||n?new g(t,e,n):new g(l)}(t,e,n);if(r.add(s?s.call(r,this.source):this.source||i.useDeprecatedSynchronousErrorHandling&&!r.syncErrorThrowable?this._subscribe(r):this._trySubscribe(r)),i.useDeprecatedSynchronousErrorHandling&&r.syncErrorThrowable&&(r.syncErrorThrowable=!1,r.syncErrorThrown))throw r.syncErrorValue;return r}_trySubscribe(t){try{return this._subscribe(t)}catch(e){i.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:s}=t;if(e||s)return!1;t=n&&n instanceof g?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=C(e))((e,n)=>{let s;s=this.subscribe(e=>{try{t(e)}catch(r){n(r),s&&s.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[_](){return this}pipe(...t){return 0===t.length?this:w(t)(this)}toPromise(t){return new(t=C(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=(e=>new t(e)),t})();function C(t){if(t||(t=i.Promise||Promise),!t)throw new Error("no Promise impl found");return t}function x(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}x.prototype=Object.create(Error.prototype);const S=x;class E extends d{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class k extends g{constructor(t){super(t),this.destination=t}}const T=(()=>{class t extends b{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new k(this)}lift(t){const e=new O(this,this);return e.operator=t,e}next(t){if(this.closed)throw new S;if(!this.isStopped){const{observers:e}=this,n=e.length,s=e.slice();for(let r=0;rnew O(t,e)),t})();class O extends T{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):d.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}class R extends g{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const P=t=>e=>{for(let n=0,s=t.length;ne=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,o),e);function M(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}const N=M(),D=t=>e=>{const n=t[N]();for(;;){const t=n.next();if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e},V=t=>e=>{const n=t[_]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)},$=t=>t&&"number"==typeof t.length&&"function"!=typeof t;function L(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const j=t=>{if(t instanceof b)return e=>t._isScalar?(e.next(t.value),void e.complete()):t.subscribe(e);if(t&&"function"==typeof t[_])return V(t);if($(t))return P(t);if(L(t))return A(t);if(t&&"function"==typeof t[N])return D(t);{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};function U(t,e,n,s,r=new R(t,n,s)){if(!r.closed)return j(e)(r)}class z extends g{notifyNext(t,e,n,s,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(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 H(t,e))}}class H{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new B(t,this.project,this.thisArg))}}class B extends g{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function G(t,e){return new b(e?n=>{const s=new d;let r=0;return s.add(e.schedule(function(){r!==t.length?(n.next(t[r++]),n.closed||s.add(this.schedule())):n.complete()})),s}:P(t))}function W(t,e){if(!e)return t instanceof b?t:new b(j(t));if(null!=t){if(function(t){return t&&"function"==typeof t[_]}(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>{const r=t[_]();s.add(r.subscribe({next(t){s.add(e.schedule(()=>n.next(t)))},error(t){s.add(e.schedule(()=>n.error(t)))},complete(){s.add(e.schedule(()=>n.complete()))}}))})),s}:V(t))}(t,e);if(L(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>t.then(t=>{s.add(e.schedule(()=>{n.next(t),s.add(e.schedule(()=>n.complete()))}))},t=>{s.add(e.schedule(()=>n.error(t)))}))),s}:A(t))}(t,e);if($(t))return G(t,e);if(function(t){return t&&"function"==typeof t[N]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new b(e?n=>{const s=new d;let r;return s.add(()=>{r&&"function"==typeof r.return&&r.return()}),s.add(e.schedule(()=>{r=t[N](),s.add(e.schedule(function(){if(n.closed)return;let t,e;try{const i=r.next();t=i.value,e=i.done}catch(s){return void n.error(s)}e?n.complete():(n.next(t),this.schedule())}))})),s}:D(t))}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}function Y(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?s=>s.pipe(Y((n,s)=>W(t(n,s)).pipe(F((t,r)=>e(n,t,s,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new Z(t,this.project,this.concurrent))}}class Z extends z{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Q(t){return t}function X(t=Number.POSITIVE_INFINITY){return Y(Q,t)}function K(...t){let e=Number.POSITIVE_INFINITY,n=null,s=t[t.length-1];return I(s)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof s&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof b?t[0]:X(e)(G(t,n))}function J(){return function(t){return t.lift(new tt(t))}}class tt{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const s=new et(t,n),r=e.subscribe(s);return s.closed||(s.connection=n.connect()),r}}class et extends g{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,s=t._connection;this.connection=null,!s||n&&s!==n||s.unsubscribe()}}const nt=class extends b{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new d).add(this.source.subscribe(new rt(this.getSubject(),this))),t.closed?(this._connection=null,t=d.EMPTY):this._connection=t),t}refCount(){return J()(this)}}.prototype,st={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:nt._subscribe},_isComplete:{value:nt._isComplete,writable:!0},getSubject:{value:nt.getSubject},connect:{value:nt.connect},refCount:{value:nt.refCount}};class rt extends k{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function it(t,e){return function(n){let s;if(s="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new ot(s,e));const r=Object.create(n,st);return r.source=n,r.subjectFactory=s,r}}class ot{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,s=this.subjectFactory(),r=n(s).subscribe(t);return r.add(e.subscribe(s)),r}}function lt(){return new T}const at="__parameters__";function ct(t,e,n){const s=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function r(...t){if(this instanceof r)return s.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,s){const r=t.hasOwnProperty(at)?t[at]:Object.defineProperty(t,at,{value:[]})[at];for(;r.length<=s;)r.push(null);return(r[s]=r[s]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r}const ut=ct("Inject",t=>({token:t})),ht=ct("Optional"),dt=ct("Self"),pt=ct("SkipSelf");var ft=function(t){return 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",t}({});function gt(t){for(let e in t)if(t[e]===gt)return e;throw Error("Could not find renamed property on target object.")}function mt(t){return{providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function _t(t){return t&&t.hasOwnProperty(vt)?t[vt]:null}const vt=gt({ngInjectableDef:gt});function yt(t){if("string"==typeof t)return t;if(t instanceof Array)return"["+t.map(yt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}const wt=gt({__forward_ref__:gt});function bt(t){return t.__forward_ref__=bt,t.toString=function(){return yt(this())},t}function Ct(t){const e=t;return"function"==typeof e&&e.hasOwnProperty(wt)&&e.__forward_ref__===bt?e():t}function xt(){const t="undefined"!=typeof globalThis&&globalThis,e="undefined"!=typeof window&&window,n="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,s="undefined"!=typeof global&&global;return t||s||e||n}const St=xt();let Et,kt=void 0;function Tt(t){const e=kt;return kt=t,e}function Ot(t,e=ft.Default){return(Et||function(t,e=ft.Default){if(void 0===kt)throw new Error("inject() must be called from an injection context");return null===kt?function(t,e,n){const s=_t(t);if(s&&"root"==s.providedIn)return void 0===s.value?s.value=s.factory():s.value;if(n&ft.Optional)return null;throw new Error(`Injector: NOT_FOUND [${yt(t)}]`)}(t,0,e):kt.get(t,e&ft.Optional?null:void 0,e)})(t,e)}const It=Ot;class Rt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ngInjectableDef=mt({providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Pt="__source",At=new Object,Mt=new Rt("INJECTOR",-1);class Nt{get(t,e=At){if(e===At){const e=new Error(`NullInjectorError: No provider for ${yt(t)}!`);throw e.name="NullInjectorError",e}return e}}const Dt=(()=>{class t{static create(t,e){return Array.isArray(t)?new Gt(t,e):new Gt(t.providers,t.parent,t.name||null)}}return t.THROW_IF_NOT_FOUND=At,t.NULL=new Nt,t.ngInjectableDef=mt({providedIn:"any",factory:()=>Ot(Mt)}),t.__NG_ELEMENT_ID__=-1,t})(),Vt=function(t){return t},$t=[],Lt=Vt,jt=function(){return Array.prototype.slice.call(arguments)},Ut=gt({provide:String,useValue:gt}),zt="ngTokenPath",Ft="ngTempTokenPath",Ht=/\n/gm,Bt="\u0275";class Gt{constructor(t,e=Dt.NULL,n=null){this.parent=e,this.source=n;const s=this._records=new Map;s.set(Dt,{token:Dt,fn:Vt,deps:$t,value:this,useNew:!1}),s.set(Mt,{token:Mt,fn:Vt,deps:$t,value:this,useNew:!1}),function t(e,n){if(n)if((n=Ct(n))instanceof Array)for(let s=0;st.push(yt(n))),`StaticInjector[${t.join(", ")}]`}}function Wt(t){return qt("Cannot mix multi providers and regular providers",t)}function Yt(t,e,n,s=null){t=t&&"\n"===t.charAt(0)&&t.charAt(1)==Bt?t.substr(2):t;let r=yt(e);if(e instanceof Array)r=e.map(yt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let s=e[n];t.push(n+":"+("string"==typeof s?JSON.stringify(s):yt(s)))}r=`{${t.join(", ")}}`}return`${n}${s?"("+s+")":""}[${r}]: ${t.replace(Ht,"\n ")}`}function qt(t,e){return new Error(Yt(t,e,"StaticInjectorError"))}const Zt="ngDebugContext",Qt="ngOriginalError",Xt="ngErrorLogger",Kt=new Rt("AnalyzeForEntryComponents"),Jt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}(),te=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(St))();function ee(t){return t[Zt]}function ne(t){return t[Qt]}function se(t,...e){t.error(...e)}class re{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),s=function(t){return t[Xt]||se}(t);s(this._console,"ERROR",t),e&&s(this._console,"ORIGINAL ERROR",e),n&&s(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?ee(t)?ee(t):this._findContext(ne(t)):null}_findOriginalError(t){let e=ne(t);for(;e&&ne(e);)e=ne(e);return e}}let ie=!0,oe=!1;function le(){return oe=!0,ie}class ae{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),this.inertBodyElement=this.inertDocument.createElement("body"),t.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t=""+t+"";try{t=encodeURI(t)}catch(s){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t=""+t+"";try{const n=(new window.DOMParser).parseFromString(t,"text/html").body;return n.removeChild(n.firstChild),n}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(t){const e=t.attributes;for(let s=e.length-1;0he(t.trim())).join(", ")),this.buf.push(" ",e,'="',ke(o),'"')}var s;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();ve.hasOwnProperty(e)&&!fe.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(ke(t))}checkClobberedElement(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}}const Se=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ee=/([^\#-~ |!])/g;function ke(t){return t.replace(/&/g,"&").replace(Se,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ee,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let Te;function Oe(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const Ie=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}();class Re{}const Pe=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ae=/^url\(([^)]+)\)$/,Me=/([A-Z])/g;function Ne(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function De(t){return!!t&&"function"==typeof t.then}function Ve(t){return!!t&&"function"==typeof t.subscribe}let $e=null;function Le(){if(!$e){const t=St.Symbol;if(t&&t.iterator)$e=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e{class t{}return t.NULL=new Qe,t})();class Ke{constructor(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(let s=0;s{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=(()=>rn(t)),t})(),rn=nn;class on{}class ln{}const an=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}(),cn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>un()),t})(),un=nn;class hn{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const dn=new hn("8.0.0");class pn{constructor(){}supports(t){return Fe(t)}create(t){return new gn(t)}}const fn=(t,e)=>e;class gn{constructor(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||fn}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,s=0,r=null;for(;e||n;){const i=!n||e&&e.currentIndex{s=this._trackByFn(e,t),null!==r&&je(r.trackById,s)?(i&&(r=this._verifyReinsertion(r,t,s,e)),je(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,s,e),i=!0),r=r._next,e++}),this.length=e;return this._truncate(r),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;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}}_mismatch(t,e,n,s){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,s))?(je(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,s)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(je(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,s)):t=this._addAfter(new mn(e,n),r,s),t}_verifyReinsertion(t,e,n,s){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,t._prev,s):t.currentIndex!=s&&(t.currentIndex=s,this._addToMoves(t,s)),t}_truncate(t){for(;null!==t;){const 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)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const s=t._prevRemoved,r=t._nextRemoved;return null===s?this._removalsHead=r:s._nextRemoved=r,null===r?this._removalsTail=s:r._prevRemoved=s,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const s=null===e?this._itHead:e._next;return t._next=s,t._prev=e,null===s?this._itTail=t:s._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new vn),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e?t:(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t,t)}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new vn),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}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class mn{constructor(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}}class _n{constructor(){this._head=null,this._tail=null}add(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)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&je(n.trackById,t))return n;return null}remove(t){const 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}}class vn{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _n,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function yn(t,e,n){const s=t.previousIndex;if(null===s)return s;let r=0;return n&&s{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const s=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,s)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const 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}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const s=n._prev,r=n._next;return s&&(s._next=r),r&&(r._prev=s),n._next=null,n._prev=null,n}const n=new Cn(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;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}}_maybeAddToChanges(t,e){je(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Cn{constructor(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}}const xn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new pn])}),t})(),Sn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new wn])}),t})(),En=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>kn()),t})(),kn=(...t)=>{},Tn=[new wn],On=new xn([new pn]),In=new Sn(Tn),Rn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Pn(t,sn)),t})(),Pn=nn,An=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Mn(t,sn)),t})(),Mn=nn;function Nn(t,e,n,s){let r=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${e}'. Current value: '${n}'.`;return s&&(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){const n=new Error(t);return Dn(n,e),n}(r,t)}function Dn(t,e){t[Zt]=e,t[Xt]=e.logError.bind(e)}function Vn(t){return new Error(`ViewDestroyedError: Attempt to use a destroyed view: ${t}`)}function $n(t,e,n){const s=t.state,r=1792&s;return r===e?(t.state=-1793&s|n,t.initIndex=-1,!0):r===n}function Ln(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function jn(t,e){return t.nodes[e]}function Un(t,e){return t.nodes[e]}function zn(t,e){return t.nodes[e]}function Fn(t,e){return t.nodes[e]}function Hn(t,e){return t.nodes[e]}const Bn={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},Gn=()=>{},Wn=new Map;function Yn(t){let e=Wn.get(t);return e||(e=yt(t)+"_"+Wn.size,Wn.set(t,e)),e}const qn="$$undefined",Zn="$$empty";function Qn(t){return{id:qn,styles:t.styles,encapsulation:t.encapsulation,data:t.data}}let Xn=0;function Kn(t,e,n,s){return!(!(2&t.state)&&je(t.oldValues[e.bindingIndex+n],s))}function Jn(t,e,n,s){return!!Kn(t,e,n,s)&&(t.oldValues[e.bindingIndex+n]=s,!0)}function ts(t,e,n,s){const r=t.oldValues[e.bindingIndex+n];if(1&t.state||!Ue(r,s)){const i=e.bindings[n].name;throw Nn(Bn.createDebugContext(t,e.nodeIndex),`${i}: ${r}`,`${i}: ${s}`,0!=(1&t.state))}}function es(t){let e=t;for(;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function ns(t,e){let n=t;for(;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function ss(t,e,n,s){try{return es(33554432&t.def.nodes[e].flags?Un(t,e).componentView:t),Bn.handleEvent(t,e,n,s)}catch(r){t.root.errorHandler.handleError(r)}}function rs(t){return t.parent?Un(t.parent,t.parentNodeDef.nodeIndex):null}function is(t){return t.parent?t.parentNodeDef.parent:null}function os(t,e){switch(201347067&e.flags){case 1:return Un(t,e.nodeIndex).renderElement;case 2:return jn(t,e.nodeIndex).renderText}}function ls(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function as(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function cs(t){return 1<{"number"==typeof t?(e[t]=r,n|=cs(t)):s[t]=r}),{matchedQueries:e,references:s,matchedQueryIds:n}}function hs(t,e){return t.map(t=>{let n,s;return Array.isArray(t)?[s,n]=t:(s=0,n=t),n&&("function"==typeof n||"object"==typeof n)&&e&&Object.defineProperty(n,Pt,{value:e,configurable:!0}),{flags:s,token:n,tokenKey:Yn(n)}})}function ds(t,e,n){let s=n.renderParent;return s?0==(1&s.flags)||0==(33554432&s.flags)||s.element.componentRendererType&&s.element.componentRendererType.encapsulation===Jt.Native?Un(t,n.renderParent.nodeIndex).renderElement:void 0:e}const ps=new WeakMap;function fs(t){let e=ps.get(t);return e||((e=t(()=>Gn)).factory=t,ps.set(t,e)),e}function gs(t,e,n,s,r){3===e&&(n=t.renderer.parentNode(os(t,t.def.lastRenderRootNode))),ms(t,e,0,t.def.nodes.length-1,n,s,r)}function ms(t,e,n,s,r,i,o){for(let l=n;l<=s;l++){const n=t.def.nodes[l];11&n.flags&&vs(t,n,e,r,i,o),l+=n.childCount}}function _s(t,e,n,s,r,i){let o=t;for(;o&&!ls(o);)o=o.parent;const l=o.parent,a=is(o),c=a.nodeIndex+a.childCount;for(let u=a.nodeIndex+1;u<=c;u++){const t=l.def.nodes[u];t.ngContentIndex===e&&vs(l,t,n,s,r,i),u+=t.childCount}if(!l.parent){const o=t.root.projectableNodes[e];if(o)for(let e=0;e-1}(r)||"root"===i.providedIn&&r._def.isRoot))){const n=t._providers.length;return t._def.providers[n]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:n,token:e.token},t._providers[n]=Ss,t._providers[n]=Rs(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Tt(s)}var r,i}function Rs(t,e){let n;switch(201347067&e.flags){case 512:n=function(t,e,n){const s=n.length;switch(s){case 0:return new e;case 1:return new e(Is(t,n[0]));case 2:return new e(Is(t,n[0]),Is(t,n[1]));case 3:return new e(Is(t,n[0]),Is(t,n[1]),Is(t,n[2]));default:const r=new Array(s);for(let e=0;e=n.length)&&(e=n.length-1),e<0)return null;const s=n[e];return s.viewContainerParent=null,Ds(n,e),Bn.dirtyParentQueries(s),Ms(s),s}function As(t,e,n){const s=e?os(e,e.def.lastRenderRootNode):t.renderElement,r=n.renderer.parentNode(s),i=n.renderer.nextSibling(s);gs(n,2,r,i,void 0)}function Ms(t){gs(t,3,null,null,void 0)}function Ns(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Ds(t,e){e>=t.length-1?t.pop():t.splice(e,1)}const Vs=new Object;function $s(t,e,n,s,r,i){return new Ls(t,e,n,s,r,i)}class Ls extends Ye{constructor(t,e,n,s,r,i){super(),this.selector=t,this.componentType=e,this._inputs=s,this._outputs=r,this.ngContentSelectors=i,this.viewDefFactory=n}get inputs(){const t=[],e=this._inputs;for(let n in e)t.push({propName:n,templateName:e[n]});return t}get outputs(){const t=[];for(let e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t}create(t,e,n,s){if(!s)throw new Error("ngModule should be provided");const r=fs(this.viewDefFactory),i=r.nodes[0].element.componentProvider.nodeIndex,o=Bn.createRootView(t,e||[],n,r,s,Vs),l=zn(o,i).instance;return n&&o.renderer.setAttribute(Un(o,0).renderElement,"ng-version",dn.full),new js(o,new Hs(o),l)}}class js extends We{constructor(t,e,n){super(),this._view=t,this._viewRef=e,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=e,this.changeDetectorRef=e,this.instance=n}get location(){return new sn(Un(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new Ys(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(t){this._viewRef.onDestroy(t)}}function Us(t,e,n){return new zs(t,e,n)}class zs{constructor(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}get element(){return new sn(this._data.renderElement)}get injector(){return new Ys(this._view,this._elDef)}get parentInjector(){let t=this._view,e=this._elDef.parent;for(;!e&&t;)e=is(t),t=t.parent;return t?new Ys(t,e):new Ys(this._view,null)}clear(){for(let t=this._embeddedViews.length-1;t>=0;t--){const e=Ps(this._data,t);Bn.destroyView(e)}}get(t){const e=this._embeddedViews[t];if(e){const t=new Hs(e);return t.attachToViewContainerRef(this),t}return null}get length(){return this._embeddedViews.length}createEmbeddedView(t,e,n){const s=t.createEmbeddedView(e||{});return this.insert(s,n),s}createComponent(t,e,n,s,r){const i=n||this.parentInjector;r||t instanceof Je||(r=i.get(tn));const o=t.create(i,s,void 0,r);return this.insert(o.hostView,e),o}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=t;return function(t,e,n,s){let r=e.viewContainer._embeddedViews;null==n&&(n=r.length),s.viewContainerParent=t,Ns(r,n,s),function(t,e){const n=rs(e);if(!n||n===t||16&e.state)return;e.state|=16;let s=n.template._projectedViews;s||(s=n.template._projectedViews=[]),s.push(e),function(t,n){if(4&n.flags)return;e.parent.def.nodeFlags|=4,n.flags|=4;let s=n.parent;for(;s;)s.childFlags|=4,s=s.parent}(0,e.parentNodeDef)}(e,s),Bn.dirtyParentQueries(s),As(e,n>0?r[n-1]:null,s)}(this._view,this._data,e,n._view),n.attachToViewContainerRef(this),t}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(t._view);return function(t,e,s){const r=t.viewContainer._embeddedViews,i=r[n];Ds(r,n),null==s&&(s=r.length),Ns(r,s,i),Bn.dirtyParentQueries(i),Ms(i),As(t,s>0?r[s-1]:null,i)}(this._data,0,e),t}indexOf(t){return this._embeddedViews.indexOf(t._view)}remove(t){const e=Ps(this._data,t);e&&Bn.destroyView(e)}detach(t){const e=Ps(this._data,t);return e?new Hs(e):null}}function Fs(t){return new Hs(t)}class Hs{constructor(t){this._view=t,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(t){const e=[];return gs(t,0,void 0,void 0,e),e}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){es(this._view)}detach(){this._view.state&=-5}detectChanges(){const t=this._view.root.rendererFactory;t.begin&&t.begin();try{Bn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}}checkNoChanges(){Bn.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Bn.destroyView(this._view)}detachFromAppRef(){this._appRef=null,Ms(this._view),Bn.dirtyParentQueries(this._view)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}}function Bs(t,e){return new Gs(t,e)}class Gs extends Rn{constructor(t,e){super(),this._parentView=t,this._def=e}createEmbeddedView(t){return new Hs(Bn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))}get elementRef(){return new sn(Un(this._parentView,this._def.nodeIndex).renderElement)}}function Ws(t,e){return new Ys(t,e)}class Ys{constructor(t,e){this.view=t,this.elDef=e}get(t,e=Dt.THROW_IF_NOT_FOUND){return Bn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:Yn(t)},e)}}function qs(t,e){const n=t.def.nodes[e];if(1&n.flags){const e=Un(t,n.nodeIndex);return n.element.template?e.template:e.renderElement}if(2&n.flags)return jn(t,n.nodeIndex).renderText;if(20240&n.flags)return zn(t,n.nodeIndex).instance;throw new Error(`Illegal state: read nodeValue for node index ${e}`)}function Zs(t){return new Qs(t.renderer)}class Qs{constructor(t){this.delegate=t}selectRootElement(t){return this.delegate.selectRootElement(t)}createElement(t,e){const[n,s]=bs(e),r=this.delegate.createElement(s,n);return t&&this.delegate.appendChild(t,r),r}createViewRoot(t){return t}createTemplateAnchor(t){const e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e}createText(t,e){const n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n}projectNodes(t,e){for(let n=0;nt())}onDestroy(t){this._destroyListeners.push(t)}}const Js=Yn(on),tr=Yn(cn),er=Yn(sn),nr=Yn(An),sr=Yn(Rn),rr=Yn(En),ir=Yn(Dt),or=Yn(Mt);function lr(t,e,n,s,r,i,o,l){const a=[];if(o)for(let u in o){const[t,e]=o[u];a[t]={flags:8,name:u,nonMinifiedName:e,ns:null,securityContext:null,suffix:null}}const c=[];if(l)for(let u in l)c.push({type:1,propName:u,target:null,eventName:l[u]});return cr(t,e|=16384,n,s,r,r,i,a,c)}function ar(t,e,n,s,r){return cr(-1,t,e,0,n,s,r)}function cr(t,e,n,s,r,i,o,l,a){const{matchedQueries:c,references:u,matchedQueryIds:h}=us(n);a||(a=[]),l||(l=[]),i=Ct(i);const d=hs(o,yt(r));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:h,references:u,ngContentIndex:-1,childCount:s,bindings:l,bindingFlags:Cs(l),outputs:a,element:null,provider:{token:r,value:i,deps:d},text:null,query:null,ngContent:null}}function ur(t,e){return fr(t,e)}function hr(t,e){let n=t;for(;n.parent&&!ls(n);)n=n.parent;return gr(n.parent,is(n),!0,e.provider.value,e.provider.deps)}function dr(t,e){const n=gr(t,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(let s=0;sss(t,e,n,s)}function fr(t,e){const n=(8192&e.flags)>0,s=e.provider;switch(201347067&e.flags){case 512:return gr(t,e.parent,n,s.value,s.deps);case 1024:return function(t,e,n,s,r){const i=r.length;switch(i){case 0:return s();case 1:return s(_r(t,e,n,r[0]));case 2:return s(_r(t,e,n,r[0]),_r(t,e,n,r[1]));case 3:return s(_r(t,e,n,r[0]),_r(t,e,n,r[1]),_r(t,e,n,r[2]));default:const o=Array(i);for(let s=0;ste});class Sr extends T{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let s,r=t=>null,i=()=>null;t&&"object"==typeof t?(s=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(r=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(i=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(i=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(s,r,i);return t instanceof d&&t.add(o),o}}class Er{constructor(){this.dirty=!0,this._results=[],this.changes=new Sr,this.length=0}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}[Le()](){return this._results[Le()]()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let s=0;s(class{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}))(),Ir=new Rt("AppId");function Rr(){return`${Pr()}${Pr()}${Pr()}`}function Pr(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const Ar=new Rt("Platform Initializer"),Mr=new Rt("Platform ID"),Nr=new Rt("appBootstrapListener"),Dr=(()=>(class{log(t){console.log(t)}warn(t){console.warn(t)}}))();function Vr(){throw new Error("Runtime compiler is not loaded")}const $r=Vr,Lr=Vr,jr=Vr,Ur=Vr,zr=(()=>(class{constructor(){this.compileModuleSync=$r,this.compileModuleAsync=Lr,this.compileModuleAndAllComponentsSync=jr,this.compileModuleAndAllComponentsAsync=Ur}clearCache(){}clearCacheFor(t){}getModuleId(t){}}))();class Fr{}let Hr,Br;function Gr(){const t=St.wtf;return!(!t||!(Hr=t.trace)||(Br=Hr.events,0))}const Wr=Gr(),Yr=Wr?function(t,e=null){return Br.createScope(t,e)}:(t,e)=>(function(t,e){return null}),qr=Wr?function(t,e){return Hr.leaveScope(t,e),e}:(t,e)=>e,Zr=(()=>Promise.resolve(0))();function Qr(t){"undefined"==typeof Zone?Zr.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Xr{constructor({enableLongStackTrace:t=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Sr(!1),this.onMicrotaskEmpty=new Sr(!1),this.onStable=new Sr(!1),this.onError=new Sr(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var e;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)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,n,s,r,i,o)=>{try{return ei(e),t.invokeTask(s,r,i,o)}finally{ni(e)}},onInvoke:(t,n,s,r,i,o,l)=>{try{return ei(e),t.invoke(s,r,i,o,l)}finally{ni(e)}},onHasTask:(t,n,s,r)=>{t.hasTask(s,r),n===s&&("microTask"==r.change?(e.hasPendingMicrotasks=r.microTask,ti(e)):"macroTask"==r.change&&(e.hasPendingMacrotasks=r.macroTask))},onHandleError:(t,n,s,r)=>(t.handleError(s,r),e.runOutsideAngular(()=>e.onError.emit(r)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Xr.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Xr.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,s){const r=this._inner,i=r.scheduleEventTask("NgZoneEvent: "+s,t,Jr,Kr,Kr);try{return r.runTask(i,e,n)}finally{r.cancelTask(i)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function Kr(){}const Jr={};function ti(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(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function ei(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ni(t){t._nesting--,ti(t)}class si{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Sr,this.onMicrotaskEmpty=new Sr,this.onStable=new Sr,this.onError=new Sr}run(t){return t()}runGuarded(t){return t()}runOutsideAngular(t){return t()}runTask(t){return t()}}const ri=(()=>(class{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Xr.assertNotInAngularZone(),Qr(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Qr(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let s=-1;e&&e>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==s),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:s,updateCb:n})}whenStable(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()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}))(),ii=(()=>{class t{constructor(){this._applications=new Map,ai.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return ai.findTestabilityInTree(this,t,e)}}return t.ctorParameters=(()=>[]),t})();class oi{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let li,ai=new oi,ci=function(t){return t instanceof Je};const ui=new Rt("AllowMultipleToken");class hi{constructor(t,e){this.name=t,this.token=e}}function di(t,e,n=[]){const s=`Platform: ${e}`,r=new Rt(s);return(e=[])=>{let i=pi();if(!i||i.injector.get(ui,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0});!function(t){if(li&&!li.destroyed&&!li.injector.get(ui,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");li=t.get(fi);const e=t.get(Ar,null);e&&e.forEach(t=>t())}(Dt.create({providers:t,name:s}))}return function(t){const e=pi();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}(r)}}function pi(){return li&&!li.destroyed?li:null}const fi=(()=>(class{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n="noop"===(r=e?e.ngZone:void 0)?new si:("zone.js"===r?void 0:r)||new Xr({enableLongStackTrace:le()}),s=[{provide:Xr,useValue:n}];var r;return n.run(()=>{const e=Dt.create({providers:s,parent:this.injector,name:t.moduleType.name}),r=t.create(e),i=r.injector.get(re,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return r.onDestroy(()=>_i(this._modules,r)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{i.handleError(t)}})),function(t,e,n){try{const r=n();return De(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(s){throw e.runOutsideAngular(()=>t.handleError(s)),s}}(i,n,()=>{const t=r.injector.get(Or);return t.runInitializers(),t.donePromise.then(()=>(this._moduleDoBootstrap(r),r))})})}bootstrapModule(t,e=[]){const n=gi({},e);return function(t,e,n){return t.get(Fr).createCompiler([e]).compileModuleAsync(n)}(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(mi);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${yt(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)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}))();function gi(t,e){return Array.isArray(e)?e.reduce(gi,t):Object.assign({},t,e)}const mi=(()=>{class t{constructor(t,e,n,s,r,i){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=s,this._componentFactoryResolver=r,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=le(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new b(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new b(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Xr.assertNotInAngularZone(),Qr(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Xr.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=K(o,l.pipe(t=>J()(it(lt)(t))))}bootstrap(t,e){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.");let n;n=t instanceof Ye?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const s=ci(n)?null:this._injector.get(tn),r=n.create(Dt.NULL,[],e||n.selector,s);r.onDestroy(()=>{this._unloadComponent(r)});const i=r.injector.get(ri,null);return i&&r.injector.get(ii).registerApplication(r.location.nativeElement,i),this._loadComponent(r),le()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const e=t._tickScope();try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,qr(e)}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;_i(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Nr,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),_i(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t._tickScope=Yr("ApplicationRef#tick()"),t})();function _i(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class vi{}const yi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},wi=(()=>(class{constructor(t,e){this._compiler=t,this._config=e||yi}load(t){return this._compiler instanceof zr?this.loadFactory(t):this.loadAndCompile(t)}loadAndCompile(t){let[e,s]=t.split("#");return void 0===s&&(s="default"),n("zn8P")(e).then(t=>t[s]).then(t=>bi(t,e,s)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,s]=t.split("#"),r="NgFactory";return void 0===s&&(s="default",r=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[s+r]).then(t=>bi(t,e,s))}}))();function bi(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}class Ci{constructor(t,e){this.name=t,this.callback=e}}class xi{constructor(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Si&&e.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class Si extends xi{constructor(t,e,n){super(t,e,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=t}addChild(t){t&&(this.childNodes.push(t),t.parent=this)}removeChild(t){const e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))}insertChildrenAfter(t,e){const n=this.childNodes.indexOf(t);-1!==n&&(this.childNodes.splice(n+1,0,...e),e.forEach(e=>{e.parent&&e.parent.removeChild(e),t.parent=this}))}insertBefore(t,e){const 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))}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return function t(e,n,s){e.childNodes.forEach(e=>{e instanceof Si&&(n(e)&&s.push(e),t(e,n,s))})}(this,t,e),e}queryAllNodes(t){const e=[];return function t(e,n,s){e instanceof Si&&e.childNodes.forEach(e=>{n(e)&&s.push(e),e instanceof Si&&t(e,n,s)})}(this,t,e),e}get children(){return this.childNodes.filter(t=>t instanceof Si)}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name==t&&n.callback(e)})}}const Ei=new Map,ki=function(t){return Ei.get(t)||null};function Ti(t){Ei.set(t.nativeNode,t)}const Oi=di(null,"core",[{provide:Mr,useValue:"unknown"},{provide:fi,deps:[Dt]},{provide:ii,deps:[]},{provide:Dr,deps:[]}]),Ii=new Rt("LocaleId");function Ri(){return On}function Pi(){return In}function Ai(t){return t||"en-US"}function Mi(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}const Ni=(()=>(class{constructor(t){}}))();function Di(t,e,n,s,r,i){t|=1;const{matchedQueries:o,references:l,matchedQueryIds:a}=us(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:o,matchedQueryIds:a,references:l,ngContentIndex:n,childCount:s,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?fs(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:r||Gn},provider:null,text:null,query:null,ngContent:null}}function Vi(t,e,n,s,r,i,o=[],l,a,c,u,h){c||(c=Gn);const{matchedQueries:d,references:p,matchedQueryIds:f}=us(n);let g=null,m=null;i&&([g,m]=bs(i)),l=l||[];const _=new Array(l.length);for(let w=0;w{const[n,s]=bs(t);return[n,s,e]});return h=function(t){if(t&&t.id===qn){const e=null!=t.encapsulation&&t.encapsulation!==Jt.None||t.styles.length||Object.keys(t.data).length;t.id=e?`c${Xn++}`:Zn}return t&&t.id===Zn&&(t=null),t||null}(h),u&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:d,matchedQueryIds:f,references:p,ngContentIndex:s,childCount:r,bindings:_,bindingFlags:Cs(_),outputs:v,element:{ns:g,name:m,attrs:y,template:null,componentProvider:null,componentView:u||null,componentRendererType:h,publicProviders:null,allProviders:null,handleEvent:c||Gn},provider:null,text:null,query:null,ngContent:null}}function $i(t,e,n){const s=n.element,r=t.root.selectorOrNode,i=t.renderer;let o;if(t.parent||!r){o=s.name?i.createElement(s.name,s.ns):i.createComment("");const r=ds(t,e,n);r&&i.appendChild(r,o)}else o=i.selectRootElement(r,!!s.componentRendererType&&s.componentRendererType.encapsulation===Jt.ShadowDom);if(s.attrs)for(let l=0;lss(t,e,n,s)}function Ui(t,e,n,s){if(!Jn(t,e,n,s))return!1;const r=e.bindings[n],i=Un(t,e.nodeIndex),o=i.renderElement,l=r.name;switch(15&r.flags){case 1:!function(t,e,n,s,r,i){const o=e.securityContext;let l=o?t.root.sanitizer.sanitize(o,i):i;l=null!=l?l.toString():null;const a=t.renderer;null!=i?a.setAttribute(n,r,l,s):a.removeAttribute(n,r,s)}(t,r,o,r.ns,l,s);break;case 2:!function(t,e,n,s){const r=t.renderer;s?r.addClass(e,n):r.removeClass(e,n)}(t,o,l,s);break;case 4:!function(t,e,n,s,r){let i=t.root.sanitizer.sanitize(Ie.STYLE,r);if(null!=i){i=i.toString();const t=e.suffix;null!=t&&(i+=t)}else i=null;const o=t.renderer;null!=i?o.setStyle(n,s,i):o.removeStyle(n,s)}(t,r,o,l,s);break;case 8:!function(t,e,n,s,r){const i=e.securityContext;let o=i?t.root.sanitizer.sanitize(i,r):r;t.renderer.setProperty(n,s,o)}(33554432&e.flags&&32&r.flags?i.componentView:t,r,o,l,s)}return!0}function zi(t,e,n){let s=[];for(let r in n)s.push({propName:r,bindingType:n[r]});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:cs(e),bindings:s},ngContent:null}}function Fi(t){const e=t.def.nodeMatchedQueries;for(;t.parent&&as(t);){let n=t.parentNodeDef;t=t.parent;const s=n.nodeIndex+n.childCount;for(let r=0;r<=s;r++){const s=t.def.nodes[r];67108864&s.flags&&536870912&s.flags&&(s.query.filterId&e)===s.query.filterId&&Hn(t,r).setDirty(),!(1&s.flags&&r+s.childCount0)c=t,Ji(t)||(u=t);else for(;c&&f===c.nodeIndex+c.childCount;){const t=c.parent;t&&(t.childFlags|=c.childFlags,t.childMatchedQueries|=c.childMatchedQueries),u=(c=t)&&Ji(c)?c.renderParent:c}}return{factory:null,nodeFlags:o,rootNodeFlags:l,nodeMatchedQueries:a,flags:t,nodes:e,updateDirectives:n||Gn,updateRenderer:s||Gn,handleEvent:(t,n,s,r)=>e[n].element.handleEvent(t,s,r),bindingCount:r,outputCount:i,lastRenderRootNode:p}}function Ji(t){return 0!=(1&t.flags)&&null===t.element.name}function to(t,e,n){const s=e.element&&e.element.template;if(s){if(!s.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(s.lastRenderRootNode&&16777216&s.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){const s=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=s&&e.nodeIndex+e.childCount>s)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${e.nodeIndex}!`)}}function eo(t,e,n,s){const r=ro(t.root,t.renderer,t,e,n);return io(r,t.component,s),oo(r),r}function no(t,e,n){const s=ro(t,t.renderer,null,null,e);return io(s,n,n),oo(s),s}function so(t,e,n,s){const r=e.element.componentRendererType;let i;return i=r?t.root.rendererFactory.createRenderer(s,r):t.root.renderer,ro(t.root,i,t,e.element.componentProvider,n)}function ro(t,e,n,s,r){const i=new Array(r.nodes.length),o=r.outputCount?new Array(r.outputCount):null;return{def:r,parent:n,viewContainerParent:null,parentNodeDef:s,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(r.bindingCount),disposables:o,initIndex:-1}}function io(t,e,n){t.component=e,t.context=n}function oo(t){let e;ls(t)&&(e=Un(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);const n=t.def,s=t.nodes;for(let r=0;r0&&Ui(t,e,0,n)&&(p=!0),d>1&&Ui(t,e,1,s)&&(p=!0),d>2&&Ui(t,e,2,r)&&(p=!0),d>3&&Ui(t,e,3,i)&&(p=!0),d>4&&Ui(t,e,4,o)&&(p=!0),d>5&&Ui(t,e,5,l)&&(p=!0),d>6&&Ui(t,e,6,a)&&(p=!0),d>7&&Ui(t,e,7,c)&&(p=!0),d>8&&Ui(t,e,8,u)&&(p=!0),d>9&&Ui(t,e,9,h)&&(p=!0),p}(t,e,n,s,r,i,o,l,a,c,u,h);case 2:return function(t,e,n,s,r,i,o,l,a,c,u,h){let d=!1;const p=e.bindings,f=p.length;if(f>0&&Jn(t,e,0,n)&&(d=!0),f>1&&Jn(t,e,1,s)&&(d=!0),f>2&&Jn(t,e,2,r)&&(d=!0),f>3&&Jn(t,e,3,i)&&(d=!0),f>4&&Jn(t,e,4,o)&&(d=!0),f>5&&Jn(t,e,5,l)&&(d=!0),f>6&&Jn(t,e,6,a)&&(d=!0),f>7&&Jn(t,e,7,c)&&(d=!0),f>8&&Jn(t,e,8,u)&&(d=!0),f>9&&Jn(t,e,9,h)&&(d=!0),d){let d=e.text.prefix;f>0&&(d+=Xi(n,p[0])),f>1&&(d+=Xi(s,p[1])),f>2&&(d+=Xi(r,p[2])),f>3&&(d+=Xi(i,p[3])),f>4&&(d+=Xi(o,p[4])),f>5&&(d+=Xi(l,p[5])),f>6&&(d+=Xi(a,p[6])),f>7&&(d+=Xi(c,p[7])),f>8&&(d+=Xi(u,p[8])),f>9&&(d+=Xi(h,p[9]));const g=jn(t,e.nodeIndex).renderText;t.renderer.setValue(g,d)}return d}(t,e,n,s,r,i,o,l,a,c,u,h);case 16384:return function(t,e,n,s,r,i,o,l,a,c,u,h){const d=zn(t,e.nodeIndex),p=d.instance;let f=!1,g=void 0;const m=e.bindings.length;return m>0&&Kn(t,e,0,n)&&(f=!0,g=yr(t,d,e,0,n,g)),m>1&&Kn(t,e,1,s)&&(f=!0,g=yr(t,d,e,1,s,g)),m>2&&Kn(t,e,2,r)&&(f=!0,g=yr(t,d,e,2,r,g)),m>3&&Kn(t,e,3,i)&&(f=!0,g=yr(t,d,e,3,i,g)),m>4&&Kn(t,e,4,o)&&(f=!0,g=yr(t,d,e,4,o,g)),m>5&&Kn(t,e,5,l)&&(f=!0,g=yr(t,d,e,5,l,g)),m>6&&Kn(t,e,6,a)&&(f=!0,g=yr(t,d,e,6,a,g)),m>7&&Kn(t,e,7,c)&&(f=!0,g=yr(t,d,e,7,c,g)),m>8&&Kn(t,e,8,u)&&(f=!0,g=yr(t,d,e,8,u,g)),m>9&&Kn(t,e,9,h)&&(f=!0,g=yr(t,d,e,9,h,g)),g&&p.ngOnChanges(g),65536&e.flags&&Ln(t,256,e.nodeIndex)&&p.ngOnInit(),262144&e.flags&&p.ngDoCheck(),f}(t,e,n,s,r,i,o,l,a,c,u,h);case 32:case 64:case 128:return function(t,e,n,s,r,i,o,l,a,c,u,h){const d=e.bindings;let p=!1;const f=d.length;if(f>0&&Jn(t,e,0,n)&&(p=!0),f>1&&Jn(t,e,1,s)&&(p=!0),f>2&&Jn(t,e,2,r)&&(p=!0),f>3&&Jn(t,e,3,i)&&(p=!0),f>4&&Jn(t,e,4,o)&&(p=!0),f>5&&Jn(t,e,5,l)&&(p=!0),f>6&&Jn(t,e,6,a)&&(p=!0),f>7&&Jn(t,e,7,c)&&(p=!0),f>8&&Jn(t,e,8,u)&&(p=!0),f>9&&Jn(t,e,9,h)&&(p=!0),p){const p=Fn(t,e.nodeIndex);let g;switch(201347067&e.flags){case 32:g=new Array(d.length),f>0&&(g[0]=n),f>1&&(g[1]=s),f>2&&(g[2]=r),f>3&&(g[3]=i),f>4&&(g[4]=o),f>5&&(g[5]=l),f>6&&(g[6]=a),f>7&&(g[7]=c),f>8&&(g[8]=u),f>9&&(g[9]=h);break;case 64:g={},f>0&&(g[d[0].name]=n),f>1&&(g[d[1].name]=s),f>2&&(g[d[2].name]=r),f>3&&(g[d[3].name]=i),f>4&&(g[d[4].name]=o),f>5&&(g[d[5].name]=l),f>6&&(g[d[6].name]=a),f>7&&(g[d[7].name]=c),f>8&&(g[d[8].name]=u),f>9&&(g[d[9].name]=h);break;case 128:const t=n;switch(f){case 1:g=t.transform(n);break;case 2:g=t.transform(s);break;case 3:g=t.transform(s,r);break;case 4:g=t.transform(s,r,i);break;case 5:g=t.transform(s,r,i,o);break;case 6:g=t.transform(s,r,i,o,l);break;case 7:g=t.transform(s,r,i,o,l,a);break;case 8:g=t.transform(s,r,i,o,l,a,c);break;case 9:g=t.transform(s,r,i,o,l,a,c,u);break;case 10:g=t.transform(s,r,i,o,l,a,c,u,h)}}p.value=g}return p}(t,e,n,s,r,i,o,l,a,c,u,h);default:throw"unreachable"}}(t,e,s,r,i,o,l,a,c,u,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){let s=!1;for(let r=0;r0&&ts(t,e,0,n),d>1&&ts(t,e,1,s),d>2&&ts(t,e,2,r),d>3&&ts(t,e,3,i),d>4&&ts(t,e,4,o),d>5&&ts(t,e,5,l),d>6&&ts(t,e,6,a),d>7&&ts(t,e,7,c),d>8&&ts(t,e,8,u),d>9&&ts(t,e,9,h)}(t,e,s,r,i,o,l,a,c,u,h,d):function(t,e,n){for(let s=0;s{const s=Oo.get(t.token);3840&t.flags&&s&&(e=!0,n=n||s.deprecatedBehavior)}),t.modules.forEach(t=>{Io.forEach((s,r)=>{_t(r).providedIn===t&&(e=!0,n=n||s.deprecatedBehavior)})}),{hasOverrides:e,hasDeprecatedOverrides:n})}(t);return e?(function(t){for(let e=0;e0){let e=new Set(t.modules);Io.forEach((s,r)=>{if(e.has(_t(r).providedIn)){let e={token:r,flags:s.flags|(n?4096:0),deps:hs(s.deps),value:s.value,index:t.providers.length};t.providers.push(e),t.providersByKey[Yn(r)]=e}})}}(t=t.factory(()=>Gn)),t):t}(s))}const Oo=new Map,Io=new Map,Ro=new Map;function Po(t){let e;Oo.set(t.token,t),"function"==typeof t.token&&(e=_t(t.token))&&"function"==typeof e.providedIn&&Io.set(t.token,t)}function Ao(t,e){const n=fs(e.viewDefFactory),s=fs(n.nodes[0].element.componentView);Ro.set(t,s)}function Mo(){Oo.clear(),Io.clear(),Ro.clear()}function No(t){if(0===Oo.size)return t;const e=function(t){const e=[];let n=null;for(let s=0;sGn);for(let s=0;s"-"+t[1].toLowerCase())}`)]=Ne(l))}const s=e.parent,l=Un(t,s.nodeIndex).renderElement;if(s.element.name)for(let e in n){const s=n[e];null!=s?t.renderer.setAttribute(l,e,s):t.renderer.removeAttribute(l,e)}else t.renderer.setValue(l,`bindings=${JSON.stringify(n,null,2)}`)}}var r,i}function Zo(t,e,n,s){ho(t,e,n,...s)}function Qo(t,e){for(let n=e;n++i===r?t.error.bind(t,...e):Gn),inew Ko(t,e),handleEvent:Go,updateDirectives:Wo,updateRenderer:Yo}:{setCurrentNode:()=>{},createRootView:Co,createEmbeddedView:eo,createComponentView:so,createNgModuleRef:Xs,overrideProvider:Gn,overrideComponentView:Gn,clearOverrides:Gn,checkAndUpdateView:ao,checkNoChangesView:lo,destroyView:fo,createDebugContext:(t,e)=>new Ko(t,e),handleEvent:(t,e,n,s)=>t.def.handleEvent(t,e,n,s),updateDirectives:(t,e)=>t.def.updateDirectives(0===e?Do:Vo,t),updateRenderer:(t,e)=>t.def.updateRenderer(0===e?Do:Vo,t)};Bn.setCurrentNode=t.setCurrentNode,Bn.createRootView=t.createRootView,Bn.createEmbeddedView=t.createEmbeddedView,Bn.createComponentView=t.createComponentView,Bn.createNgModuleRef=t.createNgModuleRef,Bn.overrideProvider=t.overrideProvider,Bn.overrideComponentView=t.overrideComponentView,Bn.clearOverrides=t.clearOverrides,Bn.checkAndUpdateView=t.checkAndUpdateView,Bn.checkNoChangesView=t.checkNoChangesView,Bn.destroyView=t.destroyView,Bn.resolveDep=_r,Bn.createDebugContext=t.createDebugContext,Bn.handleEvent=t.handleEvent,Bn.updateDirectives=t.updateDirectives,Bn.updateRenderer=t.updateRenderer,Bn.dirtyParentQueries=Fi}();const e=function(t){const e=Array.from(t.providers),n=Array.from(t.modules),s={};for(const r in t.providersByKey)s[r]=t.providersByKey[r];return{factory:t.factory,isRoot:t.isRoot,providers:e,modules:n,providersByKey:s}}(fs(this._ngModuleDefFactory));return Bn.createNgModuleRef(this.moduleType,t||Dt.NULL,this._bootstrapComponents,e)}}const ol="Test Runner";function ll(t){let e="";if(t)for(const n in t)t.hasOwnProperty(n)&&null!=t[n]&&(e+=`${e?"&":""}${n}=${t[n]}`);return e}function al(t,e){const n=t.shift();return e[n]?t.length>0?al(t,e[n]):e[n]:null}var cl=n("Wgwc");const ul=(()=>{class t{constructor(){if(this.build=cl(),!t.init){const e=cl();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][APP] ${ol} - ${t} | ${e}`):console[n](`%c[ACA]%c[APP] %c${ol} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0",t.init=!1,t})();class hl{constructor(){this.show_menu=!0}}class dl{}const pl=new Rt("Location Initialized");class fl{}const gl=new Rt("appBaseHref"),ml=(()=>{class t{constructor(e,n){this._subject=new Sr,this._urlChangeListeners=[],this._platformStrategy=e;const s=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=t.stripTrailingSlash(_l(s)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(e,n=""){return this.path()==this.normalize(e+t.normalizeQueryParams(n))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,_l(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(e,n="",s=null){this._platformStrategy.pushState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}replaceState(e,n="",s=null){this._platformStrategy.replaceState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}static normalizeQueryParams(t){return t&&"?"!==t[0]?"?"+t:t}static joinWithSlash(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}static stripTrailingSlash(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}}return t})();function _l(t){return t.replace(/\/index.html$/,"")}const vl=(()=>(class extends fl{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=ml.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,s){let r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,s){let r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),yl=(()=>(class extends fl{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)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.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return ml.joinWithSlash(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+ml.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,s){const r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,s){const r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),wl=void 0;var bl=["en",[["a","p"],["AM","PM"],wl],[["AM","PM"],wl,wl],[["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"]],wl,[["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"]],wl,[["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}",wl,"{1} 'at' {0}",wl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];const Cl={},xl=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),Sl=new Rt("UseV4Plurals");class El{}const kl=(()=>(class extends El{constructor(t,e){super(),this.locale=t,this.deprecatedPluralFn=e}getPluralCategory(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){const e=t.toLowerCase().replace(/_/g,"-");let n=Cl[e];if(n)return n;const s=e.split("-")[0];if(n=Cl[s])return n;if("en"===s)return bl;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[18]}(e||this.locale)(t)){case xl.Zero:return"zero";case xl.One:return"one";case xl.Two:return"two";case xl.Few:return"few";case xl.Many:return"many";default:return"other"}}}))();function Tl(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[s,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(s.trim()===e)return decodeURIComponent(r)}return null}const Ol=(()=>(class{constructor(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}ngOnChanges(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){const e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){const t=e.get(tn);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(t.injector)}else this._moduleRef=null;const n=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(Xe)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(n,this._viewContainerRef.length,e,this.ngComponentOutletContent)}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}))();class Il{constructor(t,e,n,s){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=s}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}const Rl=(()=>(class{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){le()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,s)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Il(null,this._ngForOf,-1,-1),s),r=new Pl(t,n);e.push(r)}else if(null==s)this._viewContainer.remove(n);else{const r=this._viewContainer.get(n);this._viewContainer.move(r,s);const i=new Pl(t,r);e.push(i)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}))();class Pl{constructor(t,e){this.record=t,this.view=e}}const Al=(()=>(class{constructor(t,e){this._viewContainer=t,this._context=new Ml,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){Nl("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Nl("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){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)))}static ngTemplateGuard_ngIf(t,e){return!0}}))();class Ml{constructor(){this.$implicit=null,this.ngIf=null}}function Nl(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${yt(e)}'.`)}class Dl{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}const Vl=(()=>(class{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const 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}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e(class{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new Dl(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}))(),Ll=(()=>(class{constructor(t,e,n){n._addDefault(new Dl(t,e))}}))(),jl=(()=>(class{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){this._shouldRecreateView(t)?(this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))):this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)}_shouldRecreateView(t){const e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)}_hasContextShapeChanged(t){const e=Object.keys(t.previousValue||{}),n=Object.keys(t.currentValue||{});if(e.length===n.length){for(let t of n)if(-1===e.indexOf(t))return!0;return!1}return!0}_updateExistingContext(t){for(let e of Object.keys(t))this._viewRef.context[e]=this.ngTemplateOutletContext[e]}}))(),Ul=(()=>(class{}))(),zl=new Rt("DocumentToken"),Fl="browser";function Hl(t){return t===Fl}const Bl=(()=>{class t{}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new Gl(Ot(zl),window,Ot(re))}),t})();class Gl{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=(()=>[0,0])}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const n=this.document.querySelector(`#${t}`);if(n)return void this.scrollToElement(n);const s=this.document.querySelector(`[name='${t}']`);if(s)return void this.scrollToElement(s)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,s=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(n-r[0],s-r[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}const Wl=new b(t=>t.complete());function Yl(t){return t?function(t){return new b(e=>t.schedule(()=>e.complete()))}(t):Wl}function ql(t){const e=new b(e=>{e.next(t),e.complete()});return e._isScalar=!0,e.value=t,e}function Zl(...t){let e=t[t.length-1];switch(I(e)?t.pop():e=void 0,t.length){case 0:return Yl(e);case 1:return e?G(t,e):ql(t[0]);default:return G(t,e)}}class Ql extends T{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new S;return this._value}next(t){super.next(this._value=t)}}function Xl(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}Xl.prototype=Object.create(Error.prototype);const Kl=Xl,Jl={};class ta{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new ea(t,this.resultSelector))}}class ea extends z{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(Jl),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{let n;try{n=t()}catch(s){return void e.error(s)}return(n?W(n):Yl()).subscribe(e)})}function sa(){return X(1)}function ra(t,e){return function(n){return n.lift(new ia(t,e))}}class ia{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new oa(t,this.predicate,this.thisArg))}}class oa extends g{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}function la(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}la.prototype=Object.create(Error.prototype);const aa=la;function ca(t){return function(e){return 0===t?Yl():e.lift(new ua(t))}}class ua{constructor(t){if(this.total=t,this.total<0)throw new aa}call(t,e){return e.subscribe(new ha(t,this.total))}}class ha extends g{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,s=this.count++;e.length0){const n=this.count>=this.total?this.total:this.count,s=this.ring;for(let r=0;rda({hasValue:!1,next(){this.hasValue=!0},complete(){if(!this.hasValue)throw t()}});function ma(t=null){return e=>e.lift(new _a(t))}class _a{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new va(t,this.defaultValue))}}class va extends g{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}function ya(t,e){const n=arguments.length>=2;return s=>s.pipe(t?ra((e,n)=>t(e,n,s)):Q,ca(1),n?ma(e):ga(()=>new Kl))}function wa(t){return function(e){const n=new ba(t),s=e.lift(n);return n.caught=s}}class ba{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Ca(t,this.selector,this.caught))}}class Ca extends z{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const s=new R(this,void 0,void 0);this.add(s),U(this,n,void 0,void 0,s)}}}function xa(t){return e=>0===t?Yl():e.lift(new Sa(t))}class Sa{constructor(t){if(this.total=t,this.total<0)throw new aa}call(t,e){return e.subscribe(new Ea(t,this.total))}}class Ea extends g{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}function ka(t,e){const n=arguments.length>=2;return s=>s.pipe(t?ra((e,n)=>t(e,n,s)):Q,xa(1),n?ma(e):ga(()=>new Kl))}class Ta{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new Oa(t,this.predicate,this.thisArg,this.source))}}class Oa extends g{constructor(t,e,n,s){super(t),this.predicate=e,this.thisArg=n,this.source=s,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}function Ia(t,e){return"function"==typeof e?n=>n.pipe(Ia((n,s)=>W(t(n,s)).pipe(F((t,r)=>e(n,t,s,r))))):e=>e.lift(new Ra(t))}class Ra{constructor(t){this.project=t}call(t,e){return e.subscribe(new Pa(t,this.project))}}class Pa extends z{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(s){return void this.destination.error(s)}this._innerSub(e,t,n)}_innerSub(t,e,n){const s=this.innerSubscription;s&&s.unsubscribe();const r=new R(this,void 0,void 0);this.destination.add(r),this.innerSubscription=U(this,t,e,n,r)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,s,r){this.destination.next(e)}}function Aa(...t){return sa()(Zl(...t))}function Ma(...t){return e=>{let n=t[t.length-1];I(n)?t.pop():n=null;const s=t.length;return Aa(1!==s||n?s>0?G(t,n):Yl(n):ql(t[0]),e)}}function Na(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(s){return s.lift(new Da(t,e,n))}}class Da{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new Va(t,this.accumulator,this.seed,this.hasSeed))}}class Va extends g{constructor(t,e,n,s){super(t),this.accumulator=e,this._seed=n,this.hasSeed=s,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(s){this.destination.error(s)}this.seed=n,this.destination.next(n)}}function $a(t,e){return Y(t,e,1)}class La{constructor(t){this.callback=t}call(t,e){return e.subscribe(new ja(t,this.callback))}}class ja extends g{constructor(t,e){super(t),this.add(new d(e))}}let Ua=null;function za(){return Ua}class Fa{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(t){this._attrToPropMap=t}}class Ha extends Fa{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const e=this.createElement("div",document);if(null!=this.getStyle(e,"animationName"))this._animationPrefix="";else{const t=["Webkit","Moz","O","ms"];for(let n=0;n{null!=this.getStyle(e,t)&&(this._transitionEnd=n[t])})}catch(t){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(t){return t.getDistributedNodes()}resolveAndSetHref(t,e,n){t.href=null==n?e:e+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}const Ba={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},Ga=3,Wa={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Ya={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},qa=(()=>{if(St.Node)return St.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))}})();class Za extends Ha{parse(t){throw new Error("parse not implemented")}static makeCurrent(){var t;t=new Za,Ua||(Ua=t)}hasProperty(t,e){return e in t}setProperty(t,e,n){t[e]=n}getProperty(t,e){return t[e]}invoke(t,e,n){t[e](...n)}logError(t){window.console&&(console.error?console.error(t):console.log(t))}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return Ba}contains(t,e){return qa.call(t,e)}querySelector(t,e){return t.querySelector(e)}querySelectorAll(t,e){return t.querySelectorAll(e)}on(t,e,n){t.addEventListener(e,n,!1)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}createMouseEvent(t){const e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(t,!0,!0),e}createEvent(t){const e=this.getDefaultDocument().createEvent("Event");return e.initEvent(t,!0,!0),e}preventDefault(t){t.preventDefault(),t.returnValue=!1}isPrevented(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue}getInnerHTML(t){return t.innerHTML}getTemplateContent(t){return"content"in t&&this.isTemplateElement(t)?t.content:null}getOuterHTML(t){return t.outerHTML}nodeName(t){return t.nodeName}nodeValue(t){return t.nodeValue}type(t){return t.type}content(t){return this.hasProperty(t,"content")?t.content:t}firstChild(t){return t.firstChild}nextSibling(t){return t.nextSibling}parentElement(t){return t.parentNode}childNodes(t){return t.childNodes}childNodesAsList(t){const e=t.childNodes,n=new Array(e.length);for(let s=0;st.insertBefore(n,e))}insertAfter(t,e,n){t.insertBefore(n,e.nextSibling)}setInnerHTML(t,e){t.innerHTML=e}getText(t){return t.textContent}setText(t,e){t.textContent=e}getValue(t){return t.value}setValue(t,e){t.value=e}getChecked(t){return t.checked}setChecked(t,e){t.checked=e}createComment(t){return this.getDefaultDocument().createComment(t)}createTemplate(t){const e=this.getDefaultDocument().createElement("template");return e.innerHTML=t,e}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createElementNS(t,e,n){return(n=n||this.getDefaultDocument()).createElementNS(t,e)}createTextNode(t,e){return(e=e||this.getDefaultDocument()).createTextNode(t)}createScriptTag(t,e,n){const s=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return s.setAttribute(t,e),s}createStyleElement(t,e){const n=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(t,e)),n}createShadowRoot(t){return t.createShadowRoot()}getShadowRoot(t){return t.shadowRoot}getHost(t){return t.host}clone(t){return t.cloneNode(!0)}getElementsByClassName(t,e){return t.getElementsByClassName(e)}getElementsByTagName(t,e){return t.getElementsByTagName(e)}classList(t){return Array.prototype.slice.call(t.classList,0)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}hasClass(t,e){return t.classList.contains(e)}setStyle(t,e,n){t.style[e]=n}removeStyle(t,e){t.style[e]=""}getStyle(t,e){return t.style[e]}hasStyle(t,e,n){const s=this.getStyle(t,e)||"";return n?s==n:s.length>0}tagName(t){return t.tagName}attributeMap(t){const e=new Map,n=t.attributes;for(let s=0;s{class t extends dl{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=za().getLocation(),this._history=za().getHistory()}getBaseHrefFromDOM(){return za().getBaseHref(this._doc)}onPopState(t){za().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){za().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){Ka()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){Ka()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return t.ctorParameters=(()=>[{type:void 0,decorators:[{type:ut,args:[zl]}]}]),t})(),tc=new Rt("TRANSITION_ID"),ec=[{provide:Tr,useFactory:function(t,e,n){return()=>{n.get(Or).donePromise.then(()=>{const n=za();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(e=>n.getAttribute(e,"ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[tc,zl,Dt],multi:!0}];class nc{static init(){var t;t=new nc,ai=t}addToWindow(t){St.getAngularTestability=((e,n=!0)=>{const s=t.findTestabilityInTree(e,n);if(null==s)throw new Error("Could not find testability for element.");return s}),St.getAllAngularTestabilities=(()=>t.getAllTestabilities()),St.getAllAngularRootElements=(()=>t.getAllRootElements()),St.frameworkStabilizers||(St.frameworkStabilizers=[]),St.frameworkStabilizers.push(t=>{const e=St.getAllAngularTestabilities();let n=e.length,s=!1;const r=function(e){s=s||e,0==--n&&t(s)};e.forEach(function(t){t.whenStable(r)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const s=t.getTestability(e);return null!=s?s:n?za().isShadowRoot(e)?this.findTestabilityInTree(t,za().getHost(e),!0):this.findTestabilityInTree(t,za().parentElement(e),!0):null}}function sc(t,e){"undefined"!=typeof COMPILED&&COMPILED||((St.ng=St.ng||{})[t]=e)}const rc=(()=>({ApplicationRef:mi,NgZone:Xr}))();function ic(t){return ki(t)}const oc=new Rt("EventManagerPlugins"),lc=(()=>(class{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let s=0;s(class{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}))(),uc=(()=>(class extends cc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>za().remove(t))}}))(),hc={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/"},dc=/%COMP%/g,pc="_nghost-%COMP%",fc="_ngcontent-%COMP%";function gc(t,e,n){for(let s=0;s{!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}const _c=(()=>(class{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new vc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case Jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new bc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case Jt.Native:case Jt.ShadowDom:return new Cc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=gc(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}))();class vc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(hc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let 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}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,s){if(s){e=`${s}:${e}`;const r=hc[s];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const s=hc[n];s?t.removeAttributeNS(s,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&an.DashCase?t.style.setProperty(e,n,s&an.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&an.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){wc(e,"property"),t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return wc(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,mc(n)):this.eventManager.addEventListener(t,e,mc(n))}}const yc=(()=>"@".charCodeAt(0))();function wc(t,e){if(t.charCodeAt(0)===yc)throw new Error(`Found the synthetic ${e} ${t}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class bc extends vc{constructor(t,e,n,s){super(t),this.component=n;const r=gc(s+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr=fc.replace(dc,s+"-"+n.id),this.hostAttr=pc.replace(dc,s+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Cc extends vc{constructor(t,e,n,s){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=s,this.shadowRoot=s.encapsulation===Jt.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const r=gc(s.id,s.styles,[]);for(let i=0;i"undefined"!=typeof Zone&&Zone.__symbol__||function(t){return"__zone_symbol__"+t})(),Sc=xc("addEventListener"),Ec=xc("removeEventListener"),kc={},Tc="__zone_symbol__propagationStopped",Oc=(()=>{const t="undefined"!=typeof Zone&&Zone[xc("BLACK_LISTED_EVENTS")];if(t){const e={};return t.forEach(t=>{e[t]=t}),e}})(),Ic=function(t){return!!Oc&&Oc.hasOwnProperty(t)},Rc=function(t){const e=kc[t.type];if(!e)return;const n=this[e];if(!n)return;const s=[t];if(1===n.length){const t=n[0];return t.zone!==Zone.current?t.zone.run(t.handler,this,s):t.handler.apply(this,s)}{const e=n.slice();for(let n=0;n(class extends ac{constructor(t,e,n){super(t),this.ngZone=e,n&&function(t){return"server"===t}(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const t=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[Tc]=!0),t&&t.apply(this,arguments)}}supports(t){return!0}addEventListener(t,e,n){let s=n;if(!t[Sc]||Xr.isInAngularZone()&&!Ic(e))t.addEventListener(e,s,!1);else{let n=kc[e];n||(n=kc[e]=xc("ANGULAR"+e+"FALSE"));let r=t[n];const i=r&&r.length>0;r||(r=t[n]=[]);const o=Ic(e)?Zone.root:Zone.current;if(0===r.length)r.push({zone:o,handler:s});else{let t=!1;for(let e=0;ethis.removeEventListener(t,e,s)}removeEventListener(t,e,n){let s=t[Ec];if(!s)return t.removeEventListener.apply(t,[e,n,!1]);let r=kc[e],i=r&&t[r];if(!i)return t.removeEventListener.apply(t,[e,n,!1]);let o=!1;for(let l=0;l(class{constructor(){this.events=[],this.overrides={}}buildHammer(t){const e=new Hammer(t,this.options);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(const n in this.overrides)e.get(n).set(this.overrides[n]);return e}}))(),Vc=(()=>(class extends ac{constructor(t,e,n,s){super(t),this._config=e,this.console=n,this.loader=s}supports(t){return!(!Ac.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))}addEventListener(t,e,n){const s=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){let s=!1,r=()=>{s=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(r=(()=>{}));s||(r=this.addEventListener(t,e,n))}).catch(()=>{this.console.warn(`The "${e}" event cannot be bound because the custom `+"Hammer.JS loader failed."),r=(()=>{})}),()=>{r()}}return s.runOutsideAngular(()=>{const r=this._config.buildHammer(t),i=function(t){s.runGuarded(function(){n(t)})};return r.on(e,i),()=>{r.off(e,i),"function"==typeof r.destroy&&r.destroy()}})}isCustomEvent(t){return this._config.events.indexOf(t)>-1}}))(),$c=["alt","control","meta","shift"],Lc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},jc=(()=>{class t extends ac{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,s){const r=t.parseEventName(n),i=t.eventCallback(r.fullKey,s,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>za().onAndCancel(e,r.domEventName,i))}static parseEventName(e){const n=e.toLowerCase().split("."),s=n.shift();if(0===n.length||"keydown"!==s&&"keyup"!==s)return null;const r=t._normalizeKey(n.pop());let i="";if($c.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),i+=t+".")}),i+=r,0!=n.length||0===r.length)return null;const o={};return o.domEventName=s,o.fullKey=i,o}static getEventFullKey(t){let e="",n=za().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),$c.forEach(s=>{s!=n&&(0,Lc[s])(t)&&(e+=s+".")}),e+=n}static eventCallback(e,n,s){return r=>{t.getEventFullKey(r)===e&&s.runGuarded(()=>n(r))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t})();class Uc{}const zc=(()=>(class extends Uc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case Ie.NONE:return e;case Ie.HTML:return e instanceof Hc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){let n=null;try{Te=Te||new ae(t);let s=e?String(e):"";n=Te.getInertBodyElement(s);let r=5,i=s;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,s=i,i=n.innerHTML,n=Te.getInertBodyElement(s)}while(s!==i);const o=new xe,l=o.sanitizeChildren(Oe(n)||n);return le()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),l}finally{if(n){const t=Oe(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e)));case Ie.STYLE:return e instanceof Bc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";const e=t.match(Ae);return e&&he(e[1])===e[1]||t.match(Pe)&&function(t){let e=!0,n=!0;for(let s=0;s{class t{constructor(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.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Ir,useValue:e.appId},{provide:tc,useExisting:Ir},ec]}}}return t})();function Xc(){return new Kc(Ot(zl))}const Kc=(()=>{class t{constructor(t){this._doc=t}getTitle(){return za().getTitle(this._doc)}setTitle(t){za().setTitle(this._doc,t)}}return t.ngInjectableDef=mt({factory:Xc,token:t,providedIn:"root"}),t})();"undefined"!=typeof window&&window;class Jc{constructor(t,e){this.id=t,this.url=e}}class tu extends Jc{constructor(t,e,n="imperative",s=null){super(t,e),this.navigationTrigger=n,this.restoredState=s}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class eu extends Jc{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class nu extends Jc{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class su extends Jc{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ru extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class iu extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class ou extends Jc{constructor(t,e,n,s,r){super(t,e),this.urlAfterRedirects=n,this.state=s,this.shouldActivate=r}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class lu extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class au extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class cu{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class uu{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class hu{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class du{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class pu{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class fu{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class gu{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const mu=(()=>(class{}))(),_u="primary";class vu{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function yu(t){return new vu(t)}const wu="ngNavigationCancelingError";function bu(t){const e=Error("NavigationCancelingError: "+t);return e[wu]=!0,e}function Cu(t,e,n){const s=n.path.split("/");if(s.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||s.length0?t[t.length-1]:null}function Pu(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Au(t){return Ve(t)?t:De(t)?W(Promise.resolve(t)):Zl(t)}function Mu(t,e,n){return n?function(t,e){return Ou(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!$u(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const s in n.children){if(!e.children[s])return!1;if(!t(e.children[s],n.children[s]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>e[n]===t[n])}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,s,r){if(n.segments.length>r.length){return!!$u(n.segments.slice(0,r.length),r)&&!s.hasChildren()}if(n.segments.length===r.length){if(!$u(n.segments,r))return!1;for(const e in s.children){if(!n.children[e])return!1;if(!t(n.children[e],s.children[e]))return!1}return!0}{const t=r.slice(0,n.segments.length),i=r.slice(n.segments.length);return!!$u(n.segments,t)&&!!n.children[_u]&&e(n.children[_u],s,i)}}(e,n,n.segments)}(t.root,e.root)}class Nu{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=yu(this.queryParams)),this._queryParamMap}toString(){return zu.serialize(this)}}class Du{constructor(t,e){this.segments=t,this.children=e,this.parent=null,Pu(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Fu(this)}}class Vu{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=yu(this.parameters)),this._parameterMap}toString(){return qu(this)}}function $u(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Lu(t,e){let n=[];return Pu(t.children,(t,s)=>{s===_u&&(n=n.concat(e(t,s)))}),Pu(t.children,(t,s)=>{s!==_u&&(n=n.concat(e(t,s)))}),n}class ju{}class Uu{parse(t){const e=new Ju(t);return new Nu(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){var e;return`${`/${function t(e,n){if(!e.hasChildren())return Fu(e);if(n){const n=e.children[_u]?t(e.children[_u],!1):"",s=[];return Pu(e.children,(e,n)=>{n!==_u&&s.push(`${n}:${t(e,!1)}`)}),s.length>0?`${n}(${s.join("//")})`:n}{const n=Lu(e,(n,s)=>s===_u?[t(e.children[_u],!1)]:[`${s}:${t(n,!1)}`]);return`${Fu(e)}/(${n.join("//")})`}}(t.root,!0)}`}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Bu(e)}=${Bu(t)}`).join("&"):`${Bu(e)}=${Bu(n)}`});return e.length?`?${e.join("&")}`:""}(t.queryParams)}${"string"==typeof t.fragment?`#${e=t.fragment,encodeURI(e)}`:""}`}}const zu=new Uu;function Fu(t){return t.segments.map(t=>qu(t)).join("/")}function Hu(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Bu(t){return Hu(t).replace(/%3B/gi,";")}function Gu(t){return Hu(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Wu(t){return decodeURIComponent(t)}function Yu(t){return Wu(t.replace(/\+/g,"%20"))}function qu(t){return`${Gu(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Gu(t)}=${Gu(e[t])}`).join("")}`;var e}const Zu=/^[^\/()?;=#]+/;function Qu(t){const e=t.match(Zu);return e?e[0]:""}const Xu=/^[^=?&#]+/,Ku=/^[^?&#]+/;class Ju{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Du([],{}):new Du([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[_u]=new Du(t,e)),n}parseSegment(){const t=Qu(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Vu(Wu(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Qu(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Qu(this.remaining);t&&this.capture(n=t)}t[Wu(e)]=Wu(n)}parseQueryParam(t){const e=function(t){const e=t.match(Xu);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(Ku);return e?e[0]:""}(this.remaining);t&&this.capture(n=t)}const s=Yu(e),r=Yu(n);if(t.hasOwnProperty(s)){let e=t[s];Array.isArray(e)||(t[s]=e=[e]),e.push(r)}else t[s]=r}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Qu(this.remaining),s=this.remaining[n.length];if("/"!==s&&")"!==s&&";"!==s)throw new Error(`Cannot parse url '${this.url}'`);let r=void 0;n.indexOf(":")>-1?(r=n.substr(0,n.indexOf(":")),this.capture(r),this.capture(":")):t&&(r=_u);const i=this.parseChildren();e[r]=1===Object.keys(i).length?i[_u]:new Du([],i),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class th{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=eh(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=eh(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=nh(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return nh(t,this._root).map(t=>t.value)}}function eh(t,e){if(t===e.value)return e;for(const n of e.children){const e=eh(t,n);if(e)return e}return null}function nh(t,e){if(t===e.value)return[e];for(const n of e.children){const s=nh(t,n);if(s.length)return s.unshift(e),s}return[]}class sh{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function rh(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class ih extends th{constructor(t,e){super(t),this.snapshot=e,hh(this,t)}toString(){return this.snapshot.toString()}}function oh(t,e){const n=function(t,e){const n=new ch([],{},{},"",{},_u,e,null,t.root,-1,{});return new uh("",new sh(n,[]))}(t,e),s=new Ql([new Vu("",{})]),r=new Ql({}),i=new Ql({}),o=new Ql({}),l=new Ql(""),a=new lh(s,r,o,l,i,_u,e,n.root);return a.snapshot=n.root,new ih(new sh(a,[]),n)}class lh{constructor(t,e,n,s,r,i,o,l){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=r,this.outlet=i,this.component=o,this._futureSnapshot=l}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(F(t=>yu(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(F(t=>yu(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function ah(t,e="emptyOnly"){const n=t.pathFromRoot;let s=0;if("always"!==e)for(s=n.length-1;s>=1;){const t=n[s],e=n[s-1];if(t.routeConfig&&""===t.routeConfig.path)s--;else{if(e.component)break;s--}}return function(t){return t.reduce((t,e)=>({params:Object.assign({},t.params,e.params),data:Object.assign({},t.data,e.data),resolve:Object.assign({},t.resolve,e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(s))}class ch{constructor(t,e,n,s,r,i,o,l,a,c,u){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=r,this.outlet=i,this.component=o,this.routeConfig=l,this._urlSegment=a,this._lastPathIndex=c,this._resolve=u}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=yu(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=yu(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class uh extends th{constructor(t,e){super(e),this.url=t,hh(this,e)}toString(){return dh(this._root)}}function hh(t,e){e.value._routerState=t,e.children.forEach(e=>hh(t,e))}function dh(t){const e=t.children.length>0?` { ${t.children.map(dh).join(", ")} } `:"";return`${t.value}${e}`}function ph(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Ou(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Ou(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nOu(t.parameters,s[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||fh(t.parent,e.parent))}function gh(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function mh(t,e,n,s,r){let i={};return s&&Pu(s,(t,e)=>{i[e]=Array.isArray(t)?t.map(t=>`${t}`):`${t}`}),new Nu(n.root===t?e:function t(e,n,s){const r={};return Pu(e.children,(e,i)=>{r[i]=e===n?s:t(e,n,s)}),new Du(e.segments,r)}(n.root,t,e),i,r)}class _h{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&gh(n[0]))throw new Error("Root segment cannot have matrix parameters");const s=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(s&&s!==Ru(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class vh{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function yh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[_u]:`${t}`}function wh(t,e,n){if(t||(t=new Du([],{})),0===t.segments.length&&t.hasChildren())return bh(t,e,n);const s=function(t,e,n){let s=0,r=e;const i={match:!1,pathIndex:0,commandIndex:0};for(;r=n.length)return i;const e=t.segments[r],o=yh(n[s]),l=s0&&void 0===o)break;if(o&&l&&"object"==typeof l&&void 0===l.outlets){if(!Eh(o,l,e))return i;s+=2}else{if(!Eh(o,{},e))return i;s++}r++}return{match:!0,pathIndex:r,commandIndex:s}}(t,e,n),r=n.slice(s.commandIndex);if(s.match&&s.pathIndex{null!==n&&(r[s]=wh(t.children[s],e,n))}),Pu(t.children,(t,e)=>{void 0===s[e]&&(r[e]=t)}),new Du(t.segments,r)}}function Ch(t,e,n){const s=t.segments.slice(0,e);let r=0;for(;r{null!==t&&(e[n]=Ch(new Du([],{}),0,t))}),e}function Sh(t){const e={};return Pu(t,(t,n)=>e[n]=`${t}`),e}function Eh(t,e,n){return t==n.path&&Ou(e,n.parameters)}const kh=(t,e,n)=>F(s=>(new Th(e,s.targetRouterState,s.currentRouterState,n).activate(t),s));class Th{constructor(t,e,n,s){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=s}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),ph(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const s=rh(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,s[e],n),delete s[e]}),Pu(s,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const s=t.value,r=e?e.value:null;if(s===r)if(s.component){const r=n.getContext(s.outlet);r&&this.deactivateChildRoutes(t,e,r.children)}else this.deactivateChildRoutes(t,e,n);else r&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),s=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:s})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const s=rh(t),r=t.value.component?n.children:e;Pu(s,(t,e)=>this.deactivateRouteAndItsChildren(t,r)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const s=rh(e);t.children.forEach(t=>{this.activateRoutes(t,s[t.value.outlet],n),this.forwardEvent(new fu(t.value.snapshot))}),t.children.length&&this.forwardEvent(new du(t.value.snapshot))}activateRoutes(t,e,n){const s=t.value,r=e?e.value:null;if(ph(s),s===r)if(s.component){const r=n.getOrCreateContext(s.outlet);this.activateChildRoutes(t,e,r.children)}else this.activateChildRoutes(t,e,n);else if(s.component){const e=n.getOrCreateContext(s.outlet);if(this.routeReuseStrategy.shouldAttach(s.snapshot)){const t=this.routeReuseStrategy.retrieve(s.snapshot);this.routeReuseStrategy.store(s.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),Oh(t.route)}else{const n=function(t){for(let e=s.snapshot.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(),r=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=s,e.resolver=r,e.outlet&&e.outlet.activateWith(s,r),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Oh(t){ph(t.value),t.children.forEach(Oh)}function Ih(t){return"function"==typeof t}function Rh(t){return t instanceof Nu}class Ph{constructor(t){this.segmentGroup=t||null}}class Ah{constructor(t){this.urlTree=t}}function Mh(t){return new b(e=>e.error(new Ph(t)))}function Nh(t){return new b(e=>e.error(new Ah(t)))}function Dh(t){return new b(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class Vh{constructor(t,e,n,s,r){this.configLoader=e,this.urlSerializer=n,this.urlTree=s,this.config=r,this.allowRedirects=!0,this.ngModule=t.get(tn)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,_u).pipe(F(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(wa(t=>{if(t instanceof Ah)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof Ph)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,_u).pipe(F(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(wa(t=>{if(t instanceof Ph)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const s=t.segments.length>0?new Du([],{[_u]:t}):t;return new Nu(s,e,n)}expandSegmentGroup(t,e,n,s){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(F(t=>new Du([],t))):this.expandSegment(t,n,e,n.segments,s,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Zl({});const n=[],s=[],r={};return Pu(t,(t,i)=>{const o=e(i,t).pipe(F(t=>r[i]=t));i===_u?n.push(o):s.push(o)}),Zl.apply(null,n.concat(s)).pipe(sa(),ya(),F(()=>r))}(n.children,(n,s)=>this.expandSegmentGroup(t,e,s,n))}expandSegment(t,e,n,s,r,i){return Zl(...n).pipe(F(o=>this.expandSegmentAgainstRoute(t,e,n,o,s,r,i).pipe(wa(t=>{if(t instanceof Ph)return Zl(null);throw t}))),sa(),ka(t=>!!t),wa((t,n)=>{if(t instanceof Kl||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,s,r))return Zl(new Du([],{}));throw new Ph(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,s,r,i,o){return Uh(s)!==i?Mh(e):void 0===s.redirectTo?this.matchSegmentAgainstRoute(t,e,s,r):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i):Mh(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i){return"**"===s.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,s,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,s){const r=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Nh(r):this.lineralizeSegments(n,r).pipe(Y(n=>{const r=new Du(n,{});return this.expandSegment(t,r,e,n,s,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i){const{matched:o,consumedSegments:l,lastChild:a,positionalParamSegments:c}=$h(e,s,r);if(!o)return Mh(e);const u=this.applyRedirectCommands(l,s.redirectTo,c);return s.redirectTo.startsWith("/")?Nh(u):this.lineralizeSegments(s,u).pipe(Y(s=>this.expandSegment(t,e,n,s.concat(r.slice(a)),i,!1)))}matchSegmentAgainstRoute(t,e,n,s){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(F(t=>(n._loadedConfig=t,new Du(s,{})))):Zl(new Du(s,{}));const{matched:r,consumedSegments:i,lastChild:o}=$h(e,n,s);if(!r)return Mh(e);const l=s.slice(o);return this.getChildConfig(t,n,s).pipe(Y(t=>{const n=t.module,s=t.routes,{segmentGroup:r,slicedSegments:o}=function(t,e,n,s){return n.length>0&&function(t,e,n){return s.some(n=>jh(t,e,n)&&Uh(n)!==_u)}(t,n)?{segmentGroup:Lh(new Du(e,function(t,e){const n={};n[_u]=e;for(const s of t)""===s.path&&Uh(s)!==_u&&(n[Uh(s)]=new Du([],{}));return n}(s,new Du(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return s.some(n=>jh(t,e,n))}(t,n)?{segmentGroup:Lh(new Du(t.segments,function(t,e,n,s){const r={};for(const i of n)jh(t,e,i)&&!s[Uh(i)]&&(r[Uh(i)]=new Du([],{}));return Object.assign({},s,r)}(t,n,s,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,i,l,s);return 0===o.length&&r.hasChildren()?this.expandChildren(n,s,r).pipe(F(t=>new Du(i,t))):0===s.length&&0===o.length?Zl(new Du(i,{})):this.expandSegment(n,r,s,o,_u,!0).pipe(F(t=>new Du(i.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Zl(new xu(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Zl(e._loadedConfig):function(t,e,n){const s=e.canLoad;return s&&0!==s.length?W(s).pipe(F(s=>{const r=t.get(s);let i;if(function(t){return t&&Ih(t.canLoad)}(r))i=r.canLoad(e,n);else{if(!Ih(r))throw new Error("Invalid CanLoad guard");i=r(e,n)}return Au(i)})).pipe(sa(),(r=(t=>!0===t),t=>t.lift(new Ta(r,void 0,t)))):Zl(!0);var r}(t.injector,e,n).pipe(Y(n=>n?this.configLoader.load(t.injector,e).pipe(F(t=>(e._loadedConfig=t,t))):function(t){return new b(e=>e.error(bu(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Zl(new xu([],t))}lineralizeSegments(t,e){let n=[],s=e.root;for(;;){if(n=n.concat(s.segments),0===s.numberOfChildren)return Zl(n);if(s.numberOfChildren>1||!s.children[_u])return Dh(t.redirectTo);s=s.children[_u]}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,s){const r=this.createSegmentGroup(t,e.root,n,s);return new Nu(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return Pu(t,(t,s)=>{if("string"==typeof t&&t.startsWith(":")){const r=t.substring(1);n[s]=e[r]}else n[s]=t}),n}createSegmentGroup(t,e,n,s){const r=this.createSegments(t,e.segments,n,s);let i={};return Pu(e.children,(e,r)=>{i[r]=this.createSegmentGroup(t,e,n,s)}),new Du(r,i)}createSegments(t,e,n,s){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,s):this.findOrReturn(e,n))}findPosParam(t,e,n){const s=n[e.path.substring(1)];if(!s)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return s}findOrReturn(t,e){let n=0;for(const s of e){if(s.path===t.path)return e.splice(n),s;n++}return t}}function $h(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const s=(e.matcher||Cu)(n,t,e);return s?{matched:!0,consumedSegments:s.consumed,lastChild:s.consumed.length,positionalParamSegments:s.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Lh(t){if(1===t.numberOfChildren&&t.children[_u]){const e=t.children[_u];return new Du(t.segments.concat(e.segments),e.children)}return t}function jh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Uh(t){return t.outlet||_u}class zh{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Fh{constructor(t,e){this.component=t,this.route=e}}function Hh(t,e,n){const s=t._root;return function t(e,n,s,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const o=rh(n);return e.children.forEach(e=>{!function(e,n,s,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const o=e.value,l=n?n.value:null,a=s?s.getContext(e.value.outlet):null;if(l&&o.routeConfig===l.routeConfig){const c=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!$u(t.url,e.url);case"pathParamsOrQueryParamsChange":return!$u(t.url,e.url)||!Ou(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!fh(t,e)||!Ou(t.queryParams,e.queryParams);case"paramsChange":default:return!fh(t,e)}}(l,o,o.routeConfig.runGuardsAndResolvers);if(c?i.canActivateChecks.push(new zh(r)):(o.data=l.data,o._resolvedData=l._resolvedData),t(e,n,o.component?a?a.children:null:s,r,i),c){i.canDeactivateChecks.push(new Fh(a&&a.outlet&&a.outlet.component||null,l))}}else l&&Gh(n,a,i),i.canActivateChecks.push(new zh(r)),t(e,null,o.component?a?a.children:null:s,r,i)}(e,o[e.value.outlet],s,r.concat([e.value]),i),delete o[e.value.outlet]}),Pu(o,(t,e)=>Gh(t,s.getContext(e),i)),i}(s,e?e._root:null,n,[s.value])}function Bh(t,e,n){const s=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(s?s.module.injector:n).get(t)}function Gh(t,e,n){const s=rh(t),r=t.value;Pu(s,(t,s)=>{Gh(t,r.component?e?e.children.getContext(s):null:e,n)}),n.canDeactivateChecks.push(new Fh(r.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,r))}const Wh=Symbol("INITIAL_VALUE");function Yh(){return Ia(t=>(function(...t){let e=null,n=null;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&a(t[0])&&(t=t[0]),G(t,n).lift(new ta(e))})(...t.map(t=>t.pipe(xa(1),Ma(Wh)))).pipe(Na((t,e)=>{let n=!1;return e.reduce((t,s,r)=>{if(t!==Wh)return t;if(s===Wh&&(n=!0),!n){if(!1===s)return s;if(r===e.length-1||Rh(s))return s}return t},t)},Wh),ra(t=>t!==Wh),F(t=>Rh(t)?t:!0===t),xa(1)))}function qh(t,e){return null!==t&&e&&e(new pu(t)),Zl(!0)}function Zh(t,e){return null!==t&&e&&e(new hu(t)),Zl(!0)}function Qh(t,e,n){const s=e.routeConfig?e.routeConfig.canActivate:null;return s&&0!==s.length?Zl(s.map(s=>na(()=>{const r=Bh(s,e,n);let i;if(function(t){return t&&Ih(t.canActivate)}(r))i=Au(r.canActivate(e,t));else{if(!Ih(r))throw new Error("Invalid CanActivate guard");i=Au(r(e,t))}return i.pipe(ka())}))).pipe(Yh()):Zl(!0)}function Xh(t,e,n){const s=e[e.length-1],r=e.slice(0,e.length-1).reverse().map(t=>(function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null})(t)).filter(t=>null!==t).map(e=>na(()=>Zl(e.guards.map(r=>{const i=Bh(r,e.node,n);let o;if(function(t){return t&&Ih(t.canActivateChild)}(i))o=Au(i.canActivateChild(s,t));else{if(!Ih(i))throw new Error("Invalid CanActivateChild guard");o=Au(i(s,t))}return o.pipe(ka())})).pipe(Yh())));return Zl(r).pipe(Yh())}class Kh{}class Jh{constructor(t,e,n,s,r,i){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=s,this.paramsInheritanceStrategy=r,this.relativeLinkResolution=i}recognize(){try{const e=nd(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,n=this.processSegmentGroup(this.config,e,_u),s=new ch([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},_u,this.rootComponentType,null,this.urlTree.root,-1,{}),r=new sh(s,n),i=new uh(this.url,r);return this.inheritParamsAndData(i._root),Zl(i)}catch(t){return new b(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=ah(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Lu(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};n.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),s=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${s}'.`)}e[t.value.outlet]=t.value})}(),n.sort((t,e)=>t.value.outlet===_u?-1:e.value.outlet===_u?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,s){for(const i of t)try{return this.processSegmentAgainstRoute(i,e,n,s)}catch(r){if(!(r instanceof Kh))throw r}if(this.noLeftoversInUrl(e,n,s))return[];throw new Kh}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,s){if(t.redirectTo)throw new Kh;if((t.outlet||_u)!==s)throw new Kh;let r,i=[],o=[];if("**"===t.path){const i=n.length>0?Ru(n).parameters:{};r=new ch(n,i,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,id(t),s,t.component,t,td(e),ed(e)+n.length,od(t))}else{const l=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new Kh;return{consumedSegments:[],lastChild:0,parameters:{}}}const s=(e.matcher||Cu)(n,t,e);if(!s)throw new Kh;const r={};Pu(s.posParams,(t,e)=>{r[e]=t.path});const i=s.consumed.length>0?Object.assign({},r,s.consumed[s.consumed.length-1].parameters):r;return{consumedSegments:s.consumed,lastChild:s.consumed.length,parameters:i}}(e,t,n);i=l.consumedSegments,o=n.slice(l.lastChild),r=new ch(i,l.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,id(t),s,t.component,t,td(e),ed(e)+i.length,od(t))}const l=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:a,slicedSegments:c}=nd(e,i,o,l,this.relativeLinkResolution);if(0===c.length&&a.hasChildren()){const t=this.processChildren(l,a);return[new sh(r,t)]}if(0===l.length&&0===c.length)return[new sh(r,[])];const u=this.processSegment(l,a,c,_u);return[new sh(r,u)]}}function td(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function ed(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function nd(t,e,n,s,r){if(n.length>0&&function(t,e,n){return s.some(n=>sd(t,e,n)&&rd(n)!==_u)}(t,n)){const r=new Du(e,function(t,e,n,s){const r={};r[_u]=s,s._sourceSegment=t,s._segmentIndexShift=e.length;for(const i of n)if(""===i.path&&rd(i)!==_u){const n=new Du([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,r[rd(i)]=n}return r}(t,e,s,new Du(n,t.children)));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return s.some(n=>sd(t,e,n))}(t,n)){const i=new Du(t.segments,function(t,e,n,s,r,i){const o={};for(const l of s)if(sd(t,n,l)&&!r[rd(l)]){const n=new Du([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===i?t.segments.length:e.length,o[rd(l)]=n}return Object.assign({},r,o)}(t,e,n,s,t.children,r));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}const i=new Du(t.segments,t.children);return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}function sd(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function rd(t){return t.outlet||_u}function id(t){return t.data||{}}function od(t){return t.resolve||{}}function ld(t,e,n,s){const r=Bh(t,e,s);return Au(r.resolve?r.resolve(e,n):r(e,n))}function ad(t){return function(e){return e.pipe(Ia(e=>{const n=t(e);return n?W(n).pipe(F(()=>e)):W([e])}))}}class cd{}class ud{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const hd=new Rt("ROUTES");class dd{constructor(t,e,n,s){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=s}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(F(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const s=n.create(t);return new xu(Iu(s.injector.get(hd)).map(Tu),s)}))}loadModuleFactory(t){return"string"==typeof t?W(this.loader.load(t)):Au(t()).pipe(Y(t=>t instanceof en?Zl(t):W(this.compiler.compileModuleAsync(t))))}}class pd{}class fd{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function gd(t){throw t}function md(t,e,n){return e.parse("/")}function _d(t,e){return Zl(null)}class vd{constructor(t,e,n,s,r,i,o,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=s,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new T,this.errorHandler=gd,this.malformedUriErrorHandler=md,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:_d,afterPreactivation:_d},this.urlHandlingStrategy=new fd,this.routeReuseStrategy=new ud,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=r.get(tn),this.console=r.get(Dr);const a=r.get(Xr);this.isNgZoneEnabled=a instanceof Xr,this.resetConfig(l),this.currentUrlTree=new Nu(new Du([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new dd(i,o,t=>this.triggerEvent(new cu(t)),t=>this.triggerEvent(new uu(t))),this.routerState=oh(this.currentUrlTree,this.rootComponentType),this.transitions=new Ql({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(ra(t=>0!==t.id),F(t=>Object.assign({},t,{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Ia(t=>{let n=!1,s=!1;return Zl(t).pipe(da(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign({},this.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Ia(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Zl(t).pipe(Ia(t=>{const n=this.transitions.getValue();return e.next(new tu(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?Wl:[t]}),Ia(t=>Promise.resolve(t)),function(t,e,n,s){return function(r){return r.pipe(Ia(r=>(function(t,e,n,s,i){return new Vh(t,e,n,r.extractedUrl,i).apply()})(t,e,n,0,s).pipe(F(t=>Object.assign({},r,{urlAfterRedirects:t})))))}}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),da(t=>{this.currentNavigation=Object.assign({},this.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,e,n,s,r){return function(i){return i.pipe(Y(i=>(function(t,e,n,s,r="emptyOnly",i="legacy"){return new Jh(t,e,n,s,r,i).recognize()})(t,e,i.urlAfterRedirects,n(i.urlAfterRedirects),s,r).pipe(F(t=>Object.assign({},i,{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),da(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),da(t=>{const n=new ru(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:s,source:r,restoredState:i,extras:o}=t,l=new tu(n,this.serializeUrl(s),r,i);e.next(l);const a=oh(s,this.rootComponentType).snapshot;return Zl(Object.assign({},t,{targetSnapshot:a,urlAfterRedirects:s,extras:Object.assign({},o,{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),Wl}),ad(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!o})}),da(t=>{const e=new iu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),F(t=>Object.assign({},t,{guards:Hh(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,currentSnapshot:r,guards:{canActivateChecks:i,canDeactivateChecks:o}}=n;return 0===o.length&&0===i.length?Zl(Object.assign({},n,{guardsResult:!0})):function(t,e,n,s){return W(o).pipe(Y(t=>(function(t,e,n,s,r){const i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?Zl(i.map(i=>{const o=Bh(i,e,r);let l;if(function(t){return t&&Ih(t.canDeactivate)}(o))l=Au(o.canDeactivate(t,e,n,s));else{if(!Ih(o))throw new Error("Invalid CanDeactivate guard");l=Au(o(t,e,n,s))}return l.pipe(ka())})).pipe(Yh()):Zl(!0)})(t.component,t.route,n,e,s)),ka(t=>!0!==t,!0))}(0,s,r,t).pipe(Y(n=>n&&function(t){return"boolean"==typeof n}()?function(t,e,n,s){return W(i).pipe($a(e=>W([Zh(e.route.parent,s),qh(e.route,s),Xh(t,e.path,n),Qh(t,e.route,n)]).pipe(sa(),ka(t=>!0!==t,!0))),ka(t=>!0!==t,!0))}(s,0,t,e):Zl(n)),F(t=>Object.assign({},n,{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),da(t=>{if(Rh(t.guardsResult)){const e=bu(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),da(t=>{const e=new ou(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),ra(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new nu(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),ad(t=>{if(t.guards.canActivateChecks.length)return Zl(t).pipe(da(t=>{const e=new lu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,guards:{canActivateChecks:r}}=n;return r.length?W(r).pipe($a(n=>(function(t,e,n,r){return function(t,e,n,s){const r=Object.keys(t);if(0===r.length)return Zl({});if(1===r.length){const i=r[0];return ld(t[i],e,n,s).pipe(F(t=>({[i]:t})))}const i={};return W(r).pipe(Y(r=>ld(t[r],e,n,s).pipe(F(t=>(i[r]=t,t))))).pipe(ya(),F(()=>i))}(t._resolve,t,s,r).pipe(F(e=>(t._resolvedData=e,t.data=Object.assign({},t.data,ah(t,n).resolve),null)))})(n.route,0,t,e)),function(t,e){return arguments.length>=2?function(e){return y(Na(t,void 0),ca(1),ma(void 0))(e)}:function(e){return y(Na((e,n,s)=>t(e)),ca(1))(e)}}((t,e)=>t),F(t=>n)):Zl(n)}))}}(this.paramsInheritanceStrategy,this.ngModule.injector),da(t=>{const e=new au(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}))}),ad(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!o})}),F(t=>{const e=function(t,e,n){const s=function t(e,n,s){if(s&&e.shouldReuseRoute(n.value,s.value.snapshot)){const r=s.value;r._futureSnapshot=n.value;const i=function(e,n,s){return n.children.map(n=>{for(const r of s.children)if(e.shouldReuseRoute(r.value.snapshot,n.value))return t(e,n,r);return t(e,n)})}(e,n,s);return new sh(r,i)}{const s=e.retrieve(n.value);if(s){const t=s.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let s=0;st(e,n));return new sh(s,i)}}var r}(t,e._root,n?n._root:void 0);return new ih(s,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign({},t,{targetRouterState:e})}),da(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),kh(this.rootContexts,this.routeReuseStrategy,t=>this.triggerEvent(t)),da({next(){n=!0},complete(){n=!0}}),function(t){return e=>e.lift(new La(t))}(()=>{if(!n&&!s){this.resetUrlToCurrentUrlTree();const n=new nu(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null}),wa(n=>{if(s=!0,function(t){return n&&n[wu]}()){const s=Rh(n.url);s||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const r=new nu(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(r),t.resolve(!1),s&&this.navigateByUrl(n.url)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const s=new su(t.id,this.serializeUrl(t.extractedUrl),n);e.next(s);try{t.resolve(this.errorHandler(n))}catch(r){t.reject(r)}}return Wl}))}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign({},this.getTransition(),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",s=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,s,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){Su(t),this.config=t.map(Tu),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:s,fragment:r,preserveQueryParams:i,queryParamsHandling:o,preserveFragment:l}=e;le()&&i&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const a=n||this.routerState.root,c=l?this.currentUrlTree.fragment:r;let u=null;if(o)switch(o){case"merge":u=Object.assign({},this.currentUrlTree.queryParams,s);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=s||null}else u=i?this.currentUrlTree.queryParams:s||null;return null!==u&&(u=this.removeEmptyProps(u)),function(t,e,n,s,r){if(0===n.length)return mh(e.root,e.root,e,s,r);const i=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new _h(!0,0,t);let e=0,n=!1;const s=t.reduce((t,s,r)=>{if("object"==typeof s&&null!=s){if(s.outlets){const e={};return Pu(s.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(s.segmentPath)return[...t,s.segmentPath]}return"string"!=typeof s?[...t,s]:0===r?(s.split("/").forEach((s,r)=>{0==r&&"."===s||(0==r&&""===s?n=!0:".."===s?e++:""!=s&&t.push(s))}),t):[...t,s]},[]);return new _h(n,e,s)}(n);if(i.toRoot())return mh(e.root,new Du([],{}),e,s,r);const o=function(t,n,s){if(t.isAbsolute)return new vh(e.root,!0,0);if(-1===s.snapshot._lastPathIndex)return new vh(s.snapshot._urlSegment,!0,0);const r=gh(t.commands[0])?0:1;return function(e,n,i){let o=s.snapshot._urlSegment,l=s.snapshot._lastPathIndex+r,a=t.numberOfDoubleDots;for(;a>l;){if(a-=l,!(o=o.parent))throw new Error("Invalid number of '../'");l=o.segments.length}return new vh(o,!1,l-a)}()}(i,0,t),l=o.processChildren?bh(o.segmentGroup,o.index,i.commands):wh(o.segmentGroup,o.index,i.commands);return mh(o.segmentGroup,l,e,s,r)}(a,this.currentUrlTree,t,u,c)}navigateByUrl(t,e={skipLocationChange:!1}){le()&&this.isNgZoneEnabled&&!Xr.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=Rh(t)?t:this.parseUrl(t),s=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(s,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const s=t[n];return null!=s&&(e[n]=s),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new eu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,s){const r=this.getTransition();if(r&&"imperative"!==e&&"imperative"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"hashchange"==e&&"popstate"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"popstate"==e&&"hashchange"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);let i=null,o=null;const l=new Promise((t,e)=>{i=t,o=e}),a=++this.navigationId;return this.setTransition({id:a,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:s,resolve:i,reject:o,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,s){const r=this.urlSerializer.serialize(t);s=s||{},this.location.isCurrentPathEqualTo(r)||e?this.location.replaceState(r,"",Object.assign({},s,{navigationId:n})):this.location.go(r,"",Object.assign({},s,{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}class yd{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new wd,this.attachRef=null}}class wd{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new yd,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}const bd=(()=>(class{constructor(t,e,n,s,r){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=r,this.activated=null,this._activatedRoute=null,this.activateEvents=new Sr,this.deactivateEvents=new Sr,this.name=s||_u,t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),s=this.parentContexts.getOrCreateContext(this.name).children,r=new Cd(t,s,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,r),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}))();class Cd{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===lh?this.route:t===wd?this.childContexts:this.parent.get(t,e)}}class xd{}class Sd{preload(t,e){return e().pipe(wa(()=>Zl(null)))}}class Ed{preload(t,e){return Zl(null)}}const kd=(()=>(class{constructor(t,e,n,s,r){this.router=t,this.injector=s,this.preloadingStrategy=r,this.loader=new dd(e,n,e=>t.triggerEvent(new cu(e)),e=>t.triggerEvent(new uu(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(ra(t=>t instanceof eu),$a(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(tn);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const s of e)if(s.loadChildren&&!s.canLoad&&s._loadedConfig){const t=s._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else s.loadChildren&&!s.canLoad?n.push(this.preloadConfig(t,s)):s.children&&n.push(this.processRoutes(t,s.children));return W(n).pipe(X(),F(t=>void 0))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Y(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}))();class Td{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof tu?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof eu&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof gu&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new gu(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}const Od=new Rt("ROUTER_CONFIGURATION"),Id=new Rt("ROUTER_FORROOT_GUARD"),Rd=[ml,{provide:ju,useClass:Uu},{provide:vd,useFactory:$d,deps:[mi,ju,wd,ml,Dt,kr,zr,hd,Od,[pd,new ht],[cd,new ht]]},wd,{provide:lh,useFactory:Ld,deps:[vd]},{provide:kr,useClass:wi},kd,Ed,Sd,{provide:Od,useValue:{enableTracing:!1}}];function Pd(){return new hi("Router",vd)}const Ad=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[Rd,Vd(e),{provide:Id,useFactory:Dd,deps:[[vd,new ht,new pt]]},{provide:Od,useValue:n||{}},{provide:fl,useFactory:Nd,deps:[dl,[new ut(gl),new ht],Od]},{provide:Td,useFactory:Md,deps:[vd,Bl,Od]},{provide:xd,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:Ed},{provide:hi,multi:!0,useFactory:Pd},[jd,{provide:Tr,multi:!0,useFactory:Ud,deps:[jd]},{provide:Fd,useFactory:zd,deps:[jd]},{provide:Nr,multi:!0,useExisting:Fd}]]}}static forChild(e){return{ngModule:t,providers:[Vd(e)]}}}return t})();function Md(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Td(t,e,n)}function Nd(t,e,n={}){return n.useHash?new vl(t,e):new yl(t,e)}function Dd(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function Vd(t){return[{provide:Kt,multi:!0,useValue:t},{provide:hd,multi:!0,useValue:t}]}function $d(t,e,n,s,r,i,o,l,a={},c,u){const h=new vd(null,e,n,s,r,i,o,Iu(l));if(c&&(h.urlHandlingStrategy=c),u&&(h.routeReuseStrategy=u),a.errorHandler&&(h.errorHandler=a.errorHandler),a.malformedUriErrorHandler&&(h.malformedUriErrorHandler=a.malformedUriErrorHandler),a.enableTracing){const t=za();h.events.subscribe(e=>{t.logGroup(`Router Event: ${e.constructor.name}`),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return a.onSameUrlNavigation&&(h.onSameUrlNavigation=a.onSameUrlNavigation),a.paramsInheritanceStrategy&&(h.paramsInheritanceStrategy=a.paramsInheritanceStrategy),a.urlUpdateStrategy&&(h.urlUpdateStrategy=a.urlUpdateStrategy),a.relativeLinkResolution&&(h.relativeLinkResolution=a.relativeLinkResolution),h}function Ld(t){return t.routerState.root}const jd=(()=>(class{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new T}appInitializer(){return this.injector.get(pl,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(vd),s=this.injector.get(Od);if(this.isLegacyDisabled(s)||this.isLegacyEnabled(s))t(!0);else if("disabled"===s.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==s.initialNavigation)throw new Error(`Invalid initialNavigation options: '${s.initialNavigation}'`);n.hooks.afterPreactivation=(()=>this.initNavigation?Zl(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone)),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(Od),n=this.injector.get(kd),s=this.injector.get(Td),r=this.injector.get(vd),i=this.injector.get(mi);t===i.components[0]&&(this.isLegacyEnabled(e)?r.initialNavigation():this.isLegacyDisabled(e)&&r.setUpLocationChangeListener(),n.setUpPreloading(),s.init(),r.resetRootComponentType(i.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}))();function Ud(t){return t.appInitializer.bind(t)}function zd(t){return t.bootstrapListener.bind(t)}const Fd=new Rt("Router Initializer");var Hd=Qn({encapsulation:2,styles:[],data:{}});function Bd(t){return Ki(0,[(t()(),Vi(0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),lr(1,212992,null,0,bd,[wd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,1,0)},null)}function Gd(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"ng-component",[],null,null,null,Bd,Hd)),lr(1,49152,null,0,mu,[],null,null)],null,null)}var Wd=$s("ng-component",mu,Gd,{},{},[]);const Yd="Dropdowns",qd=(()=>(class{constructor(){this.klass="default",this.items=[],this.placeholder="Select item",this.searchChange=new Sr,this.font_size=16,this.width=128,this.filtered_items=[]}ngOnChanges(t){t.items&&(this.list=this.items.map(t=>t instanceof Object?t:{id:t,name:t}),this.longest=this.list.reduce((t,e)=>e.name.length>t.name.length?e:t,{id:"",name:""}),this.filter())}ngAfterViewInit(){this.resize()}trackByFn(t,e){return e?"string"==typeof e?e:e.id:t}resize(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)}filter(){if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(t=>("string"==typeof t?t:t.name).toLowerCase().indexOf(this.search.toLowerCase())>=0)),this.options&&this.options.hide_active&&this.selected)){const t="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(e=>("string"==typeof e?e:e.id).indexOf(t)<0)}}toggleShow(){this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(()=>{this.input&&this.input.nativeElement.focus()},100)}updateScroll(){if(!this.viewport||!this.scroll_el)return setTimeout(()=>this.updateScroll(),50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;const t="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(e=>("string"==typeof e?e:e.id)===t))}select(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)}change(t){const e="string"==typeof this.selected?this.selected:this.selected.id,n=this.filtered_items.findIndex(t=>("string"==typeof t?t:t.id)==e)+t;n>=0&&nthis.updateScroll(),100))}close(){this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null),this.close_timer=setTimeout(()=>this.show=!1,100)}cancelClose(){setTimeout(()=>{this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null)},50)}writeValue(t){this.selected=t,this.show=!1}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Zd=cl,Qd=(()=>{class t{constructor(){if(this.build=Zd(),!t.init){const e=Zd();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Yd} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Yd} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();function Xd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function Kd(t){return Array.isArray(t)?t:[t]}function Jd(t){return null==t?"":"string"==typeof t?t:`${t}px`}function tp(t,e,n,r){return s(n)&&(r=n,n=void 0),r?tp(t,e,n).pipe(F(t=>a(t)?r(...t):r(t))):new b(s=>{!function t(e,n,s,r,i){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,s,i),o=(()=>t.removeEventListener(n,s,i))}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,s),o=(()=>t.off(n,s))}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,s),o=(()=>t.removeListener(n,s))}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,l=e.length;o1?Array.prototype.slice.call(arguments):t)},s,n)})}class ep extends d{constructor(t,e){super()}schedule(t,e=0){return this}}class np extends ep{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,s=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(s,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(s,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,s=void 0;try{this.work(t)}catch(r){n=!0,s=!!r&&r||new Error(r)}if(n)return this.unsubscribe(),s}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,s=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==s&&n.splice(s,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}class sp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}const rp=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=(()=>Date.now()),t})();class ip extends rp{constructor(t,e=rp.now){super(t,()=>ip.delegate&&ip.delegate!==this?ip.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return ip.delegate&&ip.delegate!==this?ip.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let 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}}}class op extends ip{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s(function(t){const e=cp[t];e&&e()})(e)),e},clearImmediate(t){delete cp[t]}};class hp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=up.setImmediate(t.flush.bind(t,null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(up.clearImmediate(e),t.scheduled=void 0)}}class dp extends ip{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s=0}function wp(t){const{index:e,period:n,subscriber:s}=t;if(s.next(e),!s.closed){if(-1===n)return s.complete();t.index=e+1,this.schedule(t,n)}}function bp(t,e=mp){return n=(()=>(function(t=0,e,n){let s=-1;return yp(e)?s=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=mp),new b(e=>{const r=yp(t)?t:+t-n.now();return n.schedule(wp,r,{index:0,period:s,subscriber:e})})})(t,e)),function(t){return t.lift(new _p(n))};var n}function Cp(t){return e=>e.lift(new xp(t))}class xp{constructor(t){this.notifier=t}call(t,e){const n=new Sp(t),s=U(n,this.notifier);return s&&!n.seenValue?(n.add(s),e.subscribe(n)):n}}class Sp extends z{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,s,r){this.seenValue=!0,this.complete()}notifyComplete(){}}class Ep{call(t,e){return e.subscribe(new kp(t))}}class kp extends g{constructor(t){super(t),this.hasPrev=!1}_next(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t}}class Tp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}class Op extends ip{}const Ip=new Op(Tp);function Rp(t,e){return new b(e?n=>e.schedule(Pp,0,{error:t,subscriber:n}):e=>e.error(t))}function Pp({error:t,subscriber:e}){e.error(t)}var Ap;!function(t){t.NEXT="N",t.ERROR="E",t.COMPLETE="C"}(Ap||(Ap={}));const Mp=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(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()}}do(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()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Zl(this.value);case"E":return Rp(this.error);case"C":return Yl()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})();class Np extends g{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(Np.dispatch,this.delay,new Dp(t,this.destination)))}_next(t){this.scheduleMessage(Mp.createNext(t))}_error(t){this.scheduleMessage(Mp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(Mp.createComplete()),this.unsubscribe()}}class Dp{constructor(t,e){this.notification=t,this.destination=e}}class Vp extends T{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift(),super.next(t)}nextTimeWindow(t){this._events.push(new $p(this._getNow(),t)),this._trimBufferThenGetEvents(),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),s=this.scheduler,r=n.length;let i;if(this.closed)throw new S;if(this.isStopped||this.hasError?i=d.EMPTY:(this.observers.push(t),i=new E(this,t)),s&&t.add(t=new Np(t,s)),e)for(let o=0;oe&&(i=Math.max(i,r-e)),i>0&&s.splice(0,i),s}}class $p{constructor(t,e){this.time=t,this.value=e}}let Lp;try{Lp="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Dv){Lp=!1}const jp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Hl(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&&!Lp)&&"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.ngInjectableDef=mt({factory:function(){return new t(Ot(Mr,8))},token:t,providedIn:"root"}),t})(),Up=(()=>(class{}))(),zp=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();let Fp;function Hp(){if("object"!=typeof document||!document)return zp.NORMAL;if(!Fp){const 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";const n=document.createElement("div"),s=n.style;s.width="2px",s.height="1px",t.appendChild(n),document.body.appendChild(t),Fp=zp.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Fp=0===t.scrollLeft?zp.NEGATED:zp.INVERTED),t.parentNode.removeChild(t)}return Fp}class Bp{}class Gp extends Bp{constructor(t){super(),this._data=t}connect(){return this._data instanceof b?this._data:Zl(this._data)}disconnect(){}}const Wp=new Rt("VIRTUAL_SCROLL_STRATEGY");class Yp{constructor(t,e,n){this._scrolledIndexChange=new T,this.scrolledIndexChange=this._scrolledIndexChange.pipe(t=>t.lift(new fp(void 0,void 0))),this._viewport=null,this._itemSize=t,this._minBufferPx=e,this._maxBufferPx=n}attach(t){this._viewport=t,this._updateTotalContentSize(),this._updateRenderedRange()}detach(){this._scrolledIndexChange.complete(),this._viewport=null}updateItemAndBufferSize(t,e,n){if(n0&&(s.end=Math.min(i,s.end+t),s.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(s),this._viewport.setRenderedContentOffset(this._itemSize*s.start),this._scrolledIndexChange.next(Math.floor(e))}}function qp(t){return t._scrollStrategy}const Zp=(()=>(class{constructor(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Yp(this.itemSize,this.minBufferPx,this.maxBufferPx)}get itemSize(){return this._itemSize}set itemSize(t){this._itemSize=Xd(t)}get minBufferPx(){return this._minBufferPx}set minBufferPx(t){this._minBufferPx=Xd(t)}get maxBufferPx(){return this._maxBufferPx}set maxBufferPx(t){this._maxBufferPx=Xd(t)}ngOnChanges(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}}))(),Qp=20,Xp=(()=>{class t{constructor(t,e){this._ngZone=t,this._platform=e,this._scrolled=new T,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=Qp){return this._platform.isBrowser?new b(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(bp(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Zl()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(ra(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,s)=>{this._scrollableContainsElement(s,t)&&e.push(s)}),e}_scrollableContainsElement(t,e){let n=e.nativeElement,s=t.getElementRef().nativeElement;do{if(n==s)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>tp(window.document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Xr),Ot(jp))},token:t,providedIn:"root"}),t})(),Kp=(()=>(class{constructor(t,e,n,s){this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=s,this._destroyed=new T,this._elementScrolled=new b(t=>this.ngZone.runOutsideAngular(()=>tp(this.elementRef.nativeElement,"scroll").pipe(Cp(this._destroyed)).subscribe(t)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(t){const e=this.elementRef.nativeElement,n=this.dir&&"rtl"==this.dir.value;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Hp()!=zp.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Hp()==zp.INVERTED?t.left=t.right:Hp()==zp.NEGATED&&(t.left=t.right?-t.right:t.right)):null!=t.right&&(t.left=e.scrollWidth-e.clientWidth-t.right),this._applyScrollToOptions(t)}_applyScrollToOptions(t){const e=this.elementRef.nativeElement;"object"==typeof document&&"scrollBehavior"in document.documentElement.style?e.scrollTo(t):(null!=t.top&&(e.scrollTop=t.top),null!=t.left&&(e.scrollLeft=t.left))}measureScrollOffset(t){const e=this.elementRef.nativeElement;if("top"==t)return e.scrollTop;if("bottom"==t)return e.scrollHeight-e.clientHeight-e.scrollTop;const n=this.dir&&"rtl"==this.dir.value;return"start"==t?t=n?"right":"left":"end"==t&&(t=n?"left":"right"),n&&Hp()==zp.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Hp()==zp.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft}}))(),Jp="undefined"!=typeof requestAnimationFrame?lp:pp,tf=(()=>(class extends Kp{constructor(t,e,n,s,r,i){if(super(t,i,n,r),this.elementRef=t,this._changeDetectorRef=e,this._scrollStrategy=s,this._detachedSubject=new T,this._renderedRangeSubject=new T,this.orientation="vertical",this.scrolledIndexChange=new b(t=>this._scrollStrategy.scrolledIndexChange.subscribe(e=>Promise.resolve().then(()=>this.ngZone.run(()=>t.next(e))))),this.renderedRangeStream=this._renderedRangeSubject.asObservable(),this._totalContentSizeTransform="",this._totalContentSize=0,this._renderedRange={start:0,end:0},this._dataLength=0,this._viewportSize=0,this._renderedContentOffset=0,this._renderedContentOffsetNeedsRewrite=!1,this._isChangeDetectionPending=!1,this._runAfterChangeDetection=[],!s)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.')}ngOnInit(){super.ngOnInit(),this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._measureViewportSize(),this._scrollStrategy.attach(this),this.elementScrolled().pipe(Ma(null),bp(0,Jp)).subscribe(()=>this._scrollStrategy.onContentScrolled()),this._markChangeDetectionNeeded()}))}ngOnDestroy(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),super.ngOnDestroy()}attach(t){if(this._forOf)throw Error("CdkVirtualScrollViewport is already attached.");this.ngZone.runOutsideAngular(()=>{this._forOf=t,this._forOf.dataStream.pipe(Cp(this._detachedSubject)).subscribe(t=>{const e=t.length;e!==this._dataLength&&(this._dataLength=e,this._scrollStrategy.onDataLengthChanged()),this._doChangeDetection()})})}detach(){this._forOf=null,this._detachedSubject.next()}getDataLength(){return this._dataLength}getViewportSize(){return this._viewportSize}getRenderedRange(){return this._renderedRange}setTotalContentSize(t){this._totalContentSize!==t&&(this._totalContentSize=t,this._totalContentSizeTransform=`scale${"horizontal"==this.orientation?"X":"Y"}(${this._totalContentSize})`,this._markChangeDetectionNeeded())}setRenderedRange(t){var e,n;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(()=>this._scrollStrategy.onContentRendered()))}getOffsetToRenderedContentStart(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}setRenderedContentOffset(t,e="to-start"){const n="horizontal"==this.orientation,s=n?"X":"Y";let r=`translate${s}(${Number((n&&this.dir&&"rtl"==this.dir.value?-1:1)*t)}px)`;this._renderedContentOffset=t,"to-end"===e&&(r+=` translate${s}(-100%)`,this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=r&&(this._renderedContentTransform=r,this._markChangeDetectionNeeded(()=>{this._renderedContentOffsetNeedsRewrite?(this._renderedContentOffset-=this.measureRenderedContentSize(),this._renderedContentOffsetNeedsRewrite=!1,this.setRenderedContentOffset(this._renderedContentOffset)):this._scrollStrategy.onRenderedOffsetChanged()}))}scrollToOffset(t,e="auto"){const n={behavior:e};"horizontal"===this.orientation?n.start=t:n.top=t,this.scrollTo(n)}scrollToIndex(t,e="auto"){this._scrollStrategy.scrollToIndex(t,e)}measureScrollOffset(t){return super.measureScrollOffset(t||("horizontal"===this.orientation?"start":"top"))}measureRenderedContentSize(){const t=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?t.offsetWidth:t.offsetHeight}measureRangeSize(t){return this._forOf?this._forOf.measureRangeSize(t,this.orientation):0}checkViewportSize(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}_measureViewportSize(){const t=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?t.clientWidth:t.clientHeight}_markChangeDetectionNeeded(t){t&&this._runAfterChangeDetection.push(t),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._doChangeDetection()})))}_doChangeDetection(){this._isChangeDetectionPending=!1,this.ngZone.run(()=>this._changeDetectorRef.markForCheck()),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;const t=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(const e of t)e()}}))();function ef(t,e){if(!e.getBoundingClientRect)return 0;const n=e.getBoundingClientRect();return"horizontal"==t?n.width:n.height}const nf=(()=>(class{constructor(t,e,n,s,r){this._viewContainerRef=t,this._template=e,this._differs=n,this._viewport=s,this.viewChange=new T,this._dataSourceChanges=new T,this.cdkVirtualForTemplateCacheSize=20,this.dataStream=this._dataSourceChanges.pipe(Ma(null),t=>t.lift(new Ep),Ia(([t,e])=>this._changeDataSource(t,e)),function(t,e,n){let s;return s={bufferSize:1,windowTime:void 0,refCount:!1,scheduler:void 0},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:s}){let r,i,o=0,l=!1,a=!1;return function(c){o++,r&&!l||(l=!1,r=new Vp(t,e,s),i=c.subscribe({next(t){r.next(t)},error(t){l=!0,r.error(t)},complete(){a=!0,r.complete()}}));const u=r.subscribe(this);this.add(()=>{o--,u.unsubscribe(),i&&!a&&n&&0===o&&(i.unsubscribe(),i=void 0,r=void 0)})}}(s))}()),this._differ=null,this._templateCache=[],this._needsUpdate=!1,this._destroyed=new T,this.dataStream.subscribe(t=>{this._data=t,this._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe(Cp(this._destroyed)).subscribe(t=>{this._renderedRange=t,r.run(()=>this.viewChange.next(this._renderedRange)),this._onRenderedDataChange()}),this._viewport.attach(this)}get cdkVirtualForOf(){return this._cdkVirtualForOf}set cdkVirtualForOf(t){this._cdkVirtualForOf=t;const e=function(t){return t&&"function"==typeof t.connect}(t)?t:new Gp(t instanceof b?t:Array.prototype.slice.call(t||[]));this._dataSourceChanges.next(e)}get cdkVirtualForTrackBy(){return this._cdkVirtualForTrackBy}set cdkVirtualForTrackBy(t){this._needsUpdate=!0,this._cdkVirtualForTrackBy=t?(e,n)=>t(e+(this._renderedRange?this._renderedRange.start:0),n):void 0}set cdkVirtualForTemplate(t){t&&(this._needsUpdate=!0,this._template=t)}measureRangeSize(t,e){if(t.start>=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");const n=t.start-this._renderedRange.start;let s=0,r=t.end-t.start;for(;r--;){const t=this._viewContainerRef.get(r+n);let i=t?t.rootNodes.length:0;for(;i--;)s+=ef(e,t.rootNodes[i])}return s}ngDoCheck(){if(this._differ&&this._needsUpdate){const t=this._differ.diff(this._renderedItems);t?this._applyChanges(t):this._updateContext(),this._needsUpdate=!1}}ngOnDestroy(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(let t of this._templateCache)t.destroy()}_onRenderedDataChange(){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)}_changeDataSource(t,e){return t&&t.disconnect(this),this._needsUpdate=!0,e?e.connect(this):Zl()}_updateContext(){const t=this._data.length;let e=this._viewContainerRef.length;for(;e--;){let n=this._viewContainerRef.get(e);n.context.index=this._renderedRange.start+e,n.context.count=t,this._updateComputedContextProperties(n.context),n.detectChanges()}}_applyChanges(t){t.forEachOperation((t,e,n)=>{if(null==t.previousIndex)this._insertViewForNewItem(n).context.$implicit=t.item;else if(null==n)this._cacheView(this._detachView(e));else{const s=this._viewContainerRef.get(e);this._viewContainerRef.move(s,n),s.context.$implicit=t.item}}),t.forEachIdentityChange(t=>{this._viewContainerRef.get(t.currentIndex).context.$implicit=t.item});const e=this._data.length;let n=this._viewContainerRef.length;for(;n--;){const t=this._viewContainerRef.get(n);t.context.index=this._renderedRange.start+n,t.context.count=e,this._updateComputedContextProperties(t.context)}}_cacheView(t){if(this._templateCache.length(class{}))(),rf=20,of=(()=>{class t{constructor(t,e){this._platform=t,e.runOutsideAngular(()=>{this._change=t.isBrowser?K(tp(window,"resize"),tp(window,"orientationchange")):Zl(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=document.documentElement,e=t.getBoundingClientRect();return{top:-e.top||document.body.scrollTop||window.scrollY||t.scrollTop||0,left:-e.left||document.body.scrollLeft||window.scrollX||t.scrollLeft||0}}change(t=rf){return t>0?this._change.pipe(bp(t)):this._change}_updateViewportSize(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(jp),Ot(Xr))},token:t,providedIn:"root"}),t})();function lf(){throw Error("Host already has a portal attached")}class af{attach(t){return null==t&&function(){throw Error("Attempting to attach a portal to a null PortalOutlet")}(),t.hasAttached()&&lf(),this._attachedHost=t,t.attach(this)}detach(){let 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())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class cf extends af{constructor(t,e,n,s){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=s}}class uf extends af{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class hf{constructor(){this._isDisposed=!1}hasAttached(){return!!this._attachedPortal}attach(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&lf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof cf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof uf?(this._attachedPortal=t,this.attachTemplatePortal(t)):void function(){throw Error("Attempting to attach an unknown Portal type. BasePortalOutlet accepts either a ComponentPortal or a TemplatePortal.")}()}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class df extends hf{constructor(t,e,n,s){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=s}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.detectChanges(),n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}const pf=(()=>(class{}))();class ff{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=Jd(-this._previousScrollPosition.left),t.style.top=Jd(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,s=e.scrollBehavior||"",r=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=s,n.scrollBehavior=r}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}function gf(){return Error("Scroll strategy has already been attached.")}class mf{constructor(t,e,n,s){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=s,this._scrollSubscription=null,this._detach=(()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())})}attach(t){if(this._overlayRef)throw gf();this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class _f{enable(){}disable(){}attach(){}}function vf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function yf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class wf{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=s,this._scrollSubscription=null}attach(t){if(this._overlayRef)throw gf();this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();vf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}const bf=(()=>{class t{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=(()=>new _f),this.close=(t=>new mf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t)),this.block=(()=>new ff(this._viewportRuler,this._document)),this.reposition=(t=>new wf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t)),this._document=s}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Xp),Ot(of),Ot(Xr),Ot(zl))},token:t,providedIn:"root"}),t})();class Cf{constructor(t){this.scrollStrategy=new _f,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(e=>{void 0!==t[e]&&(this[e]=t[e])})}}class xf{constructor(t,e,n,s,r){this.offsetX=n,this.offsetY=s,this.panelClass=r,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}const Sf=(()=>(class{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}))();function Ef(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "top", "bottom" or "center".')}function kf(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "start", "end" or "center".')}const Tf=(()=>{class t{constructor(t){this._attachedOverlays=[],this._keydownListener=(t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEventSubscriptions>0){e[n]._keydownEvents.next(t);break}}),this._document=t}ngOnDestroy(){this._detach()}add(t){this.remove(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this._detach()}_detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zl))},token:t,providedIn:"root"}),t})(),Of=(()=>{class t{constructor(t){this._document=t}ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zl))},token:t,providedIn:"root"}),t})();class If{constructor(t,e,n,s,r,i,o,l){this._portalOutlet=t,this._host=e,this._pane=n,this._config=s,this._ngZone=r,this._keyboardDispatcher=i,this._document=o,this._location=l,this._backdropElement=null,this._backdropClick=new T,this._attachments=new T,this._detachments=new T,this._locationChanges=d.EMPTY,this._keydownEventsObservable=new b(t=>{const e=this._keydownEvents.subscribe(t);return this._keydownEventSubscriptions++,()=>{e.unsubscribe(),this._keydownEventSubscriptions--}}),this._keydownEvents=new T,this._keydownEventSubscriptions=0,s.scrollStrategy&&(this._scrollStrategy=s.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=s.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return this._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(xa(1)).subscribe(()=>{this.hasAttached()&&this.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(()=>this.dispose())),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),t}dispose(){const 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()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick.asObservable()}attachments(){return this._attachments.asObservable()}detachments(){return this._detachments.asObservable()}keydownEvents(){return this._keydownEventsObservable}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign({},this._config,t),this._updateElementSize()}setDirection(t){this._config=Object.assign({},this._config,{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){const t=this._pane.style;t.width=Jd(this._config.width),t.height=Jd(this._config.height),t.minWidth=Jd(this._config.minWidth),t.minHeight=Jd(this._config.minHeight),t.maxWidth=Jd(this._config.maxWidth),t.maxHeight=Jd(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"auto":"none"}_attachBackdrop(){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",t=>this._backdropClick.next(t)),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add("cdk-overlay-backdrop-showing")})}):this._backdropElement.classList.add("cdk-overlay-backdrop-showing")}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t,e=this._backdropElement;if(!e)return;let n=()=>{e&&e.parentNode&&e.parentNode.removeChild(e),this._backdropElement==e&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(e,this._config.backdropClass,!1),clearTimeout(t)};e.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{e.addEventListener("transitionend",n)}),e.style.pointerEvents="none",t=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const s=t.classList;Kd(e).forEach(t=>{n?s.add(t):s.remove(t)})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.asObservable().pipe(Cp(K(this._attachments,this._detachments))).subscribe(()=>{this._pane&&this._host&&0!==this._pane.children.length||(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const Rf="cdk-overlay-connected-position-bounding-box";class Pf{constructor(t,e,n,s,r){this._viewportRuler=e,this._document=n,this._platform=s,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 T,this._resizeSubscription=d.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges.asObservable(),this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){if(this._overlayRef&&t!==this._overlayRef)throw Error("This position strategy is already attached to an overlay");this._validatePositions(),t.hostElement.classList.add(Rf),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(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,s=[];let r;for(let i of this._preferredPositions){let o=this._getOriginPoint(t,i),l=this._getOverlayPoint(o,e,i),a=this._getOverlayFit(l,e,n,i);if(a.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(i,o);this._canFitWithFlexibleDimensions(a,l,n)?s.push({position:i,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,i)}):(!r||r.overlayFit.visibleAreae&&(e=s,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(r.position,r.originPoint);this._applyPosition(r.position,r.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&Af(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Rf),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,s;if("center"==e.originX)n=t.left+t.width/2;else{const s=this._isRtl()?t.right:t.left,r=this._isRtl()?t.left:t.right;n="start"==e.originX?s:r}return{x:n,y:s="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom}}_getOverlayPoint(t,e,n){let s,r;return s="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+s,y:t.y+(r="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}}_getOverlayFit(t,e,n,s){let{x:r,y:i}=t,o=this._getOffset(s,"x"),l=this._getOffset(s,"y");o&&(r+=o),l&&(i+=l);let a=0-i,c=i+e.height-n.height,u=this._subtractOverflows(e.width,0-r,r+e.width-n.width),h=this._subtractOverflows(e.height,a,c),d=u*h;return{visibleArea:d,isCompletelyWithinViewport:e.width*e.height===d,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:u==e.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const s=n.bottom-e.y,r=n.right-e.x,i=this._overlayRef.getConfig().minHeight,o=this._overlayRef.getConfig().minWidth,l=t.fitsInViewportHorizontally||null!=o&&o<=r;return(t.fitsInViewportVertically||null!=i&&i<=s)&&l}}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const s=this._viewportRect,r=Math.max(t.x+e.width-s.right,0),i=Math.max(t.y+e.height-s.bottom,0),o=Math.max(s.top-n.top-t.y,0),l=Math.max(s.left-n.left-t.x,0);let a=0,c=0;return this._previousPushAmount={x:a=e.width<=s.width?l||-r:t.xs&&!this._isInitialRender&&!this._growAfterOpen&&(i=t.y-s/2)}if("end"===e.overlayX&&!s||"start"===e.overlayX&&s)c=n.right-t.x+this._viewportMargin,l=t.x-n.left;else if("start"===e.overlayX&&!s||"end"===e.overlayX&&s)a=t.x,l=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),s=this._lastBoundingBoxSize.width;a=t.x-e,(l=2*e)>s&&!this._isInitialRender&&!this._growAfterOpen&&(a=t.x-s/2)}return{top:i,left:a,bottom:o,right:c,width:l,height:r}}_setBoundingBoxStyles(t,e){const 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));const s={};if(this._hasExactPosition())s.top=s.left="0",s.bottom=s.right="",s.width=s.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,r=this._overlayRef.getConfig().maxWidth;s.height=Jd(n.height),s.top=Jd(n.top),s.bottom=Jd(n.bottom),s.width=Jd(n.width),s.left=Jd(n.left),s.right=Jd(n.right),s.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",s.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(s.maxHeight=Jd(t)),r&&(s.maxWidth=Jd(r))}this._lastBoundingBoxSize=n,Af(this._boundingBox.style,s)}_resetBoundingBoxStyles(){Af(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){Af(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={};if(this._hasExactPosition()){const s=this._viewportRuler.getViewportScrollPosition();Af(n,this._getExactOverlayY(e,t,s)),Af(n,this._getExactOverlayX(e,t,s))}else n.position="static";let s="",r=this._getOffset(e,"x"),i=this._getOffset(e,"y");r&&(s+=`translateX(${r}px) `),i&&(s+=`translateY(${i}px)`),n.transform=s.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Af(this._pane.style,n)}_getExactOverlayY(t,e,n){let s={top:null,bottom:null},r=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));let i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=i,"bottom"===t.overlayY?s.bottom=`${this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)}px`:s.top=Jd(r.y),s}_getExactOverlayX(t,e,n){let s,r={left:null,right:null},i=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(i=this._pushOverlayOnScreen(i,this._overlayRect,n)),"right"==(s=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=`${this._document.documentElement.clientWidth-(i.x+this._overlayRect.width)}px`:r.left=Jd(i.x),r}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:yf(t,n),isOriginOutsideView:vf(t,n),isOverlayClipped:yf(e,n),isOverlayOutsideView:vf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const 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}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){if(!this._preferredPositions.length)throw Error("FlexibleConnectedPositionStrategy: At least one position is required.");this._preferredPositions.forEach(t=>{kf("originX",t.originX),Ef("originY",t.originY),kf("overlayX",t.overlayX),Ef("overlayY",t.overlayY)})}_addPanelClasses(t){this._pane&&Kd(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;return t instanceof sn?t.nativeElement.getBoundingClientRect():t instanceof HTMLElement?t.getBoundingClientRect():{top:t.y,bottom:t.y,left:t.x,right:t.x,height:0,width:0}}}function Af(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}class Mf{constructor(t,e,n,s,r,i,o){this._preferredPositions=[],this._positionStrategy=new Pf(n,s,r,i,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e)}get _isRtl(){return"rtl"===this._overlayRef.getDirection()}get onPositionChange(){return this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,s){const r=new xf(t,e,n,s);return this._preferredPositions.push(r),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Nf="cdk-global-overlay-wrapper";class Df{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const 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(Nf),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig();t.position=this._cssPosition,t.marginLeft="100%"===n.width?"0":this._leftOffset,t.marginTop="100%"===n.height?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,"100%"===n.width?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="100%"===n.height?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Nf),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}const Vf=(()=>{class t{constructor(t,e,n,s){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=s}global(){return new Df}connectedTo(t,e,n){return new Mf(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new Pf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(of),Ot(zl),Ot(jp),Ot(Of))},token:t,providedIn:"root"}),t})();let $f=0;const Lf=(()=>(class{constructor(t,e,n,s,r,i,o,l,a,c){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=s,this._keyboardDispatcher=r,this._injector=i,this._ngZone=o,this._document=l,this._directionality=a,this._location=c}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),s=this._createPortalOutlet(n),r=new Cf(t);return r.direction=r.direction||this._directionality.value,new If(s,e,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id=`cdk-overlay-${$f++}`,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(mi)),new df(t,this._componentFactoryResolver,this._appRef,this._injector)}}))(),jf=new Rt("cdk-connected-overlay-scroll-strategy");function Uf(t){return()=>t.scrollStrategies.reposition()}const zf=(()=>(class{}))(),Ff="Pipes";function Hf(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}class Bf{constructor(t,e){this._parentInjector=t,this._customTokens=e}get(t,e){const n=this._customTokens.get(t);return void 0!==n?n:this._parentInjector.get(t,e)}}const Gf=(()=>(class{constructor(t){this.injector=t,this.klass="default",this._overlay=t.get(Wf)}ngOnInit(){setTimeout(()=>{this.offset=this._overlay.details.offset,this.setMethod()},1)}setMethod(){this.method="component",this.content=this._overlay.content,this.klass=this._overlay.details.klass||"default","string"==typeof this.content?this.method="text":this.content instanceof Rn&&(this.method="template",this.context=Object.assign({},this._overlay.details.data||{},{event:this._overlay.post.bind(this._overlay),close:this._overlay.close.bind(this._overlay)}),Object.defineProperty(this.context,"position",{get:()=>this._overlay.position}))}}))();class Wf{constructor(t,e,n,s,r){this.id=t,this.service=e,this.injector=n,this.overlay=s,this.details=r,this.onClose=new T,this.event=new T,this.position_subject=new Ql(null),this.subs=[],this._overlay=this.overlay.create(this.details.config),this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null))}open(t,e){this._overlay&&this._close("reopen",null),e&&(delete this._overlay,this._overlay=this.overlay.create(e),this.details.config=e,this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null)));const n=this._createInjector(this,this.injector);this.onClose=new T,this.event=new T,this._overlay.attach(new cf(Gf,null,n)),this.set(t)}set(t,e=!0){this._data=t,e&&setTimeout(()=>this.updatePosition(),100)}get data(){return this._data||this.details.data||null}get content(){return this.details.content}get ID(){return this.id}listen(t){const e=this.event.subscribe(t);return this.subs.push(e),e}post(t,e){this.event.next({type:t,data:e})}get position(){return this.position_subject?this.position_subject.getValue():null}close(t){this._close("close",t)}_close(t,e){this._overlay&&this._overlay.dispose(),"reopen"!==t&&this.onClose.next({type:t,data:e}),this.onClose.complete(),this.event.complete(),this.subs=[]}_createInjector(t,e){const n=new WeakMap([[Wf,t]]);return new Bf(e,n)}updatePosition(){const t=this.details.config;this._overlay.updatePosition();const e=t.positionStrategy;e instanceof Pf&&setTimeout(()=>{e._lastPosition&&this.position_subject.next({x:e._lastPosition.originX,y:e._lastPosition.originY})},1)}}const Yf=(()=>(class{constructor(t,e){this.overlay=t,this.renderer=e,this.events=[],this.displayed_events=[],this.subs={},this.delay=5e3,this.offset=0}ngOnInit(){this.context=this.overlay.details.data,this.subs.add=this.context.add.subscribe(t=>this.add(t)),this.subs.remove=this.context.remove.subscribe(t=>this.remove(t)),this.subs.delay=this.context.delay.subscribe(t=>this.delay=t)}ngOnDestroy(){for(const t in this.subs)this.subs[t]&&this.subs[t]instanceof d&&this.subs[t].unsubscribe()}add(t){this.events.findIndex(e=>e.id===t.id)<0&&(t.method="component","string"==typeof t.content?t.method="text":t.content instanceof Rn&&(t.method="template",t.context={close:()=>this.remove(t.id)}),this.events=this.events&&this.events.length>0?[...this.events,t]:[t],this.displayed_events=this.events.slice(-8),t.close=(()=>this.remove(t.id)),0!==t.delay&&setTimeout(()=>this.remove(t.id),t.delay||this.delay||5e3))}remove(t){this.events=this.events.filter(e=>e.id!==t),this.displayed_events=this.events.slice(-8)}action(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)}grab(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=n,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",e=>this.pull(t,e)),touchmove:this.renderer.listen("window","touchmove",e=>this.pull(t,e)),mouseup:this.renderer.listen("window","mouseup",e=>this.release(t)),touchend:this.renderer.listen("window","touchend",e=>this.release(t))}}pull(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)}release(t){t.offset>128&&this.remove(t.id);for(const e in t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0}trackByFn(t,e){return(t?t.id:null)||e}}))(),qf=(()=>{class t{constructor(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new T,this._notify.remove=new T,this._notify.delay=new T,this.registerPreset("default",new Cf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new Cf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}register(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Wf(t,this,this.injector,this.overlay,e),this._refs[t]}open(t,e,n,s){if(e.config?e.config instanceof Cf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error(`No content set for the overlay ${t}`);const r=this._refs[t],i=r.details.config instanceof Cf?r.details.config:this.preset(r.details.config);r.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),s&&this._refs[t].onClose.subscribe(s))}update(t,e){this._refs[t]&&this._refs[t].set(e)}close(t){this._refs[t]&&this._refs[t].close(null)}remove(t){this._refs[t]&&(this._refs[t]=null)}registerPreset(t,e){this._presets[t]=e}preset(t="default"){return this._presets[t]||this._presets.default}loadNotificationsOutlet(){this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(()=>{this.registerPreset("ACA_NOTIFICATIONS_OUTLET",new Cf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:this.overlay.position().global().bottom("0").right("0"),scrollStrategy:this.overlay.scrollStrategies.noop()})),this.open("ACA_NOTIFICATIONS_OUTLET",{content:Yf,data:this._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)}notify(t,e,n,s,r){let i=null;return this._notify.add&&(i=`notification-${Math.floor(999999*Math.random())}`,this._notify.add.next({id:i,content:t,action:e,on_action:n,type:s,delay:r,event:t=>n?n(t):null})),i}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Lf),Ot(Mt))},token:t,providedIn:"root"}),t})(),Zf=(()=>(class{constructor(t,e,n,s){this.el=t,this.service=e,this.overlay=n,this.renderer=s,this.id=`tooltip-${Math.floor(9999999*Math.random())}`,this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new Sr,this.event=new Sr,this.close=new Sr,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}ngOnInit(){this.updateConfig(),this.el&&this.listenForScroll()}ngOnDestroy(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()}ngOnChanges(t){if(t.config&&this.updateConfig(),t.reposition){const t=this.overlay.scrollStrategies;this.strategy=this.reposition?t.reposition():t.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(()=>this.open(),10):this.closeTooltip(t.show.previousValue))}open(){this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},t=>this.event.emit(t),t=>{this.show=!1,this.showChange.emit(!1),this.close.emit(t),this.clearListeners()})}getOverlayPosition(t){const e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)}getPositions(){const t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}}updateConfig(){this.service.registerPreset(this.id,new Cf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))}listenForScroll(){if(this.show){let t=this.el.nativeElement.parentElement;for(;t;t=t.parentElement)this.listeners.push(this.renderer.listen(t,"scroll",()=>this.update()))}}clearListeners(){for(const t of this.listeners)t();this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)}update(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))}listenForHover(){this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",t=>{this.show=!0,this.showChange.emit(this.show),this._leave_listener=this.renderer.listen(this.el.nativeElement,"mouseleave",t=>{this.show=!1,this.showChange.emit(this.show),this.closeTooltip(this.show)}),this.open()})}closeTooltip(t){!this.content&&this.el?function(t,e,n,s="debug",r){if(window.debug){const t=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Hf()?console[s](`%c[${Ff}]%c[Tooltip] %c${e}`,...t,n):console[s](`[${Ff}][Tooltip] ${e}`,n):Hf()?console[s](`%c[${Ff}]%c[Tooltip] %c${e}`,...t):console[s](`[${Ff}][Tooltip] ${e}`)}}(0,"No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()}}))(),Qf=(()=>(class{constructor(t,e){this.item=t,this.service=e}ngOnInit(){setTimeout(()=>{this.text=this.item.details.data.text,this.center=this.item.details.data.center},10),setTimeout(()=>this.service.close(this.item.ID),1e3)}}))(),Xf=cl,Kf=(()=>{class t{constructor(){if(this.build=Xf(),!t.init){const e=Xf();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){Hf()?console[n](`%c[ACA]%c[LIB] %c${Ff} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"):console[n](`[ACA][LIB] ${Ff} - ${t} | ${e}`)}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Jf=new Rt("cdk-dir-doc",{providedIn:"root",factory:function(){return It(zl)}}),tg=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Sr,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Jf,8))},token:t,providedIn:"root"}),t})(),eg=(()=>(class{}))();var ng=Qn({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function sg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function rg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function ig(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,rg)),lr(2,540672,null,0,jl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function og(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function lg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,og)),lr(2,671744,null,0,Ol,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ag(t){return Ki(0,[(t()(),Vi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Vi(1,0,null,null,7,null,null,null,null,null,null,null)),lr(2,16384,null,0,Vl,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Di(16777216,null,null,1,null,sg)),lr(4,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,ig)),lr(6,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,lg)),lr(8,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function cg(t){return Ki(0,[(t()(),Di(16777216,null,null,1,null,ag)),lr(1,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function ug(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"overlay-outlet",[],null,null,null,cg,ng)),lr(1,114688,null,0,Gf,[Dt],null,null)],function(t,e){t(e,1,0)},null)}var hg=$s("overlay-outlet",Gf,ug,{},{},[]),dg=Qn({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function pg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Zi(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function fg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"a-floating-text",[],null,null,null,pg,dg)),lr(1,114688,null,0,Qf,[Wf,qf],null,null)],function(t,e){t(e,1,0)},null)}var gg=$s("a-floating-text",Qf,fg,{},{},[]),mg=Qn({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function _g(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function vg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,_g)),lr(2,540672,null,0,jl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function yg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function wg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,yg)),lr(2,671744,null,0,Ol,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function bg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function Cg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Zi(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function xg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function Sg(t){return Ki(0,[(t()(),Vi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Vi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==r.grab(t.context.$implicit,n)&&s),"touchstart"===e&&(s=!1!==r.grab(t.context.$implicit,n)&&s),s},null,null)),(t()(),Vi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Vi(4,0,null,null,7,null,null,null,null,null,null,null)),lr(5,16384,null,0,Vl,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Di(16777216,null,null,1,null,vg)),lr(7,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,wg)),lr(9,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,bg)),lr(11,16384,null,0,Ll,[An,Rn,Vl],null,null),(t()(),Vi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var s=!0,r=t.component;return"click"===e&&(r.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),"touchend"===e&&(r.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),s},null,null)),(t()(),Di(16777216,null,null,1,null,Cg)),lr(14,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Di(16777216,null,null,1,null,xg)),lr(16,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function Eg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,Sg)),lr(2,278528,null,0,Rl,[An,Rn,xn],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function kg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"notification-outlet",[],null,null,null,Eg,mg)),lr(1,245760,null,0,Yf,[Wf,cn],null,null)],function(t,e){t(e,1,0)},null)}var Tg=$s("notification-outlet",Yf,kg,{},{},[]);class Og extends z{constructor(t,e){super(t),this.sources=e,this.completed=0,this.haveValues=0;const n=e.length;this.values=new Array(n);for(let s=0;s(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Pg=new Rt("CompositionEventMode"),Ag=(()=>(class{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=za()?za().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}))();class Mg{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class Ng extends Mg{get formDirective(){return null}get path(){return null}}function Dg(){throw new Error("unimplemented")}class Vg extends Mg{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return Dg()}get asyncValidator(){return Dg()}}const $g=(()=>(class extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}))();function Lg(t){return null==t||0===t.length}const jg=/^(?=.{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])?)*$/;class Ug{static min(t){return e=>{if(Lg(e.value)||Lg(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(Lg(e.value)||Lg(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return Lg(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return Lg(t.value)?null:jg.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(Lg(e.value))return null;const n=e.value?e.value.length:0;return n{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return Ug.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(Lg(t.value))return null;const s=t.value;return e.test(s)?null:{pattern:{requiredPattern:n,actualValue:s}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(zg);return 0==e.length?null:function(t){return Hg(function(t,n){return e.map(e=>e(t))}(t))}}static composeAsync(t){if(!t)return null;const e=t.filter(zg);return 0==e.length?null:function(t){return function t(...e){let n;return"function"==typeof e[e.length-1]&&(n=e.pop()),1===e.length&&a(e[0])&&(e=e[0]),0===e.length?Wl:n?t(e).pipe(F(t=>n(...t))):new b(t=>new Og(t,e))}(function(t,n){return e.map(e=>e(t))}(t).map(Fg)).pipe(F(Hg))}}}function zg(t){return null!=t}function Fg(t){const e=De(t)?W(t):t;if(!Ve(e))throw new Error("Expected validator to return Promise or Observable.");return e}function Hg(t){const e=t.reduce((t,e)=>null!=e?Object.assign({},t,e):t,{});return 0===Object.keys(e).length?null:e}function Bg(t){return t.validate?e=>t.validate(e):t}function Gg(t){return t.validate?e=>t.validate(e):t}const Wg=(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Yg=(()=>(class{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}))(),qg=(()=>(class{constructor(t,e,n,s){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=s,this.onChange=(()=>{}),this.onTouched=(()=>{})}ngOnInit(){this._control=this._injector.get(Vg),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=(()=>{t(this.value),this._registry.select(this)})}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}))(),Zg={formControlName:'\n

\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',formGroupName:'\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',formArrayName:'\n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });',ngModelGroup:'\n
\n
\n \n
\n
',ngModelWithFormGroup:'\n
\n \n \n
\n '};function Qg(t,e){return[...e.path,t]}function Xg(t,e){t||Jg(e,"Cannot find control with"),e.valueAccessor||Jg(e,"No value accessor for form control with"),t.validator=Ug.compose([t.validator,e.validator]),t.asyncValidator=Ug.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&Kg(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&Kg(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function Kg(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Jg(t,e){let 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 tm(t){return null!=t?Ug.compose(t.map(Bg)):null}function em(t){return null!=t?Ug.composeAsync(t.map(Gg)):null}const nm=[Rg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Wg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?`${e}`:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=(e=>{this.value=this._getOptionValue(e),t(this.value)})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}))(),(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=((t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)})}else e=((t,e)=>{t._setSelected(!1)});this._optionMap.forEach(e)}registerOnChange(t){this.onChange=(e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e{}),this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return this.status===sm}get invalid(){return this.status===rm}get pending(){return this.status==im}get disabled(){return this.status===om}get enabled(){return this.status!==om}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=lm(t)}setAsyncValidators(t){this.asyncValidator=am(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=im,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=om,this.errors=null,this._forEachChild(e=>{e.disable(Object.assign({},t,{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=sm,this._forEachChild(e=>{e.enable(Object.assign({},t,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==sm&&this.status!==im||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)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?om:sm}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=im;const e=Fg(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(".")),e instanceof Array&&0===e.length?null:e.reduce((t,e)=>t instanceof dm?t.controls.hasOwnProperty(e)?t.controls[e]:null:t instanceof pm&&t.at(e)||null,t))}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Sr,this.statusChanges=new Sr}_calculateStatus(){return this._allControlsDisabled()?om:this.errors?rm:this._anyControlsHaveStatus(im)?im:this._anyControlsHaveStatus(rm)?rm:sm}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){cm(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class hm extends um{constructor(t=null,e,n){super(lm(e),am(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=(()=>{})}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(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}}class dm extends um{constructor(t,e,n){super(lm(e),am(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof hm?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,s)=>{e=e||this.contains(s)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,s)=>{n=e(n,t,s)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class pm extends um{constructor(t,e,n){super(lm(e),am(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof hm?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}`)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const fm=(()=>Promise.resolve(null))(),gm=(()=>(class extends Ng{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Sr,this.form=new dm({},tm(t),em(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){fm.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Xg(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){fm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),function(e,n){const s=e.indexOf(t);s>-1&&e.splice(s,1)}(this._directives)})}addFormGroup(t){fm.then(()=>{const e=this._findContainer(t.path),n=new dm({});(function(t,e){null==t&&Jg(e,"Cannot find control with"),t.validator=Ug.compose([t.validator,e.validator]),t.asyncValidator=Ug.composeAsync([t.asyncValidator,e.asyncValidator])})(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){fm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){fm.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,e=this._directives,this.form._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}))();class mm{static modelParentException(){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 ${Zg.formControlName}\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 ${Zg.ngModelWithFormGroup}`)}static formGroupNameException(){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 ${Zg.formGroupName}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Zg.ngModelGroup}`)}static missingNameException(){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: \n Example 2: ')}static modelGroupParentException(){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 ${Zg.formGroupName}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Zg.ngModelGroup}`)}static ngFormWarning(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")}}const _m=new Rt("NgFormSelectorWarning");class vm extends Ng{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Qg(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return tm(this._validators)}get asyncValidator(){return em(this._asyncValidators)}_checkParentType(){}}const ym=(()=>{class t extends vm{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof gm||mm.modelGroupParentException()}}return t})(),wm=(()=>Promise.resolve(null))(),bm=(()=>(class extends Vg{constructor(t,e,n,s){super(),this.control=new hm,this._registered=!1,this.update=new Sr,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Jg(t,"Value accessor was not provided as an array for form control with");let n=void 0,s=void 0,r=void 0;return e.forEach(e=>{e.constructor===Ag?n=e:function(t){return nm.some(e=>t.constructor===e)}(e)?(s&&Jg(t,"More than one built-in value accessor matches form control with"),s=e):(r&&Jg(t,"More than one custom value accessor matches form control with"),r=e)}),r||s||n||(Jg(t,"No valid value accessor for form control with"),null)}(this,s)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!je(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Qg(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return tm(this._rawValidators)}get asyncValidator(){return em(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Xg(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof ym)&&this._parent instanceof vm?mm.formGroupNameException():this._parent instanceof ym||this._parent instanceof gm||mm.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||mm.missingNameException()}_updateValue(t){wm.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;wm.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}))(),Cm=new Rt("NgModelWithFormControlWarning"),xm=(()=>(class{}))(),Sm=(()=>(class{group(t,e=null){const n=this._reduceControls(t);let s=null,r=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(s=null!=e.validators?e.validators:null,r=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(s=null!=e.validator?e.validator:null,r=null!=e.asyncValidator?e.asyncValidator:null)),new dm(n,{asyncValidators:r,updateOn:i,validators:s})}control(t,e,n){return new hm(t,e,n)}array(t,e,n){const s=t.map(t=>this._createControl(t));return new pm(s,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof hm||t instanceof dm||t instanceof pm?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}))(),Em=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:_m,useValue:e.warnOnDeprecatedNgFormSelector}]}}}return t})(),km=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Cm,useValue:e.warnOnNgModelWithFormControl}]}}}return t})();var Tm=Qn({encapsulation:2,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:0}.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:0}.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}"],data:{}});function Om(t){return Ki(2,[zi(402653184,1,{_contentWrapper:0}),(t()(),Vi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),Wi(null,0),(t()(),Vi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Im=Qn({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function Rm(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Vi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,r=t.component;return"input"===e&&(s=!1!==qs(t,5)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==qs(t,5).onTouched()&&s),"compositionstart"===e&&(s=!1!==qs(t,5)._compositionStart()&&s),"compositionend"===e&&(s=!1!==qs(t,5)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(r.search=n)&&s),"ngModelChange"===e&&(r.searchChange.emit(n),s=!1!==r.filter()&&s),s},null,null)),lr(5,16384,null,0,Ag,[cn,sn,[2,Pg]],null,null),ar(1024,null,Ig,function(t){return[t]},[Ag]),lr(7,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(9,16384,null,0,$g,[[4,Vg]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,qs(e,9).ngClassUntouched,qs(e,9).ngClassTouched,qs(e,9).ngClassPristine,qs(e,9).ngClassDirty,qs(e,9).ngClassValid,qs(e,9).ngClassInvalid,qs(e,9).ngClassPending)})}function Pm(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.select(t.context.$implicit)&&s),s},null,null)),(t()(),Vi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Am(t){return Ki(0,[(t()(),Vi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,Om,Tm)),ar(6144,null,Kp,null,[tf]),lr(3,540672,null,0,Zp,[],{itemSize:[0,"itemSize"]},null),ar(1024,null,Wp,qp,[Zp]),lr(5,245760,[[4,4],[5,4],["viewport",4]],0,tf,[sn,En,Xr,[2,Wp],[2,tg],Xp],null,null),(t()(),Di(16777216,[[2,2]],0,1,null,Pm)),lr(7,409600,null,0,nf,[An,Rn,xn,[1,tf],Xr],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===qs(e,5).orientation,"horizontal"!==qs(e,5).orientation)})}function Mm(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Nm(t){return Ki(0,[(t()(),Vi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.cancelClose()&&s),s},null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var s=!0,r=t.component;return"click"===e&&(s=0!=(r.show=!r.show)&&s),s},null,null)),(t()(),Vi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Di(16777216,[[2,2]],null,1,null,Rm)),lr(7,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Di(16777216,[[2,2]],null,1,null,Am)),lr(10,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Di(0,[[2,2],["noItems",2]],null,0,null,Mm))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,qs(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Dm(t){return Ki(0,[zi(402653184,1,{reference:0}),zi(402653184,2,{dropdown_tooltip:0}),zi(402653184,3,{input:0}),zi(402653184,4,{viewport:0}),zi(402653184,5,{scroll_el:0}),(t()(),Vi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var s=!0,r=t.component;return"keyup.enter"===e&&(s=!1!==r.toggleShow()&&s),"keydown.arrowup"===e&&(s=!1!==n.preventDefault()&&s),"keydown.arrowdown"===e&&(s=!1!==n.preventDefault()&&s),"keyup.arrowup"===e&&(s=!1!==(r.focus?r.change(-1):"")&&s),"keyup.arrowdown"===e&&(s=!1!==(r.focus?r.change(1):"")&&s),"focus"===e&&(s=0!=(r.focus=!0)&&s),"blur"===e&&(s=0!=(r.focus=!1)&&s),"window:resize"===e&&(s=!1!==r.resize()&&s),"window:click"===e&&(s=!1!==(r.show?r.close():"")&&s),s},null,null)),(t()(),Vi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Vi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var s=!0,r=t.component;return"showChange"===e&&(s=!1!==(r.show=n)&&s),"showChange"===e&&(s=!1!==r.updateScroll()&&s),"click"===e&&(s=!1!==r.toggleShow()&&s),s},null,null)),lr(8,737280,null,0,Zf,[sn,qf,Lf,cn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Vi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),Zi(10,null,["",""])),(t()(),Vi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Vi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Vi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(15,null,["",""])),(t()(),Vi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Di(0,[[2,2],["dropdown",2]],null,0,null,Nm))],function(t,e){t(e,8,0,e.component.show,qs(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}const Vm="Checkbox",$m=(()=>(class{constructor(){this.klass="default"}toggle(){this.state=!this.state,this.onChange&&this.onChange(this.state)}writeValue(t){this.state=t}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouch=t}}))(),Lm=cl,jm=(()=>{class t{constructor(){if(this.build=Lm(),!t.init){const e=Lm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Vm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Vm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Um=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}handleMouse(t){this.handleEvent(t)}handleTouch(t){this.handleEvent(t)}ngOnInit(){}ngAfterViewInit(){setTimeout(()=>{this.element&&this.element.nativeElement&&(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width)))})}ngOnDestroy(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}handleEvent(t){this.cancelled=!1;const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,n=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:`${n-this.cached_box.top}px`,left:`${e-this.cached_box.left}px`},this.mouse_release_cancel=this.renderer.listen("window","mouseup",t=>this.handleRelease(t)),this.touch_release_cancel=this.renderer.listen("window","touchend",t=>this.handleRelease(t)),this.transitioning=!0,setTimeout(()=>{this.transitioning=!1,this.cancelled&&(this.show=!1)},350)}handleRelease(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}}))(),zm=(()=>(class{constructor(t,e){this.el=t,this.renderer=e,this.tapped=new Sr,this.touchrelease=new Sr,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}ngAfterViewInit(){this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",t=>this.handleHold(t)),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",t=>this.handleHold(t)))}ngOnDestroy(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}}remove(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)}handleHold(t){const e={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=e,this.mouse_listener=this.renderer.listen(window,"mouseup",t=>this.handleRelease(t)),this.touch_listener=this.renderer.listen(window,"touchend",t=>this.handleRelease(t)),this.timer=setTimeout(()=>this.remove(),this.max_delay)}handleRelease(t){this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(()=>{const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(e-this.start.x,2)+2){this.tapped.emit(t),this.touchrelease.emit(t)},100)),this.start={x:-999,y:-999}},50)}}))(),Fm="Custom Events",Hm=cl,Bm=(()=>{class t{constructor(){if(this.build=Hm(),!t.init){const e=Hm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Fm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Fm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var Gm=Qn({encapsulation:0,styles:["[_nghost-%COMP%]{position:relative;overflow:hidden}.event-feedback[_ngcontent-%COMP%]{position:absolute;border-radius:100%;background-color:rgba(0,0,0,.1);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;pointer-events:none}.event-feedback.show[_ngcontent-%COMP%]{-webkit-animation:.5s feedback;animation:.5s feedback;opacity:1}.event-feedback.hide[_ngcontent-%COMP%]{-webkit-animation:.5s fadeout;animation:.5s fadeout}.event-feedback.light[_ngcontent-%COMP%]{background-color:rgba(255,255,255,.1)}@-webkit-keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@-webkit-keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}@keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}"],data:{}});function Wm(t){return Ki(0,[Wi(null,0),(t()(),Vi(1,0,null,null,0,"div",[],[[8,"className",0],[4,"top",null],[4,"left",null],[4,"height",null],[4,"width",null],[2,"show",null],[2,"hide",null]],null,null,null,null))],null,function(t,e){var n=e.component;t(e,1,0,"event-feedback"+(n.klass?" "+n.klass:""),n.position.top,n.position.left,n.size+"px",n.size+"px",n.show,!1===n.show)})}var Ym=Qn({encapsulation:0,styles:[".checkbox[_ngcontent-%COMP%]{display:flex;align-items:center}.box[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;margin:.25em;font-size:.8em;height:1.5em;width:1.5em;border-radius:4px;padding:0;border:2px solid #ccc;cursor:pointer;outline:0;transition:background-color .2s,border-color .2s}.box[_ngcontent-%COMP%]:hover{background-color:#ccc}.box[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function qm(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.toggle()&&s),s},null,null)),lr(1,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Zi(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Zm(t){return Ki(0,[(t()(),Vi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Vi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,2).handleTouch(n)&&s),"keyup.enter"===e&&(s=!1!==r.toggle()&&s),"tapped"===e&&(s=!1!==r.toggle()&&s),s},Wm,Gm)),lr(2,4440064,null,0,Um,[sn,cn],{center:[0,"center"]},null),lr(3,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,qm)),lr(6,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}const Qm="Buttons",Xm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new Sr,this.id=`button-${Math.floor(999999*Math.random())}`}ngOnChanges(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()}ngAfterViewInit(){this.setClass(this.klass)}setClass(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))}setGroup(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")}setState(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")}tap(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))}writeValue(t){this.state=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Km=cl,Jm=(()=>{class t{constructor(){if(this.build=Km(),!t.init){const e=Km();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Qm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Qm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var t_=Qn({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function e_(t){return Ki(0,[(t()(),Vi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,1).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,1).handleTouch(n)&&s),"tapped"===e&&(s=!1!==r.tap()&&s),s},Wm,Gm)),lr(1,4440064,null,0,Um,[sn,cn],null,null),lr(2,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),Wi(0,0)],function(t,e){t(e,1,0)},null)}const n_=(()=>(class{constructor(t){this.sanitizer=t}transform(t,e="html"){switch(e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}}}))(),s_="Pipes",r_=cl,i_=(()=>{class t{constructor(){if(this.build=r_(),!t.init){const e=r_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${s_} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${s_} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();class o_{constructor(){this._timers={},this._intervals={},this._subscriptions={}}timeout(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(()=>{e(),this._timers[t]=null},n)}clearTimeout(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)}interval(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(()=>e(),n)}clearInterval(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)}subscription(t,e){this.unsub(t),this._subscriptions[t]=e}unsub(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof d?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)}}class l_ extends o_{ngOnDestroy(){for(const t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(const t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(const t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)}}function a_(t,e,n,s){return new(n||(n=Promise))(function(r,i){function o(t){try{a(s.next(t))}catch(e){i(e)}}function l(t){try{a(s.throw(t))}catch(e){i(e)}}function a(t){t.done?r(t.value):new n(function(e){e(t.value)}).then(o,l)}a((s=s.apply(t,e||[])).next())})}class c_{}class u_{}class h_{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),s=n.toLowerCase(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,s),this.headers.has(s)?this.headers.get(s).push(r):this.headers.set(s,[r])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const s=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(s,n),this.maybeSetNormalizedName(e,s))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof h_?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new h_;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof h_?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const s=("a"===t.op?this.headers.get(e):void 0)||[];s.push(...n),this.headers.set(e,s);break;case"d":const r=t.value;if(r){let t=this.headers.get(e);if(!t)return;0===(t=t.filter(t=>-1===r.indexOf(t))).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class d_{encodeKey(t){return p_(t)}encodeValue(t){return p_(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function p_(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class f_{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new d_,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const s=t.indexOf("="),[r,i]=-1==s?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,s)),e.decodeValue(t.slice(s+1))],o=n.get(r)||[];o.push(i),n.set(r,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).join("&")}clone(t){const e=new f_({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function g_(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function m_(t){return"undefined"!=typeof Blob&&t instanceof Blob}function __(t){return"undefined"!=typeof FormData&&t instanceof FormData}class v_{constructor(t,e,n,s){let r;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||s?(this.body=void 0!==n?n:null,r=s):r=n,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.params&&(this.params=r.params)),this.headers||(this.headers=new h_),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),l)),t.setParams&&(a=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),a)),new v_(e,n,r,{params:a,headers:l,reportProgress:o,responseType:s,withCredentials:i})}}const y_=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class w_{constructor(t,e=200,n="OK"){this.headers=t.headers||new h_,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class b_ extends w_{constructor(t={}){super(t),this.type=y_.ResponseHeader}clone(t={}){return new b_({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class C_ extends w_{constructor(t={}){super(t),this.type=y_.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new C_({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class x_ extends w_{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function S_(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}const E_=(()=>(class{constructor(t){this.handler=t}request(t,e,n={}){let s;if(t instanceof v_)s=t;else{let r=void 0;r=n.headers instanceof h_?n.headers:new h_(n.headers);let i=void 0;n.params&&(i=n.params instanceof f_?n.params:new f_({fromObject:n.params})),s=new v_(t,e,void 0!==n.body?n.body:null,{headers:r,params:i,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const r=Zl(s).pipe($a(t=>this.handler.handle(t)));if(t instanceof v_||"events"===n.observe)return r;const i=r.pipe(ra(t=>t instanceof C_));switch(n.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return i.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return i.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return i.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return i.pipe(F(t=>t.body))}case"response":return i;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new f_).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,S_(n,e))}post(t,e,n={}){return this.request("POST",t,S_(n,e))}put(t,e,n={}){return this.request("PUT",t,S_(n,e))}}))();class k_{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const T_=new Rt("HTTP_INTERCEPTORS"),O_=(()=>(class{intercept(t,e){return e.handle(t)}}))(),I_=/^\)\]\}',?\n/;class R_{}const P_=(()=>(class{constructor(){}build(){return new XMLHttpRequest}}))(),A_=(()=>(class{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new b(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const s=t.serializeBody();let r=null;const i=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,s=n.statusText||"OK",i=new h_(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return r=new b_({headers:i,status:e,statusText:s,url:o})},o=()=>{let{headers:s,status:r,statusText:o,url:l}=i(),a=null;204!==r&&(a=void 0===n.response?n.responseText:n.response),0===r&&(r=a?200:0);let c=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof a){const t=a;a=a.replace(I_,"");try{a=""!==a?JSON.parse(a):null}catch(u){a=t,c&&(c=!1,a={error:u,text:a})}}c?(e.next(new C_({body:a,headers:s,status:r,statusText:o,url:l||void 0})),e.complete()):e.error(new x_({error:a,headers:s,status:r,statusText:o,url:l||void 0}))},l=t=>{const{url:s}=i(),r=new x_({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:s||void 0});e.error(r)};let a=!1;const c=s=>{a||(e.next(i()),a=!0);let r={type:y_.DownloadProgress,loaded:s.loaded};s.lengthComputable&&(r.total=s.total),"text"===t.responseType&&n.responseText&&(r.partialText=n.responseText),e.next(r)},u=t=>{let n={type:y_.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",l),t.reportProgress&&(n.addEventListener("progress",c),null!==s&&n.upload&&n.upload.addEventListener("progress",u)),n.send(s),e.next({type:y_.Sent}),()=>{n.removeEventListener("error",l),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",c),null!==s&&n.upload&&n.upload.removeEventListener("progress",u)),n.abort()}})}}))(),M_=new Rt("XSRF_COOKIE_NAME"),N_=new Rt("XSRF_HEADER_NAME");class D_{}const V_=(()=>(class{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Tl(t,this.cookieName),this.lastCookieString=t),this.lastToken}}))(),$_=(()=>(class{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const s=this.tokenService.getToken();return null===s||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,s)})),e.handle(t)}}))(),L_=(()=>(class{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(T_,[]);this.chain=t.reduceRight((t,e)=>new k_(t,e),this.backend)}return this.chain.handle(t)}}))(),j_=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:$_,useClass:O_}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:M_,useValue:e.cookieName}:[],e.headerName?{provide:N_,useValue:e.headerName}:[]]}}}return t})(),U_=(()=>(class{}))(),z_=(()=>{class t{constructor(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new Ql(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}init(){return a_(this,void 0,void 0,function*(){yield this.loadFromFile("api"),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete()})}get setup(){return this._setup}get app_name(){return this._app_name}isSetup(t){return this._is_setup_observer.subscribe(t)}log(t,e,n,s="debug",r=!1){if(window.debug||r){const r=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...r,n):console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...r)}}get(t){const e=t.split(".");let n=null;return"session"===e[0]?(e.shift(),n=al(e,this._settings.session)):"local"===e[0]?(e.shift(),n=al(e,this._settings.local)):n=al(e,this._settings.api)||al(e,this._settings.session)||al(e,this._settings.local),n}loadStore(t,e){if(e)for(let n=0;n5)return Promise.resolve();const s=`load|${t}|${e}`;return this._promises[s]||(this._promises[s]=new Promise((r,i)=>{this.http.get(e).subscribe(e=>{this._settings[t]=Object.assign({},this._settings[t]||{},e||{})},i=>{this.log("Settings",`Failed to load settings from "${e}"`),this._promises[s]=null,this.loadFromFile(t,e,++n).then(()=>r())},()=>r())})),this._promises[s]})}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),F_=["control","shift","alt","meta","os"],H_=(()=>{class t{constructor(){this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.last_down!==e&&(this.keydown_states[e]||(this.keydown_states[e]=new Ql(null),this.keydown_observers[e]=this.keydown_states[e].asObservable()),this.keydown_states[e].next(this.counter++),this.combo_end.indexOf(e)>=0&&t.preventDefault(),this.last_down=e)}),window.addEventListener("keyup",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.keydown_states[e].next(null),this.last_down===e&&(this.last_down=null)})}listen(t,e){const n=(t=t instanceof Array?t:t.split("+")).map(t=>this.mapKey(t.toLowerCase()));if(n.length>0&&this.validCombination(n)){this.registered_combos.push(n);const t=n[n.length-1];return this.keydown_states[t]||(this.keydown_states[t]=new Ql(null),this.keydown_observers[t]=this.keydown_states[t].asObservable()),this.updateCombinationEndList(),this.keydown_observers[t].subscribe(t=>{if(t){const t=[];if(n.length>1){for(const e of n){const n=this.keydown_states[e];t.push(n&&n.getValue()||-1)}for(let e=0;et[e+1])return}e()}})}return null}mapKey(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t}updateCombinationEndList(){for(const t of this.registered_combos)this.combo_end.push(t[t.length-1]);this.combo_end=function(t,e=""){return[].filter((t,n,s)=>s.indexOf(s.find(e?n=>n[e]===t[e]:e=>e===t))===n)}()}validCombination(t){let e=0;for(const n of t)F_.indexOf(n)<0&&e++;return e>0}}return t.ngInjectableDef=mt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),B_=[],G_=(()=>{class t extends o_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=ll(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let r;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>r=t,t=>{s(t),delete this._promises[n]},()=>{t(r),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}repositories(){const t="repositories";return this._promises[t]||(this._promises[t]=new Promise((e,n)=>{let s;this.http.get(`${this.api_route}/repositories`).subscribe(t=>s=t,e=>{n(e),delete this._promises[t]},()=>{e(s),this.timeout(t,()=>delete this._promises[t],1e3)})})),this._promises[t]}commits(t){const e=`commits|${ll(t)}`;return this._promises[e]||(this._promises[e]=new Promise((t,n)=>{let s;this.http.get(`${this.api_route}/repositories_commits`).subscribe(t=>s=t,t=>{n(t),delete this._promises[e]},()=>{t(s),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}versions(t){const e=`versions|${t}`;return this._promises[e]||(this._promises[e]=new Promise((n,s)=>{const r=`${this.api_route}/${encodeURIComponent(t)}`;let i;this.http.get(r).subscribe(t=>i=t,t=>{s(t),delete this._promises[e]},()=>{n(i),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}driverCommits(t,e){const n=ll(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const r=`${this.api_route}/${encodeURIComponent(t)}/commits`;let i;this.http.get(r).subscribe(t=>i=t,t=>{n(t),delete this._promises[s]},()=>{e(i),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}build(t){const e=ll(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{this.http.post(`${this.api_route}`,e).subscribe(t=>null,t=>{s(t),delete this._promises[n]},()=>{t(),delete this._promises[n]})})),this._promises[n]}clean(t,e){const n=ll(e),s=`clean|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((t,e)=>{this.http.delete(`${this.api_route}${n?"?"+n:""}`).subscribe(t=>null,t=>{e(t),delete this._promises[s]},()=>{t(),delete this._promises[s]})})),this._promises[s]}get api_route(){return this.parent?`${this.parent.endpoint}/build`:"/build"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),W_=(()=>{class t extends o_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=ll(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let r;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>r=t,t=>{s(t),delete this._promises[n]},()=>{t(r),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}specCommits(t,e){const n=ll(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const r=`${this.api_route}/${encodeURIComponent(t)}/commits`;let i;this.http.get(r).subscribe(t=>i=t,t=>{n(t),delete this._promises[s]},()=>{e(i),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}run(t){for(const s in t)null==t[s]&&delete t[s];const e=ll(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((s,r)=>{let i;this.http.post(`${this.api_route}${e?"?"+e:""}`,t,{responseType:"text"}).subscribe(t=>i=t,t=>{r(t),delete this._promises[n]},()=>{s(i),delete this._promises[n]})})),this._promises[n]}get api_route(){return this.parent?`${this.parent.endpoint}/test`:"/test"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),Y_=new b(v);class q_{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new Z_(t,this.delay,this.scheduler))}}class Z_ extends g{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,s=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-s.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-s.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(Z_.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new Q_(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Mp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Mp.createComplete()),this.unsubscribe()}}class Q_{constructor(t,e){this.time=t,this.notification=e}}const X_="Service workers are disabled or not supported by this browser";class K_{constructor(t){if(this.serviceWorker=t,t){const e=tp(t,"controllerchange").pipe(F(()=>t.controller)),n=Aa(na(()=>Zl(t.controller)),e);this.worker=n.pipe(ra(t=>!!t)),this.registration=this.worker.pipe(Ia(()=>t.getRegistration()));const s=tp(t,"message").pipe(F(t=>t.data)).pipe(ra(t=>t&&t.type)).pipe(it(new T));s.connect(),this.events=s}else this.worker=this.events=this.registration=(e=X_,na(()=>Rp(new Error(e))));var e}postMessage(t,e){return this.worker.pipe(xa(1),da(n=>{n.postMessage(Object.assign({action:t},e))})).toPromise().then(()=>void 0)}postMessageWithStatus(t,e,n){const s=this.waitForStatus(n),r=this.postMessage(t,e);return Promise.all([s,r]).then(()=>void 0)}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(t){return this.events.pipe(ra(e=>e.type===t))}nextEventOfType(t){return this.eventsOfType(t).pipe(xa(1))}waitForStatus(t){return this.eventsOfType("STATUS").pipe(ra(e=>e.nonce===t),xa(1),F(t=>{if(!t.status)throw new Error(t.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}const J_=(()=>(class{constructor(t){if(this.sw=t,this.subscriptionChanges=new T,!t.isEnabled)return this.messages=Y_,this.notificationClicks=Y_,void(this.subscription=Y_);this.messages=this.sw.eventsOfType("PUSH").pipe(F(t=>t.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(F(t=>t.data)),this.pushManager=this.sw.registration.pipe(F(t=>t.pushManager));const e=this.pushManager.pipe(Ia(t=>t.getSubscription()));this.subscription=K(e,this.subscriptionChanges)}get isEnabled(){return this.sw.isEnabled}requestSubscription(t){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const e={userVisibleOnly:!0};let n=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),s=new Uint8Array(new ArrayBuffer(n.length));for(let r=0;rt.subscribe(e)),xa(1)).toPromise().then(t=>(this.subscriptionChanges.next(t),t))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe(xa(1),Ia(t=>{if(null===t)throw new Error("Not subscribed to push notifications.");return t.unsubscribe().then(t=>{if(!t)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(X_))}decodeBase64(t){return atob(t)}}))(),tv=(()=>(class{constructor(t){if(this.sw=t,!t.isEnabled)return this.available=Y_,void(this.activated=Y_);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED")}get isEnabled(){return this.sw.isEnabled}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:t},t)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:t},t)}}))();class ev{}const nv=new Rt("NGSW_REGISTER_SCRIPT");function sv(t,e,n,s){return()=>{if(!(Hl(s)&&"serviceWorker"in navigator&&!1!==n.enabled))return;let r;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof n.registrationStrategy)r=n.registrationStrategy();else{const[e,...s]=(n.registrationStrategy||"registerWhenStable").split(":");switch(e){case"registerImmediately":r=Zl(null);break;case"registerWithDelay":r=Zl(null).pipe(function(t,e=mp){var n;const s=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new q_(s,e))}(+s[0]||0));break;case"registerWhenStable":r=t.get(mi).isStable.pipe(ra(t=>t));break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${n.registrationStrategy}`)}}r.pipe(xa(1)).subscribe(()=>navigator.serviceWorker.register(e,{scope:n.scope}))}}function rv(t,e){return new K_(Hl(e)&&!1!==t.enabled?navigator.serviceWorker:void 0)}const iv=(()=>{class t{static register(e,n={}){return{ngModule:t,providers:[{provide:nv,useValue:e},{provide:ev,useValue:n},{provide:K_,useFactory:rv,deps:[ev,Mr]},{provide:Tr,useFactory:sv,deps:[Dt,nv,ev,Mr],multi:!0}]}}}return t})(),ov="Google Analytics";function lv(t,e,n,s="debug",r){if(window.debug){const i=["color: #0288D1",`color:${r||"#009688"}`,"color:rgba(0,0,0,0.87)"];n?av()?console[s](`%c[${ov}]%c[${t}] %c${e}`,...i,n):console[s](`[${ov}][${t}] ${e}`,n):av()?console[s](`%c[${ov}]%c[${t}] %c${e}`,...i):console[s](`[${ov}][${t}] ${e}`)}}function av(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}const cv=(()=>{class t{constructor(t){var e,n,s,r,i;this.title=t,this.enabled=!0,this.app_name="GA_APP",this.timers={},e=window,n=document,s="script",e.GoogleAnalyticsObject="ga",e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,r=n.createElement(s),i=n.getElementsByTagName(s)[0],r.async=1,r.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(r,i),lv("Service","Injected Google Analytics into page"),this.service=window.ga}load(t){if(!this.enabled)throw new Error("Google Analytics needs to be enabled before being initialised");if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.service("create",t,"auto"),this.service("send","pageview")}setUser(t){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`user|${t}`,()=>{lv("Service",`Set user ID: ${t}`),this.service("set","userId",t),this.event("authentication","user-id available")},100)}event(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`event|${t}|${e}|${n}|${s}`,()=>{lv("Service",`Event: ${t}, ${e}${n?", "+n:""}${s?", "+s:""}`),this.service("send","event",`${this.app_prefix?this.app_prefix+"_":""}${t}`,e,n,s)},100)}screen(t,e){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");t&&this.enabled&&this.timeout(`event|${t}|${e||this.app_name}`,()=>{lv("Service",`Screen: ${t}${e?", "+e:""}`),this.service("send","screenview",{appName:e||this.app_name,screenName:t})},100)}page(t,e=!1){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&(this.last_route=t||"/",this.timeout(`page|${t}`,()=>{lv("Service",`Page: ${t}`),this.service("send","pageview",`${e?location.origin:""}${t}`)},100))}timing(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`page|${t}|${e}|${n}|${s}`,()=>{lv("Service",`Timing: ${t}, ${e}, ${n}${s?", "+s:""}`),this.service("send","timing",t,e,n,s)},100)}timeout(t,e,n=300){this.timers[t]&&(clearTimeout(this.timers[t]),this.timers[t]=null),this.timers[t]=setTimeout(()=>{e instanceof Function&&e(),this.timers[t]=null},n)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Kc))},token:t,providedIn:"root"}),t})(),uv=(()=>{class t extends o_{constructor(t,e,n,s,r,i,o,l,a){super(),this._title=t,this._router=e,this._version=n,this._settings=s,this._overlay=r,this._analytics=i,this._hotkeys=o,this._build=l,this._test=a,this._route_trail=[],this._subjects={},this._observers={},this.set("system",null),this._build.parent=this._test.parent=this,this.init(),this.registerOverlays()}get Overlay(){return this._overlay}get Analytics(){return this._analytics}get Hotkeys(){return this._hotkeys}get Build(){return this._build}get Test(){return this._test}setting(t){return this._settings.get(t)}get name(){return this._settings.app_name}set title(t){const e=this.setting("app.title");this._title.setTitle(`${t?t+" | ":""}${e}`)}get title(){return this._title.getTitle()}get endpoint(){return`${location.origin}`}get engine_endpoint(){return"/control/api/"}get is_ready(){return this._settings.setup}notify(t,e,n,s){this._overlay.notify(`
${e}
`,n,s,t)}notifySuccess(t,e,n){this.notify("success",t,e,n)}notifyError(t,e,n){this.notify("error",t,e,n)}notifyInfo(t,e,n){this.notify("info",t,e,n)}log(t,e,n,s="debug",r=!1){this._settings.log(t,e,n,s,r)}navigate(t,e){const n=t instanceof Array?[...t]:[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})}navigateBack(){if(this._route_trail&&this._route_trail.length>0){const t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])}get(t){return this._subjects[t]&&this._subjects[t]instanceof Ql?this._subjects[t].getValue():null}listen(t,e){return this._observers[t]?this._observers[t].subscribe(e):null}set(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new Ql(e),this._observers[t]=this._subjects[t].asObservable())}init(){if(!this._settings.setup)return this.timeout("init",()=>this.init());this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(t=>{this.log("CACHE",`Update available: ${`current version is ${t.current.hash}`} ${`available version is ${t.available.hash}`}`),this.notifyInfo("Newer version of the app is available","Refresh",()=>location.reload())}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],()=>{this.navigate("bootstrap",{clear:!0})})}registerOverlays(){if(B_)for(const t of B_)this._overlay.register(t.id,t.config)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Kc),Ot(vd),Ot(tv),Ot(z_),Ot(qf),Ot(cv),Ot(H_),Ot(G_),Ot(W_))},token:t,providedIn:"root"}),t})();class hv extends l_{constructor(t,e){super(),this.service=t,this.route=e,this.commit_list=[],this.spec_list=[],this.spec_commit_list=[]}ngOnInit(){this.subscription("route.params",this.route.paramMap.subscribe(t=>{t.has("repo")&&(this.repo=t.get("repo"),this.timeout("repo_update",()=>this.service.set("TEST.repository",this.repo))),t.has("driver")?(this.driver=t.get("driver"),this.timeout("driver_update",()=>this.service.set("TEST.driver",this.driver)),this.test_results="",this.spec=null,this.show=!1,this.updateSpecs()):this.timeout("driver_update",()=>this.service.set("TEST.driver",""))})),this.updateCommits(),this.updateSpecs(),this.updateSpecCommits(),this.interval("update",()=>{this.updateCommits(),this.updateSpecs(),this.updateSpecCommits()},6e4)}updateCommits(){this.driver&&(this.loading_commits=!0,this.service.Build.driverCommits(this.driver,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:cl(t.date).format("DD MMM YYYY h:mm A")})),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecs(){this.driver&&(this.loading_commits=!0,this.service.Test.query({repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_list=(t||[]).map(t=>({id:t,name:t})),this.spec||(this.spec=this.spec_list.reduce((t,e)=>t&&this.driver.localeCompare(t.id)>this.driver.localeCompare(e.id)?t:e,null)),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecCommits(){this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:cl(t.date).format("DD MMM YYYY h:mm A")})),this.loading_commits=!1},t=>this.loading_commits=!1))}test(){if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";const t=t=>{t instanceof Object&&(t=t.error),this.test_results=this.styleResults(t||"");const e=this.service.get("TEST.results")||{},n=t.indexOf("exited with 0")>=0;e[`${this.repo}|${this.driver}`]=n?"passed":"failed",this.service.set("TEST.results",e),this.testing=!1,this.timeout("scroll",()=>this.body.nativeElement.scrollTo(0,this.body.nativeElement.scrollHeight),10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(t,t)}}styleResults(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')}}var dv=Qn({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function pv(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Spec Commit:"])),(t()(),Vi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.spec_commit=n)&&s),s},Dm,Im)),lr(5,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(7,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(9,16384,null,0,$g,[[4,Vg]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,qs(e,9).ngClassUntouched,qs(e,9).ngClassTouched,qs(e,9).ngClassPristine,qs(e,9).ngClassDirty,qs(e,9).ngClassValid,qs(e,9).ngClassInvalid,qs(e,9).ngClassPending)})}function fv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),qi(128,1,new Array(3))],null,function(t,e){var n=e.component,s=function(t,e,n,s){if(ze.isWrapped(s)){s=ze.unwrap(s);const e=t.def.nodes[0].bindingIndex+0,n=ze.unwrap(t.oldValues[e]);t.oldValues[e]=new ze(n)}return s}(e,0,0,t(e,1,0,qs(e.parent.parent,0),n.test_results,"html"));t(e,0,0,s)})}function gv(t){return Ki(0,[(t()(),Vi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,54,"div",[["class","header"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Repository:"])),(t()(),Vi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Zi(6,null,["",""])),(t()(),Vi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Driver:"])),(t()(),Vi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Zi(11,null,["",""])),(t()(),Vi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Commit:"])),(t()(),Vi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.commit=n)&&s),s},Dm,Im)),lr(17,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(19,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(21,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Spec:"])),(t()(),Vi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,r=t.component;return"ngModelChange"===e&&(s=!1!==(r.spec=n)&&s),"ngModelChange"===e&&(s=!1!==r.updateSpecCommits()&&s),s},Dm,Im)),lr(27,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(29,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(31,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Di(16777216,null,null,1,null,pv)),lr(33,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(34,0,null,null,21,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Vi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Vi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Vi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.force=n)&&s),s},Zm,Ym)),lr(38,49152,null,0,$m,[],{klass:[0,"klass"],label:[1,"label"]},null),ar(1024,null,Ig,function(t){return[t]},[$m]),lr(40,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(42,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Vi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.debug=n)&&s),s},Zm,Ym)),lr(45,49152,null,0,$m,[],{klass:[0,"klass"],label:[1,"label"]},null),ar(1024,null,Ig,function(t){return[t]},[$m]),lr(47,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(49,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(50,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Vi(51,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.test()&&s),s},e_,t_)),ar(5120,null,Ig,function(t){return[t]},[Xm]),lr(53,4767744,null,0,Xm,[sn,cn],null,{tapped:"tapped"}),lr(54,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Zi(-1,0,["Run!"])),(t()(),Vi(56,0,[[1,0],["body",1]],null,10,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(57,0,null,null,4,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Vi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),Zi(59,null,[" "," "])),(t()(),Di(16777216,null,null,1,null,fv)),lr(61,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,63).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,63).handleTouch(n)&&s),"tapped"===e&&(s=0!=(r.show=!r.show)&&s),s},Wm,Gm)),lr(63,4440064,null,0,Um,[sn,cn],{klass:[0,"klass"],center:[1,"center"]},null),lr(64,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,qs(e,21).ngClassUntouched,qs(e,21).ngClassTouched,qs(e,21).ngClassPristine,qs(e,21).ngClassDirty,qs(e,21).ngClassValid,qs(e,21).ngClassInvalid,qs(e,21).ngClassPending),t(e,26,0,qs(e,31).ngClassUntouched,qs(e,31).ngClassTouched,qs(e,31).ngClassPristine,qs(e,31).ngClassDirty,qs(e,31).ngClassValid,qs(e,31).ngClassInvalid,qs(e,31).ngClassPending),t(e,37,0,qs(e,42).ngClassUntouched,qs(e,42).ngClassTouched,qs(e,42).ngClassPristine,qs(e,42).ngClassDirty,qs(e,42).ngClassValid,qs(e,42).ngClassInvalid,qs(e,42).ngClassPending),t(e,44,0,qs(e,49).ngClassUntouched,qs(e,49).ngClassTouched,qs(e,49).ngClassPristine,qs(e,49).ngClassDirty,qs(e,49).ngClassValid,qs(e,49).ngClassInvalid,qs(e,49).ngClassPending),t(e,51,0,!n.spec||n.testing),t(e,56,0,n.show),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_up":"keyboard_arrow_down")})}function mv(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(-1,null,["arrow_back"])),(t()(),Vi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(-1,null,["Select a driver from the sidebar"]))],null,null)}function _v(t){return Ki(0,[(e=0,n=n_,s=[Uc],cr(-1,e|=16,null,0,n,n,s)),zi(671088640,1,{body:0}),(t()(),Vi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,gv)),lr(4,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Di(0,[["select",2]],null,0,null,mv))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,qs(e,5))},null);var e,n,s}function vv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"app-workspace",[],null,null,null,_v,dv)),lr(1,245760,null,0,hv,[uv,lh],null,null)],function(t,e){t(e,1,0)},null)}var yv=$s("app-workspace",hv,vv,{},{},[]);class wv{constructor(){this.menu=!0,this.menuChange=new Sr}toggleMenu(){this.menu=!this.menu,this.menuChange.emit(this.menu)}}var bv=Qn({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function Cv(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,2).handleTouch(n)&&s),"tapped"===e&&(s=!1!==r.toggleMenu()&&s),s},Wm,Gm)),lr(2,4440064,null,0,Um,[sn,cn],{klass:[0,"klass"]},null),lr(3,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(-1,null,["menu"])),(t()(),Vi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Vi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Vi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),Zi(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}class xv extends l_{constructor(t){super(),this.service=t,this.repository_list=[],this.status={}}ngOnInit(){this.service.set("TEST.repository",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",()=>this.updateRepositoryList(),6e4),this.subscription("test_results",this.service.listen("TEST.results",t=>{this.status=t||{}})),this.subscription("repository",this.service.listen("TEST.repository",t=>{t&&(this.repo={id:t,name:t},this.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",t=>{this.driver=t}))}setRepository(t){this.service.navigate([t]),this.updateDriverList()}setDriver(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t])}updateDriverList(){this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(t=>{this.driver_list=t||[],this.loading=!1},t=>this.loading=!1)}updateRepositoryList(){this.service.Build.repositories().then(t=>{this.repository_list=(t||[]).map(t=>({id:t,name:t})),this.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),this.updateDriverList()})}}var Sv=Qn({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function Ev(t){return Ki(0,[(t()(),Vi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.setDriver(t.context.$implicit)&&s),s},null,null)),lr(1,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Vi(3,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(4,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]),t(e,4,0,e.context.$implicit)})}function kv(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(5,null,["",""]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?"No drivers in the selected repository":"Select a repository from above")})}function Tv(t){return Ki(0,[(t()(),Vi(0,0,null,null,12,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,r=t.component;return"ngModelChange"===e&&(s=!1!==(r.repo=n)&&s),"ngModelChange"===e&&(s=!1!==r.setRepository(n.id)&&s),s},Dm,Im)),lr(3,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(5,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(7,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(8,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,Ev)),lr(10,278528,null,0,Rl,[An,Rn,xn],{ngForOf:[0,"ngForOf"]},null),(t()(),Di(16777216,null,null,1,null,kv)),lr(12,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,3,0,"simple",n.repository_list||xs,"ACA Drivers"),t(e,5,0,n.repo),t(e,10,0,n.driver_list),t(e,12,0,!n.driver_list||0===n.driver_list.length)},function(t,e){t(e,2,0,qs(e,7).ngClassUntouched,qs(e,7).ngClassTouched,qs(e,7).ngClassPristine,qs(e,7).ngClassDirty,qs(e,7).ngClassValid,qs(e,7).ngClassInvalid,qs(e,7).ngClassPending)})}var Ov=Qn({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:16em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:16em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Iv(t){return Ki(0,[(t()(),Vi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var s=!0;return"menuChange"===e&&(s=!1!==(t.component.show_menu=n)&&s),s},Cv,bv)),lr(3,49152,null,0,wv,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Vi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Vi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(6,0,null,null,1,"sidebar",[],null,null,null,Tv,Sv)),lr(7,245760,null,0,xv,[uv],null,null),(t()(),Vi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Vi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),lr(10,212992,null,0,bd,[wd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function Rv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"app-root",[],null,null,null,Iv,Ov)),lr(1,49152,null,0,hl,[],null,null)],null,null)}var Pv=$s("app-root",hl,Rv,{},{},[]);class Av{}class Mv{}var Nv=rl(ul,[hl],function(t){return function(t){const e={},n=[];let s=!1;for(let r=0;r(t[e.name]=e.token,t),{}))),()=>ic),Ud(e),sv(n,s,r,i)];var o},[[2,hi],jd,Dt,nv,ev,Mr]),Os(512,Or,Or,[[2,Tr]]),Os(131584,mi,mi,[Xr,Dr,Dt,re,Xe,Or]),Os(1073742336,Ni,Ni,[mi]),Os(1073742336,Qc,Qc,[[3,Qc]]),Os(1024,Id,Dd,[[3,vd]]),Os(512,ju,Uu,[]),Os(512,wd,wd,[]),Os(256,Od,{useHash:!0},[]),Os(1024,fl,Nd,[dl,[2,gl],Od]),Os(512,ml,ml,[fl,dl]),Os(512,zr,zr,[]),Os(512,kr,wi,[zr,[2,vi]]),Os(1024,hd,function(){return[[{path:"",component:hv},{path:":repo",component:hv},{path:":repo/:driver",component:hv}]]},[]),Os(1024,vd,$d,[mi,ju,wd,ml,Dt,kr,zr,hd,Od,[2,pd],[2,cd]]),Os(1073742336,Ad,Ad,[[2,Id],[2,vd]]),Os(1073742336,Av,Av,[]),Os(1073742336,iv,iv,[]),Os(1073742336,xm,xm,[]),Os(1073742336,Em,Em,[]),Os(1073742336,km,km,[]),Os(1073742336,Bm,Bm,[]),Os(1073742336,Jm,Jm,[]),Os(1073742336,jm,jm,[]),Os(1073742336,eg,eg,[]),Os(1073742336,pf,pf,[]),Os(1073742336,Up,Up,[]),Os(1073742336,sf,sf,[]),Os(1073742336,zf,zf,[]),Os(1073742336,Kf,Kf,[]),Os(1073742336,i_,i_,[]),Os(1073742336,Qd,Qd,[]),Os(1073742336,Mv,Mv,[]),Os(1073742336,j_,j_,[]),Os(1073742336,U_,U_,[]),Os(1073742336,ul,ul,[]),Os(256,Ge,!0,[]),Os(256,M_,"XSRF-TOKEN",[]),Os(256,N_,"X-XSRF-TOKEN",[])])});(function(){if(oe)throw new Error("Cannot enable prod mode after platform setup.");ie=!1})(),qc().bootstrapModuleFactory(Nv).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file diff --git a/www/main-es5.886d7c57388081782c99.js b/www/main-es5.886d7c57388081782c99.js new file mode 100644 index 00000000000..95d0585f69c --- /dev/null +++ b/www/main-es5.886d7c57388081782c99.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",r="hour",o="day",i="week",s="month",a="quarter",l="year",u=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,c=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},p={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+h(r,2,"0")+":"+h(o,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,s),o=e-r<0,i=t.clone().add(n+(o?-1:1),s);return Number(-(n+(e-r)/(o?r-i:i-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(u){return{M:s,y:l,w:i,d:o,h:r,m:n,s:e,ms:t,Q:a}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},f={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},d="en",g={};g[d]=f;var v=function(t){return t instanceof b},y=function(t,e,n){var r;if(!t)return null;if("string"==typeof t)g[t]&&(r=t),e&&(g[t]=e,r=t);else{var o=t.name;g[o]=t,r=o}return n||(d=r),r},m=function(t,e,n){if(v(t))return t.clone();var r=e?"string"==typeof e?{format:e,pl:n}:e:{};return r.date=t,new b(r)},_=p;_.l=y,_.i=v,_.w=function(t,e){return m(t,{locale:e.$L,utc:e.$u})};var b=function(){function h(t){this.$L=this.$L||y(t.locale,null,!0)||d,this.parse(t)}var p=h.prototype;return p.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(_.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(u);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},p.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},p.$utils=function(){return _},p.isValid=function(){return!("Invalid Date"===this.$d.toString())},p.isSame=function(t,e){var n=m(t);return this.startOf(e)<=n&&n<=this.endOf(e)},p.isAfter=function(t,e){return m(t)=0;a--)(o=t[a])&&(s=(i<3?o(s):i>3?o(e,n,s):o(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}function a(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function l(t,e,n,r){return new(n||(n=Promise))(function(o,i){function s(t){try{l(r.next(t))}catch(e){i(e)}}function a(t){try{l(r.throw(t))}catch(e){i(e)}}function l(t){t.done?o(t.value):new n(function(e){e(t.value)}).then(s,a)}l((r=r.apply(t,e||[])).next())})}function u(t,e){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,r=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function h(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(a){o={error:a}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function p(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(X);function st(t){return t}function at(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),rt(st,t)}function lt(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof o&&(n=t.pop()),null===r&&1===t.length&&t[0]instanceof R?t[0]:at(n)(et(t,r))}function ut(){return function(t){return t.lift(new ct(t))}}var ct=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var r=new ht(t,n),o=e.subscribe(r);return r.closed||(r.connection=n.connect()),o},t}(),ht=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},e}(E),pt=function(t){function e(e,n){var r=t.call(this)||this;return r.source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return o(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 m).add(this.source.subscribe(new dt(this.getSubject(),this))),t.closed?(this._connection=null,t=m.EMPTY):this._connection=t),t},e.prototype.refCount=function(){return ut()(this)},e}(R).prototype,ft={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:pt._subscribe},_isComplete:{value:pt._isComplete,writable:!0},getSubject:{value:pt.getSubject},connect:{value:pt.connect},refCount:{value:pt.refCount}},dt=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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}(j);function gt(t,e){return function(n){var r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new vt(r,e));var o=Object.create(n,ft);return o.source=n,o.subjectFactory=r,o}}var vt=function(){function t(t,e){this.subjectFactory=t,this.selector=e}return t.prototype.call=function(t,e){var n=this.selector,r=this.subjectFactory(),o=n(r).subscribe(t);return o.add(e.subscribe(r)),o},t}();function yt(){return new V}var mt="__parameters__";function _t(t,e,n){var r=function(t){return function(){for(var e=[],n=0;n ");else if("object"==typeof e){var i=[];for(var s in e)if(e.hasOwnProperty(s)){var a=e[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):Tt(a)))}o="{"+i.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+o+"]: "+t.replace(Xt,"\n ")}function ne(t,e){return new Error(ee(t,e,"StaticInjectorError"))}var re="ngDebugContext",oe="ngOriginalError",ie="ngErrorLogger",se=new Ut("AnalyzeForEntryComponents"),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({}),le=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt)}();function ue(t){return t[re]}function ce(t){return t[oe]}function he(t){for(var e=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return t.prototype.getInertBodyElement_XHR=function(t){t=""+t+"";try{t=encodeURI(t)}catch(r){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=""+t+"";try{var e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(n){return null}},t.prototype.getInertBodyElement_InertDocument=function(t){var e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},t.prototype.stripCustomNsAttrs=function(t){for(var e=t.attributes,n=e.length-1;0"),!0},t.prototype.endElement=function(t){var e=t.nodeName.toLowerCase();ke.hasOwnProperty(e)&&!xe.hasOwnProperty(e)&&(this.buf.push(""))},t.prototype.chars=function(t){this.buf.push(De(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}(),Me=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ne=/([^\#-~ |!])/g;function De(t){return t.replace(/&/g,"&").replace(Me,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ne,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}function je(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Ve=function(t){return 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",t}({}),Le=function(){return function(){}}(),ze=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ue=/^url\(([^)]+)\)$/,Fe=/([A-Z])/g;function He(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function Be(t){return!!t&&"function"==typeof t.then}function We(t){return!!t&&"function"==typeof t.subscribe}var Ge=null;function Ye(){if(!Ge){var t=Dt.Symbol;if(t&&t.iterator)Ge=t.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),n=0;n-1}(r)||"root"===o.providedIn&&r._def.isRoot))){var c=t._providers.length;return t._def.providers[c]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:c,token:e.token},t._providers[c]=Rr,t._providers[c]=Vr(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Vt(i)}}function Vr(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(jr(t,n[0]));case 2:return new e(jr(t,n[0]),jr(t,n[1]));case 3:return new e(jr(t,n[0]),jr(t,n[1]),jr(t,n[2]));default:for(var o=new Array(r),i=0;i=n.length)&&(e=n.length-1),e<0)return null;var r=n[e];return r.viewContainerParent=null,Hr(n,e),Xn.dirtyParentQueries(r),Ur(r),r}function zr(t,e,n){var r=e?fr(e,e.def.lastRenderRootNode):t.renderElement,o=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);Cr(n,2,o,i,void 0)}function Ur(t){Cr(t,3,null,null,void 0)}function Fr(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Hr(t,e){e>=t.length-1?t.pop():t.splice(e,1)}var Br=new Object;function Wr(t,e,n,r,o,i){return new Gr(t,e,n,r,o,i)}var Gr=function(t){function e(e,n,r,o,i,s){var a=t.call(this)||this;return a.selector=e,a.componentType=n,a._inputs=o,a._outputs=i,a.ngContentSelectors=s,a.viewDefFactory=r,a}return o(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){var t=[],e=this._inputs;for(var n in e)t.push({propName:n,templateName:e[n]});return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var t=[];for(var e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,r){if(!r)throw new Error("ngModule should be provided");var o=wr(this.viewDefFactory),i=o.nodes[0].element.componentProvider.nodeIndex,s=Xn.createRootView(t,e||[],n,o,r,Br),a=Zn(s,i).instance;return n&&s.renderer.setAttribute(qn(s,0).renderElement,"ng-version",_n.full),new Yr(s,new Qr(s),a)},e}(en),Yr=function(t){function e(e,n,r){var o=t.call(this)||this;return o._view=e,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o.hostView=n,o.changeDetectorRef=n,o.instance=r,o}return o(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return new pn(qn(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new to(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}(tn);function qr(t,e,n){return new Zr(t,e,n)}var Zr=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 pn(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new to(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=pr(t),t=t.parent;return t?new to(t,e):new to(this._view,null)},enumerable:!0,configurable:!0}),t.prototype.clear=function(){for(var t=this._embeddedViews.length-1;t>=0;t--){var e=Lr(this._data,t);Xn.destroyView(e)}},t.prototype.get=function(t){var e=this._embeddedViews[t];if(e){var n=new Qr(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 r=t.createEmbeddedView(e||{});return this.insert(r,n),r},t.prototype.createComponent=function(t,e,n,r,o){var i=n||this.parentInjector;o||t instanceof ln||(o=i.get(un));var s=t.create(i,r,void 0,o);return this.insert(s.hostView,e),s},t.prototype.insert=function(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n,r,o,i,s=t;return i=(n=this._data).viewContainer._embeddedViews,null==(r=e)&&(r=i.length),(o=s._view).viewContainerParent=this._view,Fr(i,r,o),function(t,e){var n=hr(e);if(n&&n!==t&&!(16&e.state)){e.state|=16;var r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(e),function(t,n){if(!(4&n.flags)){e.parent.def.nodeFlags|=4,n.flags|=4;for(var r=n.parent;r;)r.childFlags|=4,r=r.parent}}(0,e.parentNodeDef)}}(n,o),Xn.dirtyParentQueries(o),zr(n,r>0?i[r-1]:null,o),s.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,r,o,i,s,a=this._embeddedViews.indexOf(t._view);return o=e,s=(i=(n=this._data).viewContainer._embeddedViews)[r=a],Hr(i,r),null==o&&(o=i.length),Fr(i,o,s),Xn.dirtyParentQueries(s),Ur(s),zr(n,o>0?i[o-1]:null,s),t},t.prototype.indexOf=function(t){return this._embeddedViews.indexOf(t._view)},t.prototype.remove=function(t){var e=Lr(this._data,t);e&&Xn.destroyView(e)},t.prototype.detach=function(t){var e=Lr(this._data,t);return e?new Qr(e):null},t}();function $r(t){return new Qr(t)}var Qr=function(){function t(t){this._view=t,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){return Cr(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(){lr(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{Xn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}},t.prototype.checkNoChanges=function(){Xn.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)),Xn.destroyView(this._view)},t.prototype.detachFromAppRef=function(){this._appRef=null,Ur(this._view),Xn.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 Xr(t,e){return new Kr(t,e)}var Kr=function(t){function e(e,n){var r=t.call(this)||this;return r._parentView=e,r._def=n,r}return o(e,t),e.prototype.createEmbeddedView=function(t){return new Qr(Xn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new pn(qn(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),e}(Vn);function Jr(t,e){return new to(t,e)}var to=function(){function t(t,e){this.view=t,this.elDef=e}return t.prototype.get=function(t,e){return void 0===e&&(e=Gt.THROW_IF_NOT_FOUND),Xn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:tr(t)},e)},t}();function eo(t,e){var n=t.def.nodes[e];if(1&n.flags){var r=qn(t,n.nodeIndex);return n.element.template?r.template:r.renderElement}if(2&n.flags)return Yn(t,n.nodeIndex).renderText;if(20240&n.flags)return Zn(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function no(t){return new ro(t.renderer)}var ro=function(){function t(t){this.delegate=t}return t.prototype.selectRootElement=function(t){return this.delegate.selectRootElement(t)},t.prototype.createElement=function(t,e){var n=h(Pr(e),2),r=this.delegate.createElement(n[1],n[0]);return t&&this.delegate.appendChild(t,r),r},t.prototype.createViewRoot=function(t){return t},t.prototype.createTemplateAnchor=function(t){var e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e},t.prototype.createText=function(t,e){var n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n},t.prototype.projectNodes=function(t,e){for(var n=0;n0,e.provider.value,e.provider.deps);if(e.outputs.length)for(var r=0;r0,r=e.provider;switch(201347067&e.flags){case 512:return xo(t,e.parent,n,r.value,r.deps);case 1024:return function(t,e,n,r,o){var i=o.length;switch(i){case 0:return r();case 1:return r(Eo(t,e,n,o[0]));case 2:return r(Eo(t,e,n,o[0]),Eo(t,e,n,o[1]));case 3:return r(Eo(t,e,n,o[0]),Eo(t,e,n,o[1]),Eo(t,e,n,o[2]));default:for(var s=Array(i),a=0;a0&&(o=setTimeout(function(){r._callbacks=r._callbacks.filter(function(t){return t.timeoutId!==o}),t(r._didWork,r.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:o,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}(),gi=function(){function t(){this._applications=new Map,vi.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),vi.findTestabilityInTree(this,t,e)},s([a("design:paramtypes",[])],t)}(),vi=new(function(){function t(){}return t.prototype.addToWindow=function(t){},t.prototype.findTestabilityInTree=function(t,e,n){return null},t}()),yi=new Ut("AllowMultipleToken"),mi=function(){return function(t,e){this.name=t,this.token=e}}();function _i(t,e,n){void 0===n&&(n=[]);var r="Platform: "+e,o=new Ut(r);return function(e){void 0===e&&(e=[]);var i=bi();if(!i||i.injector.get(yi,!1))if(t)t(n.concat(e).concat({provide:o,useValue:!0}));else{var s=n.concat(e).concat({provide:o,useValue:!0});!function(t){if(pi&&!pi.destroyed&&!pi.injector.get(yi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");pi=t.get(wi);var e=t.get(Uo,null);e&&e.forEach(function(t){return t()})}(Gt.create({providers:s,name:r}))}return function(t){var e=bi();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}(o)}}function bi(){return pi&&!pi.destroyed?pi:null}var wi=function(){function t(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return t.prototype.bootstrapModuleFactory=function(t,e){var n,r=this,o="noop"===(n=e?e.ngZone:void 0)?new fi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ge()}),i=[{provide:si,useValue:o}];return o.run(function(){var e=Gt.create({providers:i,parent:r.injector,name:t.moduleType.name}),n=t.create(e),s=n.injector.get(pe,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy(function(){return Si(r._modules,n)}),o.runOutsideAngular(function(){return o.onError.subscribe({next:function(t){s.handleError(t)}})}),function(t,e,o){try{var i=((s=n.injector.get(jo)).runInitializers(),s.donePromise.then(function(){return r._moduleDoBootstrap(n),n}));return Be(i)?i.catch(function(n){throw e.runOutsideAngular(function(){return t.handleError(n)}),n}):i}catch(a){throw e.runOutsideAngular(function(){return t.handleError(a)}),a}var s}(s,o)})},t.prototype.bootstrapModule=function(t,e){var n=this;void 0===e&&(e=[]);var r=Ci({},e);return function(t,e,n){return t.get(Ko).createCompiler([e]).compileModuleAsync(n)}(this.injector,r,t).then(function(t){return n.bootstrapModuleFactory(t,r)})},t.prototype._moduleDoBootstrap=function(t){var e=t.injector.get(xi);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(function(t){return e.bootstrap(t)});else{if(!t.instance.ngDoBootstrap)throw new Error("The module "+Tt(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}();function Ci(t,e){return Array.isArray(e)?e.reduce(Ci,t):i({},t,e)}var xi=function(){function t(t,e,n,r,o,i){var s=this;this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ge(),this._zone.onMicrotaskEmpty.subscribe({next:function(){s._zone.run(function(){s.tick()})}});var a=new R(function(t){s._stable=s._zone.isStable&&!s._zone.hasPendingMacrotasks&&!s._zone.hasPendingMicrotasks,s._zone.runOutsideAngular(function(){t.next(s._stable),t.complete()})}),l=new R(function(t){var e;s._zone.runOutsideAngular(function(){e=s._zone.onStable.subscribe(function(){si.assertNotInAngularZone(),ii(function(){s._stable||s._zone.hasPendingMacrotasks||s._zone.hasPendingMicrotasks||(s._stable=!0,t.next(!0))})})});var n=s._zone.onUnstable.subscribe(function(){si.assertInAngularZone(),s._stable&&(s._stable=!1,s._zone.runOutsideAngular(function(){t.next(!1)}))});return function(){e.unsubscribe(),n.unsubscribe()}});this.isStable=lt(a,l.pipe(function(t){return ut()(gt(yt)(t))}))}var e;return e=t,t.prototype.bootstrap=function(t,e){var n,r=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 en?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);var o=n instanceof ln?null:this._injector.get(un),i=n.create(Gt.NULL,[],e||n.selector,o);i.onDestroy(function(){r._unloadComponent(i)});var s=i.injector.get(di,null);return s&&i.injector.get(gi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ge()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i},t.prototype.tick=function(){var t,n,r,o,i=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var s=e._tickScope();try{this._runningTick=!0;try{for(var a=c(this._views),l=a.next();!l.done;l=a.next())l.value.detectChanges()}catch(p){t={error:p}}finally{try{l&&!l.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}if(this._enforceNoNewChanges)try{for(var u=c(this._views),h=u.next();!h.done;h=u.next())h.value.checkNoChanges()}catch(f){r={error:f}}finally{try{h&&!h.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}catch(d){this._zone.runOutsideAngular(function(){return i._exceptionHandler.handleError(d)})}finally{this._runningTick=!1,ri(s)}},t.prototype.attachView=function(t){var e=t;this._views.push(e),e.attachToAppRef(this)},t.prototype.detachView=function(t){var e=t;Si(this._views,e),e.detachFromAppRef()},t.prototype._loadComponent=function(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Ho,[]).concat(this._bootstrapListeners).forEach(function(e){return e(t)})},t.prototype._unloadComponent=function(t){this.detachView(t.hostView),Si(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._tickScope=ni("ApplicationRef#tick()"),t}();function Si(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}var Ei=function(){return function(){}}(),Oi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},ki=function(){function t(t,e){this._compiler=t,this._config=e||Oi}return t.prototype.load=function(t){return this._compiler instanceof Xo?this.loadFactory(t):this.loadAndCompile(t)},t.prototype.loadAndCompile=function(t){var e=this,r=h(t.split("#"),2),o=r[0],i=r[1];return void 0===i&&(i="default"),n("zn8P")(o).then(function(t){return t[i]}).then(function(t){return Pi(t,o,i)}).then(function(t){return e._compiler.compileModuleAsync(t)})},t.prototype.loadFactory=function(t){var e=h(t.split("#"),2),r=e[0],o=e[1],i="NgFactory";return void 0===o&&(o="default",i=""),n("zn8P")(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(t){return t[o+i]}).then(function(t){return Pi(t,r,o)})},t}();function Pi(t,e,n){if(!t)throw new Error("Cannot find '"+n+"' in '"+e+"'");return t}var Ti=function(){return function(t,e){this.name=t,this.callback=e}}(),Ii=function(){function t(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Ri&&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}(),Ri=function(t){function e(e,n,r){var o=t.call(this,e,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=e,o}return o(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,p([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,r){e.childNodes.forEach(function(e){e instanceof Ri&&(n(e)&&r.push(e),t(e,n,r))})}(this,t,e),e},e.prototype.queryAllNodes=function(t){var e=[];return function t(e,n,r){e instanceof Ri&&e.childNodes.forEach(function(e){n(e)&&r.push(e),e instanceof Ri&&t(e,n,r)})}(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}(Ii),Ai=new Map,Mi=function(t){return Ai.get(t)||null};function Ni(t){Ai.set(t.nativeNode,t)}var Di=_i(null,"core",[{provide:Fo,useValue:"unknown"},{provide:wi,deps:[Gt]},{provide:gi,deps:[]},{provide:Bo,deps:[]}]),ji=new Ut("LocaleId");function Vi(){return Dn}function Li(){return jn}function zi(t){return t||"en-US"}function Ui(t){var e=[];return t.onStable.subscribe(function(){for(;e.length;)e.pop()()}),function(t){e.push(t)}}var Fi=function(){return function(t){}}();function Hi(t,e,n,r,o,i){t|=1;var s=yr(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s.matchedQueries,matchedQueryIds:s.matchedQueryIds,references:s.references,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?wr(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Kn},provider:null,text:null,query:null,ngContent:null}}function Bi(t,e,n,r,o,i,s,a,l,u,c,p){var f;void 0===s&&(s=[]),u||(u=Kn);var d=yr(n),g=d.matchedQueries,v=d.references,y=d.matchedQueryIds,m=null,_=null;i&&(m=(f=h(Pr(i),2))[0],_=f[1]),a=a||[];for(var b=new Array(a.length),w=0;w0)u=g,ss(g)||(c=g);else for(;u&&d===u.nodeIndex+u.childCount;){var m=u.parent;m&&(m.childFlags|=u.childFlags,m.childMatchedQueries|=u.childMatchedQueries),c=(u=m)&&ss(u)?u.renderParent:u}}return{factory:null,nodeFlags:s,rootNodeFlags:a,nodeMatchedQueries:l,flags:t,nodes:e,updateDirectives:n||Kn,updateRenderer:r||Kn,handleEvent:function(t,n,r,o){return e[n].element.handleEvent(t,r,o)},bindingCount:o,outputCount:i,lastRenderRootNode:f}}function ss(t){return 0!=(1&t.flags)&&null===t.element.name}function as(t,e,n){var r=e.element&&e.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.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 o=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=o&&e.nodeIndex+e.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.nodeIndex+"!")}}function ls(t,e,n,r){var o=hs(t.root,t.renderer,t,e,n);return ps(o,t.component,r),fs(o),o}function us(t,e,n){var r=hs(t,t.renderer,null,null,e);return ps(r,n,n),fs(r),r}function cs(t,e,n,r){var o,i=e.element.componentRendererType;return o=i?t.root.rendererFactory.createRenderer(r,i):t.root.renderer,hs(t.root,o,t,e.element.componentProvider,n)}function hs(t,e,n,r,o){var i=new Array(o.nodes.length),s=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(o.bindingCount),disposables:s,initIndex:-1}}function ps(t,e,n){t.component=e,t.context=n}function fs(t){var e;dr(t)&&(e=qn(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);for(var n=t.def,r=t.nodes,o=0;o0&&qi(t,e,0,n)&&(f=!0),p>1&&qi(t,e,1,r)&&(f=!0),p>2&&qi(t,e,2,o)&&(f=!0),p>3&&qi(t,e,3,i)&&(f=!0),p>4&&qi(t,e,4,s)&&(f=!0),p>5&&qi(t,e,5,a)&&(f=!0),p>6&&qi(t,e,6,l)&&(f=!0),p>7&&qi(t,e,7,u)&&(f=!0),p>8&&qi(t,e,8,c)&&(f=!0),p>9&&qi(t,e,9,h)&&(f=!0),f}(t,e,n,r,o,i,s,a,l,u,c,h);case 2:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=!1,f=e.bindings,d=f.length;if(d>0&&sr(t,e,0,n)&&(p=!0),d>1&&sr(t,e,1,r)&&(p=!0),d>2&&sr(t,e,2,o)&&(p=!0),d>3&&sr(t,e,3,i)&&(p=!0),d>4&&sr(t,e,4,s)&&(p=!0),d>5&&sr(t,e,5,a)&&(p=!0),d>6&&sr(t,e,6,l)&&(p=!0),d>7&&sr(t,e,7,u)&&(p=!0),d>8&&sr(t,e,8,c)&&(p=!0),d>9&&sr(t,e,9,h)&&(p=!0),p){var g=e.text.prefix;d>0&&(g+=os(n,f[0])),d>1&&(g+=os(r,f[1])),d>2&&(g+=os(o,f[2])),d>3&&(g+=os(i,f[3])),d>4&&(g+=os(s,f[4])),d>5&&(g+=os(a,f[5])),d>6&&(g+=os(l,f[6])),d>7&&(g+=os(u,f[7])),d>8&&(g+=os(c,f[8])),d>9&&(g+=os(h,f[9]));var v=Yn(t,e.nodeIndex).renderText;t.renderer.setValue(v,g)}return p}(t,e,n,r,o,i,s,a,l,u,c,h);case 16384:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=Zn(t,e.nodeIndex),f=p.instance,d=!1,g=void 0,v=e.bindings.length;return v>0&&ir(t,e,0,n)&&(d=!0,g=ko(t,p,e,0,n,g)),v>1&&ir(t,e,1,r)&&(d=!0,g=ko(t,p,e,1,r,g)),v>2&&ir(t,e,2,o)&&(d=!0,g=ko(t,p,e,2,o,g)),v>3&&ir(t,e,3,i)&&(d=!0,g=ko(t,p,e,3,i,g)),v>4&&ir(t,e,4,s)&&(d=!0,g=ko(t,p,e,4,s,g)),v>5&&ir(t,e,5,a)&&(d=!0,g=ko(t,p,e,5,a,g)),v>6&&ir(t,e,6,l)&&(d=!0,g=ko(t,p,e,6,l,g)),v>7&&ir(t,e,7,u)&&(d=!0,g=ko(t,p,e,7,u,g)),v>8&&ir(t,e,8,c)&&(d=!0,g=ko(t,p,e,8,c,g)),v>9&&ir(t,e,9,h)&&(d=!0,g=ko(t,p,e,9,h,g)),g&&f.ngOnChanges(g),65536&e.flags&&Gn(t,256,e.nodeIndex)&&f.ngOnInit(),262144&e.flags&&f.ngDoCheck(),d}(t,e,n,r,o,i,s,a,l,u,c,h);case 32:case 64:case 128:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=e.bindings,f=!1,d=p.length;if(d>0&&sr(t,e,0,n)&&(f=!0),d>1&&sr(t,e,1,r)&&(f=!0),d>2&&sr(t,e,2,o)&&(f=!0),d>3&&sr(t,e,3,i)&&(f=!0),d>4&&sr(t,e,4,s)&&(f=!0),d>5&&sr(t,e,5,a)&&(f=!0),d>6&&sr(t,e,6,l)&&(f=!0),d>7&&sr(t,e,7,u)&&(f=!0),d>8&&sr(t,e,8,c)&&(f=!0),d>9&&sr(t,e,9,h)&&(f=!0),f){var g=$n(t,e.nodeIndex),v=void 0;switch(201347067&e.flags){case 32:v=new Array(p.length),d>0&&(v[0]=n),d>1&&(v[1]=r),d>2&&(v[2]=o),d>3&&(v[3]=i),d>4&&(v[4]=s),d>5&&(v[5]=a),d>6&&(v[6]=l),d>7&&(v[7]=u),d>8&&(v[8]=c),d>9&&(v[9]=h);break;case 64:v={},d>0&&(v[p[0].name]=n),d>1&&(v[p[1].name]=r),d>2&&(v[p[2].name]=o),d>3&&(v[p[3].name]=i),d>4&&(v[p[4].name]=s),d>5&&(v[p[5].name]=a),d>6&&(v[p[6].name]=l),d>7&&(v[p[7].name]=u),d>8&&(v[p[8].name]=c),d>9&&(v[p[9].name]=h);break;case 128:var y=n;switch(d){case 1:v=y.transform(n);break;case 2:v=y.transform(r);break;case 3:v=y.transform(r,o);break;case 4:v=y.transform(r,o,i);break;case 5:v=y.transform(r,o,i,s);break;case 6:v=y.transform(r,o,i,s,a);break;case 7:v=y.transform(r,o,i,s,a,l);break;case 8:v=y.transform(r,o,i,s,a,l,u);break;case 9:v=y.transform(r,o,i,s,a,l,u,c);break;case 10:v=y.transform(r,o,i,s,a,l,u,c,h)}}g.value=v}return f}(t,e,n,r,o,i,s,a,l,u,c,h);default:throw"unreachable"}}(t,e,r,o,i,s,a,l,u,c,h,f):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){for(var r=!1,o=0;o0&&ar(t,e,0,n),p>1&&ar(t,e,1,r),p>2&&ar(t,e,2,o),p>3&&ar(t,e,3,i),p>4&&ar(t,e,4,s),p>5&&ar(t,e,5,a),p>6&&ar(t,e,6,l),p>7&&ar(t,e,7,u),p>8&&ar(t,e,8,c),p>9&&ar(t,e,9,h)}(t,e,r,o,i,s,a,l,u,c,h,p):function(t,e,n){for(var r=0;r0){var i=new Set(t.modules);Ds.forEach(function(e,r){if(i.has(kt(r).providedIn)){var o={token:r,flags:e.flags|(n?4096:0),deps:mr(e.deps),value:e.value,index:t.providers.length};t.providers.push(o),t.providersByKey[tr(r)]=o}})}}(t=t.factory(function(){return Kn})),t):t}(r))}var Ns=new Map,Ds=new Map,js=new Map;function Vs(t){var e;Ns.set(t.token,t),"function"==typeof t.token&&(e=kt(t.token))&&"function"==typeof e.providedIn&&Ds.set(t.token,t)}function Ls(t,e){var n=wr(e.viewDefFactory),r=wr(n.nodes[0].element.componentView);js.set(t,r)}function zs(){Ns.clear(),Ds.clear(),js.clear()}function Us(t){if(0===Ns.size)return t;var e=function(t){for(var e=[],n=null,r=0;r0?da(t,e[n]):e[n]:null}var ga=n("Wgwc"),va=function(){function t(){if(this.build=ga(),!t.init){var e=ga();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][APP] "+pa+" - "+t+" | "+e):console[n].apply(console,["%c[ACA]%c[APP] %c"+pa+" - "+t+" | "+e].concat(["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0",t.init=!1,t}(),ya=function(){return function(){this.show_menu=!0}}(),ma=function(){return function(){}}(),_a=new Ut("Location Initialized"),ba=function(){return function(){}}(),wa=new Ut("appBaseHref"),Ca=function(){function t(t,n){var r=this;this._subject=new Ao,this._urlChangeListeners=[],this._platformStrategy=t;var o=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=e.stripTrailingSlash(xa(o)),this._platformStrategy.onPopState(function(t){r._subject.emit({url:r.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,n){return void 0===n&&(n=""),this.path()==this.normalize(t+e.normalizeQueryParams(n))},t.prototype.normalize=function(t){return e.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,xa(t)))},t.prototype.prepareExternalUrl=function(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)},t.prototype.go=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.pushState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},t.prototype.replaceState=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.replaceState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},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=function(t){return t&&"?"!==t[0]?"?"+t:t},t.joinWithSlash=function(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},t.stripTrailingSlash=function(t){var e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)},t}();function xa(t){return t.replace(/\/index.html$/,"")}var Sa=function(t){function e(e,n){var r=t.call(this)||this;return r._platformLocation=e,r._baseHref="",null!=n&&(r._baseHref=n),r}return o(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=Ca.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(ba),Ea=function(t){function e(e,n){var r=t.call(this)||this;if(r._platformLocation=e,null==n&&(n=r._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 r._baseHref=n,r}return o(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 Ca.joinWithSlash(this._baseHref,t)},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.pathname+Ca.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?""+e+n:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(ba),Oa=void 0,ka=["en",[["a","p"],["AM","PM"],Oa],[["AM","PM"],Oa,Oa],[["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"]],Oa,[["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"]],Oa,[["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}",Oa,"{1} 'at' {0}",Oa],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}],Pa={},Ta=function(t){return 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",t}({}),Ia=new Ut("UseV4Plurals"),Ra=function(){return function(){}}(),Aa=function(t){function e(e,n){var r=t.call(this)||this;return r.locale=e,r.deprecatedPluralFn=n,r}return o(e,t),e.prototype.getPluralCategory=function(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){var e=t.toLowerCase().replace(/_/g,"-"),n=Pa[e];if(n)return n;var r=e.split("-")[0];if(n=Pa[r])return n;if("en"===r)return ka;throw new Error('Missing locale data for the locale "'+t+'".')}(t)[18]}(e||this.locale)(t)){case Ta.Zero:return"zero";case Ta.One:return"one";case Ta.Two:return"two";case Ta.Few:return"few";case Ta.Many:return"many";default:return"other"}},e}(Ra);function Ma(t,e){var n,r;e=encodeURIComponent(e);try{for(var o=c(t.split(";")),i=o.next();!i.done;i=o.next()){var s=i.value,a=s.indexOf("="),l=h(-1==a?[s,""]:[s.slice(0,a),s.slice(a+1)],2),u=l[1];if(l[0].trim()===e)return decodeURIComponent(u)}}catch(p){n={error:p}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}var Na=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(un);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(n.injector)}else this._moduleRef=null;var r=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(sn)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(r,this._viewContainerRef.length,e,this.ngComponentOutletContent)}},t.prototype.ngOnDestroy=function(){this._moduleRef&&this._moduleRef.destroy()},t}(),Da=function(){function t(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}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}(),ja=function(){function t(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,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){ge()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(t)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#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(r){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;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,r,o){if(null==t.previousIndex){var i=e._viewContainer.createEmbeddedView(e._template,new Da(null,e._ngForOf,-1,-1),o),s=new Va(t,i);n.push(s)}else null==o?e._viewContainer.remove(r):(i=e._viewContainer.get(r),e._viewContainer.move(i,o),s=new Va(t,i),n.push(s))});for(var r=0;r0)for(var n=this.count>=this.total?this.total:this.count,r=this.ring,o=0;o=2;return function(r){return r.pipe(t?hl(function(e,n){return t(e,n,r)}):st,vl(1),n?Sl(e):Cl(function(){return new il}))}}function Pl(t){return function(e){var n=new Tl(t),r=e.lift(n);return n.caught=r}}var Tl=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new Il(t,this.selector,this.caught))},t}(),Il=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.selector=n,o.caught=r,o}return o(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(o){return void t.prototype.error.call(this,o)}this._unsubscribeAndRecycle();var r=new U(this,void 0,void 0);this.add(r),Q(this,n,void 0,void 0,r)}},e}(X);function Rl(t){return function(e){return 0===t?tl():e.lift(new Al(t))}}var Al=function(){function t(t){if(this.total=t,this.total<0)throw new gl}return t.prototype.call=function(t,e){return e.subscribe(new Ml(t,this.total))},t}(),Ml=function(t){function e(e,n){var r=t.call(this,e)||this;return r.total=n,r.count=0,r}return o(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}(E);function Nl(t,e){var n=arguments.length>=2;return function(r){return r.pipe(t?hl(function(e,n){return t(e,n,r)}):st,Rl(1),n?Sl(e):Cl(function(){return new il}))}}var Dl=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new jl(t,this.predicate,this.thisArg,this.source))},t}(),jl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.predicate=n,i.thisArg=r,i.source=o,i.index=0,i.thisArg=r||i,i}return o(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(E);function Vl(t,e){return"function"==typeof e?function(n){return n.pipe(Vl(function(n,r){return nt(t(n,r)).pipe(K(function(t,o){return e(n,t,r,o)}))}))}:function(e){return e.lift(new Ll(t))}}var Ll=function(){function t(t){this.project=t}return t.prototype.call=function(t,e){return e.subscribe(new zl(t,this.project))},t}(),zl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.project=n,r.index=0,r}return o(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(r){return void this.destination.error(r)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var r=this.innerSubscription;r&&r.unsubscribe();var o=new U(this,void 0,void 0);this.destination.add(o),this.innerSubscription=Q(this,t,e,n,o)},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,r,o){this.destination.next(e)},e}(X);function Ul(){for(var t=[],e=0;e0?et(t,n):tl(n):el(t[0]),e)}}function Hl(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new Bl(t,e,n))}}var Bl=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new Wl(t,this.accumulator,this.seed,this.hasSeed))},t}(),Wl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.accumulator=n,i._seed=r,i.hasSeed=o,i.index=0,i}return o(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(r){this.destination.error(r)}this.seed=e,this.destination.next(e)},e}(E);function Gl(t,e){return rt(t,e,1)}var Yl=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new ql(t,this.callback))},t}(),ql=function(t){function e(e,n){var r=t.call(this,e)||this;return r.add(new m(n)),r}return o(e,t),e}(E),Zl=null;function $l(){return Zl}var Ql,Xl=function(t){function e(){var e=t.call(this)||this;e._animationPrefix=null,e._transitionEnd=null;try{var n=e.createElement("div",document);if(null!=e.getStyle(n,"animationName"))e._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o0},e.prototype.tagName=function(t){return t.tagName},e.prototype.attributeMap=function(t){for(var e=new Map,n=t.attributes,r=0;r0;s||(s=t[i]=[]);var l=Du(e)?Zone.root:Zone.current;if(0===s.length)s.push({zone:l,handler:o});else{for(var u=!1,c=0;c-1},e}(du),Bu=["alt","control","meta","shift"],Wu={alt:function(t){return t.altKey},control:function(t){return t.ctrlKey},meta:function(t){return t.metaKey},shift:function(t){return t.shiftKey}},Gu=function(t){function e(e){return t.call(this,e)||this}var n;return o(e,t),n=e,e.prototype.supports=function(t){return null!=n.parseEventName(t)},e.prototype.addEventListener=function(t,e,r){var o=n.parseEventName(e),i=n.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return $l().onAndCancel(t,o.domEventName,i)})},e.parseEventName=function(t){var e=t.toLowerCase().split("."),r=e.shift();if(0===e.length||"keydown"!==r&&"keyup"!==r)return null;var o=n._normalizeKey(e.pop()),i="";if(Bu.forEach(function(t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),i+=t+".")}),i+=o,0!=e.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s},e.getEventFullKey=function(t){var e="",n=$l().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),Bu.forEach(function(r){r!=n&&(0,Wu[r])(t)&&(e+=r+".")}),e+=n},e.eventCallback=function(t,e,r){return function(o){n.getEventFullKey(o)===t&&r.runGuarded(function(){return e(o)})}},e._normalizeKey=function(t){switch(t){case"esc":return"escape";default:return t}},e}(du),Yu=function(){return function(){}}(),qu=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n}return o(e,t),e.prototype.sanitize=function(t,e){if(null==e)return null;switch(t){case Ve.NONE:return e;case Ve.HTML:return e instanceof $u?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){var n=null;try{Ce=Ce||new ve(t);var r=e?String(e):"";n=Ce.getInertBodyElement(r);var o=5,i=r;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=Ce.getInertBodyElement(r)}while(r!==i);var s=new Ae,a=s.sanitizeChildren(je(n)||n);return ge()&&s.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n)for(var l=je(n)||n;l.firstChild;)l.removeChild(l.firstChild)}}(this._doc,String(e)));case Ve.STYLE:return e instanceof Qu?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";var e=t.match(Ue);return e&&_e(e[1])===e[1]||t.match(ze)&&function(t){for(var e=!0,n=!0,r=0;rt.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||r.length0?t[t.length-1]:null}function Vc(t,e){for(var n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Lc(t){return We(t)?t:Be(t)?nt(Promise.resolve(t)):nl(t)}function zc(t,e,n){return n?function(t,e){return Nc(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!Bc(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(var r in n.children){if(!e.children[r])return!1;if(!t(e.children[r],n.children[r]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(function(n){return e[n]===t[n]})}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,r,o){if(n.segments.length>o.length)return!!Bc(s=n.segments.slice(0,o.length),o)&&!r.hasChildren();if(n.segments.length===o.length){if(!Bc(n.segments,o))return!1;for(var i in r.children){if(!n.children[i])return!1;if(!t(n.children[i],r.children[i]))return!1}return!0}var s=o.slice(0,n.segments.length),a=o.slice(n.segments.length);return!!Bc(n.segments,s)&&!!n.children[xc]&&e(n.children[xc],r,a)}(e,n,n.segments)}(t.root,e.root)}var Uc=function(){function t(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}return Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=Ec(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return qc.serialize(this)},t}(),Fc=function(){function t(t,e){var n=this;this.segments=t,this.children=e,this.parent=null,Vc(e,function(t,e){return t.parent=n})}return t.prototype.hasChildren=function(){return this.numberOfChildren>0},Object.defineProperty(t.prototype,"numberOfChildren",{get:function(){return Object.keys(this.children).length},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return Zc(this)},t}(),Hc=function(){function t(t,e){this.path=t,this.parameters=e}return Object.defineProperty(t.prototype,"parameterMap",{get:function(){return this._parameterMap||(this._parameterMap=Ec(this.parameters)),this._parameterMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return th(this)},t}();function Bc(t,e){return t.length===e.length&&t.every(function(t,n){return t.path===e[n].path})}function Wc(t,e){var n=[];return Vc(t.children,function(t,r){r===xc&&(n=n.concat(e(t,r)))}),Vc(t.children,function(t,r){r!==xc&&(n=n.concat(e(t,r)))}),n}var Gc=function(){return function(){}}(),Yc=function(){function t(){}return t.prototype.parse=function(t){var e=new ih(t);return new Uc(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())},t.prototype.serialize=function(t){var e,n;return"/"+function t(e,n){if(!e.hasChildren())return Zc(e);if(n){var r=e.children[xc]?t(e.children[xc],!1):"",o=[];return Vc(e.children,function(e,n){n!==xc&&o.push(n+":"+t(e,!1))}),o.length>0?r+"("+o.join("//")+")":r}var i=Wc(e,function(n,r){return r===xc?[t(e.children[xc],!1)]:[r+":"+t(n,!1)]});return Zc(e)+"/("+i.join("//")+")"}(t.root,!0)+(e=t.queryParams,(n=Object.keys(e).map(function(t){var n=e[t];return Array.isArray(n)?n.map(function(e){return Qc(t)+"="+Qc(e)}).join("&"):Qc(t)+"="+Qc(n)})).length?"?"+n.join("&"):"")+("string"==typeof t.fragment?"#"+encodeURI(t.fragment):"")},t}(),qc=new Yc;function Zc(t){return t.segments.map(function(t){return th(t)}).join("/")}function $c(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Qc(t){return $c(t).replace(/%3B/gi,";")}function Xc(t){return $c(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Kc(t){return decodeURIComponent(t)}function Jc(t){return Kc(t.replace(/\+/g,"%20"))}function th(t){return""+Xc(t.path)+(e=t.parameters,Object.keys(e).map(function(t){return";"+Xc(t)+"="+Xc(e[t])}).join(""));var e}var eh=/^[^\/()?;=#]+/;function nh(t){var e=t.match(eh);return e?e[0]:""}var rh=/^[^=?&#]+/,oh=/^[^?&#]+/,ih=function(){function t(t){this.url=t,this.remaining=t}return t.prototype.parseRootSegment=function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Fc([],{}):new Fc([],this.parseChildren())},t.prototype.parseQueryParams=function(){var t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t},t.prototype.parseFragment=function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null},t.prototype.parseChildren=function(){if(""===this.remaining)return{};this.consumeOptional("/");var t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());var e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));var n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[xc]=new Fc(t,e)),n},t.prototype.parseSegment=function(){var t=nh(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '"+this.remaining+"'.");return this.capture(t),new Hc(Kc(t),this.parseMatrixParams())},t.prototype.parseMatrixParams=function(){for(var t={};this.consumeOptional(";");)this.parseParam(t);return t},t.prototype.parseParam=function(t){var e=nh(this.remaining);if(e){this.capture(e);var n="";if(this.consumeOptional("=")){var r=nh(this.remaining);r&&this.capture(n=r)}t[Kc(e)]=Kc(n)}},t.prototype.parseQueryParam=function(t){var e,n=(e=this.remaining.match(rh))?e[0]:"";if(n){this.capture(n);var r="";if(this.consumeOptional("=")){var o=function(t){var e=t.match(oh);return e?e[0]:""}(this.remaining);o&&this.capture(r=o)}var i=Jc(n),s=Jc(r);if(t.hasOwnProperty(i)){var a=t[i];Array.isArray(a)||(t[i]=a=[a]),a.push(s)}else t[i]=s}},t.prototype.parseParens=function(t){var e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var n=nh(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error("Cannot parse url '"+this.url+"'");var o=void 0;n.indexOf(":")>-1?(o=n.substr(0,n.indexOf(":")),this.capture(o),this.capture(":")):t&&(o=xc);var i=this.parseChildren();e[o]=1===Object.keys(i).length?i[xc]:new Fc([],i),this.consumeOptional("//")}return e},t.prototype.peekStartsWith=function(t){return this.remaining.startsWith(t)},t.prototype.consumeOptional=function(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)},t.prototype.capture=function(t){if(!this.consumeOptional(t))throw new Error('Expected "'+t+'".')},t}(),sh=function(){function t(t){this._root=t}return Object.defineProperty(t.prototype,"root",{get:function(){return this._root.value},enumerable:!0,configurable:!0}),t.prototype.parent=function(t){var e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null},t.prototype.children=function(t){var e=ah(t,this._root);return e?e.children.map(function(t){return t.value}):[]},t.prototype.firstChild=function(t){var e=ah(t,this._root);return e&&e.children.length>0?e.children[0].value:null},t.prototype.siblings=function(t){var e=lh(t,this._root);return e.length<2?[]:e[e.length-2].children.map(function(t){return t.value}).filter(function(e){return e!==t})},t.prototype.pathFromRoot=function(t){return lh(t,this._root).map(function(t){return t.value})},t}();function ah(t,e){var n,r;if(t===e.value)return e;try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=ah(t,i.value);if(s)return s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}function lh(t,e){var n,r;if(t===e.value)return[e];try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=lh(t,i.value);if(s.length)return s.unshift(e),s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return[]}var uh=function(){function t(t,e){this.value=t,this.children=e}return t.prototype.toString=function(){return"TreeNode("+this.value+")"},t}();function ch(t){var e={};return t&&t.children.forEach(function(t){return e[t.value.outlet]=t}),e}var hh=function(t){function e(e,n){var r=t.call(this,e)||this;return r.snapshot=n,yh(r,e),r}return o(e,t),e.prototype.toString=function(){return this.snapshot.toString()},e}(sh);function ph(t,e){var n=function(t,e){var n=new gh([],{},{},"",{},xc,e,null,t.root,-1,{});return new vh("",new uh(n,[]))}(t,e),r=new rl([new Hc("",{})]),o=new rl({}),i=new rl({}),s=new rl({}),a=new rl(""),l=new fh(r,o,s,a,i,xc,e,n.root);return l.snapshot=n.root,new hh(new uh(l,[]),n)}var fh=function(){function t(t,e,n,r,o,i,s,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this._futureSnapshot=a}return Object.defineProperty(t.prototype,"routeConfig",{get:function(){return this._futureSnapshot.routeConfig},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=this.params.pipe(K(function(t){return Ec(t)}))),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(function(t){return Ec(t)}))),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return this.snapshot?this.snapshot.toString():"Future("+this._futureSnapshot+")"},t}();function dh(t,e){void 0===e&&(e="emptyOnly");var n=t.pathFromRoot,r=0;if("always"!==e)for(r=n.length-1;r>=1;){var o=n[r],s=n[r-1];if(o.routeConfig&&""===o.routeConfig.path)r--;else{if(s.component)break;r--}}return function(t){return t.reduce(function(t,e){return{params:i({},t.params,e.params),data:i({},t.data,e.data),resolve:i({},t.resolve,e._resolvedData)}},{params:{},data:{},resolve:{}})}(n.slice(r))}var gh=function(){function t(t,e,n,r,o,i,s,a,l,u,c){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this.routeConfig=a,this._urlSegment=l,this._lastPathIndex=u,this._resolve=c}return Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=Ec(this.params)),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=Ec(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return"Route(url:'"+this.url.map(function(t){return t.toString()}).join("/")+"', path:'"+(this.routeConfig?this.routeConfig.path:"")+"')"},t}(),vh=function(t){function e(e,n){var r=t.call(this,n)||this;return r.url=e,yh(r,n),r}return o(e,t),e.prototype.toString=function(){return mh(this._root)},e}(sh);function yh(t,e){e.value._routerState=t,e.children.forEach(function(e){return yh(t,e)})}function mh(t){var e=t.children.length>0?" { "+t.children.map(mh).join(", ")+" } ":"";return""+t.value+e}function _h(t){if(t.snapshot){var e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Nc(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Nc(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(var n=0;n0&&wh(n[0]))throw new Error("Root segment cannot have matrix parameters");var r=n.find(function(t){return"object"==typeof t&&null!=t&&t.outlets});if(r&&r!==jc(n))throw new Error("{outlets:{}} has to be the last command")}return t.prototype.toRoot=function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]},t}(),Sh=function(){return function(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}();function Eh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[xc]:""+t}function Oh(t,e,n){if(t||(t=new Fc([],{})),0===t.segments.length&&t.hasChildren())return kh(t,e,n);var r=function(t,e,n){for(var r=0,o=e,i={match:!1,pathIndex:0,commandIndex:0};o=n.length)return i;var s=t.segments[o],a=Eh(n[r]),l=r0&&void 0===a)break;if(a&&l&&"object"==typeof l&&void 0===l.outlets){if(!Rh(a,l,s))return i;r+=2}else{if(!Rh(a,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(t,e,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndex0?new Fc([],((r={})[xc]=t,r)):t;return new Uc(o,e,n)},t.prototype.expandSegmentGroup=function(t,e,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(K(function(t){return new Fc([],t)})):this.expandSegment(t,n,e,n.segments,r,!0)},t.prototype.expandChildren=function(t,e,n){var r=this;return function(n,o){if(0===Object.keys(n).length)return nl({});var i=[],s=[],a={};return Vc(n,function(n,o){var l,u,c=(l=o,u=n,r.expandSegmentGroup(t,e,u,l)).pipe(K(function(t){return a[o]=t}));o===xc?i.push(c):s.push(c)}),nl.apply(null,i.concat(s)).pipe(cl(),kl(),K(function(){return a}))}(n.children)},t.prototype.expandSegment=function(t,e,n,r,o,i){var s=this;return nl.apply(void 0,p(n)).pipe(K(function(a){return s.expandSegmentAgainstRoute(t,e,n,a,r,o,i).pipe(Pl(function(t){if(t instanceof jh)return nl(null);throw t}))}),cl(),Nl(function(t){return!!t}),Pl(function(t,n){if(t instanceof il||"EmptyError"===t.name){if(s.noLeftoversInUrl(e,r,o))return nl(new Fc([],{}));throw new jh(e)}throw t}))},t.prototype.noLeftoversInUrl=function(t,e,n){return 0===e.length&&!t.children[n]},t.prototype.expandSegmentAgainstRoute=function(t,e,n,r,o,i,s){return Gh(r)!==i?Lh(e):void 0===r.redirectTo?this.matchSegmentAgainstRoute(t,e,r,o):s&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i):Lh(e)},t.prototype.expandSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,r,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i)},t.prototype.expandWildCardWithParamsAgainstRouteUsingRedirect=function(t,e,n,r){var o=this,i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?zh(i):this.lineralizeSegments(n,i).pipe(rt(function(n){var i=new Fc(n,{});return o.expandSegment(t,i,e,n,r,!1)}))},t.prototype.expandRegularSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){var s=this,a=Hh(e,r,o),l=a.consumedSegments,u=a.lastChild,c=a.positionalParamSegments;if(!a.matched)return Lh(e);var h=this.applyRedirectCommands(l,r.redirectTo,c);return r.redirectTo.startsWith("/")?zh(h):this.lineralizeSegments(r,h).pipe(rt(function(r){return s.expandSegment(t,e,n,r.concat(o.slice(u)),i,!1)}))},t.prototype.matchSegmentAgainstRoute=function(t,e,n,r){var o=this;if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(K(function(t){return n._loadedConfig=t,new Fc(r,{})})):nl(new Fc(r,{}));var s=Hh(e,n,r),a=s.consumedSegments,l=s.lastChild;if(!s.matched)return Lh(e);var u=r.slice(l);return this.getChildConfig(t,n,r).pipe(rt(function(t){var n=t.module,r=t.routes,s=function(t,e,n,r){return n.length>0&&function(t,e,n){return r.some(function(n){return Wh(t,e,n)&&Gh(n)!==xc})}(t,n)?{segmentGroup:Bh(new Fc(e,function(t,e){var n,r,o={};o[xc]=e;try{for(var i=c(t),s=i.next();!s.done;s=i.next()){var a=s.value;""===a.path&&Gh(a)!==xc&&(o[Gh(a)]=new Fc([],{}))}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o}(r,new Fc(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return r.some(function(n){return Wh(t,e,n)})}(t,n)?{segmentGroup:Bh(new Fc(t.segments,function(t,e,n,r){var o,s,a={};try{for(var l=c(n),u=l.next();!u.done;u=l.next()){var h=u.value;Wh(t,e,h)&&!r[Gh(h)]&&(a[Gh(h)]=new Fc([],{}))}}catch(p){o={error:p}}finally{try{u&&!u.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}return i({},r,a)}(t,n,r,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,a,u,r),l=s.segmentGroup,h=s.slicedSegments;return 0===h.length&&l.hasChildren()?o.expandChildren(n,r,l).pipe(K(function(t){return new Fc(a,t)})):0===r.length&&0===h.length?nl(new Fc(a,{})):o.expandSegment(n,l,r,h,xc,!0).pipe(K(function(t){return new Fc(a.concat(t.segments),t.children)}))}))},t.prototype.getChildConfig=function(t,e,n){var r=this;return e.children?nl(new Tc(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?nl(e._loadedConfig):function(t,e,n){var r,o=e.canLoad;return o&&0!==o.length?nt(o).pipe(K(function(r){var o,i=t.get(r);if(function(t){return t&&Nh(t.canLoad)}(i))o=i.canLoad(e,n);else{if(!Nh(i))throw new Error("Invalid CanLoad guard");o=i(e,n)}return Lc(o)})).pipe(cl(),(r=function(t){return!0===t},function(t){return t.lift(new Dl(r,void 0,t))})):nl(!0)}(t.injector,e,n).pipe(rt(function(n){return n?r.configLoader.load(t.injector,e).pipe(K(function(t){return e._loadedConfig=t,t})):function(t){return new R(function(e){return e.error(kc("Cannot load children because the guard of the route \"path: '"+t.path+"'\" returned false"))})}(e)})):nl(new Tc([],t))},t.prototype.lineralizeSegments=function(t,e){for(var n=[],r=e.root;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return nl(n);if(r.numberOfChildren>1||!r.children[xc])return Uh(t.redirectTo);r=r.children[xc]}},t.prototype.applyRedirectCommands=function(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)},t.prototype.applyRedirectCreatreUrlTree=function(t,e,n,r){var o=this.createSegmentGroup(t,e.root,n,r);return new Uc(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)},t.prototype.createQueryParams=function(t,e){var n={};return Vc(t,function(t,r){if("string"==typeof t&&t.startsWith(":")){var o=t.substring(1);n[r]=e[o]}else n[r]=t}),n},t.prototype.createSegmentGroup=function(t,e,n,r){var o=this,i=this.createSegments(t,e.segments,n,r),s={};return Vc(e.children,function(e,i){s[i]=o.createSegmentGroup(t,e,n,r)}),new Fc(i,s)},t.prototype.createSegments=function(t,e,n,r){var o=this;return e.map(function(e){return e.path.startsWith(":")?o.findPosParam(t,e,r):o.findOrReturn(e,n)})},t.prototype.findPosParam=function(t,e,n){var r=n[e.path.substring(1)];if(!r)throw new Error("Cannot redirect to '"+t+"'. Cannot find '"+e.path+"'.");return r},t.prototype.findOrReturn=function(t,e){var n,r,o=0;try{for(var i=c(e),s=i.next();!s.done;s=i.next()){var a=s.value;if(a.path===t.path)return e.splice(o),a;o++}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return t},t}();function Hh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};var r=(e.matcher||Pc)(n,t,e);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Bh(t){if(1===t.numberOfChildren&&t.children[xc]){var e=t.children[xc];return new Fc(t.segments.concat(e.segments),e.children)}return t}function Wh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Gh(t){return t.outlet||xc}var Yh=function(){return function(t){this.path=t,this.route=this.path[this.path.length-1]}}(),qh=function(){return function(t,e){this.component=t,this.route=e}}();function Zh(t,e,n){var r=function(t){if(!t)return null;for(var e=t.parent;e;e=e.parent){var n=e.routeConfig;if(n&&n._loadedConfig)return n._loadedConfig}return null}(e);return(r?r.module.injector:n).get(t)}function $h(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=ch(e);return t.children.forEach(function(t){!function(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=t.value,s=e?e.value:null,a=n?n.getContext(t.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){var l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!Bc(t.url,e.url);case"pathParamsOrQueryParamsChange":return!Bc(t.url,e.url)||!Nc(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!bh(t,e)||!Nc(t.queryParams,e.queryParams);case"paramsChange":default:return!bh(t,e)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Yh(r)):(i.data=s.data,i._resolvedData=s._resolvedData),$h(t,e,i.component?a?a.children:null:n,r,o),l&&o.canDeactivateChecks.push(new qh(a&&a.outlet&&a.outlet.component||null,s))}else s&&Qh(e,a,o),o.canActivateChecks.push(new Yh(r)),$h(t,null,i.component?a?a.children:null:n,r,o)}(t,i[t.value.outlet],n,r.concat([t.value]),o),delete i[t.value.outlet]}),Vc(i,function(t,e){return Qh(t,n.getContext(e),o)}),o}function Qh(t,e,n){var r=ch(t),o=t.value;Vc(r,function(t,r){Qh(t,o.component?e?e.children.getContext(r):null:e,n)}),n.canDeactivateChecks.push(new qh(o.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,o))}var Xh=Symbol("INITIAL_VALUE");function Kh(){return Vl(function(t){return(function(){for(var t=[],e=0;e0?jc(n).parameters:{};o=new gh(n,l,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,cp(t),r,t.component,t,ip(e),sp(e)+n.length,hp(t))}else{var u=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new rp;return{consumedSegments:[],lastChild:0,parameters:{}}}var r=(e.matcher||Pc)(n,t,e);if(!r)throw new rp;var o={};Vc(r.posParams,function(t,e){o[e]=t.path});var s=r.consumed.length>0?i({},o,r.consumed[r.consumed.length-1].parameters):o;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:s}}(e,t,n);s=u.consumedSegments,a=n.slice(u.lastChild),o=new gh(s,u.parameters,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,cp(t),r,t.component,t,ip(e),sp(e)+s.length,hp(t))}var c=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),h=ap(e,s,a,c,this.relativeLinkResolution),p=h.segmentGroup,f=h.slicedSegments;if(0===f.length&&p.hasChildren()){var d=this.processChildren(c,p);return[new uh(o,d)]}if(0===c.length&&0===f.length)return[new uh(o,[])];var g=this.processSegment(c,p,f,xc);return[new uh(o,g)]},t}();function ip(t){for(var e=t;e._sourceSegment;)e=e._sourceSegment;return e}function sp(t){for(var e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function ap(t,e,n,r,o){if(n.length>0&&function(t,e,n){return r.some(function(n){return lp(t,e,n)&&up(n)!==xc})}(t,n)){var s=new Fc(e,function(t,e,n,r){var o,i,s={};s[xc]=r,r._sourceSegment=t,r._segmentIndexShift=e.length;try{for(var a=c(n),l=a.next();!l.done;l=a.next()){var u=l.value;if(""===u.path&&up(u)!==xc){var h=new Fc([],{});h._sourceSegment=t,h._segmentIndexShift=e.length,s[up(u)]=h}}}catch(p){o={error:p}}finally{try{l&&!l.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return s}(t,e,r,new Fc(n,t.children)));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return r.some(function(n){return lp(t,e,n)})}(t,n)){var a=new Fc(t.segments,function(t,e,n,r,o,s){var a,l,u={};try{for(var h=c(r),p=h.next();!p.done;p=h.next()){var f=p.value;if(lp(t,n,f)&&!o[up(f)]){var d=new Fc([],{});d._sourceSegment=t,d._segmentIndexShift="legacy"===s?t.segments.length:e.length,u[up(f)]=d}}}catch(g){a={error:g}}finally{try{p&&!p.done&&(l=h.return)&&l.call(h)}finally{if(a)throw a.error}}return i({},o,u)}(t,e,n,r,t.children,o));return a._sourceSegment=t,a._segmentIndexShift=e.length,{segmentGroup:a,slicedSegments:n}}var l=new Fc(t.segments,t.children);return l._sourceSegment=t,l._segmentIndexShift=e.length,{segmentGroup:l,slicedSegments:n}}function lp(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function up(t){return t.outlet||xc}function cp(t){return t.data||{}}function hp(t){return t.resolve||{}}function pp(t,e,n,r){var o=Zh(t,e,r);return Lc(o.resolve?o.resolve(e,n):o(e,n))}function fp(t){return function(e){return e.pipe(Vl(function(e){var n=t(e);return n?nt(n).pipe(K(function(){return e})):nt([e])}))}}var dp=function(){return function(){}}(),gp=function(){function t(){}return t.prototype.shouldDetach=function(t){return!1},t.prototype.store=function(t,e){},t.prototype.shouldAttach=function(t){return!1},t.prototype.retrieve=function(t){return null},t.prototype.shouldReuseRoute=function(t,e){return t.routeConfig===e.routeConfig},t}(),vp=new Ut("ROUTES"),yp=function(){function t(t,e,n,r){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=r}return t.prototype.load=function(t,e){var n=this;return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(K(function(r){n.onLoadEndListener&&n.onLoadEndListener(e);var o=r.create(t);return new Tc(Dc(o.injector.get(vp)).map(Mc),o)}))},t.prototype.loadModuleFactory=function(t){var e=this;return"string"==typeof t?nt(this.loader.load(t)):Lc(t()).pipe(rt(function(t){return t instanceof cn?nl(t):nt(e.compiler.compileModuleAsync(t))}))},t}(),mp=function(){return function(){}}(),_p=function(){function t(){}return t.prototype.shouldProcessUrl=function(t){return!0},t.prototype.extract=function(t){return t},t.prototype.merge=function(t,e){return t},t}();function bp(t){throw t}function wp(t,e,n){return e.parse("/")}function Cp(t,e){return nl(null)}var xp=function(){function t(t,e,n,r,o,i,s,a){var l=this;this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=r,this.config=a,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new V,this.errorHandler=bp,this.malformedUriErrorHandler=wp,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Cp,afterPreactivation:Cp},this.urlHandlingStrategy=new _p,this.routeReuseStrategy=new gp,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=o.get(un),this.console=o.get(Bo);var u=o.get(si);this.isNgZoneEnabled=u instanceof si,this.resetConfig(a),this.currentUrlTree=new Uc(new Fc([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new yp(i,s,function(t){return l.triggerEvent(new gc(t))},function(t){return l.triggerEvent(new vc(t))}),this.routerState=ph(this.currentUrlTree,this.rootComponentType),this.transitions=new rl({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return t.prototype.setupNavigations=function(t){var e=this,n=this.events;return t.pipe(hl(function(t){return 0!==t.id}),K(function(t){return i({},t,{extractedUrl:e.urlHandlingStrategy.extract(t.rawUrl)})}),Vl(function(t){var r,o,s,a,l=!1,u=!1;return nl(t).pipe(_l(function(t){e.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:e.lastSuccessfulNavigation?i({},e.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Vl(function(t){var r,o,s,a,l=!e.navigated||t.extractedUrl.toString()!==e.browserUrlTree.toString();if(("reload"===e.onSameUrlNavigation||l)&&e.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return nl(t).pipe(Vl(function(t){var r=e.transitions.getValue();return n.next(new sc(t.id,e.serializeUrl(t.extractedUrl),t.source,t.restoredState)),r!==e.transitions.getValue()?Ja:[t]}),Vl(function(t){return Promise.resolve(t)}),(r=e.ngModule.injector,o=e.configLoader,s=e.urlSerializer,a=e.config,function(t){return t.pipe(Vl(function(t){return function(e,n,r,o,i){return new Fh(e,n,r,t.extractedUrl,i).apply()}(r,o,s,0,a).pipe(K(function(e){return i({},t,{urlAfterRedirects:e})}))}))}),_l(function(t){e.currentNavigation=i({},e.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,n,r,o,s){return function(r){return r.pipe(rt(function(r){return function(t,e,n,r,o,i){return void 0===o&&(o="emptyOnly"),void 0===i&&(i="legacy"),new op(t,e,n,r,o,i).recognize()}(t,n,r.urlAfterRedirects,(a=r.urlAfterRedirects,e.serializeUrl(a)),o,s).pipe(K(function(t){return i({},r,{targetSnapshot:t})}));var a}))}}(e.rootComponentType,e.config,0,e.paramsInheritanceStrategy,e.relativeLinkResolution),_l(function(t){"eager"===e.urlUpdateStrategy&&(t.extras.skipLocationChange||e.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),e.browserUrlTree=t.urlAfterRedirects)}),_l(function(t){var r=new cc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);n.next(r)}));if(l&&e.rawUrlTree&&e.urlHandlingStrategy.shouldProcessUrl(e.rawUrlTree)){var u=t.extractedUrl,c=t.source,h=t.restoredState,p=t.extras,f=new sc(t.id,e.serializeUrl(u),c,h);n.next(f);var d=ph(u,e.rootComponentType).snapshot;return nl(i({},t,{targetSnapshot:d,urlAfterRedirects:u,extras:i({},p,{skipLocationChange:!1,replaceUrl:!1})}))}return e.rawUrlTree=t.rawUrl,e.browserUrlTree=t.urlAfterRedirects,t.resolve(null),Ja}),fp(function(t){var n=t.extras;return e.hooks.beforePreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),_l(function(t){var n=new hc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),K(function(t){return i({},t,{guards:(n=t.targetSnapshot,r=t.currentSnapshot,o=e.rootContexts,s=n._root,$h(s,r?r._root:null,o,[s.value]))});var n,r,o,s}),function(t,e){return function(n){return n.pipe(rt(function(n){var r=n.targetSnapshot,o=n.currentSnapshot,s=n.guards,a=s.canActivateChecks,l=s.canDeactivateChecks;return 0===l.length&&0===a.length?nl(i({},n,{guardsResult:!0})):function(t,e,n,r){return nt(l).pipe(rt(function(t){return function(t,e,n,r,o){var i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?nl(i.map(function(i){var s,a=Zh(i,e,o);if(function(t){return t&&Nh(t.canDeactivate)}(a))s=Lc(a.canDeactivate(t,e,n,r));else{if(!Nh(a))throw new Error("Invalid CanDeactivate guard");s=Lc(a(t,e,n,r))}return s.pipe(Nl())})).pipe(Kh()):nl(!0)}(t.component,t.route,n,e,r)}),Nl(function(t){return!0!==t},!0))}(0,r,o,t).pipe(rt(function(n){return n&&"boolean"==typeof n?function(t,e,n,r){return nt(a).pipe(Gl(function(e){return nt([tp(e.route.parent,r),Jh(e.route,r),np(t,e.path,n),ep(t,e.route,n)]).pipe(cl(),Nl(function(t){return!0!==t},!0))}),Nl(function(t){return!0!==t},!0))}(r,0,t,e):nl(n)}),K(function(t){return i({},n,{guardsResult:t})}))}))}}(e.ngModule.injector,function(t){return e.triggerEvent(t)}),_l(function(t){if(Dh(t.guardsResult)){var n=kc('Redirecting to "'+e.serializeUrl(t.guardsResult)+'"');throw n.url=t.guardsResult,n}}),_l(function(t){var n=new pc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);e.triggerEvent(n)}),hl(function(t){if(!t.guardsResult){e.resetUrlToCurrentUrlTree();var r=new lc(t.id,e.serializeUrl(t.extractedUrl),"");return n.next(r),t.resolve(!1),!1}return!0}),fp(function(t){if(t.guards.canActivateChecks.length)return nl(t).pipe(_l(function(t){var n=new fc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),(n=e.paramsInheritanceStrategy,r=e.ngModule.injector,function(t){return t.pipe(rt(function(t){var e=t.targetSnapshot,o=t.guards.canActivateChecks;return o.length?nt(o).pipe(Gl(function(t){return function(t,n,r,o){return function(t,e,n,r){var o=Object.keys(t);if(0===o.length)return nl({});if(1===o.length){var i=o[0];return pp(t[i],e,n,r).pipe(K(function(t){var e;return(e={})[i]=t,e}))}var s={};return nt(o).pipe(rt(function(o){return pp(t[o],e,n,r).pipe(K(function(t){return s[o]=t,t}))})).pipe(kl(),K(function(){return s}))}(t._resolve,t,e,o).pipe(K(function(e){return t._resolvedData=e,t.data=i({},t.data,dh(t,r).resolve),null}))}(t.route,0,n,r)}),function(t,e){return arguments.length>=2?function(e){return T(Hl(t,void 0),vl(1),Sl(void 0))(e)}:function(e){return T(Hl(function(e,n,r){return t(e)}),vl(1))(e)}}(function(t,e){return t}),K(function(e){return t})):nl(t)}))}),_l(function(t){var n=new dc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}));var n,r}),fp(function(t){var n=t.extras;return e.hooks.afterPreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),K(function(t){var n,r,o,s=(o=function t(e,n,r){if(r&&e.shouldReuseRoute(n.value,r.value.snapshot)){(l=r.value)._futureSnapshot=n.value;var o=function(e,n,r){return n.children.map(function(n){var o,i;try{for(var s=c(r.children),a=s.next();!a.done;a=s.next()){var l=a.value;if(e.shouldReuseRoute(l.value.snapshot,n.value))return t(e,n,l)}}catch(u){o={error:u}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(o)throw o.error}}return t(e,n)})}(e,n,r);return new uh(l,o)}var i=e.retrieve(n.value);if(i){var s=i.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(var r=0;ra;){if(l-=a,!(s=s.parent))throw new Error("Invalid number of '../'");a=s.segments.length}return new Sh(s,!1,a-l)}()}(i,0,t),a=s.processChildren?kh(s.segmentGroup,s.index,i.commands):Oh(s.segmentGroup,s.index,i.commands);return Ch(s.segmentGroup,a,e,r,o)}(u,this.currentUrlTree,t,h,c)},t.prototype.navigateByUrl=function(t,e){void 0===e&&(e={skipLocationChange:!1}),ge()&&this.isNgZoneEnabled&&!si.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");var n=Dh(t)?t:this.parseUrl(t),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,e)},t.prototype.navigate=function(t,e){return void 0===e&&(e={skipLocationChange:!1}),function(t){for(var e=0;et.name.length?e:t},{id:"",name:""}),this.filter())},t.prototype.ngAfterViewInit=function(){this.resize()},t.prototype.trackByFn=function(t,e){return e?"string"==typeof e?e:e.id:t},t.prototype.resize=function(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)},t.prototype.filter=function(){var t=this;if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(function(e){return("string"==typeof e?e:e.name).toLowerCase().indexOf(t.search.toLowerCase())>=0})),this.options&&this.options.hide_active&&this.selected)){var e="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(function(t){return("string"==typeof t?t:t.id).indexOf(e)<0})}},t.prototype.toggleShow=function(){var t=this;this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(function(){t.input&&t.input.nativeElement.focus()},100)},t.prototype.updateScroll=function(){var t=this;if(!this.viewport||!this.scroll_el)return setTimeout(function(){return t.updateScroll()},50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;var e="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)===e}))},t.prototype.select=function(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)},t.prototype.change=function(t){var e=this,n="string"==typeof this.selected?this.selected:this.selected.id,r=this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)==n})+t;r>=0&&r1?Array.prototype.slice.call(arguments):t)},r,n)})}var af=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r.pending=!1,r}return o(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,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(r,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,r=void 0;try{this.work(t)}catch(o){n=!0,r=!!o&&o||new Error(o)}if(n)return this.unsubscribe(),r},e.prototype._unsubscribe=function(){var t=this.id,e=this.scheduler,n=e.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,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 o(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(m)),lf=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(e,t),e.prototype.requestAsyncId=function(e,n,r){return void 0===r&&(r=0),null!==r&&r>0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame(function(){return e.flush(null)})))},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(cancelAnimationFrame(n),e.scheduled=void 0)},e}(af),uf=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}(),cf=function(t){function e(n,r){void 0===r&&(r=uf.now);var o=t.call(this,n,function(){return e.delegate&&e.delegate!==o?e.delegate.now():r()})||this;return o.actions=[],o.active=!1,o.scheduled=void 0,o}return o(e,t),e.prototype.schedule=function(n,r,o){return void 0===r&&(r=0),e.delegate&&e.delegate!==this?e.delegate.schedule(n,r,o):t.prototype.schedule.call(this,n,r,o)},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}(uf),hf=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=(o=e.flush.bind(e,null),i=pf++,ff[i]=o,Promise.resolve().then(function(){return function(t){var e=ff[t];e&&e()}(i)}),i)));var o,i},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(delete ff[n],e.scheduled=void 0)},e}(af),gf=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r=0}function Cf(t){var e=t.index,n=t.period,r=t.subscriber;if(r.next(e),!r.closed){if(-1===n)return r.complete();t.index=e+1,this.schedule(t,n)}}function xf(t,e){return void 0===e&&(e=mf),n=function(){return function(t,e,n){void 0===t&&(t=0);var r=-1;return wf(e)?r=Number(e)<1?1:Number(e):z(e)&&(n=e),z(n)||(n=mf),new R(function(e){var o=wf(t)?t:+t-n.now();return n.schedule(Cf,o,{index:0,period:r,subscriber:e})})}(t,e)},function(t){return t.lift(new _f(n))};var n}function Sf(t){return function(e){return e.lift(new Of(t))}}var Ef,Of=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new kf(t),r=Q(n,this.notifier);return r&&!n.seenValue?(n.add(r),e.subscribe(n)):n},t}(),kf=function(t){function e(e){var n=t.call(this,e)||this;return n.seenValue=!1,n}return o(e,t),e.prototype.notifyNext=function(t,e,n,r,o){this.seenValue=!0,this.complete()},e.prototype.notifyComplete=function(){},e}(X),Pf=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new Tf(t))},t}(),Tf=function(t){function e(e){var n=t.call(this,e)||this;return n.hasPrev=!1,n}return o(e,t),e.prototype._next=function(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t},e}(E),If=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(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,r){return void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,r):e.flush(this)},e}(af),Rf=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e}(cf))(If);function Af(t,e){return new R(e?function(n){return e.schedule(Mf,0,{error:t,subscriber:n})}:function(e){return e.error(t)})}function Mf(t){t.subscriber.error(t.error)}Ef||(Ef={});var Nf,Df=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 nl(this.value);case"E":return Af(this.error);case"C":return tl()}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}(),jf=function(t){function e(e,n,r){void 0===r&&(r=0);var o=t.call(this,e)||this;return o.scheduler=n,o.delay=r,o}return o(e,t),e.dispatch=function(t){t.notification.observe(t.destination),this.unsubscribe()},e.prototype.scheduleMessage=function(t){this.destination.add(this.scheduler.schedule(e.dispatch,this.delay,new Vf(t,this.destination)))},e.prototype._next=function(t){this.scheduleMessage(Df.createNext(t))},e.prototype._error=function(t){this.scheduleMessage(Df.createError(t)),this.unsubscribe()},e.prototype._complete=function(){this.scheduleMessage(Df.createComplete()),this.unsubscribe()},e}(E),Vf=function(){return function(t,e){this.notification=t,this.destination=e}}(),Lf=function(t){function e(e,n,r){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=Number.POSITIVE_INFINITY);var o=t.call(this)||this;return o.scheduler=r,o._events=[],o._infiniteTimeWindow=!1,o._bufferSize=e<1?1:e,o._windowTime=n<1?1:n,n===Number.POSITIVE_INFINITY?(o._infiniteTimeWindow=!0,o.next=o.nextInfiniteTimeWindow):o.next=o.nextTimeWindow,o}return o(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 zf(this._getNow(),e)),this._trimBufferThenGetEvents(),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,n=this._infiniteTimeWindow,r=n?this._events:this._trimBufferThenGetEvents(),o=this.scheduler,i=r.length;if(this.closed)throw new N;if(this.isStopped||this.hasError?e=m.EMPTY:(this.observers.push(t),e=new D(this,t)),o&&t.add(t=new jf(t,o)),n)for(var s=0;se&&(i=Math.max(i,o-e)),i>0&&r.splice(0,i),r},e}(V),zf=function(){return function(t,e){this.time=t,this.value=e}}();try{Nf="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Em){Nf=!1}var Uf,Ff=function(){function t(t){this._platformId=t,this.isBrowser=this._platformId?Qa(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&&!Nf)&&"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.ngInjectableDef=Ot({factory:function(){return new t(Lt(Fo,8))},token:t,providedIn:"root"}),t}(),Hf=function(){return function(){}}(),Bf=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();function Wf(){if("object"!=typeof document||!document)return Bf.NORMAL;if(!Uf){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"),r=n.style;r.width="2px",r.height="1px",t.appendChild(n),document.body.appendChild(t),Uf=Bf.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Uf=0===t.scrollLeft?Bf.NEGATED:Bf.INVERTED),t.parentNode.removeChild(t)}return Uf}var Gf=function(t){function e(e){var n=t.call(this)||this;return n._data=e,n}return o(e,t),e.prototype.connect=function(){return this._data instanceof R?this._data:nl(this._data)},e.prototype.disconnect=function(){},e}(function(){return function(){}}()),Yf=new Ut("VIRTUAL_SCROLL_STRATEGY"),qf=function(){function t(t,e,n){this._scrolledIndexChange=new V,this.scrolledIndexChange=this._scrolledIndexChange.pipe(function(t){return t.lift(new vf(void 0,void 0))}),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(n0&&(r.end=Math.min(i,r.end+u),r.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(r),this._viewport.setRenderedContentOffset(this._itemSize*r.start),this._scrolledIndexChange.next(Math.floor(e))}},t}();function Zf(t){return t._scrollStrategy}var $f=function(){function t(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new qf(this.itemSize,this.minBufferPx,this.maxBufferPx)}return Object.defineProperty(t.prototype,"itemSize",{get:function(){return this._itemSize},set:function(t){this._itemSize=nf(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minBufferPx",{get:function(){return this._minBufferPx},set:function(t){this._minBufferPx=nf(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxBufferPx",{get:function(){return this._maxBufferPx},set:function(t){this._maxBufferPx=nf(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)},t}(),Qf=function(){function t(t,e){this._ngZone=t,this._platform=e,this._scrolled=new V,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}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 R(function(n){e._globalSubscription||e._addGlobalListener();var r=t>0?e._scrolled.pipe(xf(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){r.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):nl()},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(hl(function(t){return!t||n.indexOf(t)>-1}))},t.prototype.getAncestorScrollContainers=function(t){var e=this,n=[];return this.scrollContainers.forEach(function(r,o){e._scrollableContainsElement(o,t)&&n.push(o)}),n},t.prototype._scrollableContainsElement=function(t,e){var n=e.nativeElement,r=t.getElementRef().nativeElement;do{if(n==r)return!0}while(n=n.parentElement);return!1},t.prototype._addGlobalListener=function(){var t=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){return sf(window.document,"scroll").subscribe(function(){return t._scrolled.next()})})},t.prototype._removeGlobalListener=function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(si),Lt(Ff))},token:t,providedIn:"root"}),t}(),Xf=function(){function t(t,e,n,r){var o=this;this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=r,this._destroyed=new V,this._elementScrolled=new R(function(t){return o.ngZone.runOutsideAngular(function(){return sf(o.elementRef.nativeElement,"scroll").pipe(Sf(o._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;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Wf()!=Bf.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Wf()==Bf.INVERTED?t.left=t.right:Wf()==Bf.NEGATED&&(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"==typeof document&&"scrollBehavior"in document.documentElement.style?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&&Wf()==Bf.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Wf()==Bf.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft},t}(),Kf="undefined"!=typeof requestAnimationFrame?hf:gf,Jf=function(t){function e(e,n,r,o,i,s){var a=t.call(this,e,s,r,i)||this;if(a.elementRef=e,a._changeDetectorRef=n,a._scrollStrategy=o,a._detachedSubject=new V,a._renderedRangeSubject=new V,a.orientation="vertical",a.scrolledIndexChange=new R(function(t){return a._scrollStrategy.scrolledIndexChange.subscribe(function(e){return Promise.resolve().then(function(){return a.ngZone.run(function(){return t.next(e)})})})}),a.renderedRangeStream=a._renderedRangeSubject.asObservable(),a._totalContentSizeTransform="",a._totalContentSize=0,a._renderedRange={start:0,end:0},a._dataLength=0,a._viewportSize=0,a._renderedContentOffset=0,a._renderedContentOffsetNeedsRewrite=!1,a._isChangeDetectionPending=!1,a._runAfterChangeDetection=[],!o)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.');return a}return o(e,t),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(Fl(null),xf(0,Kf)).subscribe(function(){return e._scrollStrategy.onContentScrolled()}),e._markChangeDetectionNeeded()})})},e.prototype.ngOnDestroy=function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),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(Sf(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._totalContentSizeTransform="scale"+("horizontal"==this.orientation?"X":"Y")+"("+this._totalContentSize+")",this._markChangeDetectionNeeded())},e.prototype.setRenderedRange=function(t){var e,n,r=this;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(function(){return r._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 r="horizontal"==this.orientation,o=r?"X":"Y",i="translate"+o+"("+Number((r&&this.dir&&"rtl"==this.dir.value?-1:1)*t)+"px)";this._renderedContentOffset=t,"to-end"===e&&(i+=" translate"+o+"(-100%)",this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,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 t.prototype.measureScrollOffset.call(this,e||("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=this;this._isChangeDetectionPending=!1,this.ngZone.run(function(){return t._changeDetectorRef.markForCheck()}),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;var e=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(var n=0,r=e;n=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");for(var n=t.start-this._renderedRange.start,r=0,o=t.end-t.start;o--;)for(var i=this._viewContainerRef.get(o+n),s=i?i.rootNodes.length:0;s--;)r+=td(e,i.rootNodes[s]);return r},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(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(var t=0,e=this._templateCache;t0?this._change.pipe(xf(t)):this._change},t.prototype._updateViewportSize=function(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Ff),Lt(si))},token:t,providedIn:"root"}),t}();function od(){throw Error("Host already has a portal attached")}var id=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()&&od(),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}(),sd=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.component=e,i.viewContainerRef=n,i.injector=r,i.componentFactoryResolver=o,i}return o(e,t),e}(id),ad=function(t){function e(e,n,r){var o=t.call(this)||this;return o.templateRef=e,o.viewContainerRef=n,o.context=r,o}return o(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}(id),ld=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.outletElement=e,i._componentFactoryResolver=n,i._appRef=r,i._defaultInjector=o,i}return o(e,t),e.prototype.attachComponentPortal=function(t){var e,n=this,r=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);return t.viewContainerRef?(e=t.viewContainerRef.createComponent(r,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(function(){return e.destroy()})):(e=r.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,r=n.createEmbeddedView(t.templateRef,t.context);return r.detectChanges(),r.rootNodes.forEach(function(t){return e.outletElement.appendChild(t)}),this.setDisposeFn(function(){var t=n.indexOf(r);-1!==t&&n.remove(t)}),r},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}(function(){function t(){this._isDisposed=!1}return t.prototype.hasAttached=function(){return!!this._attachedPortal},t.prototype.attach=function(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&od(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof sd?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof ad?(this._attachedPortal=t,this.attachTemplatePortal(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}()),ud=function(){return function(){}}(),cd=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=of(-this._previousScrollPosition.left),t.style.top=of(-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=t.style,n=this._document.body.style,r=e.scrollBehavior||"",o=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=r,n.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}();function hd(){return Error("Scroll strategy has already been attached.")}var pd=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return t.prototype.attach=function(t){if(this._overlayRef)throw hd();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}(),fd=function(){function t(){}return t.prototype.enable=function(){},t.prototype.disable=function(){},t.prototype.attach=function(){},t}();function dd(t,e){return e.some(function(e){return t.bottome.bottom||t.righte.right})}function gd(t,e){return e.some(function(e){return t.tope.bottom||t.lefte.right})}var vd=function(){function t(t,e,n,r){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=r,this._scrollSubscription=null}return t.prototype.attach=function(t){if(this._overlayRef)throw hd();this._overlayRef=t},t.prototype.enable=function(){var t=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(t._overlayRef.updatePosition(),t._config&&t._config.autoClose){var e=t._overlayRef.overlayElement.getBoundingClientRect(),n=t._viewportRuler.getViewportSize(),r=n.width,o=n.height;dd(e,[{width:r,height:o,bottom:o,right:r,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}(),yd=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=function(){return new fd},this.close=function(t){return new pd(o._scrollDispatcher,o._ngZone,o._viewportRuler,t)},this.block=function(){return new cd(o._viewportRuler,o._document)},this.reposition=function(t){return new vd(o._scrollDispatcher,o._viewportRuler,o._ngZone,t)},this._document=r}return t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Qf),Lt(rd),Lt(si),Lt(qa))},token:t,providedIn:"root"}),t}(),md=function(){return function(t){var e=this;this.scrollStrategy=new fd,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(function(n){void 0!==t[n]&&(e[n]=t[n])})}}(),_d=function(){return function(t,e,n,r,o){this.offsetX=n,this.offsetY=r,this.panelClass=o,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}(),bd=function(){return function(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}();function wd(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "top", "bottom" or "center".')}function Cd(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "start", "end" or "center".')}var xd=function(){function t(t){var e=this;this._attachedOverlays=[],this._keydownListener=function(t){for(var n=e._attachedOverlays,r=n.length-1;r>-1;r--)if(n[r]._keydownEventSubscriptions>0){n[r]._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.ngInjectableDef=Ot({factory:function(){return new t(Lt(qa))},token:t,providedIn:"root"}),t}(),Sd=function(){function t(t){this._document=t}return t.prototype.ngOnDestroy=function(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)},t.prototype.getContainerElement=function(){return this._containerElement||this._createContainer(),this._containerElement},t.prototype._createContainer=function(){var t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(qa))},token:t,providedIn:"root"}),t}(),Ed=function(){function t(t,e,n,r,o,i,s,a){var l=this;this._portalOutlet=t,this._host=e,this._pane=n,this._config=r,this._ngZone=o,this._keyboardDispatcher=i,this._document=s,this._location=a,this._backdropElement=null,this._backdropClick=new V,this._attachments=new V,this._detachments=new V,this._locationChanges=m.EMPTY,this._keydownEventsObservable=new R(function(t){var e=l._keydownEvents.subscribe(t);return l._keydownEventSubscriptions++,function(){e.unsubscribe(),l._keydownEventSubscriptions--}}),this._keydownEvents=new V,this._keydownEventSubscriptions=0,r.scrollStrategy&&(this._scrollStrategy=r.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=r.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._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Rl(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=i({},this._config,t),this._updateElementSize()},t.prototype.setDirection=function(t){this._config=i({},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(){var t=this._pane.style;t.width=of(this._config.width),t.height=of(this._config.height),t.minWidth=of(this._config.minWidth),t.minHeight=of(this._config.minHeight),t.maxWidth=of(this._config.maxWidth),t.maxHeight=of(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",function(e){return t._backdropClick.next(e)}),"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,r=function(){e&&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",r)}),e.style.pointerEvents="none",n=this._ngZone.runOutsideAngular(function(){return setTimeout(r,500)})}},t.prototype._toggleClasses=function(t,e,n){var r=t.classList;rf(e).forEach(function(t){n?r.add(t):r.remove(t)})},t.prototype._detachContentWhenStable=function(){var t=this;this._ngZone.runOutsideAngular(function(){var e=t._ngZone.onStable.asObservable().pipe(Sf(lt(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}(),Od=function(){function t(t,e,n,r,o){this._viewportRuler=e,this._document=n,this._platform=r,this._overlayContainer=o,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 V,this._resizeSubscription=m.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(){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();for(var t,e=this._originRect,n=this._overlayRect,r=this._viewportRect,o=[],i=0,s=this._preferredPositions;ip&&(p=v,h=g)}return this._isPushed=!1,void this._applyPosition(h.position,h.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(t.position,t.originPoint);this._applyPosition(t.position,t.originPoint)}},t.prototype.detach=function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()},t.prototype.dispose=function(){this._isDisposed||(this._boundingBox&&kd(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 r=this._isRtl()?t.right:t.left,o=this._isRtl()?t.left:t.right;n="start"==e.originX?r:o}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 r;return r="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+r,y:t.y+("center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}},t.prototype._getOverlayFit=function(t,e,n,r){var o=t.x,i=t.y,s=this._getOffset(r,"x"),a=this._getOffset(r,"y");s&&(o+=s),a&&(i+=a);var l=0-i,u=i+e.height-n.height,c=this._subtractOverflows(e.width,0-o,o+e.width-n.width),h=this._subtractOverflows(e.height,l,u),p=c*h;return{visibleArea:p,isCompletelyWithinViewport:e.width*e.height===p,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:c==e.width}},t.prototype._canFitWithFlexibleDimensions=function(t,e,n){if(this._hasFlexibleDimensions){var r=n.bottom-e.y,o=n.right-e.x,i=this._overlayRef.getConfig().minHeight,s=this._overlayRef.getConfig().minWidth;return(t.fitsInViewportVertically||null!=i&&i<=r)&&(t.fitsInViewportHorizontally||null!=s&&s<=o)}},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 r,o,i=this._viewportRect,s=Math.max(t.x+e.width-i.right,0),a=Math.max(t.y+e.height-i.bottom,0),l=Math.max(i.top-n.top-t.y,0),u=Math.max(i.left-n.left-t.x,0);return this._previousPushAmount={x:r=e.width<=i.width?u||-s:t.xh&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-h/2)}if("end"===e.overlayX&&!u||"start"===e.overlayX&&u)a=l.right-t.x+this._viewportMargin,i=t.x-l.left;else if("start"===e.overlayX&&!u||"end"===e.overlayX&&u)s=t.x,i=l.right-t.x;else{c=Math.min(l.right-t.x+l.left,t.x);var p=this._lastBoundingBoxSize.width;s=t.x-c,(i=2*c)>p&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.x-p/2)}return{top:r,left:s,bottom:o,right:a,width:i,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 r={};if(this._hasExactPosition())r.top=r.left="0",r.bottom=r.right="",r.width=r.height="100%";else{var o=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;r.height=of(n.height),r.top=of(n.top),r.bottom=of(n.bottom),r.width=of(n.width),r.left=of(n.left),r.right=of(n.right),r.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",r.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",o&&(r.maxHeight=of(o)),i&&(r.maxWidth=of(i))}this._lastBoundingBoxSize=n,kd(this._boundingBox.style,r)},t.prototype._resetBoundingBoxStyles=function(){kd(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})},t.prototype._resetOverlayElementStyles=function(){kd(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})},t.prototype._setOverlayElementStyles=function(t,e){var n={};if(this._hasExactPosition()){var r=this._viewportRuler.getViewportScrollPosition();kd(n,this._getExactOverlayY(e,t,r)),kd(n,this._getExactOverlayX(e,t,r))}else n.position="static";var o="",i=this._getOffset(e,"x"),s=this._getOffset(e,"y");i&&(o+="translateX("+i+"px) "),s&&(o+="translateY("+s+"px)"),n.transform=o.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),kd(this._pane.style,n)},t.prototype._getExactOverlayY=function(t,e,n){var r={top:null,bottom:null},o=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n));var i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return o.y-=i,"bottom"===t.overlayY?r.bottom=this._document.documentElement.clientHeight-(o.y+this._overlayRect.height)+"px":r.top=of(o.y),r},t.prototype._getExactOverlayX=function(t,e,n){var r={left:null,right:null},o=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n)),"right"==(this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=this._document.documentElement.clientWidth-(o.x+this._overlayRect.width)+"px":r.left=of(o.x),r},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:gd(t,n),isOriginOutsideView:dd(t,n),isOverlayClipped:gd(e,n),isOverlayOutsideView:dd(e,n)}},t.prototype._subtractOverflows=function(t){for(var e=[],n=1;n0?p(this.events,[t]):[t],this.displayed_events=this.events.slice(-8),t.close=function(){return e.remove(t.id)},0!==t.delay&&setTimeout(function(){return e.remove(t.id)},t.delay||this.delay||5e3))},t.prototype.remove=function(t){this.events=this.events.filter(function(e){return e.id!==t}),this.displayed_events=this.events.slice(-8)},t.prototype.action=function(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)},t.prototype.grab=function(t,e){var n=this,r=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=r,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",function(e){return n.pull(t,e)}),touchmove:this.renderer.listen("window","touchmove",function(e){return n.pull(t,e)}),mouseup:this.renderer.listen("window","mouseup",function(e){return n.release(t)}),touchend:this.renderer.listen("window","touchend",function(e){return n.release(t)})}},t.prototype.pull=function(t,e){var n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)},t.prototype.release=function(t){for(var e in t.offset>128&&this.remove(t.id),t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0},t.prototype.trackByFn=function(t,e){return(t?t.id:null)||e},t}(),Hd=function(){function t(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new V,this._notify.remove=new V,this._notify.delay=new V,this.registerPreset("default",new md({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new md({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}return t.prototype.register=function(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Ud(t,this,this.injector,this.overlay,e),this._refs[t]},t.prototype.open=function(t,e,n,r){if(e.config?e.config instanceof md||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error("No content set for the overlay "+t);var o=this._refs[t],i=o.details.config instanceof md?o.details.config:this.preset(o.details.config);o.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),r&&this._refs[t].onClose.subscribe(r))},t.prototype.update=function(t,e){this._refs[t]&&this._refs[t].set(e)},t.prototype.close=function(t){this._refs[t]&&this._refs[t].close(null)},t.prototype.remove=function(t){this._refs[t]&&(this._refs[t]=null)},t.prototype.registerPreset=function(t,e){this._presets[t]=e},t.prototype.preset=function(t){return void 0===t&&(t="default"),this._presets[t]||this._presets.default},t.prototype.loadNotificationsOutlet=function(){var t=this;this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(function(){t.registerPreset("ACA_NOTIFICATIONS_OUTLET",new md({width:"0",height:"0",hasBackdrop:!1,positionStrategy:t.overlay.position().global().bottom("0").right("0"),scrollStrategy:t.overlay.scrollStrategies.noop()})),t.open("ACA_NOTIFICATIONS_OUTLET",{content:Fd,data:t._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)},t.prototype.notify=function(t,e,n,r,o){var i=null;return this._notify.add&&(i="notification-"+Math.floor(999999*Math.random()),this._notify.add.next({id:i,content:t,action:e,on_action:n,type:r,delay:o,event:function(t){return n?n(t):null}})),i},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Ad),Lt(Bt))},token:t,providedIn:"root"}),t}(),Bd=function(){function t(t,e,n,r){this.el=t,this.service=e,this.overlay=n,this.renderer=r,this.id="tooltip-"+Math.floor(9999999*Math.random()),this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new Ao,this.event=new Ao,this.close=new Ao,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}return t.prototype.ngOnInit=function(){this.updateConfig(),this.el&&this.listenForScroll()},t.prototype.ngOnDestroy=function(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()},t.prototype.ngOnChanges=function(t){var e=this;if(t.config&&this.updateConfig(),t.reposition){var n=this.overlay.scrollStrategies;this.strategy=this.reposition?n.reposition():n.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(function(){return e.open()},10):this.closeTooltip(t.show.previousValue))},t.prototype.open=function(){var t=this;this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},function(e){return t.event.emit(e)},function(e){t.show=!1,t.showChange.emit(!1),t.close.emit(e),t.clearListeners()})},t.prototype.getOverlayPosition=function(t){var e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)},t.prototype.getPositions=function(){var t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}},t.prototype.updateConfig=function(){this.service.registerPreset(this.id,new md({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))},t.prototype.listenForScroll=function(){var t=this;if(this.show)for(var e=this.el.nativeElement.parentElement;e;e=e.parentElement)this.listeners.push(this.renderer.listen(e,"scroll",function(){return t.update()}))},t.prototype.clearListeners=function(){var t,e;try{for(var n=c(this.listeners),r=n.next();!r.done;r=n.next())(0,r.value)()}catch(o){t={error:o}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)},t.prototype.update=function(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))},t.prototype.listenForHover=function(){var t=this;this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",function(e){t.show=!0,t.showChange.emit(t.show),t._leave_listener=t.renderer.listen(t.el.nativeElement,"mouseleave",function(e){t.show=!1,t.showChange.emit(t.show),t.closeTooltip(t.show)}),t.open()})},t.prototype.closeTooltip=function(t){!this.content&&this.el?function(t,e,n,r,o){if(void 0===r&&(r="debug"),window.debug){var i=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Vd()?console[r].apply(console,p(["%c["+jd+"]%c["+t+"] %c"+e],i,[n])):console[r]("["+jd+"]["+t+"] "+e,n):Vd()?console[r].apply(console,p(["%c["+jd+"]%c["+t+"] %c"+e],i)):console[r]("["+jd+"]["+t+"] "+e)}}("Tooltip","No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()},t}(),Wd=function(){function t(t,e){this.item=t,this.service=e}return t.prototype.ngOnInit=function(){var t=this;setTimeout(function(){t.text=t.item.details.data.text,t.center=t.item.details.data.center},10),setTimeout(function(){return t.service.close(t.item.ID)},1e3)},t}(),Gd=ga,Yd=function(){function t(){if(this.build=Gd(),!t.init){var e=Gd();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),Vd()?console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+jd+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"])):console[n]("[ACA][LIB] "+jd+" - "+t+" | "+e)}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),qd=new Ut("cdk-dir-doc",{providedIn:"root",factory:function(){return zt(qa)}}),Zd=function(){function t(t){if(this.value="ltr",this.change=new Ao,t){var e=(t.body?t.body.dir:null)||(t.documentElement?t.documentElement.dir:null);this.value="ltr"===e||"rtl"===e?e:"ltr"}}return t.prototype.ngOnDestroy=function(){this.change.complete()},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(qd,8))},token:t,providedIn:"root"}),t}(),$d=function(){return function(){}}(),Qd=rr({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function Xd(t){return is(0,[(t()(),Bi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function Kd(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Jd(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,Kd)),go(2,540672,null,0,Ga,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function tg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function eg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,tg)),go(2,671744,null,0,Na,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ng(t){return is(0,[(t()(),Bi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Bi(1,0,null,null,7,null,null,null,null,null,null,null)),go(2,16384,null,0,Ha,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Hi(16777216,null,null,1,null,Xd)),go(4,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,Jd)),go(6,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,eg)),go(8,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function rg(t){return is(0,[(t()(),Hi(16777216,null,null,1,null,ng)),go(1,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function og(t){return is(0,[(t()(),Bi(0,0,null,null,1,"overlay-outlet",[],null,null,null,rg,Qd)),go(1,114688,null,0,zd,[Gt],null,null)],function(t,e){t(e,1,0)},null)}var ig=Wr("overlay-outlet",zd,og,{},{},[]),sg=rr({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function ag(t){return is(0,[(t()(),Bi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),ns(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function lg(t){return is(0,[(t()(),Bi(0,0,null,null,1,"a-floating-text",[],null,null,null,ag,sg)),go(1,114688,null,0,Wd,[Ud,Hd],null,null)],function(t,e){t(e,1,0)},null)}var ug=Wr("a-floating-text",Wd,lg,{},{},[]),cg=rr({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function hg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function pg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,hg)),go(2,540672,null,0,Ga,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function fg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function dg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,fg)),go(2,671744,null,0,Na,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function gg(t){return is(0,[(t()(),Bi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function vg(t){return is(0,[(t()(),Bi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),ns(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function yg(t){return is(0,[(t()(),Bi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function mg(t){return is(0,[(t()(),Bi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Bi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),"touchstart"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),r},null,null)),(t()(),Bi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Bi(4,0,null,null,7,null,null,null,null,null,null,null)),go(5,16384,null,0,Ha,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Hi(16777216,null,null,1,null,pg)),go(7,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,dg)),go(9,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,gg)),go(11,16384,null,0,Wa,[zn,Vn,Ha],null,null),(t()(),Bi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),"touchend"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),r},null,null)),(t()(),Hi(16777216,null,null,1,null,vg)),go(14,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Hi(16777216,null,null,1,null,yg)),go(16,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function _g(t){return is(0,[(t()(),Bi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,mg)),go(2,278528,null,0,ja,[zn,Vn,In],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function bg(t){return is(0,[(t()(),Bi(0,0,null,null,1,"notification-outlet",[],null,null,null,_g,cg)),go(1,245760,null,0,Fd,[Ud,yn],null,null)],function(t,e){t(e,1,0)},null)}var wg=Wr("notification-outlet",Fd,bg,{},{},[]),Cg=function(t){function e(e,n){var r=t.call(this,e)||this;r.sources=n,r.completed=0,r.haveValues=0;var o=n.length;r.values=new Array(o);for(var i=0;it?{max:{max:t,actual:e.value}}:null}},t.required=function(t){return Ag(t.value)?{required:!0}:null},t.requiredTrue=function(t){return!0===t.value?null:{required:!0}},t.email=function(t){return Ag(t.value)?null:Mg.test(t.value)?null:{email:!0}},t.minLength=function(t){return function(e){if(Ag(e.value))return null;var n=e.value?e.value.length:0;return nt?{maxlength:{requiredLength:t,actualLength:n}}:null}},t.pattern=function(e){return e?("string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),n=new RegExp(r)):(r=e.toString(),n=e),function(t){if(Ag(t.value))return null;var e=t.value;return n.test(e)?null:{pattern:{requiredPattern:r,actualValue:e}}}):t.nullValidator;var n,r},t.nullValidator=function(t){return null},t.compose=function(t){if(!t)return null;var e=t.filter(Dg);return 0==e.length?null:function(t){return Vg(function(t,n){return e.map(function(e){return e(t)})}(t))}},t.composeAsync=function(t){if(!t)return null;var e=t.filter(Dg);return 0==e.length?null:function(t){return function t(){for(var e,n=[],r=0;r=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}(),Hg=function(){function t(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return t.prototype.ngOnInit=function(){this._control=this._injector.get(Ig),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: \n ')},t}(),Bg='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Wg='\n
\n
\n \n
\n
';function Gg(t,e){return p(e.path,[t])}function Yg(t,e){t||Zg(e,"Cannot find control with"),e.valueAccessor||Zg(e,"No value accessor for form control with"),t.validator=Ng.compose([t.validator,e.validator]),t.asyncValidator=Ng.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&&qg(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&&qg(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 qg(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Zg(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 $g(t){return null!=t?Ng.compose(t.map(Lg)):null}function Qg(t){return null!=t?Ng.composeAsync(t.map(zg)):null}var Xg=[Sg,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}(),Ug,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=qe}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=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}(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=c(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var i=o.value;if(this._compareWith(this._optionMap.get(i),t))return i}}catch(s){e={error:s}}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},t}(),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=qe}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 r=t.map(function(t){return n._getOptionId(t)});e=function(t,e){t._setSelected(r.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 r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i0||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}(ev),ov=function(t){function e(e,n,r){var o=t.call(this,Kg(n),Jg(r,n))||this;return o.controls=e,o._initObservables(),o._setUpdateStrategy(n),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return o(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,r){n._throwIfControlMissing(r),n.at(r).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,r){n.at(r)&&n.at(r).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,r){n.reset(t[r],{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 nv?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=c(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(o){t={error:o}}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}(ev),iv=function(){return Promise.resolve(null)}(),sv=function(t){function e(e,n){var r=t.call(this)||this;return r.submitted=!1,r._directives=[],r.ngSubmit=new Ao,r.form=new rv({},$g(e),Qg(n)),r}return o(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;iv.then(function(){var n=e._findContainer(t.path);t.control=n.registerControl(t.name,t.control),Yg(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;iv.then(function(){var n,r,o=e._findContainer(t.path);o&&o.removeControl(t.name),(r=(n=e._directives).indexOf(t))>-1&&n.splice(r,1)})},e.prototype.addFormGroup=function(t){var e=this;iv.then(function(){var n=e._findContainer(t.path),r=new rv({});(function(t,e){null==t&&Zg(e,"Cannot find control with"),t.validator=Ng.compose([t.validator,e.validator]),t.asyncValidator=Ng.composeAsync([t.asyncValidator,e.asyncValidator])})(r,t),n.registerControl(t.name,r),r.updateValueAndValidity({emitEvent:!1})})},e.prototype.removeFormGroup=function(t){var e=this;iv.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;iv.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,e=this._directives,this.form._syncPendingControls(),e.forEach(function(t){var e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e},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},e}(Pg),av=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 \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\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
\n \n \n
\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 "+Bg+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+Wg)},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: \n Example 2: ')},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 "+Bg+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+Wg)},t.ngFormWarning=function(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")},t}(),lv=new Ut("NgFormSelectorWarning"),uv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(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 Gg(this.name,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 $g(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Qg(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){},e}(Pg),cv=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}var n;return o(e,t),n=e,e.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof sv||av.modelGroupParentException()},e}(uv),hv=function(){return Promise.resolve(null)}(),pv=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.control=new nv,i._registered=!1,i.update=new Ao,i._parent=e,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Zg(t,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,o=void 0;return e.forEach(function(e){var i;e.constructor===Og?n=e:(i=e,Xg.some(function(t){return i.constructor===t})?(r&&Zg(t,"More than one built-in value accessor matches form control with"),r=e):(o&&Zg(t,"More than one custom value accessor matches form control with"),o=e))}),o||r||n||(Zg(t,"No valid value accessor for form control with"),null)}(i,o),i}return o(e,t),e.prototype.ngOnChanges=function(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;var n=t.model;return!!n.isFirstChange()||!qe(e,n.currentValue)}(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?Gg(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 $g(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Qg(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(){Yg(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 cv)&&this._parent instanceof uv?av.formGroupNameException():this._parent instanceof cv||this._parent instanceof sv||av.modelParentException()},e.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||av.missingNameException()},e.prototype._updateValue=function(t){var e=this;hv.then(function(){e.control.setValue(t,{emitViewToModelChange:!1})})},e.prototype._updateDisabled=function(t){var e=this,n=t.isDisabled.currentValue,r=""===n||n&&"false"!==n;hv.then(function(){r&&!e.control.disabled?e.control.disable():!r&&e.control.disabled&&e.control.enable()})},e}(Ig),fv=new Ut("NgModelWithFormControlWarning"),dv=function(){return function(){}}(),gv=function(){function t(){}return t.prototype.group=function(t,e){void 0===e&&(e=null);var n=this._reduceControls(t),r=null,o=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(r=null!=e.validators?e.validators:null,o=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(r=null!=e.validator?e.validator:null,o=null!=e.asyncValidator?e.asyncValidator:null)),new rv(n,{asyncValidators:o,updateOn:i,validators:r})},t.prototype.control=function(t,e,n){return new nv(t,e,n)},t.prototype.array=function(t,e,n){var r=this,o=t.map(function(t){return r._createControl(t)});return new ov(o,e,n)},t.prototype._reduceControls=function(t){var e=this,n={};return Object.keys(t).forEach(function(r){n[r]=e._createControl(t[r])}),n},t.prototype._createControl=function(t){return t instanceof nv||t instanceof rv||t instanceof ov?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)},t}(),vv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:lv,useValue:t.warnOnDeprecatedNgFormSelector}]}},t}(),yv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:fv,useValue:t.warnOnNgModelWithFormControl}]}},t}(),mv=rr({encapsulation:2,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:0}.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:0}.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}"],data:{}});function _v(t){return is(2,[Zi(402653184,1,{_contentWrapper:0}),(t()(),Bi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),Ji(null,0),(t()(),Bi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var bv=rr({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function wv(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Bi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==eo(t,5)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==eo(t,5).onTouched()&&r),"compositionstart"===e&&(r=!1!==eo(t,5)._compositionStart()&&r),"compositionend"===e&&(r=!1!==eo(t,5)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search=n)&&r),"ngModelChange"===e&&(o.searchChange.emit(n),r=!1!==o.filter()&&r),r},null,null)),go(5,16384,null,0,Og,[yn,pn,[2,Eg]],null,null),vo(1024,null,xg,function(t){return[t]},[Og]),go(7,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(9,16384,null,0,Rg,[[4,Ig]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,eo(e,9).ngClassUntouched,eo(e,9).ngClassTouched,eo(e,9).ngClassPristine,eo(e,9).ngClassDirty,eo(e,9).ngClassValid,eo(e,9).ngClassInvalid,eo(e,9).ngClassPending)})}function Cv(t){return is(0,[(t()(),Bi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.select(t.context.$implicit)&&r),r},null,null)),(t()(),Bi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function xv(t){return is(0,[(t()(),Bi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,_v,mv)),vo(6144,null,Xf,null,[Jf]),go(3,540672,null,0,$f,[],{itemSize:[0,"itemSize"]},null),vo(1024,null,Yf,Zf,[$f]),go(5,245760,[[4,4],[5,4],["viewport",4]],0,Jf,[pn,An,si,[2,Yf],[2,Zd],Qf],null,null),(t()(),Hi(16777216,[[2,2]],0,1,null,Cv)),go(7,409600,null,0,ed,[zn,Vn,In,[1,Jf],si],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===eo(e,5).orientation,"horizontal"!==eo(e,5).orientation)})}function Sv(t){return is(0,[(t()(),Bi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Ev(t){return is(0,[(t()(),Bi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.cancelClose()&&r),r},null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(r=0!=(o.show=!o.show)&&r),r},null,null)),(t()(),Bi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Hi(16777216,[[2,2]],null,1,null,wv)),go(7,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Hi(16777216,[[2,2]],null,1,null,xv)),go(10,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Hi(0,[[2,2],["noItems",2]],null,0,null,Sv))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,eo(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Ov(t){return is(0,[Zi(402653184,1,{reference:0}),Zi(402653184,2,{dropdown_tooltip:0}),Zi(402653184,3,{input:0}),Zi(402653184,4,{viewport:0}),Zi(402653184,5,{scroll_el:0}),(t()(),Bi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var r=!0,o=t.component;return"keyup.enter"===e&&(r=!1!==o.toggleShow()&&r),"keydown.arrowup"===e&&(r=!1!==n.preventDefault()&&r),"keydown.arrowdown"===e&&(r=!1!==n.preventDefault()&&r),"keyup.arrowup"===e&&(r=!1!==(o.focus?o.change(-1):"")&&r),"keyup.arrowdown"===e&&(r=!1!==(o.focus?o.change(1):"")&&r),"focus"===e&&(r=0!=(o.focus=!0)&&r),"blur"===e&&(r=0!=(o.focus=!1)&&r),"window:resize"===e&&(r=!1!==o.resize()&&r),"window:click"===e&&(r=!1!==(o.show?o.close():"")&&r),r},null,null)),(t()(),Bi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Bi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"showChange"===e&&(r=!1!==(o.show=n)&&r),"showChange"===e&&(r=!1!==o.updateScroll()&&r),"click"===e&&(r=!1!==o.toggleShow()&&r),r},null,null)),go(8,737280,null,0,Bd,[pn,Hd,Ad,yn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Bi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),ns(10,null,["",""])),(t()(),Bi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Bi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Bi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(15,null,["",""])),(t()(),Bi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Hi(0,[[2,2],["dropdown",2]],null,0,null,Ev))],function(t,e){t(e,8,0,e.component.show,eo(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}var kv="Checkbox",Pv=function(){function t(){this.klass="default"}return t.prototype.toggle=function(){this.state=!this.state,this.onChange&&this.onChange(this.state)},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouch=t},t}(),Tv=ga,Iv=function(){function t(){if(this.build=Tv(),!t.init){var e=Tv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+kv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+kv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Rv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}return t.prototype.handleMouse=function(t){this.handleEvent(t)},t.prototype.handleTouch=function(t){this.handleEvent(t)},t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;setTimeout(function(){t.element&&t.element.nativeElement&&(t.cached_box=t.element.nativeElement.getBoundingClientRect(),t.size=Math.ceil(1.5*Math.max(t.cached_box.height,t.cached_box.width)))})},t.prototype.ngOnDestroy=function(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t.prototype.handleEvent=function(t){var e=this;this.cancelled=!1;var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,r=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:r-this.cached_box.top+"px",left:n-this.cached_box.left+"px"},this.mouse_release_cancel=this.renderer.listen("window","mouseup",function(t){return e.handleRelease(t)}),this.touch_release_cancel=this.renderer.listen("window","touchend",function(t){return e.handleRelease(t)}),this.transitioning=!0,setTimeout(function(){e.transitioning=!1,e.cancelled&&(e.show=!1)},350)},t.prototype.handleRelease=function(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t}(),Av=function(){function t(t,e){this.el=t,this.renderer=e,this.tapped=new Ao,this.touchrelease=new Ao,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}return t.prototype.ngAfterViewInit=function(){var t=this;this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",function(e){return t.handleHold(e)}),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",function(e){return t.handleHold(e)}))},t.prototype.ngOnDestroy=function(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}},t.prototype.remove=function(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)},t.prototype.handleHold=function(t){var e=this,n={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=n,this.mouse_listener=this.renderer.listen(window,"mouseup",function(t){return e.handleRelease(t)}),this.touch_listener=this.renderer.listen(window,"touchend",function(t){return e.handleRelease(t)}),this.timer=setTimeout(function(){return e.remove()},this.max_delay)},t.prototype.handleRelease=function(t){var e=this;this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(function(){var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(n-e.start.x,2)+2) div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function zv(t){return is(0,[(t()(),Bi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.toggle()&&r),r},null,null)),go(1,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),ns(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Uv(t){return is(0,[(t()(),Bi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Bi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,2).handleTouch(n)&&r),"keyup.enter"===e&&(r=!1!==o.toggle()&&r),"tapped"===e&&(r=!1!==o.toggle()&&r),r},Vv,jv)),go(2,4440064,null,0,Rv,[pn,yn],{center:[0,"center"]},null),go(3,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,zv)),go(6,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}var Fv="Buttons",Hv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new Ao,this.id="button-"+Math.floor(999999*Math.random())}return t.prototype.ngOnChanges=function(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()},t.prototype.ngAfterViewInit=function(){this.setClass(this.klass)},t.prototype.setClass=function(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))},t.prototype.setGroup=function(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")},t.prototype.setState=function(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")},t.prototype.tap=function(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this._onChange=t},t.prototype.registerOnTouched=function(t){this._onTouch=t},t}(),Bv=ga,Wv=function(){function t(){if(this.build=Bv(),!t.init){var e=Bv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Fv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Fv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Gv=rr({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function Yv(t){return is(0,[(t()(),Bi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,1).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,1).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.tap()&&r),r},Vv,jv)),go(1,4440064,null,0,Rv,[pn,yn],null,null),go(2,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),Ji(0,0)],function(t,e){t(e,1,0)},null)}var qv=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t,e){switch(void 0===e&&(e="html"),e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}},t}(),Zv="Pipes",$v=ga,Qv=function(){function t(){if(this.build=$v(),!t.init){var e=$v();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Zv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Zv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Xv=function(){function t(){this._timers={},this._intervals={},this._subscriptions={}}return t.prototype.timeout=function(t,e,n){var r=this;if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(function(){e(),r._timers[t]=null},n)},t.prototype.clearTimeout=function(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)},t.prototype.interval=function(t,e,n){if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(function(){return e()},n)},t.prototype.clearInterval=function(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)},t.prototype.subscription=function(t,e){this.unsub(t),this._subscriptions[t]=e},t.prototype.unsub=function(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof m?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)},t}(),Kv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.ngOnDestroy=function(){for(var t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(var t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(var t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)},e}(Xv),Jv=function(){return function(){}}(),ty=function(){return function(){}}(),ey=function(){function t(t){var e=this;this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?function(){e.headers=new Map,t.split("\n").forEach(function(t){var n=t.indexOf(":");if(n>0){var r=t.slice(0,n),o=r.toLowerCase(),i=t.slice(n+1).trim();e.maybeSetNormalizedName(r,o),e.headers.has(o)?e.headers.get(o).push(i):e.headers.set(o,[i])}})}:function(){e.headers=new Map,Object.keys(t).forEach(function(n){var r=t[n],o=n.toLowerCase();"string"==typeof r&&(r=[r]),r.length>0&&(e.headers.set(o,r),e.maybeSetNormalizedName(n,o))})}:this.headers=new Map}return t.prototype.has=function(t){return this.init(),this.headers.has(t.toLowerCase())},t.prototype.get=function(t){this.init();var e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null},t.prototype.keys=function(){return this.init(),Array.from(this.normalizedNames.values())},t.prototype.getAll=function(t){return this.init(),this.headers.get(t.toLowerCase())||null},t.prototype.append=function(t,e){return this.clone({name:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({name:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({name:t,value:e,op:"d"})},t.prototype.maybeSetNormalizedName=function(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)},t.prototype.init=function(){var e=this;this.lazyInit&&(this.lazyInit instanceof t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(t){return e.applyUpdate(t)}),this.lazyUpdate=null))},t.prototype.copyFrom=function(t){var e=this;t.init(),Array.from(t.headers.keys()).forEach(function(n){e.headers.set(n,t.headers.get(n)),e.normalizedNames.set(n,t.normalizedNames.get(n))})},t.prototype.clone=function(e){var n=new t;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([e]),n},t.prototype.applyUpdate=function(t){var e=t.name.toLowerCase();switch(t.op){case"a":case"s":var n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);var r=("a"===t.op?this.headers.get(e):void 0)||[];r.push.apply(r,p(n)),this.headers.set(e,r);break;case"d":var o=t.value;if(o){var i=this.headers.get(e);if(!i)return;0===(i=i.filter(function(t){return-1===o.indexOf(t)})).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,i)}else this.headers.delete(e),this.normalizedNames.delete(e)}},t.prototype.forEach=function(t){var e=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return t(e.normalizedNames.get(n),e.headers.get(n))})},t}(),ny=function(){function t(){}return t.prototype.encodeKey=function(t){return ry(t)},t.prototype.encodeValue=function(t){return ry(t)},t.prototype.decodeKey=function(t){return decodeURIComponent(t)},t.prototype.decodeValue=function(t){return decodeURIComponent(t)},t}();function ry(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}var oy=function(){function t(t){var e,n,r,o=this;if(void 0===t&&(t={}),this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new ny,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=(e=t.fromString,n=this.encoder,r=new Map,e.length>0&&e.split("&").forEach(function(t){var e=t.indexOf("="),o=h(-1==e?[n.decodeKey(t),""]:[n.decodeKey(t.slice(0,e)),n.decodeValue(t.slice(e+1))],2),i=o[0],s=o[1],a=r.get(i)||[];a.push(s),r.set(i,a)}),r)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(function(e){var n=t.fromObject[e];o.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}return t.prototype.has=function(t){return this.init(),this.map.has(t)},t.prototype.get=function(t){this.init();var e=this.map.get(t);return e?e[0]:null},t.prototype.getAll=function(t){return this.init(),this.map.get(t)||null},t.prototype.keys=function(){return this.init(),Array.from(this.map.keys())},t.prototype.append=function(t,e){return this.clone({param:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({param:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({param:t,value:e,op:"d"})},t.prototype.toString=function(){var t=this;return this.init(),this.keys().map(function(e){var n=t.encoder.encodeKey(e);return t.map.get(e).map(function(e){return n+"="+t.encoder.encodeValue(e)}).join("&")}).join("&")},t.prototype.clone=function(e){var n=new t({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat([e]),n},t.prototype.init=function(){var t=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(e){return t.map.set(e,t.cloneFrom.map.get(e))}),this.updates.forEach(function(e){switch(e.op){case"a":case"s":var n=("a"===e.op?t.map.get(e.param):void 0)||[];n.push(e.value),t.map.set(e.param,n);break;case"d":if(void 0===e.value){t.map.delete(e.param);break}var r=t.map.get(e.param)||[],o=r.indexOf(e.value);-1!==o&&r.splice(o,1),r.length>0?t.map.set(e.param,r):t.map.delete(e.param)}}),this.cloneFrom=this.updates=null)},t}();function iy(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function sy(t){return"undefined"!=typeof Blob&&t instanceof Blob}function ay(t){return"undefined"!=typeof FormData&&t instanceof FormData}var ly=function(){function t(t,e,n,r){var o;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,o=r):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.params&&(this.params=o.params)),this.headers||(this.headers=new ey),this.params){var i=this.params.toString();if(0===i.length)this.urlWithParams=e;else{var s=e.indexOf("?");this.urlWithParams=e+(-1===s?"?":s=200&&this.status<300}}(),hy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=uy.ResponseHeader,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(cy),py=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=uy.Response,n.body=void 0!==e.body?e.body:null,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(cy),fy=function(t){function e(e){var n=t.call(this,e,0,"Unknown Error")||this;return n.name="HttpErrorResponse",n.ok=!1,n.message=n.status>=200&&n.status<300?"Http failure during parsing for "+(e.url||"(unknown url)"):"Http failure response for "+(e.url||"(unknown url)")+": "+e.status+" "+e.statusText,n.error=e.error||null,n}return o(e,t),e}(cy);function dy(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}var gy=function(){function t(t){this.handler=t}return t.prototype.request=function(t,e,n){var r,o=this;if(void 0===n&&(n={}),t instanceof ly)r=t;else{var i;i=n.headers instanceof ey?n.headers:new ey(n.headers);var s=void 0;n.params&&(s=n.params instanceof oy?n.params:new oy({fromObject:n.params})),r=new ly(t,e,void 0!==n.body?n.body:null,{headers:i,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}var a=nl(r).pipe(Gl(function(t){return o.handler.handle(t)}));if(t instanceof ly||"events"===n.observe)return a;var l=a.pipe(hl(function(t){return t instanceof py}));switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return l.pipe(K(function(t){if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return l.pipe(K(function(t){return t.body}))}case"response":return l;default:throw new Error("Unreachable: unhandled observe type "+n.observe+"}")}},t.prototype.delete=function(t,e){return void 0===e&&(e={}),this.request("DELETE",t,e)},t.prototype.get=function(t,e){return void 0===e&&(e={}),this.request("GET",t,e)},t.prototype.head=function(t,e){return void 0===e&&(e={}),this.request("HEAD",t,e)},t.prototype.jsonp=function(t,e){return this.request("JSONP",t,{params:(new oy).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})},t.prototype.options=function(t,e){return void 0===e&&(e={}),this.request("OPTIONS",t,e)},t.prototype.patch=function(t,e,n){return void 0===n&&(n={}),this.request("PATCH",t,dy(n,e))},t.prototype.post=function(t,e,n){return void 0===n&&(n={}),this.request("POST",t,dy(n,e))},t.prototype.put=function(t,e,n){return void 0===n&&(n={}),this.request("PUT",t,dy(n,e))},t}(),vy=function(){function t(t,e){this.next=t,this.interceptor=e}return t.prototype.handle=function(t){return this.interceptor.intercept(t,this.next)},t}(),yy=new Ut("HTTP_INTERCEPTORS"),my=function(){function t(){}return t.prototype.intercept=function(t,e){return e.handle(t)},t}(),_y=/^\)\]\}',?\n/,by=function(){return function(){}}(),wy=function(){function t(){}return t.prototype.build=function(){return new XMLHttpRequest},t}(),Cy=function(){function t(t){this.xhrFactory=t}return t.prototype.handle=function(t){var e=this;if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new R(function(n){var r=e.xhrFactory.build();if(r.open(t.method,t.urlWithParams),t.withCredentials&&(r.withCredentials=!0),t.headers.forEach(function(t,e){return r.setRequestHeader(t,e.join(","))}),t.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){var o=t.detectContentTypeHeader();null!==o&&r.setRequestHeader("Content-Type",o)}if(t.responseType){var i=t.responseType.toLowerCase();r.responseType="json"!==i?i:"text"}var s=t.serializeBody(),a=null,l=function(){if(null!==a)return a;var e=1223===r.status?204:r.status,n=r.statusText||"OK",o=new ey(r.getAllResponseHeaders()),i=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(r)||t.url;return a=new hy({headers:o,status:e,statusText:n,url:i})},u=function(){var e=l(),o=e.headers,i=e.status,s=e.statusText,a=e.url,u=null;204!==i&&(u=void 0===r.response?r.responseText:r.response),0===i&&(i=u?200:0);var c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof u){var h=u;u=u.replace(_y,"");try{u=""!==u?JSON.parse(u):null}catch(p){u=h,c&&(c=!1,u={error:p,text:u})}}c?(n.next(new py({body:u,headers:o,status:i,statusText:s,url:a||void 0})),n.complete()):n.error(new fy({error:u,headers:o,status:i,statusText:s,url:a||void 0}))},c=function(t){var e=l().url,o=new fy({error:t,status:r.status||0,statusText:r.statusText||"Unknown Error",url:e||void 0});n.error(o)},h=!1,p=function(e){h||(n.next(l()),h=!0);var o={type:uy.DownloadProgress,loaded:e.loaded};e.lengthComputable&&(o.total=e.total),"text"===t.responseType&&r.responseText&&(o.partialText=r.responseText),n.next(o)},f=function(t){var e={type:uy.UploadProgress,loaded:t.loaded};t.lengthComputable&&(e.total=t.total),n.next(e)};return r.addEventListener("load",u),r.addEventListener("error",c),t.reportProgress&&(r.addEventListener("progress",p),null!==s&&r.upload&&r.upload.addEventListener("progress",f)),r.send(s),n.next({type:uy.Sent}),function(){r.removeEventListener("error",c),r.removeEventListener("load",u),t.reportProgress&&(r.removeEventListener("progress",p),null!==s&&r.upload&&r.upload.removeEventListener("progress",f)),r.abort()}})},t}(),xy=new Ut("XSRF_COOKIE_NAME"),Sy=new Ut("XSRF_HEADER_NAME"),Ey=function(){return function(){}}(),Oy=function(){function t(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return t.prototype.getToken=function(){if("server"===this.platform)return null;var t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Ma(t,this.cookieName),this.lastCookieString=t),this.lastToken},t}(),ky=function(){function t(t,e){this.tokenService=t,this.headerName=e}return t.prototype.intercept=function(t,e){var n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);var r=this.tokenService.getToken();return null===r||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,r)})),e.handle(t)},t}(),Py=function(){function t(t,e){this.backend=t,this.injector=e,this.chain=null}return t.prototype.handle=function(t){if(null===this.chain){var e=this.injector.get(yy,[]);this.chain=e.reduceRight(function(t,e){return new vy(t,e)},this.backend)}return this.chain.handle(t)},t}(),Ty=function(){function t(){}var e;return e=t,t.disable=function(){return{ngModule:e,providers:[{provide:ky,useClass:my}]}},t.withOptions=function(t){return void 0===t&&(t={}),{ngModule:e,providers:[t.cookieName?{provide:xy,useValue:t.cookieName}:[],t.headerName?{provide:Sy,useValue:t.headerName}:[]]}},t}(),Iy=function(){return function(){}}(),Ry=function(){function t(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new rl(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}return t.prototype.init=function(){return l(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.loadFromFile("api")];case 1:return t.sent(),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete(),[2]}})})},Object.defineProperty(t.prototype,"setup",{get:function(){return this._setup},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"app_name",{get:function(){return this._app_name},enumerable:!0,configurable:!0}),t.prototype.isSetup=function(t){return this._is_setup_observer.subscribe(t)},t.prototype.log=function(t,e,n,r,o){if(void 0===r&&(r="debug"),void 0===o&&(o=!1),window.debug||o){var i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i,[n])):console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i))}},t.prototype.get=function(t){var e=t.split("."),n=null;return"session"===e[0]?(e.shift(),n=da(e,this._settings.session)):"local"===e[0]?(e.shift(),n=da(e,this._settings.local)):n=da(e,this._settings.api)||da(e,this._settings.session)||da(e,this._settings.local),n},t.prototype.loadStore=function(t,e){if(e)for(var n=0;n5?[2,Promise.resolve()]:(this._promises[r="load|"+t+"|"+e]||(this._promises[r]=new Promise(function(s,a){o.http.get(e).subscribe(function(e){o._settings[t]=i({},o._settings[t]||{},e||{})},function(i){o.log("Settings",'Failed to load settings from "'+e+'"'),o._promises[r]=null,o.loadFromFile(t,e,++n).then(function(){return s()})},function(){return s()})})),[2,this._promises[r]])})})},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(gy))},token:t,providedIn:"root"}),t}(),Ay=["control","shift","alt","meta","os"],My=function(){function t(){var t=this;this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.last_down!==n&&(t.keydown_states[n]||(t.keydown_states[n]=new rl(null),t.keydown_observers[n]=t.keydown_states[n].asObservable()),t.keydown_states[n].next(t.counter++),t.combo_end.indexOf(n)>=0&&e.preventDefault(),t.last_down=n)}),window.addEventListener("keyup",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.keydown_states[n].next(null),t.last_down===n&&(t.last_down=null)})}return t.prototype.listen=function(t,e){var n=this,r=(t=t instanceof Array?t:t.split("+")).map(function(t){return n.mapKey(t.toLowerCase())});if(r.length>0&&this.validCombination(r)){this.registered_combos.push(r);var o=r[r.length-1];return this.keydown_states[o]||(this.keydown_states[o]=new rl(null),this.keydown_observers[o]=this.keydown_states[o].asObservable()),this.updateCombinationEndList(),this.keydown_observers[o].subscribe(function(t){if(t){var o=[];if(r.length>1){for(var i=0,s=r;io[l+1])return}e()}})}return null},t.prototype.mapKey=function(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t},t.prototype.updateCombinationEndList=function(){for(var t,e=0,n=this.registered_combos;e0},t.ngInjectableDef=Ot({factory:function(){return new t},token:t,providedIn:"root"}),t}(),Ny=[],Dy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=fa(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.repositories=function(){var t=this,e="repositories";return this._promises[e]||(this._promises[e]=new Promise(function(n,r){var o;t.http.get(t.api_route+"/repositories").subscribe(function(t){return o=t},function(n){r(n),delete t._promises[e]},function(){n(o),t.timeout(e,function(){return delete t._promises[e]},1e3)})})),this._promises[e]},e.prototype.commits=function(t){var e=this,n="commits|"+fa(t);return this._promises[n]||(this._promises[n]=new Promise(function(t,r){var o;e.http.get(e.api_route+"/repositories_commits").subscribe(function(t){return o=t},function(t){r(t),delete e._promises[n]},function(){t(o),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.versions=function(t){var e=this,n="versions|"+t;return this._promises[n]||(this._promises[n]=new Promise(function(r,o){var i,s=e.api_route+"/"+encodeURIComponent(t);e.http.get(s).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[n]},function(){r(i),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.driverCommits=function(t,e){var n=this,r=fa(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.build=function(t){var e=this,n=fa(t),r="build|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){e.http.post(""+e.api_route,n).subscribe(function(t){return null},function(t){o(t),delete e._promises[r]},function(){t(),delete e._promises[r]})})),this._promises[r]},e.prototype.clean=function(t,e){var n=this,r=fa(e),o="clean|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(t,e){n.http.delete(n.api_route+(r?"?"+r:"")).subscribe(function(t){return null},function(t){e(t),delete n._promises[o]},function(){t(),delete n._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/build":"/build"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(gy))},token:e,providedIn:"root"}),e}(Xv),jy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=fa(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.specCommits=function(t,e){var n=this,r=fa(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.run=function(t){var e=this;for(var n in t)null==t[n]&&delete t[n];var r=fa(t),o="build|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(n,i){var s;e.http.post(e.api_route+(r?"?"+r:""),t,{responseType:"text"}).subscribe(function(t){return s=t},function(t){i(t),delete e._promises[o]},function(){n(s),delete e._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/test":"/test"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(gy))},token:e,providedIn:"root"}),e}(Xv),Vy=new R(P),Ly=function(){function t(t,e){this.delay=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new zy(t,this.delay,this.scheduler))},t}(),zy=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.delay=n,o.scheduler=r,o.queue=[],o.active=!1,o.errored=!1,o}return o(e,t),e.dispatch=function(t){for(var e=t.source,n=e.queue,r=t.scheduler,o=t.destination;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(o);if(n.length>0){var i=Math.max(0,n[0].time-r.now());this.schedule(t,i)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.destination.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new Uy(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(Df.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.scheduleNotification(Df.createComplete()),this.unsubscribe()},e}(E),Uy=function(){return function(t,e){this.time=t,this.notification=e}}(),Fy="Service workers are disabled or not supported by this browser",Hy=function(){function t(t){if(this.serviceWorker=t,t){var e=sf(t,"controllerchange").pipe(K(function(){return t.controller})),n=Ul(ul(function(){return nl(t.controller)}),e);this.worker=n.pipe(hl(function(t){return!!t})),this.registration=this.worker.pipe(Vl(function(){return t.getRegistration()}));var r=sf(t,"message").pipe(K(function(t){return t.data})).pipe(hl(function(t){return t&&t.type})).pipe(gt(new V));r.connect(),this.events=r}else this.worker=this.events=this.registration=(o=Fy,ul(function(){return Af(new Error(o))}));var o}return t.prototype.postMessage=function(t,e){return this.worker.pipe(Rl(1),_l(function(n){n.postMessage(i({action:t},e))})).toPromise().then(function(){})},t.prototype.postMessageWithStatus=function(t,e,n){var r=this.waitForStatus(n),o=this.postMessage(t,e);return Promise.all([r,o]).then(function(){})},t.prototype.generateNonce=function(){return Math.round(1e7*Math.random())},t.prototype.eventsOfType=function(t){return this.events.pipe(hl(function(e){return e.type===t}))},t.prototype.nextEventOfType=function(t){return this.eventsOfType(t).pipe(Rl(1))},t.prototype.waitForStatus=function(t){return this.eventsOfType("STATUS").pipe(hl(function(e){return e.nonce===t}),Rl(1),K(function(t){if(!t.status)throw new Error(t.error)})).toPromise()},Object.defineProperty(t.prototype,"isEnabled",{get:function(){return!!this.serviceWorker},enumerable:!0,configurable:!0}),t}(),By=function(){function t(t){if(this.sw=t,this.subscriptionChanges=new V,!t.isEnabled)return this.messages=Vy,this.notificationClicks=Vy,void(this.subscription=Vy);this.messages=this.sw.eventsOfType("PUSH").pipe(K(function(t){return t.data})),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(K(function(t){return t.data})),this.pushManager=this.sw.registration.pipe(K(function(t){return t.pushManager}));var e=this.pushManager.pipe(Vl(function(t){return t.getSubscription()}));this.subscription=lt(e,this.subscriptionChanges)}return Object.defineProperty(t.prototype,"isEnabled",{get:function(){return this.sw.isEnabled},enumerable:!0,configurable:!0}),t.prototype.requestSubscription=function(t){var e=this;if(!this.sw.isEnabled)return Promise.reject(new Error(Fy));for(var n={userVisibleOnly:!0},r=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),o=new Uint8Array(new ArrayBuffer(r.length)),i=0;i
'+e+"
",n,r,t)},e.prototype.notifySuccess=function(t,e,n){this.notify("success",t,e,n)},e.prototype.notifyError=function(t,e,n){this.notify("error",t,e,n)},e.prototype.notifyInfo=function(t,e,n){this.notify("info",t,e,n)},e.prototype.log=function(t,e,n,r,o){void 0===r&&(r="debug"),void 0===o&&(o=!1),this._settings.log(t,e,n,r,o)},e.prototype.navigate=function(t,e){var n=t instanceof Array?t.slice():[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})},e.prototype.navigateBack=function(){if(this._route_trail&&this._route_trail.length>0){var t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])},e.prototype.get=function(t){return this._subjects[t]&&this._subjects[t]instanceof rl?this._subjects[t].getValue():null},e.prototype.listen=function(t,e){return this._observers[t]?this._observers[t].subscribe(e):null},e.prototype.set=function(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new rl(e),this._observers[t]=this._subjects[t].asObservable())},e.prototype.init=function(){var t=this;if(!this._settings.setup)return this.timeout("init",function(){return t.init()});this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(function(e){t.log("CACHE","Update available: current version is "+e.current.hash+" available version is "+e.available.hash),t.notifyInfo("Newer version of the app is available","Refresh",function(){return location.reload()})}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],function(){t.navigate("bootstrap",{clear:!0})})},e.prototype.registerOverlays=function(){if(Ny)for(var t=0,e=Ny;tt.driver.localeCompare(n.id)?e:n},null)),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.updateSpecCommits=function(){var t=this;this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(function(e){t.spec_commit_list=(e||[]).map(function(t){return{id:t.commit,name:t.commit,author:t.author,date:ga(t.date).format("DD MMM YYYY h:mm A")}}),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.test=function(){var t=this;if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";var e=function(e){e instanceof Object&&(e=e.error),t.test_results=t.styleResults(e||"");var n=t.service.get("TEST.results")||{},r=e.indexOf("exited with 0")>=0;n[t.repo+"|"+t.driver]=r?"passed":"failed",t.service.set("TEST.results",n),t.testing=!1,t.timeout("scroll",function(){return t.body.nativeElement.scrollTo(0,t.body.nativeElement.scrollHeight)},10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(e,e)}},e.prototype.styleResults=function(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')},e}(Kv),nm=rr({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function rm(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Spec Commit:"])),(t()(),Bi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.spec_commit=n)&&r),r},Ov,bv)),go(5,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(7,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(9,16384,null,0,Rg,[[4,Ig]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,eo(e,9).ngClassUntouched,eo(e,9).ngClassTouched,eo(e,9).ngClassPristine,eo(e,9).ngClassDirty,eo(e,9).ngClassValid,eo(e,9).ngClassInvalid,eo(e,9).ngClassPending)})}function om(t){return is(0,[(t()(),Bi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),es(128,1,new Array(3))],null,function(t,e){var n=e.component,r=function(t,e,n,r){if($e.isWrapped(r)){r=$e.unwrap(r);var o=t.def.nodes[0].bindingIndex+0,i=$e.unwrap(t.oldValues[o]);t.oldValues[o]=new $e(i)}return r}(e,0,0,t(e,1,0,eo(e.parent.parent,0),n.test_results,"html"));t(e,0,0,r)})}function im(t){return is(0,[(t()(),Bi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,54,"div",[["class","header"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Repository:"])),(t()(),Bi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),ns(6,null,["",""])),(t()(),Bi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Driver:"])),(t()(),Bi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),ns(11,null,["",""])),(t()(),Bi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Commit:"])),(t()(),Bi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.commit=n)&&r),r},Ov,bv)),go(17,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(19,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(21,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Spec:"])),(t()(),Bi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.spec=n)&&r),"ngModelChange"===e&&(r=!1!==o.updateSpecCommits()&&r),r},Ov,bv)),go(27,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(29,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(31,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Hi(16777216,null,null,1,null,rm)),go(33,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(34,0,null,null,21,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Bi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Bi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Bi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.force=n)&&r),r},Uv,Lv)),go(38,49152,null,0,Pv,[],{klass:[0,"klass"],label:[1,"label"]},null),vo(1024,null,xg,function(t){return[t]},[Pv]),go(40,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(42,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Bi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.debug=n)&&r),r},Uv,Lv)),go(45,49152,null,0,Pv,[],{klass:[0,"klass"],label:[1,"label"]},null),vo(1024,null,xg,function(t){return[t]},[Pv]),go(47,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(49,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(50,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Bi(51,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.test()&&r),r},Yv,Gv)),vo(5120,null,xg,function(t){return[t]},[Hv]),go(53,4767744,null,0,Hv,[pn,yn],null,{tapped:"tapped"}),go(54,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),ns(-1,0,["Run!"])),(t()(),Bi(56,0,[[1,0],["body",1]],null,10,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(57,0,null,null,4,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Bi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),ns(59,null,[" "," "])),(t()(),Hi(16777216,null,null,1,null,om)),go(61,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,63).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,63).handleTouch(n)&&r),"tapped"===e&&(r=0!=(o.show=!o.show)&&r),r},Vv,jv)),go(63,4440064,null,0,Rv,[pn,yn],{klass:[0,"klass"],center:[1,"center"]},null),go(64,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,eo(e,21).ngClassUntouched,eo(e,21).ngClassTouched,eo(e,21).ngClassPristine,eo(e,21).ngClassDirty,eo(e,21).ngClassValid,eo(e,21).ngClassInvalid,eo(e,21).ngClassPending),t(e,26,0,eo(e,31).ngClassUntouched,eo(e,31).ngClassTouched,eo(e,31).ngClassPristine,eo(e,31).ngClassDirty,eo(e,31).ngClassValid,eo(e,31).ngClassInvalid,eo(e,31).ngClassPending),t(e,37,0,eo(e,42).ngClassUntouched,eo(e,42).ngClassTouched,eo(e,42).ngClassPristine,eo(e,42).ngClassDirty,eo(e,42).ngClassValid,eo(e,42).ngClassInvalid,eo(e,42).ngClassPending),t(e,44,0,eo(e,49).ngClassUntouched,eo(e,49).ngClassTouched,eo(e,49).ngClassPristine,eo(e,49).ngClassDirty,eo(e,49).ngClassValid,eo(e,49).ngClassInvalid,eo(e,49).ngClassPending),t(e,51,0,!n.spec||n.testing),t(e,56,0,n.show),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_up":"keyboard_arrow_down")})}function sm(t){return is(0,[(t()(),Bi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(-1,null,["arrow_back"])),(t()(),Bi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(-1,null,["Select a driver from the sidebar"]))],null,null)}function am(t){return is(0,[(e=0,n=qv,r=[Yu],yo(-1,e|=16,null,0,n,n,r)),Zi(671088640,1,{body:0}),(t()(),Bi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,im)),go(4,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Hi(0,[["select",2]],null,0,null,sm))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,eo(e,5))},null);var e,n,r}function lm(t){return is(0,[(t()(),Bi(0,0,null,null,1,"app-workspace",[],null,null,null,am,nm)),go(1,245760,null,0,em,[tm,fh],null,null)],function(t,e){t(e,1,0)},null)}var um=Wr("app-workspace",em,lm,{},{},[]),cm=function(){function t(){this.menu=!0,this.menuChange=new Ao}return t.prototype.toggleMenu=function(){this.menu=!this.menu,this.menuChange.emit(this.menu)},t}(),hm=rr({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function pm(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,2).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.toggleMenu()&&r),r},Vv,jv)),go(2,4440064,null,0,Rv,[pn,yn],{klass:[0,"klass"]},null),go(3,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(-1,null,["menu"])),(t()(),Bi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Bi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Bi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),ns(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}var fm=function(t){function e(e){var n=t.call(this)||this;return n.service=e,n.repository_list=[],n.status={},n}return o(e,t),e.prototype.ngOnInit=function(){var t=this;this.service.set("TEST.repository",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",function(){return t.updateRepositoryList()},6e4),this.subscription("test_results",this.service.listen("TEST.results",function(e){t.status=e||{}})),this.subscription("repository",this.service.listen("TEST.repository",function(e){e&&(t.repo={id:e,name:e},t.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",function(e){t.driver=e}))},e.prototype.setRepository=function(t){this.service.navigate([t]),this.updateDriverList()},e.prototype.setDriver=function(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t])},e.prototype.updateDriverList=function(){var t=this;this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(function(e){t.driver_list=e||[],t.loading=!1},function(e){return t.loading=!1})},e.prototype.updateRepositoryList=function(){var t=this;this.service.Build.repositories().then(function(e){t.repository_list=(e||[]).map(function(t){return{id:t,name:t}}),t.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),t.updateDriverList()})},e}(Kv),dm=rr({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function gm(t){return is(0,[(t()(),Bi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.setDriver(t.context.$implicit)&&r),r},null,null)),go(1,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Bi(3,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(4,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]),t(e,4,0,e.context.$implicit)})}function vm(t){return is(0,[(t()(),Bi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(5,null,["",""]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?"No drivers in the selected repository":"Select a repository from above")})}function ym(t){return is(0,[(t()(),Bi(0,0,null,null,12,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.repo=n)&&r),"ngModelChange"===e&&(r=!1!==o.setRepository(n.id)&&r),r},Ov,bv)),go(3,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(5,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(7,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(8,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,gm)),go(10,278528,null,0,ja,[zn,Vn,In],{ngForOf:[0,"ngForOf"]},null),(t()(),Hi(16777216,null,null,1,null,vm)),go(12,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,3,0,"simple",n.repository_list||Ir,"ACA Drivers"),t(e,5,0,n.repo),t(e,10,0,n.driver_list),t(e,12,0,!n.driver_list||0===n.driver_list.length)},function(t,e){t(e,2,0,eo(e,7).ngClassUntouched,eo(e,7).ngClassTouched,eo(e,7).ngClassPristine,eo(e,7).ngClassDirty,eo(e,7).ngClassValid,eo(e,7).ngClassInvalid,eo(e,7).ngClassPending)})}var mm=rr({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:16em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:16em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function _m(t){return is(0,[(t()(),Bi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var r=!0;return"menuChange"===e&&(r=!1!==(t.component.show_menu=n)&&r),r},pm,hm)),go(3,49152,null,0,cm,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Bi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Bi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(6,0,null,null,1,"sidebar",[],null,null,null,ym,dm)),go(7,245760,null,0,fm,[tm],null,null),(t()(),Bi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Bi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),go(10,212992,null,0,Op,[Ep,zn,sn,[8,null],An],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function bm(t){return is(0,[(t()(),Bi(0,0,null,null,1,"app-root",[],null,null,null,_m,mm)),go(1,49152,null,0,ya,[],null,null)],null,null)}var wm=Wr("app-root",ya,bm,{},{},[]),Cm=function(){return function(){}}(),xm=function(){return function(){}}(),Sm=ca(va,[ya],function(t){return function(t){for(var e={},n=[],r=!1,o=0;o { setTimeout(() => resolve(), ms); }); + } + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + /** + * An error returned in rejected promises if the given key is not found in the table. + */ + class NotFound { + constructor(table, key) { + this.table = table; + this.key = key; + } + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + /** + * An implementation of a `Database` that uses the `CacheStorage` API to serialize + * state within mock `Response` objects. + */ + class CacheDatabase { + constructor(scope, adapter) { + this.scope = scope; + this.adapter = adapter; + this.tables = new Map(); + } + 'delete'(name) { + if (this.tables.has(name)) { + this.tables.delete(name); + } + return this.scope.caches.delete(`${this.adapter.cacheNamePrefix}:db:${name}`); + } + list() { + return this.scope.caches.keys().then(keys => keys.filter(key => key.startsWith(`${this.adapter.cacheNamePrefix}:db:`))); + } + open(name) { + if (!this.tables.has(name)) { + const table = this.scope.caches.open(`${this.adapter.cacheNamePrefix}:db:${name}`) + .then(cache => new CacheTable(name, cache, this.adapter)); + this.tables.set(name, table); + } + return this.tables.get(name); + } + } + /** + * A `Table` backed by a `Cache`. + */ + class CacheTable { + constructor(table, cache, adapter) { + this.table = table; + this.cache = cache; + this.adapter = adapter; + } + request(key) { return this.adapter.newRequest('/' + key); } + 'delete'(key) { return this.cache.delete(this.request(key)); } + keys() { + return this.cache.keys().then(requests => requests.map(req => req.url.substr(1))); + } + read(key) { + return this.cache.match(this.request(key)).then(res => { + if (res === undefined) { + return Promise.reject(new NotFound(this.table, key)); + } + return res.json(); + }); + } + write(key, value) { + return this.cache.put(this.request(key), this.adapter.newResponse(JSON.stringify(value))); + } + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + var UpdateCacheStatus; + (function (UpdateCacheStatus) { + UpdateCacheStatus[UpdateCacheStatus["NOT_CACHED"] = 0] = "NOT_CACHED"; + UpdateCacheStatus[UpdateCacheStatus["CACHED_BUT_UNUSED"] = 1] = "CACHED_BUT_UNUSED"; + UpdateCacheStatus[UpdateCacheStatus["CACHED"] = 2] = "CACHED"; + })(UpdateCacheStatus || (UpdateCacheStatus = {})); + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + class SwCriticalError extends Error { + constructor() { + super(...arguments); + this.isCritical = true; + } + } + function errorToString(error) { + if (error instanceof Error) { + return `${error.message}\n${error.stack}`; + } + else { + return `${error}`; + } + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + /** + * Compute the SHA1 of the given string + * + * see http://csrc.nist.gov/publications/fips/fips180-4/fips-180-4.pdf + * + * WARNING: this function has not been designed not tested with security in mind. + * DO NOT USE IT IN A SECURITY SENSITIVE CONTEXT. + * + * Borrowed from @angular/compiler/src/i18n/digest.ts + */ + function sha1(str) { + const utf8 = str; + const words32 = stringToWords32(utf8, Endian.Big); + return _sha1(words32, utf8.length * 8); + } + function sha1Binary(buffer) { + const words32 = arrayBufferToWords32(buffer, Endian.Big); + return _sha1(words32, buffer.byteLength * 8); + } + function _sha1(words32, len) { + const w = new Array(80); + let [a, b, c, d, e] = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0]; + words32[len >> 5] |= 0x80 << (24 - len % 32); + words32[((len + 64 >> 9) << 4) + 15] = len; + for (let i = 0; i < words32.length; i += 16) { + const [h0, h1, h2, h3, h4] = [a, b, c, d, e]; + for (let j = 0; j < 80; j++) { + if (j < 16) { + w[j] = words32[i + j]; + } + else { + w[j] = rol32(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1); + } + const [f, k] = fk(j, b, c, d); + const temp = [rol32(a, 5), f, e, k, w[j]].reduce(add32); + [e, d, c, b, a] = [d, c, rol32(b, 30), a, temp]; + } + [a, b, c, d, e] = [add32(a, h0), add32(b, h1), add32(c, h2), add32(d, h3), add32(e, h4)]; + } + return byteStringToHexString(words32ToByteString([a, b, c, d, e])); + } + function add32(a, b) { + return add32to64(a, b)[1]; + } + function add32to64(a, b) { + const low = (a & 0xffff) + (b & 0xffff); + const high = (a >>> 16) + (b >>> 16) + (low >>> 16); + return [high >>> 16, (high << 16) | (low & 0xffff)]; + } + // Rotate a 32b number left `count` position + function rol32(a, count) { + return (a << count) | (a >>> (32 - count)); + } + var Endian; + (function (Endian) { + Endian[Endian["Little"] = 0] = "Little"; + Endian[Endian["Big"] = 1] = "Big"; + })(Endian || (Endian = {})); + function fk(index, b, c, d) { + if (index < 20) { + return [(b & c) | (~b & d), 0x5a827999]; + } + if (index < 40) { + return [b ^ c ^ d, 0x6ed9eba1]; + } + if (index < 60) { + return [(b & c) | (b & d) | (c & d), 0x8f1bbcdc]; + } + return [b ^ c ^ d, 0xca62c1d6]; + } + function stringToWords32(str, endian) { + const words32 = Array((str.length + 3) >>> 2); + for (let i = 0; i < words32.length; i++) { + words32[i] = wordAt(str, i * 4, endian); + } + return words32; + } + function arrayBufferToWords32(buffer, endian) { + const words32 = Array((buffer.byteLength + 3) >>> 2); + const view = new Uint8Array(buffer); + for (let i = 0; i < words32.length; i++) { + words32[i] = wordAt(view, i * 4, endian); + } + return words32; + } + function byteAt(str, index) { + if (typeof str === 'string') { + return index >= str.length ? 0 : str.charCodeAt(index) & 0xff; + } + else { + return index >= str.byteLength ? 0 : str[index] & 0xff; + } + } + function wordAt(str, index, endian) { + let word = 0; + if (endian === Endian.Big) { + for (let i = 0; i < 4; i++) { + word += byteAt(str, index + i) << (24 - 8 * i); + } + } + else { + for (let i = 0; i < 4; i++) { + word += byteAt(str, index + i) << 8 * i; + } + } + return word; + } + function words32ToByteString(words32) { + return words32.reduce((str, word) => str + word32ToByteString(word), ''); + } + function word32ToByteString(word) { + let str = ''; + for (let i = 0; i < 4; i++) { + str += String.fromCharCode((word >>> 8 * (3 - i)) & 0xff); + } + return str; + } + function byteStringToHexString(str) { + let hex = ''; + for (let i = 0; i < str.length; i++) { + const b = byteAt(str, i); + hex += (b >>> 4).toString(16) + (b & 0x0f).toString(16); + } + return hex.toLowerCase(); + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + /** + * A group of assets that are cached in a `Cache` and managed by a given policy. + * + * Concrete classes derive from this base and specify the exact caching policy. + */ + class AssetGroup { + constructor(scope, adapter, idle, config, hashes, db, prefix) { + this.scope = scope; + this.adapter = adapter; + this.idle = idle; + this.config = config; + this.hashes = hashes; + this.db = db; + this.prefix = prefix; + /** + * A deduplication cache, to make sure the SW never makes two network requests + * for the same resource at once. Managed by `fetchAndCacheOnce`. + */ + this.inFlightRequests = new Map(); + /** + * Regular expression patterns. + */ + this.patterns = []; + this.name = config.name; + // Patterns in the config are regular expressions disguised as strings. Breathe life into them. + this.patterns = this.config.patterns.map(pattern => new RegExp(pattern)); + // This is the primary cache, which holds all of the cached requests for this group. If a + // resource + // isn't in this cache, it hasn't been fetched yet. + this.cache = this.scope.caches.open(`${this.prefix}:${this.config.name}:cache`); + // This is the metadata table, which holds specific information for each cached URL, such as + // the timestamp of when it was added to the cache. + this.metadata = this.db.open(`${this.prefix}:${this.config.name}:meta`); + // Determine the origin from the registration scope. This is used to differentiate between + // relative and absolute URLs. + this.origin = this.adapter.parseUrl(this.scope.registration.scope).origin; + } + cacheStatus(url) { + return __awaiter(this, void 0, void 0, function* () { + const cache = yield this.cache; + const meta = yield this.metadata; + const res = yield cache.match(this.adapter.newRequest(url)); + if (res === undefined) { + return UpdateCacheStatus.NOT_CACHED; + } + try { + const data = yield meta.read(url); + if (!data.used) { + return UpdateCacheStatus.CACHED_BUT_UNUSED; + } + } + catch (_) { + // Error on the side of safety and assume cached. + } + return UpdateCacheStatus.CACHED; + }); + } + /** + * Clean up all the cached data for this group. + */ + cleanup() { + return __awaiter(this, void 0, void 0, function* () { + yield this.scope.caches.delete(`${this.prefix}:${this.config.name}:cache`); + yield this.db.delete(`${this.prefix}:${this.config.name}:meta`); + }); + } + /** + * Process a request for a given resource and return it, or return null if it's not available. + */ + handleFetch(req, ctx) { + return __awaiter(this, void 0, void 0, function* () { + const url = this.getConfigUrl(req.url); + // Either the request matches one of the known resource URLs, one of the patterns for + // dynamically matched URLs, or neither. Determine which is the case for this request in + // order to decide how to handle it. + if (this.config.urls.indexOf(url) !== -1 || this.patterns.some(pattern => pattern.test(url))) { + // This URL matches a known resource. Either it's been cached already or it's missing, in + // which case it needs to be loaded from the network. + // Open the cache to check whether this resource is present. + const cache = yield this.cache; + // Look for a cached response. If one exists, it can be used to resolve the fetch + // operation. + const cachedResponse = yield cache.match(req); + if (cachedResponse !== undefined) { + // A response has already been cached (which presumably matches the hash for this + // resource). Check whether it's safe to serve this resource from cache. + if (this.hashes.has(url)) { + // This resource has a hash, and thus is versioned by the manifest. It's safe to return + // the response. + return cachedResponse; + } + else { + // This resource has no hash, and yet exists in the cache. Check how old this request is + // to make sure it's still usable. + if (yield this.needToRevalidate(req, cachedResponse)) { + this.idle.schedule(`revalidate(${this.prefix}, ${this.config.name}): ${req.url}`, () => __awaiter(this, void 0, void 0, function* () { yield this.fetchAndCacheOnce(req); })); + } + // In either case (revalidation or not), the cached response must be good. + return cachedResponse; + } + } + // No already-cached response exists, so attempt a fetch/cache operation. The original request + // may specify things like credential inclusion, but for assets these are not honored in order + // to avoid issues with opaque responses. The SW requests the data itself. + const res = yield this.fetchAndCacheOnce(this.adapter.newRequest(req.url)); + // If this is successful, the response needs to be cloned as it might be used to respond to + // multiple fetch operations at the same time. + return res.clone(); + } + else { + return null; + } + }); + } + getConfigUrl(url) { + // If the URL is relative to the SW's own origin, then only consider the path relative to + // the domain root. Determine this by checking the URL's origin against the SW's. + const parsed = this.adapter.parseUrl(url, this.scope.registration.scope); + if (parsed.origin === this.origin) { + // The URL is relative to the SW's origin domain. + return parsed.path; + } + else { + return url; + } + } + /** + * Some resources are cached without a hash, meaning that their expiration is controlled + * by HTTP caching headers. Check whether the given request/response pair is still valid + * per the caching headers. + */ + needToRevalidate(req, res) { + return __awaiter(this, void 0, void 0, function* () { + // Three different strategies apply here: + // 1) The request has a Cache-Control header, and thus expiration needs to be based on its age. + // 2) The request has an Expires header, and expiration is based on the current timestamp. + // 3) The request has no applicable caching headers, and must be revalidated. + if (res.headers.has('Cache-Control')) { + // Figure out if there is a max-age directive in the Cache-Control header. + const cacheControl = res.headers.get('Cache-Control'); + const cacheDirectives = cacheControl + // Directives are comma-separated within the Cache-Control header value. + .split(',') + // Make sure each directive doesn't have extraneous whitespace. + .map(v => v.trim()) + // Some directives have values (like maxage and s-maxage) + .map(v => v.split('=')); + // Lowercase all the directive names. + cacheDirectives.forEach(v => v[0] = v[0].toLowerCase()); + // Find the max-age directive, if one exists. + const maxAgeDirective = cacheDirectives.find(v => v[0] === 'max-age'); + const cacheAge = maxAgeDirective ? maxAgeDirective[1] : undefined; + if (!cacheAge) { + // No usable TTL defined. Must assume that the response is stale. + return true; + } + try { + const maxAge = 1000 * parseInt(cacheAge); + // Determine the origin time of this request. If the SW has metadata on the request (which + // it + // should), it will have the time the request was added to the cache. If it doesn't for some + // reason, the request may have a Date header which will serve the same purpose. + let ts; + try { + // Check the metadata table. If a timestamp is there, use it. + const metaTable = yield this.metadata; + ts = (yield metaTable.read(req.url)).ts; + } + catch (_a) { + // Otherwise, look for a Date header. + const date = res.headers.get('Date'); + if (date === null) { + // Unable to determine when this response was created. Assume that it's stale, and + // revalidate it. + return true; + } + ts = Date.parse(date); + } + const age = this.adapter.time - ts; + return age < 0 || age > maxAge; + } + catch (_b) { + // Assume stale. + return true; + } + } + else if (res.headers.has('Expires')) { + // Determine if the expiration time has passed. + const expiresStr = res.headers.get('Expires'); + try { + // The request needs to be revalidated if the current time is later than the expiration + // time, if it parses correctly. + return this.adapter.time > Date.parse(expiresStr); + } + catch (_c) { + // The expiration date failed to parse, so revalidate as a precaution. + return true; + } + } + else { + // No way to evaluate staleness, so assume the response is already stale. + return true; + } + }); + } + /** + * Fetch the complete state of a cached resource, or return null if it's not found. + */ + fetchFromCacheOnly(url) { + return __awaiter(this, void 0, void 0, function* () { + const cache = yield this.cache; + const metaTable = yield this.metadata; + // Lookup the response in the cache. + const response = yield cache.match(this.adapter.newRequest(url)); + if (response === undefined) { + // It's not found, return null. + return null; + } + // Next, lookup the cached metadata. + let metadata = undefined; + try { + metadata = yield metaTable.read(url); + } + catch (_a) { + // Do nothing, not found. This shouldn't happen, but it can be handled. + } + // Return both the response and any available metadata. + return { response, metadata }; + }); + } + /** + * Lookup all resources currently stored in the cache which have no associated hash. + */ + unhashedResources() { + return __awaiter(this, void 0, void 0, function* () { + const cache = yield this.cache; + // Start with the set of all cached URLs. + return (yield cache.keys()) + .map(request => request.url) + // Exclude the URLs which have hashes. + .filter(url => !this.hashes.has(url)); + }); + } + /** + * Fetch the given resource from the network, and cache it if able. + */ + fetchAndCacheOnce(req, used = true) { + return __awaiter(this, void 0, void 0, function* () { + // The `inFlightRequests` map holds information about which caching operations are currently + // underway for known resources. If this request appears there, another "thread" is already + // in the process of caching it, and this work should not be duplicated. + if (this.inFlightRequests.has(req.url)) { + // There is a caching operation already in progress for this request. Wait for it to + // complete, and hopefully it will have yielded a useful response. + return this.inFlightRequests.get(req.url); + } + // No other caching operation is being attempted for this resource, so it will be owned here. + // Go to the network and get the correct version. + const fetchOp = this.fetchFromNetwork(req); + // Save this operation in `inFlightRequests` so any other "thread" attempting to cache it + // will block on this chain instead of duplicating effort. + this.inFlightRequests.set(req.url, fetchOp); + // Make sure this attempt is cleaned up properly on failure. + try { + // Wait for a response. If this fails, the request will remain in `inFlightRequests` + // indefinitely. + const res = yield fetchOp; + // It's very important that only successful responses are cached. Unsuccessful responses + // should never be cached as this can completely break applications. + if (!res.ok) { + throw new Error(`Response not Ok (fetchAndCacheOnce): request for ${req.url} returned response ${res.status} ${res.statusText}`); + } + try { + // This response is safe to cache (as long as it's cloned). Wait until the cache operation + // is complete. + const cache = yield this.scope.caches.open(`${this.prefix}:${this.config.name}:cache`); + yield cache.put(req, res.clone()); + // If the request is not hashed, update its metadata, especially the timestamp. This is + // needed for future determination of whether this cached response is stale or not. + if (!this.hashes.has(req.url)) { + // Metadata is tracked for requests that are unhashed. + const meta = { ts: this.adapter.time, used }; + const metaTable = yield this.metadata; + yield metaTable.write(req.url, meta); + } + return res; + } + catch (err) { + // Among other cases, this can happen when the user clears all data through the DevTools, + // but the SW is still running and serving another tab. In that case, trying to write to the + // caches throws an `Entry was not found` error. + // If this happens the SW can no longer work correctly. This situation is unrecoverable. + throw new SwCriticalError(`Failed to update the caches for request to '${req.url}' (fetchAndCacheOnce): ${errorToString(err)}`); + } + } + finally { + // Finally, it can be removed from `inFlightRequests`. This might result in a double-remove + // if some other chain was already making this request too, but that won't hurt anything. + this.inFlightRequests.delete(req.url); + } + }); + } + fetchFromNetwork(req, redirectLimit = 3) { + return __awaiter(this, void 0, void 0, function* () { + // Make a cache-busted request for the resource. + const res = yield this.cacheBustedFetchFromNetwork(req); + // Check for redirected responses, and follow the redirects. + if (res['redirected'] && !!res.url) { + // If the redirect limit is exhausted, fail with an error. + if (redirectLimit === 0) { + throw new SwCriticalError(`Response hit redirect limit (fetchFromNetwork): request redirected too many times, next is ${res.url}`); + } + // Unwrap the redirect directly. + return this.fetchFromNetwork(this.adapter.newRequest(res.url), redirectLimit - 1); + } + return res; + }); + } + /** + * Load a particular asset from the network, accounting for hash validation. + */ + cacheBustedFetchFromNetwork(req) { + return __awaiter(this, void 0, void 0, function* () { + const url = this.getConfigUrl(req.url); + // If a hash is available for this resource, then compare the fetched version with the + // canonical hash. Otherwise, the network version will have to be trusted. + if (this.hashes.has(url)) { + // It turns out this resource does have a hash. Look it up. Unless the fetched version + // matches this hash, it's invalid and the whole manifest may need to be thrown out. + const canonicalHash = this.hashes.get(url); + // Ideally, the resource would be requested with cache-busting to guarantee the SW gets + // the freshest version. However, doing this would eliminate any chance of the response + // being in the HTTP cache. Given that the browser has recently actively loaded the page, + // it's likely that many of the responses the SW needs to cache are in the HTTP cache and + // are fresh enough to use. In the future, this could be done by setting cacheMode to + // *only* check the browser cache for a cached version of the resource, when cacheMode is + // fully supported. For now, the resource is fetched directly, without cache-busting, and + // if the hash test fails a cache-busted request is tried before concluding that the + // resource isn't correct. This gives the benefit of acceleration via the HTTP cache + // without the risk of stale data, at the expense of a duplicate request in the event of + // a stale response. + // Fetch the resource from the network (possibly hitting the HTTP cache). + const networkResult = yield this.safeFetch(req); + // Decide whether a cache-busted request is necessary. It might be for two independent + // reasons: either the non-cache-busted request failed (hopefully transiently) or if the + // hash of the content retrieved does not match the canonical hash from the manifest. It's + // only valid to access the content of the first response if the request was successful. + let makeCacheBustedRequest = networkResult.ok; + if (makeCacheBustedRequest) { + // The request was successful. A cache-busted request is only necessary if the hashes + // don't match. Compare them, making sure to clone the response so it can be used later + // if it proves to be valid. + const fetchedHash = sha1Binary(yield networkResult.clone().arrayBuffer()); + makeCacheBustedRequest = (fetchedHash !== canonicalHash); + } + // Make a cache busted request to the network, if necessary. + if (makeCacheBustedRequest) { + // Hash failure, the version that was retrieved under the default URL did not have the + // hash expected. This could be because the HTTP cache got in the way and returned stale + // data, or because the version on the server really doesn't match. A cache-busting + // request will differentiate these two situations. + // TODO: handle case where the URL has parameters already (unlikely for assets). + const cacheBustReq = this.adapter.newRequest(this.cacheBust(req.url)); + const cacheBustedResult = yield this.safeFetch(cacheBustReq); + // If the response was unsuccessful, there's nothing more that can be done. + if (!cacheBustedResult.ok) { + throw new SwCriticalError(`Response not Ok (cacheBustedFetchFromNetwork): cache busted request for ${req.url} returned response ${cacheBustedResult.status} ${cacheBustedResult.statusText}`); + } + // Hash the contents. + const cacheBustedHash = sha1Binary(yield cacheBustedResult.clone().arrayBuffer()); + // If the cache-busted version doesn't match, then the manifest is not an accurate + // representation of the server's current set of files, and the SW should give up. + if (canonicalHash !== cacheBustedHash) { + throw new SwCriticalError(`Hash mismatch (cacheBustedFetchFromNetwork): ${req.url}: expected ${canonicalHash}, got ${cacheBustedHash} (after cache busting)`); + } + // If it does match, then use the cache-busted result. + return cacheBustedResult; + } + // Excellent, the version from the network matched on the first try, with no need for + // cache-busting. Use it. + return networkResult; + } + else { + // This URL doesn't exist in our hash database, so it must be requested directly. + return this.safeFetch(req); + } + }); + } + /** + * Possibly update a resource, if it's expired and needs to be updated. A no-op otherwise. + */ + maybeUpdate(updateFrom, req, cache) { + return __awaiter(this, void 0, void 0, function* () { + const url = this.getConfigUrl(req.url); + const meta = yield this.metadata; + // Check if this resource is hashed and already exists in the cache of a prior version. + if (this.hashes.has(url)) { + const hash = this.hashes.get(url); + // Check the caches of prior versions, using the hash to ensure the correct version of + // the resource is loaded. + const res = yield updateFrom.lookupResourceWithHash(url, hash); + // If a previously cached version was available, copy it over to this cache. + if (res !== null) { + // Copy to this cache. + yield cache.put(req, res); + yield meta.write(req.url, { ts: this.adapter.time, used: false }); + // No need to do anything further with this resource, it's now cached properly. + return true; + } + } + // No up-to-date version of this resource could be found. + return false; + }); + } + /** + * Construct a cache-busting URL for a given URL. + */ + cacheBust(url) { + return url + (url.indexOf('?') === -1 ? '?' : '&') + 'ngsw-cache-bust=' + Math.random(); + } + safeFetch(req) { + return __awaiter(this, void 0, void 0, function* () { + try { + return yield this.scope.fetch(req); + } + catch (_a) { + return this.adapter.newResponse('', { + status: 504, + statusText: 'Gateway Timeout', + }); + } + }); + } + } + /** + * An `AssetGroup` that prefetches all of its resources during initialization. + */ + class PrefetchAssetGroup extends AssetGroup { + initializeFully(updateFrom) { + return __awaiter(this, void 0, void 0, function* () { + // Open the cache which actually holds requests. + const cache = yield this.cache; + // Cache all known resources serially. As this reduce proceeds, each Promise waits + // on the last before starting the fetch/cache operation for the next request. Any + // errors cause fall-through to the final Promise which rejects. + yield this.config.urls.reduce((previous, url) => __awaiter(this, void 0, void 0, function* () { + // Wait on all previous operations to complete. + yield previous; + // Construct the Request for this url. + const req = this.adapter.newRequest(url); + // First, check the cache to see if there is already a copy of this resource. + const alreadyCached = (yield cache.match(req)) !== undefined; + // If the resource is in the cache already, it can be skipped. + if (alreadyCached) { + return; + } + // If an update source is available. + if (updateFrom !== undefined && (yield this.maybeUpdate(updateFrom, req, cache))) { + return; + } + // Otherwise, go to the network and hopefully cache the response (if successful). + yield this.fetchAndCacheOnce(req, false); + }), Promise.resolve()); + // Handle updating of unknown (unhashed) resources. This is only possible if there's + // a source to update from. + if (updateFrom !== undefined) { + const metaTable = yield this.metadata; + // Select all of the previously cached resources. These are cached unhashed resources + // from previous versions of the app, in any asset group. + yield (yield updateFrom.previouslyCachedResources()) + // First, narrow down the set of resources to those which are handled by this group. + // Either it's a known URL, or it matches a given pattern. + .filter(url => this.config.urls.some(cacheUrl => cacheUrl === url) || + this.patterns.some(pattern => pattern.test(url))) + // Finally, process each resource in turn. + .reduce((previous, url) => __awaiter(this, void 0, void 0, function* () { + yield previous; + const req = this.adapter.newRequest(url); + // It's possible that the resource in question is already cached. If so, + // continue to the next one. + const alreadyCached = ((yield cache.match(req)) !== undefined); + if (alreadyCached) { + return; + } + // Get the most recent old version of the resource. + const res = yield updateFrom.lookupResourceWithoutHash(url); + if (res === null || res.metadata === undefined) { + // Unexpected, but not harmful. + return; + } + // Write it into the cache. It may already be expired, but it can still serve + // traffic until it's updated (stale-while-revalidate approach). + yield cache.put(req, res.response); + yield metaTable.write(url, Object.assign({}, res.metadata, { used: false })); + }), Promise.resolve()); + } + }); + } + } + class LazyAssetGroup extends AssetGroup { + initializeFully(updateFrom) { + return __awaiter(this, void 0, void 0, function* () { + // No action necessary if no update source is available - resources managed in this group + // are all lazily loaded, so there's nothing to initialize. + if (updateFrom === undefined) { + return; + } + // Open the cache which actually holds requests. + const cache = yield this.cache; + // Loop through the listed resources, caching any which are available. + yield this.config.urls.reduce((previous, url) => __awaiter(this, void 0, void 0, function* () { + // Wait on all previous operations to complete. + yield previous; + // Construct the Request for this url. + const req = this.adapter.newRequest(url); + // First, check the cache to see if there is already a copy of this resource. + const alreadyCached = (yield cache.match(req)) !== undefined; + // If the resource is in the cache already, it can be skipped. + if (alreadyCached) { + return; + } + const updated = yield this.maybeUpdate(updateFrom, req, cache); + if (this.config.updateMode === 'prefetch' && !updated) { + // If the resource was not updated, either it was not cached before or + // the previously cached version didn't match the updated hash. In that + // case, prefetch update mode dictates that the resource will be updated, + // except if it was not previously utilized. Check the status of the + // cached resource to see. + const cacheStatus = yield updateFrom.recentCacheStatus(url); + // If the resource is not cached, or was cached but unused, then it will be + // loaded lazily. + if (cacheStatus !== UpdateCacheStatus.CACHED) { + return; + } + // Update from the network. + yield this.fetchAndCacheOnce(req, false); + } + }), Promise.resolve()); + }); + } + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + var __awaiter$1 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + /** + * Manages an instance of `LruState` and moves URLs to the head of the + * chain when requested. + */ + class LruList { + constructor(state) { + if (state === undefined) { + state = { + head: null, + tail: null, + map: {}, + count: 0, + }; + } + this.state = state; + } + /** + * The current count of URLs in the list. + */ + get size() { return this.state.count; } + /** + * Remove the tail. + */ + pop() { + // If there is no tail, return null. + if (this.state.tail === null) { + return null; + } + const url = this.state.tail; + this.remove(url); + // This URL has been successfully evicted. + return url; + } + remove(url) { + const node = this.state.map[url]; + if (node === undefined) { + return false; + } + // Special case if removing the current head. + if (this.state.head === url) { + // The node is the current head. Special case the removal. + if (node.next === null) { + // This is the only node. Reset the cache to be empty. + this.state.head = null; + this.state.tail = null; + this.state.map = {}; + this.state.count = 0; + return true; + } + // There is at least one other node. Make the next node the new head. + const next = this.state.map[node.next]; + next.previous = null; + this.state.head = next.url; + node.next = null; + delete this.state.map[url]; + this.state.count--; + return true; + } + // The node is not the head, so it has a previous. It may or may not be the tail. + // If it is not, then it has a next. First, grab the previous node. + const previous = this.state.map[node.previous]; + // Fix the forward pointer to skip over node and go directly to node.next. + previous.next = node.next; + // node.next may or may not be set. If it is, fix the back pointer to skip over node. + // If it's not set, then this node happened to be the tail, and the tail needs to be + // updated to point to the previous node (removing the tail). + if (node.next !== null) { + // There is a next node, fix its back pointer to skip this node. + this.state.map[node.next].previous = node.previous; + } + else { + // There is no next node - the accessed node must be the tail. Move the tail pointer. + this.state.tail = node.previous; + } + node.next = null; + node.previous = null; + delete this.state.map[url]; + // Count the removal. + this.state.count--; + return true; + } + accessed(url) { + // When a URL is accessed, its node needs to be moved to the head of the chain. + // This is accomplished in two steps: + // + // 1) remove the node from its position within the chain. + // 2) insert the node as the new head. + // + // Sometimes, a URL is accessed which has not been seen before. In this case, step 1 can + // be skipped completely (which will grow the chain by one). Of course, if the node is + // already the head, this whole operation can be skipped. + if (this.state.head === url) { + // The URL is already in the head position, accessing it is a no-op. + return; + } + // Look up the node in the map, and construct a new entry if it's + const node = this.state.map[url] || { url, next: null, previous: null }; + // Step 1: remove the node from its position within the chain, if it is in the chain. + if (this.state.map[url] !== undefined) { + this.remove(url); + } + // Step 2: insert the node at the head of the chain. + // First, check if there's an existing head node. If there is, it has previous: null. + // Its previous pointer should be set to the node we're inserting. + if (this.state.head !== null) { + this.state.map[this.state.head].previous = url; + } + // The next pointer of the node being inserted gets set to the old head, before the head + // pointer is updated to this node. + node.next = this.state.head; + // The new head is the new node. + this.state.head = url; + // If there is no tail, then this is the first node, and is both the head and the tail. + if (this.state.tail === null) { + this.state.tail = url; + } + // Set the node in the map of nodes (if the URL has been seen before, this is a no-op) + // and count the insertion. + this.state.map[url] = node; + this.state.count++; + } + } + /** + * A group of cached resources determined by a set of URL patterns which follow a LRU policy + * for caching. + */ + class DataGroup { + constructor(scope, adapter, config, db, prefix) { + this.scope = scope; + this.adapter = adapter; + this.config = config; + this.db = db; + this.prefix = prefix; + /** + * Tracks the LRU state of resources in this cache. + */ + this._lru = null; + this.patterns = this.config.patterns.map(pattern => new RegExp(pattern)); + this.cache = this.scope.caches.open(`${this.prefix}:dynamic:${this.config.name}:cache`); + this.lruTable = this.db.open(`${this.prefix}:dynamic:${this.config.name}:lru`); + this.ageTable = this.db.open(`${this.prefix}:dynamic:${this.config.name}:age`); + } + /** + * Lazily initialize/load the LRU chain. + */ + lru() { + return __awaiter$1(this, void 0, void 0, function* () { + if (this._lru === null) { + const table = yield this.lruTable; + try { + this._lru = new LruList(yield table.read('lru')); + } + catch (_a) { + this._lru = new LruList(); + } + } + return this._lru; + }); + } + /** + * Sync the LRU chain to non-volatile storage. + */ + syncLru() { + return __awaiter$1(this, void 0, void 0, function* () { + if (this._lru === null) { + return; + } + const table = yield this.lruTable; + return table.write('lru', this._lru.state); + }); + } + /** + * Process a fetch event and return a `Response` if the resource is covered by this group, + * or `null` otherwise. + */ + handleFetch(req, ctx) { + return __awaiter$1(this, void 0, void 0, function* () { + // Do nothing + if (!this.patterns.some(pattern => pattern.test(req.url))) { + return null; + } + // Lazily initialize the LRU cache. + const lru = yield this.lru(); + // The URL matches this cache. First, check whether this is a mutating request or not. + switch (req.method) { + case 'OPTIONS': + // Don't try to cache this - it's non-mutating, but is part of a mutating request. + // Most likely SWs don't even see this, but this guard is here just in case. + return null; + case 'GET': + case 'HEAD': + // Handle the request with whatever strategy was selected. + switch (this.config.strategy) { + case 'freshness': + return this.handleFetchWithFreshness(req, ctx, lru); + case 'performance': + return this.handleFetchWithPerformance(req, ctx, lru); + default: + throw new Error(`Unknown strategy: ${this.config.strategy}`); + } + default: + // This was a mutating request. Assume the cache for this URL is no longer valid. + const wasCached = lru.remove(req.url); + // If there was a cached entry, remove it. + if (wasCached) { + yield this.clearCacheForUrl(req.url); + } + // Sync the LRU chain to non-volatile storage. + yield this.syncLru(); + // Finally, fall back on the network. + return this.safeFetch(req); + } + }); + } + handleFetchWithPerformance(req, ctx, lru) { + return __awaiter$1(this, void 0, void 0, function* () { + let res = null; + // Check the cache first. If the resource exists there (and is not expired), the cached + // version can be used. + const fromCache = yield this.loadFromCache(req, lru); + if (fromCache !== null) { + res = fromCache.res; + // Check the age of the resource. + if (this.config.refreshAheadMs !== undefined && fromCache.age >= this.config.refreshAheadMs) { + ctx.waitUntil(this.safeCacheResponse(req, this.safeFetch(req))); + } + } + if (res !== null) { + return res; + } + // No match from the cache. Go to the network. Note that this is not an 'await' + // call, networkFetch is the actual Promise. This is due to timeout handling. + const [timeoutFetch, networkFetch] = this.networkFetchWithTimeout(req); + res = yield timeoutFetch; + // Since fetch() will always return a response, undefined indicates a timeout. + if (res === undefined) { + // The request timed out. Return a Gateway Timeout error. + res = this.adapter.newResponse(null, { status: 504, statusText: 'Gateway Timeout' }); + // Cache the network response eventually. + ctx.waitUntil(this.safeCacheResponse(req, networkFetch)); + } + // The request completed in time, so cache it inline with the response flow. + yield this.cacheResponse(req, res, lru); + return res; + }); + } + handleFetchWithFreshness(req, ctx, lru) { + return __awaiter$1(this, void 0, void 0, function* () { + // Start with a network fetch. + const [timeoutFetch, networkFetch] = this.networkFetchWithTimeout(req); + let res; + // If that fetch errors, treat it as a timed out request. + try { + res = yield timeoutFetch; + } + catch (_a) { + res = undefined; + } + // If the network fetch times out or errors, fall back on the cache. + if (res === undefined) { + ctx.waitUntil(this.safeCacheResponse(req, networkFetch)); + // Ignore the age, the network response will be cached anyway due to the + // behavior of freshness. + const fromCache = yield this.loadFromCache(req, lru); + res = (fromCache !== null) ? fromCache.res : null; + } + else { + yield this.cacheResponse(req, res, lru, true); + } + // Either the network fetch didn't time out, or the cache yielded a usable response. + // In either case, use it. + if (res !== null) { + return res; + } + // No response in the cache. No choice but to fall back on the full network fetch. + res = yield networkFetch; + yield this.cacheResponse(req, res, lru, true); + return res; + }); + } + networkFetchWithTimeout(req) { + // If there is a timeout configured, race a timeout Promise with the network fetch. + // Otherwise, just fetch from the network directly. + if (this.config.timeoutMs !== undefined) { + const networkFetch = this.scope.fetch(req); + const safeNetworkFetch = (() => __awaiter$1(this, void 0, void 0, function* () { + try { + return yield networkFetch; + } + catch (_a) { + return this.adapter.newResponse(null, { + status: 504, + statusText: 'Gateway Timeout', + }); + } + }))(); + const networkFetchUndefinedError = (() => __awaiter$1(this, void 0, void 0, function* () { + try { + return yield networkFetch; + } + catch (_b) { + return undefined; + } + }))(); + // Construct a Promise for the timeout. + const timeout = this.adapter.timeout(this.config.timeoutMs); + // Race that with the network fetch. This will either be a Response, or `undefined` + // in the event that the request errored or timed out. + return [Promise.race([networkFetchUndefinedError, timeout]), safeNetworkFetch]; + } + else { + const networkFetch = this.safeFetch(req); + // Do a plain fetch. + return [networkFetch, networkFetch]; + } + } + safeCacheResponse(req, res) { + return __awaiter$1(this, void 0, void 0, function* () { + try { + yield this.cacheResponse(req, yield res, yield this.lru()); + } + catch (_a) { + // TODO: handle this error somehow? + } + }); + } + loadFromCache(req, lru) { + return __awaiter$1(this, void 0, void 0, function* () { + // Look for a response in the cache. If one exists, return it. + const cache = yield this.cache; + let res = yield cache.match(req); + if (res !== undefined) { + // A response was found in the cache, but its age is not yet known. Look it up. + try { + const ageTable = yield this.ageTable; + const age = this.adapter.time - (yield ageTable.read(req.url)).age; + // If the response is young enough, use it. + if (age <= this.config.maxAge) { + // Successful match from the cache. Use the response, after marking it as having + // been accessed. + lru.accessed(req.url); + return { res, age }; + } + // Otherwise, or if there was an error, assume the response is expired, and evict it. + } + catch (_a) { + // Some error getting the age for the response. Assume it's expired. + } + lru.remove(req.url); + yield this.clearCacheForUrl(req.url); + // TODO: avoid duplicate in event of network timeout, maybe. + yield this.syncLru(); + } + return null; + }); + } + /** + * Operation for caching the response from the server. This has to happen all + * at once, so that the cache and LRU tracking remain in sync. If the network request + * completes before the timeout, this logic will be run inline with the response flow. + * If the request times out on the server, an error will be returned but the real network + * request will still be running in the background, to be cached when it completes. + */ + cacheResponse(req, res, lru, okToCacheOpaque = false) { + return __awaiter$1(this, void 0, void 0, function* () { + // Only cache successful responses. + if (!res.ok || (okToCacheOpaque && res.type === 'opaque')) { + return; + } + // If caching this response would make the cache exceed its maximum size, evict something + // first. + if (lru.size >= this.config.maxSize) { + // The cache is too big, evict something. + const evictedUrl = lru.pop(); + if (evictedUrl !== null) { + yield this.clearCacheForUrl(evictedUrl); + } + } + // TODO: evaluate for possible race conditions during flaky network periods. + // Mark this resource as having been accessed recently. This ensures it won't be evicted + // until enough other resources are requested that it falls off the end of the LRU chain. + lru.accessed(req.url); + // Store the response in the cache (cloning because the browser will consume + // the body during the caching operation). + yield (yield this.cache).put(req, res.clone()); + // Store the age of the cache. + const ageTable = yield this.ageTable; + yield ageTable.write(req.url, { age: this.adapter.time }); + // Sync the LRU chain to non-volatile storage. + yield this.syncLru(); + }); + } + /** + * Delete all of the saved state which this group uses to track resources. + */ + cleanup() { + return __awaiter$1(this, void 0, void 0, function* () { + // Remove both the cache and the database entries which track LRU stats. + yield Promise.all([ + this.scope.caches.delete(`${this.prefix}:dynamic:${this.config.name}:cache`), + this.db.delete(`${this.prefix}:dynamic:${this.config.name}:age`), + this.db.delete(`${this.prefix}:dynamic:${this.config.name}:lru`), + ]); + }); + } + /** + * Clear the state of the cache for a particular resource. + * + * This doesn't remove the resource from the LRU table, that is assumed to have + * been done already. This clears the GET and HEAD versions of the request from + * the cache itself, as well as the metadata stored in the age table. + */ + clearCacheForUrl(url) { + return __awaiter$1(this, void 0, void 0, function* () { + const [cache, ageTable] = yield Promise.all([this.cache, this.ageTable]); + yield Promise.all([ + cache.delete(this.adapter.newRequest(url, { method: 'GET' })), + cache.delete(this.adapter.newRequest(url, { method: 'HEAD' })), + ageTable.delete(url), + ]); + }); + } + safeFetch(req) { + return __awaiter$1(this, void 0, void 0, function* () { + try { + return this.scope.fetch(req); + } + catch (_a) { + return this.adapter.newResponse(null, { + status: 504, + statusText: 'Gateway Timeout', + }); + } + }); + } + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + var __awaiter$2 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + const BACKWARDS_COMPATIBILITY_NAVIGATION_URLS = [ + { positive: true, regex: '^/.*$' }, + { positive: false, regex: '^/.*\\.[^/]*$' }, + { positive: false, regex: '^/.*__' }, + ]; + /** + * A specific version of the application, identified by a unique manifest + * as determined by its hash. + * + * Each `AppVersion` can be thought of as a published version of the app + * that can be installed as an update to any previously installed versions. + */ + class AppVersion { + constructor(scope, adapter, database, idle, manifest, manifestHash) { + this.scope = scope; + this.adapter = adapter; + this.database = database; + this.idle = idle; + this.manifest = manifest; + this.manifestHash = manifestHash; + /** + * A Map of absolute URL paths (/foo.txt) to the known hash of their + * contents (if available). + */ + this.hashTable = new Map(); + /** + * Tracks whether the manifest has encountered any inconsistencies. + */ + this._okay = true; + // The hashTable within the manifest is an Object - convert it to a Map for easier lookups. + Object.keys(this.manifest.hashTable).forEach(url => { + this.hashTable.set(url, this.manifest.hashTable[url]); + }); + // Process each `AssetGroup` declared in the manifest. Each declared group gets an `AssetGroup` + // instance + // created for it, of a type that depends on the configuration mode. + this.assetGroups = (manifest.assetGroups || []).map(config => { + // Every asset group has a cache that's prefixed by the manifest hash and the name of the + // group. + const prefix = `${adapter.cacheNamePrefix}:${this.manifestHash}:assets`; + // Check the caching mode, which determines when resources will be fetched/updated. + switch (config.installMode) { + case 'prefetch': + return new PrefetchAssetGroup(this.scope, this.adapter, this.idle, config, this.hashTable, this.database, prefix); + case 'lazy': + return new LazyAssetGroup(this.scope, this.adapter, this.idle, config, this.hashTable, this.database, prefix); + } + }); + // Process each `DataGroup` declared in the manifest. + this.dataGroups = (manifest.dataGroups || []) + .map(config => new DataGroup(this.scope, this.adapter, config, this.database, `${adapter.cacheNamePrefix}:${config.version}:data`)); + // This keeps backwards compatibility with app versions without navigation urls. + // Fix: https://github.com/angular/angular/issues/27209 + manifest.navigationUrls = manifest.navigationUrls || BACKWARDS_COMPATIBILITY_NAVIGATION_URLS; + // Create `include`/`exclude` RegExps for the `navigationUrls` declared in the manifest. + const includeUrls = manifest.navigationUrls.filter(spec => spec.positive); + const excludeUrls = manifest.navigationUrls.filter(spec => !spec.positive); + this.navigationUrls = { + include: includeUrls.map(spec => new RegExp(spec.regex)), + exclude: excludeUrls.map(spec => new RegExp(spec.regex)), + }; + } + get okay() { return this._okay; } + /** + * Fully initialize this version of the application. If this Promise resolves successfully, all + * required + * data has been safely downloaded. + */ + initializeFully(updateFrom) { + return __awaiter$2(this, void 0, void 0, function* () { + try { + // Fully initialize each asset group, in series. Starts with an empty Promise, + // and waits for the previous groups to have been initialized before initializing + // the next one in turn. + yield this.assetGroups.reduce((previous, group) => __awaiter$2(this, void 0, void 0, function* () { + // Wait for the previous groups to complete initialization. If there is a + // failure, this will throw, and each subsequent group will throw, until the + // whole sequence fails. + yield previous; + // Initialize this group. + return group.initializeFully(updateFrom); + }), Promise.resolve()); + } + catch (err) { + this._okay = false; + throw err; + } + }); + } + handleFetch(req, context) { + return __awaiter$2(this, void 0, void 0, function* () { + // Check the request against each `AssetGroup` in sequence. If an `AssetGroup` can't handle the + // request, + // it will return `null`. Thus, the first non-null response is the SW's answer to the request. + // So reduce + // the group list, keeping track of a possible response. If there is one, it gets passed + // through, and if + // not the next group is consulted to produce a candidate response. + const asset = yield this.assetGroups.reduce((potentialResponse, group) => __awaiter$2(this, void 0, void 0, function* () { + // Wait on the previous potential response. If it's not null, it should just be passed + // through. + const resp = yield potentialResponse; + if (resp !== null) { + return resp; + } + // No response has been found yet. Maybe this group will have one. + return group.handleFetch(req, context); + }), Promise.resolve(null)); + // The result of the above is the asset response, if there is any, or null otherwise. Return the + // asset + // response if there was one. If not, check with the data caching groups. + if (asset !== null) { + return asset; + } + // Perform the same reduction operation as above, but this time processing + // the data caching groups. + const data = yield this.dataGroups.reduce((potentialResponse, group) => __awaiter$2(this, void 0, void 0, function* () { + const resp = yield potentialResponse; + if (resp !== null) { + return resp; + } + return group.handleFetch(req, context); + }), Promise.resolve(null)); + // If the data caching group returned a response, go with it. + if (data !== null) { + return data; + } + // Next, check if this is a navigation request for a route. Detect circular + // navigations by checking if the request URL is the same as the index URL. + if (req.url !== this.manifest.index && this.isNavigationRequest(req)) { + // This was a navigation request. Re-enter `handleFetch` with a request for + // the URL. + return this.handleFetch(this.adapter.newRequest(this.manifest.index), context); + } + return null; + }); + } + /** + * Determine whether the request is a navigation request. + * Takes into account: Request mode, `Accept` header, `navigationUrls` patterns. + */ + isNavigationRequest(req) { + if (req.mode !== 'navigate') { + return false; + } + if (!this.acceptsTextHtml(req)) { + return false; + } + const urlPrefix = this.scope.registration.scope.replace(/\/$/, ''); + const url = req.url.startsWith(urlPrefix) ? req.url.substr(urlPrefix.length) : req.url; + const urlWithoutQueryOrHash = url.replace(/[?#].*$/, ''); + return this.navigationUrls.include.some(regex => regex.test(urlWithoutQueryOrHash)) && + !this.navigationUrls.exclude.some(regex => regex.test(urlWithoutQueryOrHash)); + } + /** + * Check this version for a given resource with a particular hash. + */ + lookupResourceWithHash(url, hash) { + return __awaiter$2(this, void 0, void 0, function* () { + // Verify that this version has the requested resource cached. If not, + // there's no point in trying. + if (!this.hashTable.has(url)) { + return null; + } + // Next, check whether the resource has the correct hash. If not, any cached + // response isn't usable. + if (this.hashTable.get(url) !== hash) { + return null; + } + const cacheState = yield this.lookupResourceWithoutHash(url); + return cacheState && cacheState.response; + }); + } + /** + * Check this version for a given resource regardless of its hash. + */ + lookupResourceWithoutHash(url) { + // Limit the search to asset groups, and only scan the cache, don't + // load resources from the network. + return this.assetGroups.reduce((potentialResponse, group) => __awaiter$2(this, void 0, void 0, function* () { + const resp = yield potentialResponse; + if (resp !== null) { + return resp; + } + // fetchFromCacheOnly() avoids any network fetches, and returns the + // full set of cache data, not just the Response. + return group.fetchFromCacheOnly(url); + }), Promise.resolve(null)); + } + /** + * List all unhashed resources from all asset groups. + */ + previouslyCachedResources() { + return this.assetGroups.reduce((resources, group) => __awaiter$2(this, void 0, void 0, function* () { + return (yield resources).concat(yield group.unhashedResources()); + }), Promise.resolve([])); + } + recentCacheStatus(url) { + return __awaiter$2(this, void 0, void 0, function* () { + return this.assetGroups.reduce((current, group) => __awaiter$2(this, void 0, void 0, function* () { + const status = yield current; + if (status === UpdateCacheStatus.CACHED) { + return status; + } + const groupStatus = yield group.cacheStatus(url); + if (groupStatus === UpdateCacheStatus.NOT_CACHED) { + return status; + } + return groupStatus; + }), Promise.resolve(UpdateCacheStatus.NOT_CACHED)); + }); + } + /** + * Erase this application version, by cleaning up all the caches. + */ + cleanup() { + return __awaiter$2(this, void 0, void 0, function* () { + yield Promise.all(this.assetGroups.map(group => group.cleanup())); + yield Promise.all(this.dataGroups.map(group => group.cleanup())); + }); + } + /** + * Get the opaque application data which was provided with the manifest. + */ + get appData() { return this.manifest.appData || null; } + /** + * Check whether a request accepts `text/html` (based on the `Accept` header). + */ + acceptsTextHtml(req) { + const accept = req.headers.get('Accept'); + if (accept === null) { + return false; + } + const values = accept.split(','); + return values.some(value => value.trim().toLowerCase() === 'text/html'); + } + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + var __awaiter$3 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + const DEBUG_LOG_BUFFER_SIZE = 100; + class DebugHandler { + constructor(driver, adapter) { + this.driver = driver; + this.adapter = adapter; + // There are two debug log message arrays. debugLogA records new debugging messages. + // Once it reaches DEBUG_LOG_BUFFER_SIZE, the array is moved to debugLogB and a new + // array is assigned to debugLogA. This ensures that insertion to the debug log is + // always O(1) no matter the number of logged messages, and that the total number + // of messages in the log never exceeds 2 * DEBUG_LOG_BUFFER_SIZE. + this.debugLogA = []; + this.debugLogB = []; + } + handleFetch(req) { + return __awaiter$3(this, void 0, void 0, function* () { + const [state, versions, idle] = yield Promise.all([ + this.driver.debugState(), + this.driver.debugVersions(), + this.driver.debugIdleState(), + ]); + const msgState = `NGSW Debug Info: + +Driver state: ${state.state} (${state.why}) +Latest manifest hash: ${state.latestHash || 'none'} +Last update check: ${this.since(state.lastUpdateCheck)}`; + const msgVersions = versions + .map(version => `=== Version ${version.hash} === + +Clients: ${version.clients.join(', ')}`) + .join('\n\n'); + const msgIdle = `=== Idle Task Queue === +Last update tick: ${this.since(idle.lastTrigger)} +Last update run: ${this.since(idle.lastRun)} +Task queue: +${idle.queue.map(v => ' * ' + v).join('\n')} + +Debug log: +${this.formatDebugLog(this.debugLogB)} +${this.formatDebugLog(this.debugLogA)} +`; + return this.adapter.newResponse(`${msgState} + +${msgVersions} + +${msgIdle}`, { headers: this.adapter.newHeaders({ 'Content-Type': 'text/plain' }) }); + }); + } + since(time) { + if (time === null) { + return 'never'; + } + let age = this.adapter.time - time; + const days = Math.floor(age / 86400000); + age = age % 86400000; + const hours = Math.floor(age / 3600000); + age = age % 3600000; + const minutes = Math.floor(age / 60000); + age = age % 60000; + const seconds = Math.floor(age / 1000); + const millis = age % 1000; + return '' + (days > 0 ? `${days}d` : '') + (hours > 0 ? `${hours}h` : '') + + (minutes > 0 ? `${minutes}m` : '') + (seconds > 0 ? `${seconds}s` : '') + + (millis > 0 ? `${millis}u` : ''); + } + log(value, context = '') { + // Rotate the buffers if debugLogA has grown too large. + if (this.debugLogA.length === DEBUG_LOG_BUFFER_SIZE) { + this.debugLogB = this.debugLogA; + this.debugLogA = []; + } + // Convert errors to string for logging. + if (typeof value !== 'string') { + value = this.errorToString(value); + } + // Log the message. + this.debugLogA.push({ value, time: this.adapter.time, context }); + } + errorToString(err) { return `${err.name}(${err.message}, ${err.stack})`; } + formatDebugLog(log) { + return log.map(entry => `[${this.since(entry.time)}] ${entry.value} ${entry.context}`) + .join('\n'); + } + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + var __awaiter$4 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + class IdleScheduler { + constructor(adapter, threshold, debug) { + this.adapter = adapter; + this.threshold = threshold; + this.debug = debug; + this.queue = []; + this.scheduled = null; + this.empty = Promise.resolve(); + this.emptyResolve = null; + this.lastTrigger = null; + this.lastRun = null; + } + trigger() { + return __awaiter$4(this, void 0, void 0, function* () { + this.lastTrigger = this.adapter.time; + if (this.queue.length === 0) { + return; + } + if (this.scheduled !== null) { + this.scheduled.cancel = true; + } + const scheduled = { + cancel: false, + }; + this.scheduled = scheduled; + yield this.adapter.timeout(this.threshold); + if (scheduled.cancel) { + return; + } + this.scheduled = null; + yield this.execute(); + }); + } + execute() { + return __awaiter$4(this, void 0, void 0, function* () { + this.lastRun = this.adapter.time; + while (this.queue.length > 0) { + const queue = this.queue; + this.queue = []; + yield queue.reduce((previous, task) => __awaiter$4(this, void 0, void 0, function* () { + yield previous; + try { + yield task.run(); + } + catch (err) { + this.debug.log(err, `while running idle task ${task.desc}`); + } + }), Promise.resolve()); + } + if (this.emptyResolve !== null) { + this.emptyResolve(); + this.emptyResolve = null; + } + this.empty = Promise.resolve(); + }); + } + schedule(desc, run) { + this.queue.push({ desc, run }); + if (this.emptyResolve === null) { + this.empty = new Promise(resolve => { this.emptyResolve = resolve; }); + } + } + get size() { return this.queue.length; } + get taskDescriptions() { return this.queue.map(task => task.desc); } + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + function hashManifest(manifest) { + return sha1(JSON.stringify(manifest)); + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + function isMsgCheckForUpdates(msg) { + return msg.action === 'CHECK_FOR_UPDATES'; + } + function isMsgActivateUpdate(msg) { + return msg.action === 'ACTIVATE_UPDATE'; + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + var __awaiter$5 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + const IDLE_THRESHOLD = 5000; + const SUPPORTED_CONFIG_VERSION = 1; + const NOTIFICATION_OPTION_NAMES = [ + 'actions', 'badge', 'body', 'data', 'dir', 'icon', 'image', 'lang', 'renotify', + 'requireInteraction', 'silent', 'tag', 'timestamp', 'title', 'vibrate' + ]; + var DriverReadyState; + (function (DriverReadyState) { + // The SW is operating in a normal mode, responding to all traffic. + DriverReadyState[DriverReadyState["NORMAL"] = 0] = "NORMAL"; + // The SW does not have a clean installation of the latest version of the app, but older + // cached versions are safe to use so long as they don't try to fetch new dependencies. + // This is a degraded state. + DriverReadyState[DriverReadyState["EXISTING_CLIENTS_ONLY"] = 1] = "EXISTING_CLIENTS_ONLY"; + // The SW has decided that caching is completely unreliable, and is forgoing request + // handling until the next restart. + DriverReadyState[DriverReadyState["SAFE_MODE"] = 2] = "SAFE_MODE"; + })(DriverReadyState || (DriverReadyState = {})); + class Driver { + constructor(scope, adapter, db) { + // Set up all the event handlers that the SW needs. + this.scope = scope; + this.adapter = adapter; + this.db = db; + /** + * Tracks the current readiness condition under which the SW is operating. This controls + * whether the SW attempts to respond to some or all requests. + */ + this.state = DriverReadyState.NORMAL; + this.stateMessage = '(nominal)'; + /** + * Tracks whether the SW is in an initialized state or not. Before initialization, + * it's not legal to respond to requests. + */ + this.initialized = null; + /** + * Maps client IDs to the manifest hash of the application version being used to serve + * them. If a client ID is not present here, it has not yet been assigned a version. + * + * If a ManifestHash appears here, it is also present in the `versions` map below. + */ + this.clientVersionMap = new Map(); + /** + * Maps manifest hashes to instances of `AppVersion` for those manifests. + */ + this.versions = new Map(); + /** + * The latest version fetched from the server. + * + * Valid after initialization has completed. + */ + this.latestHash = null; + this.lastUpdateCheck = null; + /** + * Whether there is a check for updates currently scheduled due to navigation. + */ + this.scheduledNavUpdateCheck = false; + /** + * Keep track of whether we have logged an invalid `only-if-cached` request. + * (See `.onFetch()` for details.) + */ + this.loggedInvalidOnlyIfCachedRequest = false; + // The install event is triggered when the service worker is first installed. + this.scope.addEventListener('install', (event) => { + // SW code updates are separate from application updates, so code updates are + // almost as straightforward as restarting the SW. Because of this, it's always + // safe to skip waiting until application tabs are closed, and activate the new + // SW version immediately. + event.waitUntil(this.scope.skipWaiting()); + }); + // The activate event is triggered when this version of the service worker is + // first activated. + this.scope.addEventListener('activate', (event) => { + event.waitUntil((() => __awaiter$5(this, void 0, void 0, function* () { + // As above, it's safe to take over from existing clients immediately, since the new SW + // version will continue to serve the old application. + yield this.scope.clients.claim(); + // Once all clients have been taken over, we can delete caches used by old versions of + // `@angular/service-worker`, which are no longer needed. This can happen in the background. + this.idle.schedule('activate: cleanup-old-sw-caches', () => __awaiter$5(this, void 0, void 0, function* () { + try { + yield this.cleanupOldSwCaches(); + } + catch (err) { + // Nothing to do - cleanup failed. Just log it. + this.debugger.log(err, 'cleanupOldSwCaches @ activate: cleanup-old-sw-caches'); + } + })); + }))()); + // Rather than wait for the first fetch event, which may not arrive until + // the next time the application is loaded, the SW takes advantage of the + // activation event to schedule initialization. However, if this were run + // in the context of the 'activate' event, waitUntil() here would cause fetch + // events to block until initialization completed. Thus, the SW does a + // postMessage() to itself, to schedule a new event loop iteration with an + // entirely separate event context. The SW will be kept alive by waitUntil() + // within that separate context while initialization proceeds, while at the + // same time the activation event is allowed to resolve and traffic starts + // being served. + if (this.scope.registration.active !== null) { + this.scope.registration.active.postMessage({ action: 'INITIALIZE' }); + } + }); + // Handle the fetch, message, and push events. + this.scope.addEventListener('fetch', (event) => this.onFetch(event)); + this.scope.addEventListener('message', (event) => this.onMessage(event)); + this.scope.addEventListener('push', (event) => this.onPush(event)); + this.scope.addEventListener('notificationclick', (event) => this.onClick(event)); + // The debugger generates debug pages in response to debugging requests. + this.debugger = new DebugHandler(this, this.adapter); + // The IdleScheduler will execute idle tasks after a given delay. + this.idle = new IdleScheduler(this.adapter, IDLE_THRESHOLD, this.debugger); + } + /** + * The handler for fetch events. + * + * This is the transition point between the synchronous event handler and the + * asynchronous execution that eventually resolves for respondWith() and waitUntil(). + */ + onFetch(event) { + const req = event.request; + const scopeUrl = this.scope.registration.scope; + const requestUrlObj = this.adapter.parseUrl(req.url, scopeUrl); + if (req.headers.has('ngsw-bypass') || /[?&]ngsw-bypass(?:[=&]|$)/i.test(requestUrlObj.search)) { + return; + } + // The only thing that is served unconditionally is the debug page. + if (requestUrlObj.path === '/ngsw/state') { + // Allow the debugger to handle the request, but don't affect SW state in any other way. + event.respondWith(this.debugger.handleFetch(req)); + return; + } + // If the SW is in a broken state where it's not safe to handle requests at all, + // returning causes the request to fall back on the network. This is preferred over + // `respondWith(fetch(req))` because the latter still shows in DevTools that the + // request was handled by the SW. + // TODO: try to handle DriverReadyState.EXISTING_CLIENTS_ONLY here. + if (this.state === DriverReadyState.SAFE_MODE) { + // Even though the worker is in safe mode, idle tasks still need to happen so + // things like update checks, etc. can take place. + event.waitUntil(this.idle.trigger()); + return; + } + // Although "passive mixed content" (like images) only produces a warning without a + // ServiceWorker, fetching it via a ServiceWorker results in an error. Let such requests be + // handled by the browser, since handling with the ServiceWorker would fail anyway. + // See https://github.com/angular/angular/issues/23012#issuecomment-376430187 for more details. + if (requestUrlObj.origin.startsWith('http:') && scopeUrl.startsWith('https:')) { + // Still, log the incident for debugging purposes. + this.debugger.log(`Ignoring passive mixed content request: Driver.fetch(${req.url})`); + return; + } + // When opening DevTools in Chrome, a request is made for the current URL (and possibly related + // resources, e.g. scripts) with `cache: 'only-if-cached'` and `mode: 'no-cors'`. These request + // will eventually fail, because `only-if-cached` is only allowed to be used with + // `mode: 'same-origin'`. + // This is likely a bug in Chrome DevTools. Avoid handling such requests. + // (See also https://github.com/angular/angular/issues/22362.) + // TODO(gkalpak): Remove once no longer necessary (i.e. fixed in Chrome DevTools). + if (req.cache === 'only-if-cached' && req.mode !== 'same-origin') { + // Log the incident only the first time it happens, to avoid spamming the logs. + if (!this.loggedInvalidOnlyIfCachedRequest) { + this.loggedInvalidOnlyIfCachedRequest = true; + this.debugger.log(`Ignoring invalid request: 'only-if-cached' can be set only with 'same-origin' mode`, `Driver.fetch(${req.url}, cache: ${req.cache}, mode: ${req.mode})`); + } + return; + } + // Past this point, the SW commits to handling the request itself. This could still + // fail (and result in `state` being set to `SAFE_MODE`), but even in that case the + // SW will still deliver a response. + event.respondWith(this.handleFetch(event)); + } + /** + * The handler for message events. + */ + onMessage(event) { + // Ignore message events when the SW is in safe mode, for now. + if (this.state === DriverReadyState.SAFE_MODE) { + return; + } + // If the message doesn't have the expected signature, ignore it. + const data = event.data; + if (!data || !data.action) { + return; + } + // Initialization is the only event which is sent directly from the SW to itself, + // and thus `event.source` is not a Client. Handle it here, before the check + // for Client sources. + if (data.action === 'INITIALIZE') { + // Only initialize if not already initialized (or initializing). + if (this.initialized === null) { + // Initialize the SW. + this.initialized = this.initialize(); + // Wait until initialization is properly scheduled, then trigger idle + // events to allow it to complete (assuming the SW is idle). + event.waitUntil((() => __awaiter$5(this, void 0, void 0, function* () { + yield this.initialized; + yield this.idle.trigger(); + }))()); + } + return; + } + // Only messages from true clients are accepted past this point (this is essentially + // a typecast). + if (!this.adapter.isClient(event.source)) { + return; + } + // Handle the message and keep the SW alive until it's handled. + event.waitUntil(this.handleMessage(data, event.source)); + } + onPush(msg) { + // Push notifications without data have no effect. + if (!msg.data) { + return; + } + // Handle the push and keep the SW alive until it's handled. + msg.waitUntil(this.handlePush(msg.data.json())); + } + onClick(event) { + // Handle the click event and keep the SW alive until it's handled. + event.waitUntil(this.handleClick(event.notification, event.action)); + } + handleMessage(msg, from) { + return __awaiter$5(this, void 0, void 0, function* () { + if (isMsgCheckForUpdates(msg)) { + const action = (() => __awaiter$5(this, void 0, void 0, function* () { yield this.checkForUpdate(); }))(); + yield this.reportStatus(from, action, msg.statusNonce); + } + else if (isMsgActivateUpdate(msg)) { + yield this.reportStatus(from, this.updateClient(from), msg.statusNonce); + } + }); + } + handlePush(data) { + return __awaiter$5(this, void 0, void 0, function* () { + yield this.broadcast({ + type: 'PUSH', + data, + }); + if (!data.notification || !data.notification.title) { + return; + } + const desc = data.notification; + let options = {}; + NOTIFICATION_OPTION_NAMES.filter(name => desc.hasOwnProperty(name)) + .forEach(name => options[name] = desc[name]); + yield this.scope.registration.showNotification(desc['title'], options); + }); + } + handleClick(notification, action) { + return __awaiter$5(this, void 0, void 0, function* () { + notification.close(); + const options = {}; + // The filter uses `name in notification` because the properties are on the prototype so + // hasOwnProperty does not work here + NOTIFICATION_OPTION_NAMES.filter(name => name in notification) + .forEach(name => options[name] = notification[name]); + yield this.broadcast({ + type: 'NOTIFICATION_CLICK', + data: { action, notification: options }, + }); + }); + } + reportStatus(client, promise, nonce) { + return __awaiter$5(this, void 0, void 0, function* () { + const response = { type: 'STATUS', nonce, status: true }; + try { + yield promise; + client.postMessage(response); + } + catch (e) { + client.postMessage(Object.assign({}, response, { status: false, error: e.toString() })); + } + }); + } + updateClient(client) { + return __awaiter$5(this, void 0, void 0, function* () { + // Figure out which version the client is on. If it's not on the latest, + // it needs to be moved. + const existing = this.clientVersionMap.get(client.id); + if (existing === this.latestHash) { + // Nothing to do, this client is already on the latest version. + return; + } + // Switch the client over. + let previous = undefined; + // Look up the application data associated with the existing version. If there + // isn't any, fall back on using the hash. + if (existing !== undefined) { + const existingVersion = this.versions.get(existing); + previous = this.mergeHashWithAppData(existingVersion.manifest, existing); + } + // Set the current version used by the client, and sync the mapping to disk. + this.clientVersionMap.set(client.id, this.latestHash); + yield this.sync(); + // Notify the client about this activation. + const current = this.versions.get(this.latestHash); + const notice = { + type: 'UPDATE_ACTIVATED', + previous, + current: this.mergeHashWithAppData(current.manifest, this.latestHash), + }; + client.postMessage(notice); + }); + } + handleFetch(event) { + return __awaiter$5(this, void 0, void 0, function* () { + // Since the SW may have just been started, it may or may not have been initialized already. + // this.initialized will be `null` if initialization has not yet been attempted, or will be a + // Promise which will resolve (successfully or unsuccessfully) if it has. + if (this.initialized === null) { + // Initialization has not yet been attempted, so attempt it. This should only ever happen once + // per SW instantiation. + this.initialized = this.initialize(); + } + // If initialization fails, the SW needs to enter a safe state, where it declines to respond to + // network requests. + try { + // Wait for initialization. + yield this.initialized; + } + catch (e) { + // Initialization failed. Enter a safe state. + this.state = DriverReadyState.SAFE_MODE; + this.stateMessage = `Initialization failed due to error: ${errorToString(e)}`; + // Even though the driver entered safe mode, background tasks still need to happen. + event.waitUntil(this.idle.trigger()); + // Since the SW is already committed to responding to the currently active request, + // respond with a network fetch. + return this.safeFetch(event.request); + } + // On navigation requests, check for new updates. + if (event.request.mode === 'navigate' && !this.scheduledNavUpdateCheck) { + this.scheduledNavUpdateCheck = true; + this.idle.schedule('check-updates-on-navigation', () => __awaiter$5(this, void 0, void 0, function* () { + this.scheduledNavUpdateCheck = false; + yield this.checkForUpdate(); + })); + } + // Decide which version of the app to use to serve this request. This is asynchronous as in + // some cases, a record will need to be written to disk about the assignment that is made. + const appVersion = yield this.assignVersion(event); + // Bail out + if (appVersion === null) { + event.waitUntil(this.idle.trigger()); + return this.safeFetch(event.request); + } + let res = null; + try { + // Handle the request. First try the AppVersion. If that doesn't work, fall back on the + // network. + res = yield appVersion.handleFetch(event.request, event); + } + catch (err) { + if (err.isCritical) { + // Something went wrong with the activation of this version. + yield this.versionFailed(appVersion, err, this.latestHash === appVersion.manifestHash); + event.waitUntil(this.idle.trigger()); + return this.safeFetch(event.request); + } + throw err; + } + // The AppVersion will only return null if the manifest doesn't specify what to do about this + // request. In that case, just fall back on the network. + if (res === null) { + event.waitUntil(this.idle.trigger()); + return this.safeFetch(event.request); + } + // Trigger the idle scheduling system. The Promise returned by trigger() will resolve after + // a specific amount of time has passed. If trigger() hasn't been called again by then (e.g. + // on a subsequent request), the idle task queue will be drained and the Promise won't resolve + // until that operation is complete as well. + event.waitUntil(this.idle.trigger()); + // The AppVersion returned a usable response, so return it. + return res; + }); + } + /** + * Attempt to quickly reach a state where it's safe to serve responses. + */ + initialize() { + return __awaiter$5(this, void 0, void 0, function* () { + // On initialization, all of the serialized state is read out of the 'control' + // table. This includes: + // - map of hashes to manifests of currently loaded application versions + // - map of client IDs to their pinned versions + // - record of the most recently fetched manifest hash + // + // If these values don't exist in the DB, then this is the either the first time + // the SW has run or the DB state has been wiped or is inconsistent. In that case, + // load a fresh copy of the manifest and reset the state from scratch. + // Open up the DB table. + const table = yield this.db.open('control'); + // Attempt to load the needed state from the DB. If this fails, the catch {} block + // will populate these variables with freshly constructed values. + let manifests, assignments, latest; + try { + // Read them from the DB simultaneously. + [manifests, assignments, latest] = yield Promise.all([ + table.read('manifests'), + table.read('assignments'), + table.read('latest'), + ]); + // Successfully loaded from saved state. This implies a manifest exists, so + // the update check needs to happen in the background. + this.idle.schedule('init post-load (update, cleanup)', () => __awaiter$5(this, void 0, void 0, function* () { + yield this.checkForUpdate(); + try { + yield this.cleanupCaches(); + } + catch (err) { + // Nothing to do - cleanup failed. Just log it. + this.debugger.log(err, 'cleanupCaches @ init post-load'); + } + })); + } + catch (_) { + // Something went wrong. Try to start over by fetching a new manifest from the + // server and building up an empty initial state. + const manifest = yield this.fetchLatestManifest(); + const hash = hashManifest(manifest); + manifests = {}; + manifests[hash] = manifest; + assignments = {}; + latest = { latest: hash }; + // Save the initial state to the DB. + yield Promise.all([ + table.write('manifests', manifests), + table.write('assignments', assignments), + table.write('latest', latest), + ]); + } + // At this point, either the state has been loaded successfully, or fresh state + // with a new copy of the manifest has been produced. At this point, the `Driver` + // can have its internals hydrated from the state. + // Initialize the `versions` map by setting each hash to a new `AppVersion` instance + // for that manifest. + Object.keys(manifests).forEach((hash) => { + const manifest = manifests[hash]; + // If the manifest is newly initialized, an AppVersion may have already been + // created for it. + if (!this.versions.has(hash)) { + this.versions.set(hash, new AppVersion(this.scope, this.adapter, this.db, this.idle, manifest, hash)); + } + }); + // Map each client ID to its associated hash. Along the way, verify that the hash + // is still valid for that client ID. It should not be possible for a client to + // still be associated with a hash that was since removed from the state. + Object.keys(assignments).forEach((clientId) => { + const hash = assignments[clientId]; + if (this.versions.has(hash)) { + this.clientVersionMap.set(clientId, hash); + } + else { + this.clientVersionMap.set(clientId, latest.latest); + this.debugger.log(`Unknown version ${hash} mapped for client ${clientId}, using latest instead`, `initialize: map assignments`); + } + }); + // Set the latest version. + this.latestHash = latest.latest; + // Finally, assert that the latest version is in fact loaded. + if (!this.versions.has(latest.latest)) { + throw new Error(`Invariant violated (initialize): latest hash ${latest.latest} has no known manifest`); + } + // Finally, wait for the scheduling of initialization of all versions in the + // manifest. Ordinarily this just schedules the initializations to happen during + // the next idle period, but in development mode this might actually wait for the + // full initialization. + // If any of these initializations fail, versionFailed() will be called either + // synchronously or asynchronously to handle the failure and re-map clients. + yield Promise.all(Object.keys(manifests).map((hash) => __awaiter$5(this, void 0, void 0, function* () { + try { + // Attempt to schedule or initialize this version. If this operation is + // successful, then initialization either succeeded or was scheduled. If + // it fails, then full initialization was attempted and failed. + yield this.scheduleInitialization(this.versions.get(hash), this.latestHash === hash); + } + catch (err) { + this.debugger.log(err, `initialize: schedule init of ${hash}`); + return false; + } + }))); + }); + } + lookupVersionByHash(hash, debugName = 'lookupVersionByHash') { + // The version should exist, but check just in case. + if (!this.versions.has(hash)) { + throw new Error(`Invariant violated (${debugName}): want AppVersion for ${hash} but not loaded`); + } + return this.versions.get(hash); + } + /** + * Decide which version of the manifest to use for the event. + */ + assignVersion(event) { + return __awaiter$5(this, void 0, void 0, function* () { + // First, check whether the event has a (non empty) client ID. If it does, the version may + // already be associated. + const clientId = event.clientId; + if (clientId) { + // Check if there is an assigned client id. + if (this.clientVersionMap.has(clientId)) { + // There is an assignment for this client already. + const hash = this.clientVersionMap.get(clientId); + let appVersion = this.lookupVersionByHash(hash, 'assignVersion'); + // Ordinarily, this client would be served from its assigned version. But, if this + // request is a navigation request, this client can be updated to the latest + // version immediately. + if (this.state === DriverReadyState.NORMAL && hash !== this.latestHash && + appVersion.isNavigationRequest(event.request)) { + // Update this client to the latest version immediately. + if (this.latestHash === null) { + throw new Error(`Invariant violated (assignVersion): latestHash was null`); + } + const client = yield this.scope.clients.get(clientId); + yield this.updateClient(client); + appVersion = this.lookupVersionByHash(this.latestHash, 'assignVersion'); + } + // TODO: make sure the version is valid. + return appVersion; + } + else { + // This is the first time this client ID has been seen. Whether the SW is in a + // state to handle new clients depends on the current readiness state, so check + // that first. + if (this.state !== DriverReadyState.NORMAL) { + // It's not safe to serve new clients in the current state. It's possible that + // this is an existing client which has not been mapped yet (see below) but + // even if that is the case, it's invalid to make an assignment to a known + // invalid version, even if that assignment was previously implicit. Return + // undefined here to let the caller know that no assignment is possible at + // this time. + return null; + } + // It's safe to handle this request. Two cases apply. Either: + // 1) the browser assigned a client ID at the time of the navigation request, and + // this is truly the first time seeing this client, or + // 2) a navigation request came previously from the same client, but with no client + // ID attached. Browsers do this to avoid creating a client under the origin in + // the event the navigation request is just redirected. + // + // In case 1, the latest version can safely be used. + // In case 2, the latest version can be used, with the assumption that the previous + // navigation request was answered under the same version. This assumption relies + // on the fact that it's unlikely an update will come in between the navigation + // request and requests for subsequent resources on that page. + // First validate the current state. + if (this.latestHash === null) { + throw new Error(`Invariant violated (assignVersion): latestHash was null`); + } + // Pin this client ID to the current latest version, indefinitely. + this.clientVersionMap.set(clientId, this.latestHash); + yield this.sync(); + // Return the latest `AppVersion`. + return this.lookupVersionByHash(this.latestHash, 'assignVersion'); + } + } + else { + // No client ID was associated with the request. This must be a navigation request + // for a new client. First check that the SW is accepting new clients. + if (this.state !== DriverReadyState.NORMAL) { + return null; + } + // Serve it with the latest version, and assume that the client will actually get + // associated with that version on the next request. + // First validate the current state. + if (this.latestHash === null) { + throw new Error(`Invariant violated (assignVersion): latestHash was null`); + } + // Return the latest `AppVersion`. + return this.lookupVersionByHash(this.latestHash, 'assignVersion'); + } + }); + } + fetchLatestManifest(ignoreOfflineError = false) { + return __awaiter$5(this, void 0, void 0, function* () { + const res = yield this.safeFetch(this.adapter.newRequest('ngsw.json?ngsw-cache-bust=' + Math.random())); + if (!res.ok) { + if (res.status === 404) { + yield this.deleteAllCaches(); + yield this.scope.registration.unregister(); + } + else if (res.status === 504 && ignoreOfflineError) { + return null; + } + throw new Error(`Manifest fetch failed! (status: ${res.status})`); + } + this.lastUpdateCheck = this.adapter.time; + return res.json(); + }); + } + deleteAllCaches() { + return __awaiter$5(this, void 0, void 0, function* () { + yield (yield this.scope.caches.keys()) + .filter(key => key.startsWith(`${this.adapter.cacheNamePrefix}:`)) + .reduce((previous, key) => __awaiter$5(this, void 0, void 0, function* () { + yield Promise.all([ + previous, + this.scope.caches.delete(key), + ]); + }), Promise.resolve()); + }); + } + /** + * Schedule the SW's attempt to reach a fully prefetched state for the given AppVersion + * when the SW is not busy and has connectivity. This returns a Promise which must be + * awaited, as under some conditions the AppVersion might be initialized immediately. + */ + scheduleInitialization(appVersion, latest) { + return __awaiter$5(this, void 0, void 0, function* () { + const initialize = () => __awaiter$5(this, void 0, void 0, function* () { + try { + yield appVersion.initializeFully(); + } + catch (err) { + this.debugger.log(err, `initializeFully for ${appVersion.manifestHash}`); + yield this.versionFailed(appVersion, err, latest); + } + }); + // TODO: better logic for detecting localhost. + if (this.scope.registration.scope.indexOf('://localhost') > -1) { + return initialize(); + } + this.idle.schedule(`initialization(${appVersion.manifestHash})`, initialize); + }); + } + versionFailed(appVersion, err, latest) { + return __awaiter$5(this, void 0, void 0, function* () { + // This particular AppVersion is broken. First, find the manifest hash. + const broken = Array.from(this.versions.entries()).find(([hash, version]) => version === appVersion); + if (broken === undefined) { + // This version is no longer in use anyway, so nobody cares. + return; + } + const brokenHash = broken[0]; + // TODO: notify affected apps. + // The action taken depends on whether the broken manifest is the active (latest) or not. + // If so, the SW cannot accept new clients, but can continue to service old ones. + if (this.latestHash === brokenHash || latest) { + // The latest manifest is broken. This means that new clients are at the mercy of the + // network, but caches continue to be valid for previous versions. This is + // unfortunate but unavoidable. + this.state = DriverReadyState.EXISTING_CLIENTS_ONLY; + this.stateMessage = `Degraded due to: ${errorToString(err)}`; + // Cancel the binding for these clients. + Array.from(this.clientVersionMap.keys()) + .forEach(clientId => this.clientVersionMap.delete(clientId)); + } + else { + // The current version is viable, but this older version isn't. The only + // possible remedy is to stop serving the older version and go to the network. + // Figure out which clients are affected and put them on the latest. + const affectedClients = Array.from(this.clientVersionMap.keys()) + .filter(clientId => this.clientVersionMap.get(clientId) === brokenHash); + // Push the affected clients onto the latest version. + affectedClients.forEach(clientId => this.clientVersionMap.set(clientId, this.latestHash)); + } + try { + yield this.sync(); + } + catch (err2) { + // We are already in a bad state. No need to make things worse. + // Just log the error and move on. + this.debugger.log(err2, `Driver.versionFailed(${err.message || err})`); + } + }); + } + setupUpdate(manifest, hash) { + return __awaiter$5(this, void 0, void 0, function* () { + const newVersion = new AppVersion(this.scope, this.adapter, this.db, this.idle, manifest, hash); + // Firstly, check if the manifest version is correct. + if (manifest.configVersion !== SUPPORTED_CONFIG_VERSION) { + yield this.deleteAllCaches(); + yield this.scope.registration.unregister(); + throw new Error(`Invalid config version: expected ${SUPPORTED_CONFIG_VERSION}, got ${manifest.configVersion}.`); + } + // Cause the new version to become fully initialized. If this fails, then the + // version will not be available for use. + yield newVersion.initializeFully(this); + // Install this as an active version of the app. + this.versions.set(hash, newVersion); + // Future new clients will use this hash as the latest version. + this.latestHash = hash; + yield this.sync(); + yield this.notifyClientsAboutUpdate(); + }); + } + checkForUpdate() { + return __awaiter$5(this, void 0, void 0, function* () { + let hash = '(unknown)'; + try { + const manifest = yield this.fetchLatestManifest(true); + if (manifest === null) { + // Client or server offline. Unable to check for updates at this time. + // Continue to service clients (existing and new). + this.debugger.log('Check for update aborted. (Client or server offline.)'); + return false; + } + hash = hashManifest(manifest); + // Check whether this is really an update. + if (this.versions.has(hash)) { + return false; + } + yield this.setupUpdate(manifest, hash); + return true; + } + catch (err) { + this.debugger.log(err, `Error occurred while updating to manifest ${hash}`); + this.state = DriverReadyState.EXISTING_CLIENTS_ONLY; + this.stateMessage = `Degraded due to failed initialization: ${errorToString(err)}`; + return false; + } + }); + } + /** + * Synchronize the existing state to the underlying database. + */ + sync() { + return __awaiter$5(this, void 0, void 0, function* () { + // Open up the DB table. + const table = yield this.db.open('control'); + // Construct a serializable map of hashes to manifests. + const manifests = {}; + this.versions.forEach((version, hash) => { manifests[hash] = version.manifest; }); + // Construct a serializable map of client ids to version hashes. + const assignments = {}; + this.clientVersionMap.forEach((hash, clientId) => { assignments[clientId] = hash; }); + // Record the latest entry. Since this is a sync which is necessarily happening after + // initialization, latestHash should always be valid. + const latest = { + latest: this.latestHash, + }; + // Synchronize all of these. + yield Promise.all([ + table.write('manifests', manifests), + table.write('assignments', assignments), + table.write('latest', latest), + ]); + }); + } + cleanupCaches() { + return __awaiter$5(this, void 0, void 0, function* () { + // Query for all currently active clients, and list the client ids. This may skip + // some clients in the browser back-forward cache, but not much can be done about + // that. + const activeClients = (yield this.scope.clients.matchAll()).map(client => client.id); + // A simple list of client ids that the SW has kept track of. Subtracting + // activeClients from this list will result in the set of client ids which are + // being tracked but are no longer used in the browser, and thus can be cleaned up. + const knownClients = Array.from(this.clientVersionMap.keys()); + // Remove clients in the clientVersionMap that are no longer active. + knownClients.filter(id => activeClients.indexOf(id) === -1) + .forEach(id => this.clientVersionMap.delete(id)); + // Next, determine the set of versions which are still used. All others can be + // removed. + const usedVersions = new Set(); + this.clientVersionMap.forEach((version, _) => usedVersions.add(version)); + // Collect all obsolete versions by filtering out used versions from the set of all versions. + const obsoleteVersions = Array.from(this.versions.keys()) + .filter(version => !usedVersions.has(version) && version !== this.latestHash); + // Remove all the versions which are no longer used. + yield obsoleteVersions.reduce((previous, version) => __awaiter$5(this, void 0, void 0, function* () { + // Wait for the other cleanup operations to complete. + yield previous; + // Try to get past the failure of one particular version to clean up (this + // shouldn't happen, but handle it just in case). + try { + // Get ahold of the AppVersion for this particular hash. + const instance = this.versions.get(version); + // Delete it from the canonical map. + this.versions.delete(version); + // Clean it up. + yield instance.cleanup(); + } + catch (err) { + // Oh well? Not much that can be done here. These caches will be removed when + // the SW revs its format version, which happens from time to time. + this.debugger.log(err, `cleanupCaches - cleanup ${version}`); + } + }), Promise.resolve()); + // Commit all the changes to the saved state. + yield this.sync(); + }); + } + /** + * Delete caches that were used by older versions of `@angular/service-worker` to avoid running + * into storage quota limitations imposed by browsers. + * (Since at this point the SW has claimed all clients, it is safe to remove those caches.) + */ + cleanupOldSwCaches() { + return __awaiter$5(this, void 0, void 0, function* () { + const cacheNames = yield this.scope.caches.keys(); + const oldSwCacheNames = cacheNames.filter(name => /^ngsw:(?!\/)/.test(name)); + yield Promise.all(oldSwCacheNames.map(name => this.scope.caches.delete(name))); + }); + } + /** + * Determine if a specific version of the given resource is cached anywhere within the SW, + * and fetch it if so. + */ + lookupResourceWithHash(url, hash) { + return Array + // Scan through the set of all cached versions, valid or otherwise. It's safe to do such + // lookups even for invalid versions as the cached version of a resource will have the + // same hash regardless. + .from(this.versions.values()) + // Reduce the set of versions to a single potential result. At any point along the + // reduction, if a response has already been identified, then pass it through, as no + // future operation could change the response. If no response has been found yet, keep + // checking versions until one is or until all versions have been exhausted. + .reduce((prev, version) => __awaiter$5(this, void 0, void 0, function* () { + // First, check the previous result. If a non-null result has been found already, just + // return it. + if ((yield prev) !== null) { + return prev; + } + // No result has been found yet. Try the next `AppVersion`. + return version.lookupResourceWithHash(url, hash); + }), Promise.resolve(null)); + } + lookupResourceWithoutHash(url) { + return __awaiter$5(this, void 0, void 0, function* () { + yield this.initialized; + const version = this.versions.get(this.latestHash); + return version.lookupResourceWithoutHash(url); + }); + } + previouslyCachedResources() { + return __awaiter$5(this, void 0, void 0, function* () { + yield this.initialized; + const version = this.versions.get(this.latestHash); + return version.previouslyCachedResources(); + }); + } + recentCacheStatus(url) { + const version = this.versions.get(this.latestHash); + return version.recentCacheStatus(url); + } + mergeHashWithAppData(manifest, hash) { + return { + hash, + appData: manifest.appData, + }; + } + notifyClientsAboutUpdate() { + return __awaiter$5(this, void 0, void 0, function* () { + yield this.initialized; + const clients = yield this.scope.clients.matchAll(); + const next = this.versions.get(this.latestHash); + yield clients.reduce((previous, client) => __awaiter$5(this, void 0, void 0, function* () { + yield previous; + // Firstly, determine which version this client is on. + const version = this.clientVersionMap.get(client.id); + if (version === undefined) { + // Unmapped client - assume it's the latest. + return; + } + if (version === this.latestHash) { + // Client is already on the latest version, no need for a notification. + return; + } + const current = this.versions.get(version); + // Send a notice. + const notice = { + type: 'UPDATE_AVAILABLE', + current: this.mergeHashWithAppData(current.manifest, version), + available: this.mergeHashWithAppData(next.manifest, this.latestHash), + }; + client.postMessage(notice); + }), Promise.resolve()); + }); + } + broadcast(msg) { + return __awaiter$5(this, void 0, void 0, function* () { + const clients = yield this.scope.clients.matchAll(); + clients.forEach(client => { client.postMessage(msg); }); + }); + } + debugState() { + return __awaiter$5(this, void 0, void 0, function* () { + return { + state: DriverReadyState[this.state], + why: this.stateMessage, + latestHash: this.latestHash, + lastUpdateCheck: this.lastUpdateCheck, + }; + }); + } + debugVersions() { + return __awaiter$5(this, void 0, void 0, function* () { + // Build list of versions. + return Array.from(this.versions.keys()).map(hash => { + const version = this.versions.get(hash); + const clients = Array.from(this.clientVersionMap.entries()) + .filter(([clientId, version]) => version === hash) + .map(([clientId, version]) => clientId); + return { + hash, + manifest: version.manifest, clients, + status: '', + }; + }); + }); + } + debugIdleState() { + return __awaiter$5(this, void 0, void 0, function* () { + return { + queue: this.idle.taskDescriptions, + lastTrigger: this.idle.lastTrigger, + lastRun: this.idle.lastRun, + }; + }); + } + safeFetch(req) { + return __awaiter$5(this, void 0, void 0, function* () { + try { + return yield this.scope.fetch(req); + } + catch (err) { + this.debugger.log(err, `Driver.fetch(${req.url})`); + return this.adapter.newResponse(null, { + status: 504, + statusText: 'Gateway Timeout', + }); + } + }); + } + } + + /** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + const scope = self; + const adapter = new Adapter(scope); + const driver = new Driver(scope, adapter, new CacheDatabase(scope, adapter)); + +}()); diff --git a/www/ngsw.json b/www/ngsw.json new file mode 100644 index 00000000000..52b34bc4a31 --- /dev/null +++ b/www/ngsw.json @@ -0,0 +1,90 @@ +{ + "configVersion": 1, + "timestamp": 1560305873155, + "index": "/index.html", + "assetGroups": [ + { + "name": "app", + "installMode": "prefetch", + "updateMode": "prefetch", + "urls": [ + "/favicon.ico", + "/index.html", + "/main-es2015.910b13f4ffedd104e88e.js", + "/main-es5.886d7c57388081782c99.js", + "/polyfills-es2015.559e7c8b3a629fdb5581.js", + "/polyfills-es5.943113ac054b16d954ae.js", + "/runtime-es2015.858f8dd898b75fe86926.js", + "/runtime-es5.741402d1d47331ce975c.js", + "/styles.e9a05f80d09cf3960461.css" + ], + "patterns": [] + }, + { + "name": "assets", + "installMode": "lazy", + "updateMode": "prefetch", + "urls": [ + "/MaterialIcons-Regular.012cf6a10129e2275d79.woff", + "/MaterialIcons-Regular.570eb83859dc23dd0eec.woff2", + "/MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf", + "/MaterialIcons-Regular.e79bfd88537def476913.eot", + "/assets/icons/icon-128x128.png", + "/assets/icons/icon-144x144.png", + "/assets/icons/icon-152x152.png", + "/assets/icons/icon-192x192.png", + "/assets/icons/icon-384x384.png", + "/assets/icons/icon-512x512.png", + "/assets/icons/icon-72x72.png", + "/assets/icons/icon-96x96.png", + "/assets/img/logo.svg", + "/assets/settings.json" + ], + "patterns": [] + } + ], + "dataGroups": [], + "hashTable": { + "/MaterialIcons-Regular.012cf6a10129e2275d79.woff": "c6c953c2ccb2ca9abb21db8dbf473b5a435f0082", + "/MaterialIcons-Regular.570eb83859dc23dd0eec.woff2": "09963592e8c953cc7e14e3fb0a5b05d5042e8435", + "/MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf": "fc05de31234e0090f7ddc28ce1b23af4026cb1da", + "/MaterialIcons-Regular.e79bfd88537def476913.eot": "26fb8cecb5512223277b4d290a24492a0f09ede1", + "/assets/icons/icon-128x128.png": "dae3b6ed49bdaf4327b92531d4b5b4a5d30c7532", + "/assets/icons/icon-144x144.png": "b0bd89982e08f9bd2b642928f5391915b74799a7", + "/assets/icons/icon-152x152.png": "7479a9477815dfd9668d60f8b3b2fba709b91310", + "/assets/icons/icon-192x192.png": "1abd80d431a237a853ce38147d8c63752f10933b", + "/assets/icons/icon-384x384.png": "329749cd6393768d3131ed6304c136b1ca05f2fd", + "/assets/icons/icon-512x512.png": "559d9c4318b45a1f2b10596bbb4c960fe521dbcc", + "/assets/icons/icon-72x72.png": "c457e56089a36952cd67156f9996bc4ce54a5ed9", + "/assets/icons/icon-96x96.png": "3914125a4b445bf111c5627875fc190f560daa41", + "/assets/img/logo.svg": "5b21f224cf40f28fce97c300dbc53d7409cb800e", + "/assets/settings.json": "1bd8ce28f3075c8699068a4628ebd664915b4a1a", + "/favicon.ico": "84161b857f5c547e3699ddfbffc6d8d737542e01", + "/index.html": "a6c8b546cf2638fc4e3440dbf57b910acb5e1315", + "/main-es2015.910b13f4ffedd104e88e.js": "516da98be925cafadc492e815e7a57f337ef1372", + "/main-es5.886d7c57388081782c99.js": "79dd54930021a5997128c994048d11f47fb01040", + "/polyfills-es2015.559e7c8b3a629fdb5581.js": "4578bb107ec3b89d39eb3e9800266ebf8cda1f62", + "/polyfills-es5.943113ac054b16d954ae.js": "042d7744ef82a64c73310f1db253736731a03950", + "/runtime-es2015.858f8dd898b75fe86926.js": "b62956c2192bfe5516d6374e753773901ed50ec5", + "/runtime-es5.741402d1d47331ce975c.js": "b62956c2192bfe5516d6374e753773901ed50ec5", + "/styles.e9a05f80d09cf3960461.css": "8ad6b082124d3e9cb9cc1ec41c989542ce11c0cc" + }, + "navigationUrls": [ + { + "positive": true, + "regex": "^\\/.*$" + }, + { + "positive": false, + "regex": "^\\/(?:.+\\/)?[^/]*\\.[^/]*$" + }, + { + "positive": false, + "regex": "^\\/(?:.+\\/)?[^/]*__[^/]*$" + }, + { + "positive": false, + "regex": "^\\/(?:.+\\/)?[^/]*__[^/]*\\/.*$" + } + ] +} \ No newline at end of file diff --git a/www/polyfills-es2015.559e7c8b3a629fdb5581.js b/www/polyfills-es2015.559e7c8b3a629fdb5581.js new file mode 100644 index 00000000000..c89e9bc8383 --- /dev/null +++ b/www/polyfills-es2015.559e7c8b3a629fdb5581.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){n("p/bt"),e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},"p/bt":function(e,t){!function(){var e=document.createElement("script");if(!("noModule"in e)&&"onbeforeload"in e){var t=!1;document.addEventListener("beforeload",function(n){if(n.target===e)t=!0;else if(!n.target.hasAttribute("nomodule")||!t)return;n.preventDefault()},!0),e.type="module",e.src=".",document.head.appendChild(e),e.remove()}}()},pDpN:function(e,t){!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=!0===e.__zone_symbol__forceDuplicateZoneCheck;if(e.Zone){if(r||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}const s=(()=>{class t{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new a(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==D.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.)")}static get root(){let e=t.current;for(;e.parent;)e=e.parent;return e}static get current(){return P.zone}static get currentTask(){return z}static __load_patch(s,i){if(D.hasOwnProperty(s)){if(r)throw Error("Already loaded patch: "+s)}else if(!e["__Zone_disable_"+s]){const r="Zone:"+s;n(r),D[s]=i(e,t,O),o(r,r)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){P={parent:P,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{P=P.parent}}runGuarded(e,t=null,n,o){P={parent:P,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{P=P.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||m).name+"; Execution: "+this.name+")");if(e.state===y&&(e.type===S||e.type===Z))return;const o=e.state!=v;o&&e._transitionTo(v,b),e.runCount++;const r=z;z=e,P={parent:P,zone:this};try{e.type==Z&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==y&&e.state!==w&&(e.type==S||e.data&&e.data.isPeriodic?o&&e._transitionTo(b,v):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(y,v,y))),P=P.parent,z=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(k,y);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(w,k,y),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==k&&e._transitionTo(b,k),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new c(E,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new c(Z,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new c(S,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||m).name+"; Execution: "+this.name+")");e._transitionTo(T,b,v);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(w,T),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(y,T),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class a{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t.zone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t.zone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t.zone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t.zone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t.zone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t.zone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t.zone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:i,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=i,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=i,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=i,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new s(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),(n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t))||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=E)throw new Error("Task is missing scheduleFn.");g(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class c{constructor(t,n,o,r,s,i){this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,this.callback=o;const a=this;this.invoke=t===S&&r&&r.useG?c.invokeTask:function(){return c.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),j++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==j&&_(),j--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(y,k)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==y&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const l=I("setTimeout"),u=I("Promise"),h=I("then");let p,f=[],d=!1;function g(t){if(0===j&&0===f.length)if(p||e[u]&&(p=e[u].resolve(0)),p){let e=p[h];e||(e=p.then),e.call(p,_)}else e[l](_,0);t&&f.push(t)}function _(){if(!d){for(d=!0;f.length;){const t=f;f=[];for(let n=0;nP,onUnhandledError:C,microtaskDrainDone:C,scheduleMicroTask:g,showUncaughtError:()=>!s[I("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:C,patchMethod:()=>C,bindArguments:()=>[],patchThen:()=>C,patchMacroTask:()=>C,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(p=e.resolve(0))},patchEventPrototype:()=>C,isIEOrEdge:()=>!1,getGlobalObjects:()=>void 0,ObjectDefineProperty:()=>C,ObjectGetOwnPropertyDescriptor:()=>void 0,ObjectCreate:()=>void 0,ArraySlice:()=>[],patchClass:()=>C,wrapWithCurrentZone:()=>C,filterProperties:()=>[],attachOriginToPatched:()=>C,_redefineProperty:()=>C,patchCallbacks:()=>C};let P={parent:null,zone:new s(null,null)},z=null,j=0;function C(){}function I(e){return"__zone_symbol__"+e}o("Zone","Zone"),e.Zone=s}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=s("Promise"),c=s("then"),l="__creationTrace__";n.onUnhandledError=(e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}}),n.microtaskDrainDone=(()=>{for(;i.length;)for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}});const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];n&&"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return R.reject(e)}const g=s("state"),_=s("value"),m=s("finally"),y=s("parentPromiseValue"),k=s("parentPromiseState"),b="Promise.then",v=null,T=!0,w=!1,E=0;function Z(e,t){return n=>{try{P(e,t,n)}catch(o){P(e,!1,o)}}}const S=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}},D="Promise resolved with itself",O=s("currentTaskTrace");function P(e,o,s){const a=S();if(e===s)throw new TypeError(D);if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return a(()=>{P(e,!1,u)})(),e}if(o!==w&&s instanceof R&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)j(s),P(e,s[g],s[_]);else if(o!==w&&"function"==typeof h)try{h.call(s,a(Z(e,o)),a(Z(e,!1)))}catch(u){a(()=>{P(e,!1,u)})()}else{e[g]=o;const a=e[_];if(e[_]=s,e[m]===m&&o===T&&(e[g]=e[k],e[_]=e[y]),o===w&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data[l];e&&r(s,O,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const r=e[_],a=n&&m===n[m];a&&(n[y]=r,n[k]=s);const c=t.run(i,void 0,a&&i!==d&&i!==f?[]:[r]);P(n,!0,c)}catch(o){P(n,!1,o)}},n)}const I="function ZoneAwarePromise() { [native code] }";class R{constructor(e){const t=this;if(!(t instanceof R))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(Z(t,T),Z(t,w))}catch(n){P(t,!1,n)}}static toString(){return I}static resolve(e){return P(new this(null),T,e)}static reject(e){return P(new this(null),w,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){let t,n,o=new this((e,o)=>{t=e,n=o}),r=2,s=0;const i=[];for(let a of e){p(a)||(a=this.resolve(a));const e=s;a.then(n=>{i[e]=n,0==--r&&t(i)},n),r++,s++}return 0==(r-=2)&&t(i),o}get[Symbol.toStringTag](){return"Promise"}then(e,n){const o=new this.constructor(null),r=t.current;return this[g]==v?this[_].push(r,o,e,n):C(this,r,o,e,n),o}catch(e){return this.then(null,e)}finally(e){const n=new this.constructor(null);n[m]=m;const o=t.current;return this[g]==v?this[_].push(o,n,e,e):C(this,o,n,e,e),n}}R.resolve=R.resolve,R.reject=R.reject,R.race=R.race,R.all=R.all;const M=e[a]=e.Promise,x=t.__symbol__("ZoneAwarePromise");let L=o(e,"Promise");L&&!L.configurable||(L&&delete L.writable,L&&delete L.value,L||(L={configurable:!0,enumerable:!0}),L.get=function(){return e[x]?e[x]:e[a]},L.set=function(t){t===R?e[x]=t:(e[a]=t,t.prototype[c]||A(t),n.setNativePromise(t))},r(e,"Promise",L)),e.Promise=R;const N=s("thenPatched");function A(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[c]=r,e.prototype.then=function(e,t){return new R((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=A,M){A(M);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=function(e){return function(){let t=e.apply(this,arguments);if(t instanceof R)return t;let n=t.constructor;return n[N]||A(n),t}}(t))}return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,R});const n=Object.getOwnPropertyDescriptor,o=Object.defineProperty,r=Object.getPrototypeOf,s=Object.create,i=Array.prototype.slice,a="addEventListener",c="removeEventListener",l=Zone.__symbol__(a),u=Zone.__symbol__(c),h="true",p="false",f="__zone_symbol__";function d(e,t){return Zone.current.wrap(e,t)}function g(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const _=Zone.__symbol__,m="undefined"!=typeof window,y=m?window:void 0,k=m&&y||"object"==typeof self&&self||global,b="removeAttribute",v=[null];function T(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=d(e[n],t+"_"+n));return e}function w(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const E="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,Z=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),S=!Z&&!E&&!(!m||!y.HTMLElement),D=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!E&&!(!m||!y.HTMLElement),O={},P=function(e){if(!(e=e||k.event))return;let t=O[e.type];t||(t=O[e.type]=_("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(S&&n===y&&"error"===e.type){const t=e;!0===(r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error))&&e.preventDefault()}else null==(r=o&&o.apply(this,arguments))||r||e.preventDefault();return r};function z(e,t,r){let s=n(e,t);if(!s&&r&&n(r,t)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=_("on"+t+"patched");if(e.hasOwnProperty(i)&&e[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=t.substr(2);let u=O[l];u||(u=O[l]=_("ON_PROPERTY"+l)),s.set=function(t){let n=this;n||e!==k||(n=k),n&&(n[u]&&n.removeEventListener(l,P),c&&c.apply(n,v),"function"==typeof t?(n[u]=t,n.addEventListener(l,P,!1)):n[u]=null)},s.get=function(){let n=this;if(n||e!==k||(n=k),!n)return null;const o=n[u];if(o)return o;if(a){let e=a&&a.call(this);if(e)return s.set.call(this,e),"function"==typeof n[b]&&n.removeAttribute(t),e}return null},o(e,t,s),e[i]=!0}function j(e,t,n){if(t)for(let o=0;o{const t=Object.getOwnPropertyDescriptor(c,e);Object.defineProperty(l,e,{get:function(){return c[e]},set:function(n){(!t||t.writable&&"function"==typeof t.set)&&(c[e]=n)},enumerable:!t||t.enumerable,configurable:!t||t.configurable})}))}var c,l;return a}function x(e,t,n){let o=null;function r(e){const t=e.data;return t.args[t.cbIdx]=function(){e.invoke.apply(this,arguments)},o.apply(t.target,t.args),e}o=M(e,t,e=>(function(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?g(s.name,o[s.cbIdx],s,r):e.apply(t,o)}))}function L(e,t){e[_("OriginalDelegate")]=t}let N=!1,A=!1;function F(){if(N)return A;N=!0;try{const t=y.navigator.userAgent;-1===t.indexOf("MSIE ")&&-1===t.indexOf("Trident/")&&-1===t.indexOf("Edge/")||(A=!0)}catch(e){}return A}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=_("OriginalDelegate"),o=_("Promise"),r=_("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let H=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){H=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(Te){H=!1}const G={useG:!0},q={},B={},$=/^__zone_symbol__(\w+)(true|false)$/,U="__zone_symbol__propagationStopped";function W(e,t,n){const o=n&&n.add||a,s=n&&n.rm||c,i=n&&n.listeners||"eventListeners",l=n&&n.rmAll||"removeAllListeners",u=_(o),d="."+o+":",g="prependListener",m="."+g+":",y=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=(e=>o.handleEvent(e)),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[s].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[q[t.type][p]];if(o)if(1===o.length)y(o[0],n,t);else{const e=o.slice();for(let o=0;o(function(t,n){t[U]=!0,e&&e.apply(t,n)}))}function J(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const Y=Zone.__symbol__,K=Object[Y("defineProperty")]=Object.defineProperty,Q=Object[Y("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,ee=Object.create,te=Y("unconfigurables");function ne(e,t,n){const o=n.configurable;return se(e,t,n=re(e,t,n),o)}function oe(e,t){return e&&e[te]&&e[te][t]}function re(e,t,n){return Object.isFrozen(n)||(n.configurable=!0),n.configurable||(e[te]||Object.isFrozen(e)||K(e,te,{writable:!0,value:{}}),e[te]&&(e[te][t]=!0)),n}function se(e,t,n,o){try{return K(e,t,n)}catch(r){if(!n.configurable)throw r;void 0===o?delete n.configurable:n.configurable=o;try{return K(e,t,n)}catch(r){let o=null;try{o=JSON.stringify(n)}catch(r){o=n.toString()}console.log(`Attempting to configure '${t}' with descriptor '${o}' on object '${e}' and got error, giving up: ${r}`)}}}const ie=["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","vrdisplyconnected","vrdisplaydisconnected","vrdisplaypresentchange"],ae=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],ce=["load"],le=["blur","error","focus","load","resize","scroll","messageerror"],ue=["bounce","finish","start"],he=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],pe=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],fe=["close","error","open","message"],de=["error","message"],ge=["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"],ie,["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 _e(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function me(e,t,n,o){e&&j(e,_e(e,t,n),o)}function ye(e,t){if(Z&&!D)return;if(Zone[e.symbol("patchEvents")])return;const n="undefined"!=typeof WebSocket,o=t.__Zone_ignore_on_properties;if(S){const e=window,t=function(){try{const n=e.navigator.userAgent;if(-1!==n.indexOf("MSIE ")||-1!==n.indexOf("Trident/"))return!0}catch(t){}return!1}?[{target:e,ignoreProperties:["error"]}]:[];me(e,ge.concat(["messageerror"]),o?o.concat(t):o,r(e)),me(Document.prototype,ge,o),void 0!==e.SVGElement&&me(e.SVGElement.prototype,ge,o),me(Element.prototype,ge,o),me(HTMLElement.prototype,ge,o),me(HTMLMediaElement.prototype,ae,o),me(HTMLFrameSetElement.prototype,ie.concat(le),o),me(HTMLBodyElement.prototype,ie.concat(le),o),me(HTMLFrameElement.prototype,ce,o),me(HTMLIFrameElement.prototype,ce,o);const n=e.HTMLMarqueeElement;n&&me(n.prototype,ue,o);const s=e.Worker;s&&me(s.prototype,de,o)}const s=t.XMLHttpRequest;s&&me(s.prototype,he,o);const i=t.XMLHttpRequestEventTarget;i&&me(i&&i.prototype,he,o),"undefined"!=typeof IDBIndex&&(me(IDBIndex.prototype,pe,o),me(IDBRequest.prototype,pe,o),me(IDBOpenDBRequest.prototype,pe,o),me(IDBDatabase.prototype,pe,o),me(IDBTransaction.prototype,pe,o),me(IDBCursor.prototype,pe,o)),n&&me(WebSocket.prototype,fe,o)}Zone.__load_patch("util",(e,t,r)=>{r.patchOnProperties=j,r.patchMethod=M,r.bindArguments=T,r.patchMacroTask=x;const l=t.__symbol__("BLACK_LISTED_EVENTS"),u=t.__symbol__("UNPATCHED_EVENTS");e[u]&&(e[l]=e[u]),e[l]&&(t[l]=t[u]=e[l]),r.patchEventPrototype=X,r.patchEventTarget=W,r.isIEOrEdge=F,r.ObjectDefineProperty=o,r.ObjectGetOwnPropertyDescriptor=n,r.ObjectCreate=s,r.ArraySlice=i,r.patchClass=I,r.wrapWithCurrentZone=d,r.filterProperties=_e,r.attachOriginToPatched=L,r._redefineProperty=ne,r.patchCallbacks=J,r.getGlobalObjects=(()=>({globalSources:B,zoneSymbolEventNames:q,eventNames:ge,isBrowser:S,isMix:D,isNode:Z,TRUE_STR:h,FALSE_STR:p,ZONE_SYMBOL_PREFIX:f,ADD_EVENT_LISTENER_STR:a,REMOVE_EVENT_LISTENER_STR:c}))});const ke=_("zoneTask");function be(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ke]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=M(e,t+=o,n=>(function(r,s){if("function"==typeof s[0]){const e=g(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ke]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)})),s=M(e,n,t=>(function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ke])||(s=r),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ke]=null),s.zone.cancelTask(s)):t.apply(e,o)}))}function ve(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{be(e,"set","clear","Timeout"),be(e,"set","clear","Interval"),be(e,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{be(e,"request","cancel","AnimationFrame"),be(e,"mozRequest","mozCancel","AnimationFrame"),be(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;o(function(o,s){return t.current.run(n,e,s,r)}))}),Zone.__load_patch("EventTarget",(e,t,n)=>{!function(e,t){t.patchEventPrototype(e,t)}(e,n),ve(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),I("MutationObserver"),I("WebKitMutationObserver"),I("IntersectionObserver"),I("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ye(n,e),Object.defineProperty=function(e,t,n){if(oe(e,t))throw new TypeError("Cannot assign to read only property '"+t+"' of "+e);const o=n.configurable;return"prototype"!==t&&(n=re(e,t,n)),se(e,t,n,o)},Object.defineProperties=function(e,t){return Object.keys(t).forEach(function(n){Object.defineProperty(e,n,t[n])}),e},Object.create=function(e,t){return"object"!=typeof t||Object.isFrozen(t)||Object.keys(t).forEach(function(n){t[n]=re(e,n,t[n])}),ee(e,t)},Object.getOwnPropertyDescriptor=function(e,t){const n=Q(e,t);return n&&oe(e,t)&&(n.configurable=!1),n}}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(c){const h=e.XMLHttpRequest;if(!h)return;const p=h.prototype;let f=p[l],d=p[u];if(!f){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;f=e[l],d=e[u]}}const m="readystatechange",y="scheduled";function k(e){const t=e.data,o=t.target;o[s]=!1,o[a]=!1;const i=o[r];f||(f=o[l],d=o[u]),i&&d.call(o,m,i);const c=o[r]=(()=>{if(o.readyState===o.DONE)if(!t.aborted&&o[s]&&e.state===y){const n=o.__zone_symbol__loadfalse;if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=o.__zone_symbol__loadfalse;for(let t=0;t(function(e,t){return e[o]=0==t[2],e[i]=t[1],T.apply(e,t)})),w=_("fetchTaskAborting"),E=_("fetchTaskScheduling"),Z=M(p,"send",()=>(function(e,n){if(!0===t.current[E])return Z.apply(e,n);if(e[o])return Z.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=g("XMLHttpRequest.send",b,t,k,v);e&&!0===e[a]&&!t.aborted&&o.state===y&&o.invoke()}})),S=M(p,"abort",()=>(function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[w])return S.apply(e,o)}))}();const n=_("xhrTask"),o=_("xhrSync"),r=_("xhrListener"),s=_("xhrScheduled"),i=_("xhrURL"),a=_("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",e=>{e.navigator&&e.navigator.geolocation&&function(e,t){const o=e.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,T(arguments,o+"."+s))};return L(t,e),t})(i)}}}(e.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){V(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[_("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[_("rejectionHandledHandler")]=n("rejectionhandled"))})}},[[1,0]]]); \ No newline at end of file diff --git a/www/polyfills-es5.943113ac054b16d954ae.js b/www/polyfills-es5.943113ac054b16d954ae.js new file mode 100644 index 00000000000..265fe123861 --- /dev/null +++ b/www/polyfills-es5.943113ac054b16d954ae.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{"+2oP":function(t,e,n){"use strict";var r=n("hh1v"),o=n("6LWA"),i=n("I8vh"),a=n("UMSQ"),c=n("/GqU"),u=n("hBjN"),s=n("tiKp")("species"),f=[].slice,l=Math.max,p=n("Hd5f")("slice");n("I+eb")({target:"Array",proto:!0,forced:!p},{slice:function(t,e){var n,p,h,v=c(this),d=a(v.length),g=i(t,d),y=i(void 0===e?d:e,d);if(o(v)&&("function"!=typeof(n=v.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[s])&&(n=void 0):n=void 0,n===Array||void 0===n))return f.call(v,g,y);for(p=new(void 0===n?Array:n)(l(y-g,0)),h=0;g",this._properties=e&&e.properties||{},this._zoneDelegate=new u(this,this._parent&&this._parent._zoneDelegate,e)}return e.assertZonePatched=function(){if(t.Promise!==O.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 M.zone},enumerable:!0,configurable:!0}),Object.defineProperty(e,"currentTask",{get:function(){return D},enumerable:!0,configurable:!0}),e.__load_patch=function(i,a){if(O.hasOwnProperty(i)){if(o)throw Error("Already loaded patch: "+i)}else if(!t["__Zone_disable_"+i]){var c="Zone:"+i;n(c),O[i]=a(t,e,I),r(c,c)}},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),r=this;return function(){return r.runGuarded(n,this,arguments,e)}},e.prototype.run=function(t,e,n,r){M={parent:M,zone:this};try{return this._zoneDelegate.invoke(this,t,e,n,r)}finally{M=M.parent}},e.prototype.runGuarded=function(t,e,n,r){void 0===e&&(e=null),M={parent:M,zone:this};try{try{return this._zoneDelegate.invoke(this,t,e,n,r)}catch(o){if(this._zoneDelegate.handleError(this,o))throw o}}finally{M=M.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||y).name+"; Execution: "+this.name+")");if(t.state!==b||t.type!==w&&t.type!==T){var r=t.state!=_;r&&t._transitionTo(_,k),t.runCount++;var o=D;D=t,M={parent:M,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(i){if(this._zoneDelegate.handleError(this,i))throw i}}finally{t.state!==b&&t.state!==S&&(t.type==w||t.data&&t.data.isPeriodic?r&&t._transitionTo(k,_):(t.runCount=0,this._updateTaskCount(t,-1),r&&t._transitionTo(b,_,b))),M=M.parent,D=o}}},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(m,b);var n=[];t._zoneDelegates=n,t._zone=this;try{t=this._zoneDelegate.scheduleTask(this,t)}catch(r){throw t._transitionTo(S,m,b),this._zoneDelegate.handleError(this,r),r}return t._zoneDelegates===n&&this._updateTaskCount(t,1),t.state==m&&t._transitionTo(k,m),t},e.prototype.scheduleMicroTask=function(t,e,n,r){return this.scheduleTask(new s(E,t,e,n,r,void 0))},e.prototype.scheduleMacroTask=function(t,e,n,r,o){return this.scheduleTask(new s(T,t,e,n,r,o))},e.prototype.scheduleEventTask=function(t,e,n,r,o){return this.scheduleTask(new s(w,t,e,n,r,o))},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||y).name+"; Execution: "+this.name+")");t._transitionTo(x,k,_);try{this._zoneDelegate.cancelTask(this,t)}catch(e){throw t._transitionTo(S,x),this._zoneDelegate.handleError(this,e),e}return this._updateTaskCount(t,-1),t._transitionTo(b,x),t.runCount=0,t},e.prototype._updateTaskCount=function(t,e){var n=t._zoneDelegates;-1==e&&(t._zoneDelegates=null);for(var r=0;r0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:t})},t}(),s=function(){function e(n,r,o,i,a,c){this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=n,this.source=r,this.data=i,this.scheduleFn=a,this.cancelFn=c,this.callback=o;var u=this;this.invoke=n===w&&i&&i.useG?e.invokeTask:function(){return e.invokeTask.call(t,u,this,arguments)}}return e.invokeTask=function(t,e,n){t||(t=this),P++;try{return t.runCount++,t.zone.runTask(t,e,n)}finally{1==P&&g(),P--}},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(b,m)},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==b&&(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}(),f=R("setTimeout"),l=R("Promise"),p=R("then"),h=[],v=!1;function d(e){if(0===P&&0===h.length)if(i||t[l]&&(i=t[l].resolve(0)),i){var n=i[p];n||(n=i.then),n.call(i,g)}else t[f](g,0);e&&h.push(e)}function g(){if(!v){for(v=!0;h.length;){var t=h;h=[];for(var e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}};Zone.__load_patch("ZoneAwarePromise",function(e,n,r){var o=Object.getOwnPropertyDescriptor,i=Object.defineProperty,a=r.symbol,c=[],u=a("Promise"),s=a("then"),f="__creationTrace__";r.onUnhandledError=function(t){if(r.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)}},r.microtaskDrainDone=function(){for(;c.length;)for(var t=function(){var t=c.shift();try{t.zone.runGuarded(function(){throw t})}catch(e){p(e)}};c.length;)t()};var l=a("unhandledPromiseRejectionHandler");function p(t){r.onUnhandledError(t);try{var e=n[l];e&&"function"==typeof e&&e.call(this,t)}catch(o){}}function h(t){return t&&t.then}function v(t){return t}function d(t){return A.reject(t)}var g=a("state"),y=a("value"),b=a("finally"),m=a("parentPromiseValue"),k=a("parentPromiseState"),_="Promise.then",x=null,S=!0,E=!1,T=0;function w(t,e){return function(n){try{D(t,e,n)}catch(r){D(t,!1,r)}}}var O=function(){var t=!1;return function(e){return function(){t||(t=!0,e.apply(null,arguments))}}},I="Promise resolved with itself",M=a("currentTaskTrace");function D(t,e,o){var a,u=O();if(t===o)throw new TypeError(I);if(t[g]===x){var s=null;try{"object"!=typeof o&&"function"!=typeof o||(s=o&&o.then)}catch(d){return u(function(){D(t,!1,d)})(),t}if(e!==E&&o instanceof A&&o.hasOwnProperty(g)&&o.hasOwnProperty(y)&&o[g]!==x)j(o),D(t,o[g],o[y]);else if(e!==E&&"function"==typeof s)try{s.call(o,u(w(t,e)),u(w(t,!1)))}catch(d){u(function(){D(t,!1,d)})()}else{t[g]=e;var l=t[y];if(t[y]=o,t[b]===b&&e===S&&(t[g]=t[k],t[y]=t[m]),e===E&&o instanceof Error){var p=n.currentTask&&n.currentTask.data&&n.currentTask.data[f];p&&i(o,M,{configurable:!0,enumerable:!1,writable:!0,value:p})}for(var h=0;h=0;n--)"function"==typeof t[n]&&(t[n]=h(t[n],e+"_"+n));return t}function x(t){return!t||!1!==t.writable&&!("function"==typeof t.get&&void 0===t.set)}var S="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,E=!("nw"in b)&&void 0!==b.process&&"[object process]"==={}.toString.call(b.process),T=!E&&!S&&!(!g||!y.HTMLElement),w=void 0!==b.process&&"[object process]"==={}.toString.call(b.process)&&!S&&!(!g||!y.HTMLElement),O={},I=function(t){if(t=t||b.event){var e=O[t.type];e||(e=O[t.type]=d("ON_PROPERTY"+t.type));var n,r=this||t.target||b,o=r[e];return T&&r===y&&"error"===t.type?!0===(n=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error))&&t.preventDefault():null==(n=o&&o.apply(this,arguments))||n||t.preventDefault(),n}};function M(t,r,o){var i=e(t,r);if(!i&&o&&e(o,r)&&(i={enumerable:!0,configurable:!0}),i&&i.configurable){var a=d("on"+r+"patched");if(!t.hasOwnProperty(a)||!t[a]){delete i.writable,delete i.value;var c=i.get,u=i.set,s=r.substr(2),f=O[s];f||(f=O[s]=d("ON_PROPERTY"+s)),i.set=function(e){var n=this;n||t!==b||(n=b),n&&(n[f]&&n.removeEventListener(s,I),u&&u.apply(n,k),"function"==typeof e?(n[f]=e,n.addEventListener(s,I,!1)):n[f]=null)},i.get=function(){var e=this;if(e||t!==b||(e=b),!e)return null;var n=e[f];if(n)return n;if(c){var o=c&&c.call(this);if(o)return i.set.call(this,o),"function"==typeof e[m]&&e.removeAttribute(r),o}return null},n(t,r,i),t[a]=!0}}}function D(t,e,n){if(e)for(var r=0;r=0&&"function"==typeof r[i.cbIdx]?v(i.name,r[i.cbIdx],i,o):t.apply(e,r)}})}function z(t,e){t[d("OriginalDelegate")]=e}var L=!1,F=!1;function Z(){try{var t=y.navigator.userAgent;if(-1!==t.indexOf("MSIE ")||-1!==t.indexOf("Trident/"))return!0}catch(e){}return!1}function C(){if(L)return F;L=!0;try{var t=y.navigator.userAgent;-1===t.indexOf("MSIE ")&&-1===t.indexOf("Trident/")&&-1===t.indexOf("Edge/")||(F=!0)}catch(e){}return F}Zone.__load_patch("toString",function(t){var e=Function.prototype.toString,n=d("OriginalDelegate"),r=d("Promise"),o=d("Error"),i=function(){if("function"==typeof this){var i=this[n];if(i)return"function"==typeof i?e.call(i):Object.prototype.toString.call(i);if(this===Promise){var a=t[r];if(a)return e.call(a)}if(this===Error){var c=t[o];if(c)return e.call(c)}}return e.call(this)};i[n]=e,Function.prototype.toString=i;var a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});var W=!1;if("undefined"!=typeof window)try{var U=Object.defineProperty({},"passive",{get:function(){W=!0}});window.addEventListener("test",U,U),window.removeEventListener("test",U,U)}catch(Tt){W=!1}var H={useG:!0},B={},G={},K=/^__zone_symbol__(\w+)(true|false)$/,V="__zone_symbol__propagationStopped";function X(t,e,n){var o=n&&n.add||a,i=n&&n.rm||c,u=n&&n.listeners||"eventListeners",s=n&&n.rmAll||"removeAllListeners",h=d(o),v="."+o+":",g="prependListener",y="."+g+":",b=function(t,e,n){if(!t.isRemoved){var r=t.callback;"object"==typeof r&&r.handleEvent&&(t.callback=function(t){return r.handleEvent(t)},t.originalDelegate=r),t.invoke(t,e,[n]);var o=t.options;o&&"object"==typeof o&&o.once&&e[i].call(e,n.type,t.originalDelegate?t.originalDelegate:t.callback,o)}},m=function(e){if(e=e||t.event){var n=this||e.target||t,r=n[B[e.type][l]];if(r)if(1===r.length)b(r[0],n,e);else for(var o=r.slice(),i=0;i1?new i(e,n):new i(e),s=t.ObjectGetOwnPropertyDescriptor(u,"onmessage");return s&&!1===s.configurable?(a=t.ObjectCreate(u),c=u,[r,o,"send","close"].forEach(function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===r||e===o){var i=n.length>0?n[0]:void 0;if(i){var c=Zone.__symbol__("ON_PROPERTY"+i);u[c]=a[c]}}return u[e].apply(u,n)}})):a=u,t.patchOnProperties(a,["close","error","message","open"],c),a};var a=e.WebSocket;for(var c in i)a[c]=i[c]}(t,e),Zone[t.symbol("patchEvents")]=!0}}Zone.__load_patch("util",function(t,r,u){u.patchOnProperties=D,u.patchMethod=A,u.bindArguments=_,u.patchMacroTask=N;var s=r.__symbol__("BLACK_LISTED_EVENTS"),v=r.__symbol__("UNPATCHED_EVENTS");t[v]&&(t[s]=t[v]),t[s]&&(r[s]=r[v]=t[s]),u.patchEventPrototype=Y,u.patchEventTarget=X,u.isIEOrEdge=C,u.ObjectDefineProperty=n,u.ObjectGetOwnPropertyDescriptor=e,u.ObjectCreate=o,u.ArraySlice=i,u.patchClass=j,u.wrapWithCurrentZone=h,u.filterProperties=yt,u.attachOriginToPatched=z,u._redefineProperty=rt,u.patchCallbacks=Q,u.getGlobalObjects=function(){return{globalSources:G,zoneSymbolEventNames:B,eventNames:gt,isBrowser:T,isMix:w,isNode:E,TRUE_STR:f,FALSE_STR:l,ZONE_SYMBOL_PREFIX:p,ADD_EVENT_LISTENER_STR:a,REMOVE_EVENT_LISTENER_STR:c}}}),function(t){t.__zone_symbol__legacyPatch=function(){var e=t.Zone;e.__load_patch("registerElement",function(t,e,n){!function(t,e){var n=e.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)}),e.__load_patch("EventTargetLegacy",function(t,e,n){kt(t,n),_t(n,t)})}}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global);var xt=d("zoneTask");function St(t,e,n,r){var o=null,i=null;n+=r;var a={};function c(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[xt]=null))}},n.handleId=o.apply(t,n.args),e}function u(t){return i(t.data.handleId)}o=A(t,e+=r,function(n){return function(o,i){if("function"==typeof i[0]){var s=v(e,i[0],{isPeriodic:"Interval"===r,delay:"Timeout"===r||"Interval"===r?i[1]||0:void 0,args:i},c,u);if(!s)return s;var f=s.data.handleId;return"number"==typeof f?a[f]=s:f&&(f[xt]=s),f&&f.ref&&f.unref&&"function"==typeof f.ref&&"function"==typeof f.unref&&(s.ref=f.ref.bind(f),s.unref=f.unref.bind(f)),"number"==typeof f||f?f:s}return n.apply(t,i)}}),i=A(t,n,function(e){return function(n,r){var o,i=r[0];"number"==typeof i?o=a[i]:(o=i&&i[xt])||(o=i),o&&"string"==typeof o.type?"notScheduled"!==o.state&&(o.cancelFn&&o.data.isPeriodic||0===o.runCount)&&("number"==typeof i?delete a[i]:i&&(i[xt]=null),o.zone.cancelTask(o)):e.apply(t,r)}})}function Et(t,e){if(!Zone[e.symbol("patchEventTarget")]){for(var n=e.getGlobalObjects(),r=n.eventNames,o=n.zoneSymbolEventNames,i=n.TRUE_STR,a=n.FALSE_STR,c=n.ZONE_SYMBOL_PREFIX,u=0;u0){var o=t.invoke;t.invoke=function(){for(var n=r.__zone_symbol__loadfalse,i=0;i")}),f=!i(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,l){var p=a(t),h=!i(function(){var e={};return e[p]=function(){return 7},7!=""[t](e)}),v=h&&!i(function(){var e=!1,n=/a/;return n.exec=function(){return e=!0,null},"split"===t&&(n.constructor={},n.constructor[u]=function(){return n}),n[p](""),!e});if(!h||!v||"replace"===t&&!s||"split"===t&&!f){var d=/./[p],g=n(p,""[t],function(t,e,n,r,o){return e.exec===c?h&&!o?{done:!0,value:d.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),y=g[1];o(String.prototype,t,g[0]),o(RegExp.prototype,p,2==e?function(t,e){return y.call(t,this,e)}:function(t){return y.call(t,this)}),l&&r(RegExp.prototype[p],"sham",!0)}}},"1E5z":function(t,e,n){var r=n("m/L8").f,o=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},"1Y/n":function(t,e,n){var r=n("HAuM"),o=n("ewvW"),i=n("RK3t"),a=n("UMSQ");t.exports=function(t,e,n,c,u){r(e);var s=o(t),f=i(s),l=a(s.length),p=u?l-1:0,h=u?-1:1;if(n<2)for(;;){if(p in f){c=f[p],p+=h;break}if(p+=h,u?p<0:l<=p)throw TypeError("Reduce of empty array with no initial value")}for(;u?p>=0:l>p;p+=h)p in f&&(c=e(c,f[p],p,s));return c}},"2A+d":function(t,e,n){var r=n("/GqU"),o=n("UMSQ");n("I+eb")({target:"String",stat:!0},{raw:function(t){for(var e=r(t.raw),n=o(e.length),i=arguments.length,a=[],c=0;n>c;)a.push(String(e[c++])),c=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}},"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},"4oU/":function(t,e,n){var r=n("2oRo").isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&r(t)}},"4syw":function(t,e,n){var r=n("busE");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},"5D5o":function(t,e,n){var r=n("hh1v"),o=Object.isSealed,i=n("0Dky")(function(){o(1)});n("I+eb")({target:"Object",stat:!0,forced:i},{isSealed:function(t){return!r(t)||!!o&&o(t)}})},"5DmW":function(t,e,n){var r=n("/GqU"),o=n("Bs8V").f,i=n("g6v/"),a=n("0Dky")(function(){o(1)}),c=!i||a;n("I+eb")({target:"Object",stat:!0,forced:c,sham:!i},{getOwnPropertyDescriptor:function(t,e){return o(r(t),e)}})},"5YOQ":function(t,e,n){var r=n("2oRo").parseInt,o=n("WKiH"),i=n("WJkJ"),a=/^[-+]?0[xX]/,c=8!==r(i+"08")||22!==r(i+"0x16");t.exports=c?function(t,e){var n=o(String(t),3);return r(n,e>>>0||(a.test(n)?16:10))}:r},"5Yz+":function(t,e,n){"use strict";var r=n("/GqU"),o=n("ppGB"),i=n("UMSQ"),a=[].lastIndexOf,c=!!a&&1/[1].lastIndexOf(1,-0)<0,u=n("swFL")("lastIndexOf");t.exports=c||u?function(t){if(c)return a.apply(this,arguments)||0;var e=r(this),n=i(e.length),u=n-1;for(arguments.length>1&&(u=Math.min(u,o(arguments[1]))),u<0&&(u=n+u);u>=0;u--)if(u in e&&e[u]===t)return u||0;return-1}:a},"5dW1":function(t,e,n){var r=n("ppGB"),o=n("HYAF");t.exports=function(t,e,n){var i,a,c=String(o(t)),u=r(e),s=c.length;return u<0||u>=s?n?"":void 0:(i=c.charCodeAt(u))<55296||i>56319||u+1===s||(a=c.charCodeAt(u+1))<56320||a>57343?n?c.charAt(u):i:n?c.slice(u,u+2):a-56320+(i-55296<<10)+65536}},"5mdu":function(t,e){t.exports=function(t){try{return{error:!1,value:t()}}catch(e){return{error:!0,value:e}}}},"5s+n":function(t,e,n){"use strict";var r,o,i,a=n("xDBR"),c=n("2oRo"),u=n("I+eb"),s=n("hh1v"),f=n("HAuM"),l=n("GarU"),p=n("xrYK"),h=n("ImZN"),v=n("HH4o"),d=n("SEBh"),g=n("LPSS").set,y=n("tXUg"),b=n("zfnd"),m=n("RN6c"),k=n("8GlL"),_=n("5mdu"),x=n("s5pE"),S=n("tiKp")("species"),E=n("afO8"),T=n("lMq5"),w=E.get,O=E.set,I=E.getterFor("Promise"),M=c.Promise,D=c.TypeError,P=c.document,j=c.process,R=c.fetch,A=j&&j.versions,N=A&&A.v8||"",z=k.f,L=z,F="process"==p(j),Z=!!(P&&P.createEvent&&c.dispatchEvent),C=T("Promise",function(){var t=M.resolve(1),e=function(){},n=(t.constructor={})[S]=function(t){t(e,e)};return!((F||"function"==typeof PromiseRejectionEvent)&&(!a||t.finally)&&t.then(e)instanceof n&&0!==N.indexOf("6.6")&&-1===x.indexOf("Chrome/66"))}),W=C||!v(function(t){M.all(t).catch(function(){})}),U=function(t){var e;return!(!s(t)||"function"!=typeof(e=t.then))&&e},H=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;y(function(){for(var o=e.value,i=1==e.state,a=0,c=function(n){var r,a,c,u=i?n.ok:n.fail,s=n.resolve,f=n.reject,l=n.domain;try{u?(i||(2===e.rejection&&V(t,e),e.rejection=1),!0===u?r=o:(l&&l.enter(),r=u(o),l&&(l.exit(),c=!0)),r===n.promise?f(D("Promise-chain cycle")):(a=U(r))?a.call(r,s,f):s(r)):f(o)}catch(p){l&&!c&&l.exit(),f(p)}};r.length>a;)c(r[a++]);e.reactions=[],e.notified=!1,n&&!e.rejection&&G(t,e)})}},B=function(t,e,n){var r,o;Z?((r=P.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),c.dispatchEvent(r)):r={promise:e,reason:n},(o=c["on"+t])?o(r):"unhandledrejection"===t&&m("Unhandled promise rejection",n)},G=function(t,e){g.call(c,function(){var n,r=e.value;if(K(e)&&(n=_(function(){F?j.emit("unhandledRejection",r,t):B("unhandledrejection",t,r)}),e.rejection=F||K(e)?2:1,n.error))throw n.value})},K=function(t){return 1!==t.rejection&&!t.parent},V=function(t,e){g.call(c,function(){F?j.emit("rejectionHandled",t):B("rejectionhandled",t,e.value)})},X=function(t,e,n,r){return function(o){t(e,n,o,r)}},q=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,H(t,e,!0))},Y=function(t,e,n,r){if(!e.done){e.done=!0,r&&(e=r);try{if(t===n)throw D("Promise can't be resolved itself");var o=U(n);o?y(function(){var r={done:!1};try{o.call(n,X(Y,t,r,e),X(q,t,r,e))}catch(i){q(t,r,i,e)}}):(e.value=n,e.state=1,H(t,e,!1))}catch(i){q(t,{done:!1},i,e)}}};C&&(M=function(t){l(this,M,"Promise"),f(t),r.call(this);var e=w(this);try{t(X(Y,this,e),X(q,this,e))}catch(n){q(this,e,n)}},(r=function(t){O(this,{type:"Promise",done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=n("4syw")(M.prototype,{then:function(t,e){var n=I(this),r=z(d(this,M));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=F?j.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&H(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=w(t);this.promise=t,this.resolve=X(Y,t,e),this.reject=X(q,t,e)},k.f=z=function(t){return t===M||t===i?new o(t):L(t)},a||"function"!=typeof R||u({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return b(M,R.apply(c,arguments))}})),u({global:!0,wrap:!0,forced:C},{Promise:M}),n("1E5z")(M,"Promise",!1,!0),n("JiZb")("Promise"),i=n("Qo9l").Promise,u({target:"Promise",stat:!0,forced:C},{reject:function(t){var e=z(this);return e.reject.call(void 0,t),e.promise}}),u({target:"Promise",stat:!0,forced:a||C},{resolve:function(t){return b(a&&this===i?M:this,t)}}),u({target:"Promise",stat:!0,forced:W},{all:function(t){var e=this,n=z(e),r=n.resolve,o=n.reject,i=_(function(){var n=[],i=0,a=1;h(t,function(t){var c=i++,u=!1;n.push(void 0),a++,e.resolve(t).then(function(t){u||(u=!0,n[c]=t,--a||r(n))},o)}),--a||r(n)});return i.error&&o(i.value),n.promise},race:function(t){var e=this,n=z(e),r=n.reject,o=_(function(){h(t,function(t){e.resolve(t).then(n.resolve,r)})});return o.error&&r(o.value),n.promise}})},"5uH8":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},"6JNq":function(t,e,n){var r=n("UTVS"),o=n("Vu81"),i=n("Bs8V"),a=n("m/L8");t.exports=function(t,e){for(var n=o(e),c=a.f,u=i.f,s=0;s3})}},"7+zs":function(t,e,n){var r=n("X2U+"),o=n("tiKp")("toPrimitive"),i=n("UesL"),a=Date.prototype;o in a||r(a,o,i)},"7sbD":function(t,e,n){n("qePV"),n("NbN+"),n("8AyJ"),n("i6QF"),n("kSko"),n("WDsR"),n("r/Vq"),n("5uH8"),n("w1rZ"),n("JevA"),n("toAj"),n("VC3L"),t.exports=n("Qo9l").Number},"8AyJ":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{isFinite:n("4oU/")})},"8GlL":function(t,e,n){"use strict";var r=n("HAuM"),o=function(t){var e,n;this.promise=new t(function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r}),this.resolve=r(e),this.reject=r(n)};t.exports.f=function(t){return new o(t)}},"8YOa":function(t,e,n){var r=n("kOOl")("meta"),o=n("uy83"),i=n("hh1v"),a=n("UTVS"),c=n("m/L8").f,u=0,s=Object.isExtensible||function(){return!0},f=function(t){c(t,r,{value:{objectID:"O"+ ++u,weakData:{}}})},l=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!a(t,r)){if(!s(t))return"F";if(!e)return"E";f(t)}return t[r].objectID},getWeakData:function(t,e){if(!a(t,r)){if(!s(t))return!0;if(!e)return!1;f(t)}return t[r].weakData},onFreeze:function(t){return o&&l.REQUIRED&&s(t)&&!a(t,r)&&f(t),t}};n("0BK2")[r]=!0},"90hW":function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},"93I0":function(t,e,n){var r=n("VpIT")("keys"),o=n("kOOl");t.exports=function(t){return r[t]||(r[t]=o(t))}},"9LPj":function(t,e,n){"use strict";var r=n("ewvW"),o=n("wE6v"),i=n("0Dky")(function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})});n("I+eb")({target:"Date",proto:!0,forced:i},{toJSON:function(t){var e=r(this),n=o(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},"9N29":function(t,e,n){"use strict";var r=n("1Y/n"),o=n("swFL")("reduceRight");n("I+eb")({target:"Array",proto:!0,forced:o},{reduceRight:function(t){return r(this,t,arguments.length,arguments[1],!0)}})},"9bJ7":function(t,e,n){"use strict";var r=n("5dW1");n("I+eb")({target:"String",proto:!0},{codePointAt:function(t){return r(this,t)}})},"9d/t":function(t,e,n){var r=n("xrYK"),o=n("tiKp")("toStringTag"),i="Arguments"==r(function(){return arguments}());t.exports=function(t){var e,n,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),o))?n:i?r(e):"Object"==(a=r(e))&&"function"==typeof e.callee?"Arguments":a}},"9mRW":function(t,e,n){n("I+eb")({target:"Math",stat:!0},{fround:n("vo4V")})},"9tb/":function(t,e,n){var r=n("I8vh"),o=String.fromCharCode,i=String.fromCodePoint,a=!!i&&1!=i.length;n("I+eb")({target:"String",stat:!0,forced:a},{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("")}})},AmFO:function(t,e,n){var r=n("jrUv"),o=Math.abs,i=Math.exp,a=Math.E,c=n("0Dky")(function(){return-2e-17!=Math.sinh(-2e-17)});n("I+eb")({target:"Math",stat:!0,forced:c},{sinh:function(t){return o(t=+t)<1?(r(t)-r(-t))/2:(i(t-1)-i(-t-1))*(a/2)}})},Anvj:function(t,e,n){var r=n("33Wh"),o=n("dBg+"),i=n("0eef");t.exports=function(t){var e=r(t),n=o.f;if(n)for(var a,c=n(t),u=i.f,s=0;c.length>s;)u.call(t,a=c[s++])&&e.push(a);return e}},BNMt:function(t,e,n){"use strict";var r=n("hXpO"),o=n("6unK")("blink");n("I+eb")({target:"String",proto:!0,forced:o},{blink:function(){return r(this,"blink","","")}})},BTho:function(t,e,n){"use strict";var r=n("HAuM"),o=n("hh1v"),i=[].slice,a={};t.exports=Function.bind||function(t){var e=r(this),n=i.call(arguments,1),c=function(){var r=n.concat(i.call(arguments));return this instanceof c?function(t,e,n){if(!(e in a)){for(var r=[],o=0;o0?arguments[0]:void 0)}},v=t.exports=n("bWFh")("WeakMap",h,c,!0,!0);if(f&&l){r=c.getConstructor(h,"WeakMap",!0),a.REQUIRED=!0;var d=v.prototype,g=d.delete,y=d.has,b=d.get,m=d.set;i(d,{delete:function(t){if(u(t)&&!p(t)){var e=s(this);return e.frozen||(e.frozen=new r),g.call(this,t)||e.frozen.delete(t)}return g.call(this,t)},has:function(t){if(u(t)&&!p(t)){var e=s(this);return e.frozen||(e.frozen=new r),y.call(this,t)||e.frozen.has(t)}return y.call(this,t)},get:function(t){if(u(t)&&!p(t)){var e=s(this);return e.frozen||(e.frozen=new r),y.call(this,t)?b.call(this,t):e.frozen.get(t)}return b.call(this,t)},set:function(t,e){if(u(t)&&!p(t)){var n=s(this);n.frozen||(n.frozen=new r),y.call(this,t)?m.call(this,t,e):n.frozen.set(t,e)}else m.call(this,t,e);return this}})}},EUja:function(t,e,n){"use strict";var r=n("ppGB"),o=n("HYAF");t.exports="".repeat||function(t){var e=String(o(this)),n="",i=r(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},EnZy:function(t,e,n){"use strict";var r=n("ROdP"),o=n("glrk"),i=n("HYAF"),a=n("SEBh"),c=n("iqWW"),u=n("UMSQ"),s=n("FMNM"),f=n("kmMV"),l=n("0Dky"),p=[].push,h=Math.min,v=!l(function(){return!RegExp(4294967295,"y")});n("14Sl")("split",2,function(t,e,n){var l;return l="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 o=String(i(this)),a=void 0===n?4294967295:n>>>0;if(0===a)return[];if(void 0===t)return[o];if(!r(t))return e.call(o,t,a);for(var c,u,s,l=[],h=0,v=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(c=f.call(v,o))&&!((u=v.lastIndex)>h&&(l.push(o.slice(h,c.index)),c.length>1&&c.index=a));)v.lastIndex===c.index&&v.lastIndex++;return h===o.length?!s&&v.test("")||l.push(""):l.push(o.slice(h)),l.length>a?l.slice(0,a):l}:"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=i(this),o=null==e?void 0:e[t];return void 0!==o?o.call(e,r,n):l.call(String(r),e,n)},function(t,r){var i=n(l,t,this,r,l!==e);if(i.done)return i.value;var f=o(t),p=String(this),d=a(f,RegExp),g=f.unicode,y=new d(v?f:"^(?:"+f.source+")",(f.ignoreCase?"i":"")+(f.multiline?"m":"")+(f.unicode?"u":"")+(v?"y":"g")),b=void 0===r?4294967295:r>>>0;if(0===b)return[];if(0===p.length)return null===s(y,p)?[p]:[];for(var m=0,k=0,_=[];k2?arguments[2]:void 0,f=Math.min((void 0===s?a:o(s,a))-u,a-c),l=1;for(u0;)u in n?n[c]=n[u]:delete n[c],c+=l,u+=l;return n}},FMNM:function(t,e,n){var r=n("xrYK"),o=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},"G+Rx":function(t,e,n){var r=n("2oRo").document;t.exports=r&&r.documentElement},GKVU:function(t,e,n){"use strict";var r=n("hXpO"),o=n("6unK")("anchor");n("I+eb")({target:"String",proto:!0,forced:o},{anchor:function(t){return r(this,"a","name",t)}})},GRPF:function(t,e,n){"use strict";var r=n("hXpO"),o=n("6unK")("fontsize");n("I+eb")({target:"String",proto:!0,forced:o},{fontsize:function(t){return r(this,"font","size",t)}})},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HH4o:function(t,e,n){var r=n("tiKp")("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,function(){throw 2})}catch(c){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(c){}return n}},HRxU:function(t,e,n){var r=n("g6v/");n("I+eb")({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperties:n("N+g0")})},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var r=n("0Dky"),o=n("tiKp")("species");t.exports=function(t){return!r(function(){var e=[];return(e.constructor={})[o]=function(){return{foo:1}},1!==e[t](Boolean).foo})}},HsHA:function(t,e){t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:Math.log(1+t)}},"I+eb":function(t,e,n){var r=n("2oRo"),o=n("Bs8V").f,i=n("X2U+"),a=n("busE"),c=n("zk60"),u=n("6JNq"),s=n("lMq5");t.exports=function(t,e){var n,f,l,p,h,v=t.target,d=t.global,g=t.stat;if(n=d?r:g?r[v]||c(v,{}):(r[v]||{}).prototype)for(f in e){if(p=e[f],l=t.noTargetGet?(h=o(n,f))&&h.value:n[f],!s(d?f:v+(g?".":"#")+f,t.forced)&&void 0!==l){if(typeof p==typeof l)continue;u(p,l)}(t.sham||l&&l.sham)&&i(p,"sham",!0),a(n,f,p,t)}}},I8vh:function(t,e,n){var r=n("ppGB"),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},I9xj:function(t,e,n){n("1E5z")(Math,"Math",!0)},ImZN:function(t,e,n){var r=n("glrk"),o=n("6VoE"),i=n("UMSQ"),a=n("+MLx"),c=n("NaFW"),u=n("m92n"),s={};(t.exports=function(t,e,n,f,l){var p,h,v,d,g,y=a(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(h=c(t)))throw TypeError("Target is not iterable");if(o(h)){for(v=0,d=i(t.length);d>v;v++)if((f?y(r(g=t[v])[0],g[1]):y(t[v]))===s)return s;return}p=h.call(t)}for(;!(g=p.next()).done;)if(u(p,y,g.value,f)===s)return s}).BREAK=s},IxXR:function(t,e,n){"use strict";var r=n("hXpO"),o=n("6unK")("strike");n("I+eb")({target:"String",proto:!0,forced:o},{strike:function(){return r(this,"strike","","")}})},J30X:function(t,e,n){n("I+eb")({target:"Array",stat:!0},{isArray:n("6LWA")})},JBy8:function(t,e,n){var r=n("yoRg"),o=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},JTJg:function(t,e,n){"use strict";var r=n("NA7A"),o=n("qxPZ")("includes");n("I+eb")({target:"String",proto:!0,forced:!o},{includes:function(t){return!!~r(this,t,"includes").indexOf(t,arguments.length>1?arguments[1]:void 0)}})},JevA:function(t,e,n){var r=n("5YOQ");n("I+eb")({target:"Number",stat:!0,forced:Number.parseInt!=r},{parseInt:r})},JfAA:function(t,e,n){"use strict";var r=n("glrk"),o=n("0Dky"),i=n("rW0t"),a=n("g6v/"),c=/./.toString;(o(function(){return"/a/b"!=c.call({source:"a",flags:"b"})})||"toString"!=c.name)&&n("busE")(RegExp.prototype,"toString",function(){var t=r(this);return"/".concat(t.source,"/","flags"in t?t.flags:!a&&t instanceof RegExp?i.call(t):void 0)},{unsafe:!0})},JiZb:function(t,e,n){"use strict";var r=n("0GbY"),o=n("m/L8"),i=n("g6v/"),a=n("tiKp")("species");t.exports=function(t){var e=r(t);i&&e&&!e[a]&&(0,o.f)(e,a,{configurable:!0,get:function(){return this}})}},Kv9l:function(t,e,n){n("TWNs"),n("JfAA"),n("rB9j"),n("U3f4"),n("Rm1S"),n("UxlC"),n("hByQ"),n("EnZy")},KvGi:function(t,e,n){n("I+eb")({target:"Math",stat:!0},{sign:n("90hW")})},Kxld:function(t,e,n){n("I+eb")({target:"Object",stat:!0},{is:n("Ep9I")})},LKBx:function(t,e,n){"use strict";var r=n("UMSQ"),o=n("NA7A"),i=n("qxPZ")("startsWith"),a="".startsWith;n("I+eb")({target:"String",proto:!0,forced:!i},{startsWith:function(t){var e=o(this,t,"startsWith"),n=r(Math.min(arguments.length>1?arguments[1]:void 0,e.length)),i=String(t);return a?a.call(e,i,n):e.slice(n,n+i.length)===i}})},LPSS:function(t,e,n){var r,o,i,a=n("2oRo"),c=n("xrYK"),u=n("+MLx"),s=n("G+Rx"),f=n("zBJ4"),l=a.setImmediate,p=a.clearImmediate,h=a.process,v=a.MessageChannel,d=a.Dispatch,g=0,y={},b=function(){var t=+this;if(y.hasOwnProperty(t)){var e=y[t];delete y[t],e()}},m=function(t){b.call(t.data)};l&&p||(l=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return y[++g]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(g),g},p=function(t){delete y[t]},"process"==c(h)?r=function(t){h.nextTick(u(b,t,1))}:d&&d.now?r=function(t){d.now(u(b,t,1))}:v?(i=(o=new v).port2,o.port1.onmessage=m,r=u(i.postMessage,i,1)):a.addEventListener&&"function"==typeof postMessage&&!a.importScripts?(r=function(t){a.postMessage(t+"","*")},a.addEventListener("message",m,!1)):r="onreadystatechange"in f("script")?function(t){s.appendChild(f("script")).onreadystatechange=function(){s.removeChild(this),b.call(t)}}:function(t){setTimeout(u(b,t,1),0)}),t.exports={set:l,clear:p}},LhpL:function(t,e,n){var r=n("hh1v"),o=n("glrk");t.exports=function(t,e){if(o(t),!r(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype")}},"N+g0":function(t,e,n){var r=n("g6v/"),o=n("m/L8"),i=n("glrk"),a=n("33Wh");t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),c=r.length,u=0;c>u;)o.f(t,n=r[u++],e[n]);return t}},NA7A:function(t,e,n){var r=n("ROdP"),o=n("HYAF");t.exports=function(t,e,n){if(r(e))throw TypeError("String.prototype."+n+" doesn't accept regex");return String(o(t))}},NBAS:function(t,e,n){var r=n("ewvW"),o=n("4WOD"),i=n("4Xet"),a=n("0Dky")(function(){o(1)});n("I+eb")({target:"Object",stat:!0,forced:a,sham:!i},{getPrototypeOf:function(t){return o(r(t))}})},NaFW:function(t,e,n){var r=n("9d/t"),o=n("tiKp")("iterator"),i=n("P4y1");t.exports=function(t){if(null!=t)return t[o]||t["@@iterator"]||i[r(t)]}},"NbN+":function(t,e,n){n("I+eb")({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},OM9Z:function(t,e,n){n("I+eb")({target:"String",proto:!0},{repeat:n("EUja")})},P0SU:function(t,e,n){var r=n("+MLx"),o=n("RK3t"),i=n("ewvW"),a=n("UMSQ"),c=n("ZfDv");t.exports=function(t,e){var n=1==t,u=2==t,s=3==t,f=4==t,l=6==t,p=5==t||l,h=e||c;return function(e,c,v){for(var d,g,y=i(e),b=o(y),m=r(c,v,3),k=a(b.length),_=0,x=n?h(e,k):u?h(e,0):void 0;k>_;_++)if((p||_ in b)&&(g=m(d=b[_],_,y),t))if(n)x[_]=g;else if(g)switch(t){case 3:return!0;case 5:return d;case 6:return _;case 2:x.push(d)}else if(f)return!1;return l?-1:s||f?f:x}}},P4y1:function(t,e){t.exports={}},PKPk:function(t,e,n){"use strict";var r=n("5dW1"),o=n("afO8"),i=n("fdAy"),a=o.set,c=o.getterFor("String Iterator");i(String,"String",function(t){a(this,{type:"String Iterator",string:String(t),index:0})},function(){var t,e=c(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o,!0),e.index+=t.length,{value:t,done:!1})})},PqOI:function(t,e,n){var r=n("90hW"),o=Math.abs,i=Math.pow;n("I+eb")({target:"Math",stat:!0},{cbrt:function(t){return r(t=+t)*i(o(t),1/3)}})},QFcT:function(t,e,n){var r=Math.abs,o=Math.sqrt;n("I+eb")({target:"Math",stat:!0},{hypot:function(t,e){for(var n,i,a=0,c=0,u=arguments.length,s=0;c0?(i=n/s)*i:n;return s===1/0?1/0:s*o(a)}})},QIpd:function(t,e,n){var r=n("xrYK");t.exports=function(t){if("number"!=typeof t&&"Number"!=r(t))throw TypeError("Incorrect invocation");return+t}},QNnp:function(t,e,n){var r=Math.floor,o=Math.log,i=Math.LOG2E;n("I+eb")({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-r(o(t+.5)*i):32}})},QWBl:function(t,e,n){"use strict";var r=n("F8JR");n("I+eb")({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},Qo9l:function(t,e,n){t.exports=n("2oRo")},RK3t:function(t,e,n){var r=n("0Dky"),o=n("xrYK"),i="".split;t.exports=r(function(){return!Object("z").propertyIsEnumerable(0)})?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},RN6c:function(t,e,n){var r=n("2oRo");t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},RNIs:function(t,e,n){var r=n("tiKp")("unscopables"),o=n("fHMY"),i=n("X2U+"),a=Array.prototype;null==a[r]&&i(a,r,o(null)),t.exports=function(t){a[r][t]=!0}},ROdP:function(t,e,n){var r=n("hh1v"),o=n("xrYK"),i=n("tiKp")("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},Rfxz:function(t,e,n){"use strict";var r=n("P0SU")(3),o=n("swFL")("some");n("I+eb")({target:"Array",proto:!0,forced:o},{some:function(t){return r(this,t,arguments[1])}})},Rm1S:function(t,e,n){"use strict";var r=n("glrk"),o=n("UMSQ"),i=n("HYAF"),a=n("iqWW"),c=n("FMNM");n("14Sl")("match",1,function(t,e,n){return[function(e){var n=i(this),r=null==e?void 0:e[t];return void 0!==r?r.call(e,n):new RegExp(e)[t](String(n))},function(t){var i=n(e,t,this);if(i.done)return i.value;var u=r(t),s=String(this);if(!u.global)return c(u,s);var f=u.unicode;u.lastIndex=0;for(var l,p=[],h=0;null!==(l=c(u,s));){var v=String(l[0]);p[h]=v,""===v&&(u.lastIndex=a(s,o(u.lastIndex),f)),h++}return 0===h?null:p}]})},SEBh:function(t,e,n){var r=n("glrk"),o=n("HAuM"),i=n("tiKp")("species");t.exports=function(t,e){var n,a=r(t).constructor;return void 0===a||null==(n=r(a)[i])?e:o(n)}},STAE:function(t,e,n){t.exports=!n("0Dky")(function(){return!String(Symbol())})},SYor:function(t,e,n){"use strict";var r=n("WKiH"),o=n("4HCi")("trim");n("I+eb")({target:"String",proto:!0,forced:o},{trim:function(){return r(this,3)}})},TFPT:function(t,e,n){"use strict";var r=n("hXpO"),o=n("6unK")("sub");n("I+eb")({target:"String",proto:!0,forced:o},{sub:function(){return r(this,"sub","","")}})},TWNs:function(t,e,n){var r=n("g6v/"),o=n("tiKp")("match"),i=n("2oRo"),a=n("lMq5"),c=n("cVYH"),u=n("m/L8").f,s=n("JBy8").f,f=n("ROdP"),l=n("rW0t"),p=n("busE"),h=n("0Dky"),v=i.RegExp,d=v.prototype,g=/a/g,y=/a/g,b=new v(g)!==g;if(a("RegExp",r&&(!b||h(function(){return y[o]=!1,v(g)!=g||v(y)==y||"/a/i"!=v(g,"i")})))){for(var m=function(t,e){var n=this instanceof m,r=f(t),o=void 0===e;return!n&&r&&t.constructor===m&&o?t:c(b?new v(r&&!o?t.source:t,e):v((r=t instanceof m)?t.source:t,r&&o?l.call(t):e),n?this:d,m)},k=function(t){t in m||u(m,t,{configurable:!0,get:function(){return v[t]},set:function(e){v[t]=e}})},_=s(v),x=0;x<_.length;)k(_[x++]);d.constructor=m,m.prototype=d,p(i,"RegExp",m)}n("JiZb")("RegExp")},TWQb:function(t,e,n){var r=n("/GqU"),o=n("UMSQ"),i=n("I8vh");t.exports=function(t){return function(e,n,a){var c,u=r(e),s=o(u.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((c=u[f++])!=c)return!0}else for(;s>f;f++)if((t||f in u)&&u[f]===n)return t||f||0;return!t&&-1}}},TeQF:function(t,e,n){"use strict";var r=n("P0SU")(2),o=n("Hd5f")("filter");n("I+eb")({target:"Array",proto:!0,forced:!o},{filter:function(t){return r(this,t,arguments[1])}})},TfTi:function(t,e,n){"use strict";var r=n("+MLx"),o=n("ewvW"),i=n("m92n"),a=n("6VoE"),c=n("UMSQ"),u=n("hBjN"),s=n("NaFW");t.exports=function(t){var e,n,f,l,p=o(t),h="function"==typeof this?this:Array,v=arguments.length,d=v>1?arguments[1]:void 0,g=void 0!==d,y=0,b=s(p);if(g&&(d=r(d,v>2?arguments[2]:void 0,2)),null==b||h==Array&&a(b))for(n=new h(e=c(p.length));e>y;y++)u(n,y,g?d(p[y],y):p[y]);else for(l=b.call(p),n=new h;!(f=l.next()).done;y++)u(n,y,g?i(l,d,[f.value,y],!0):f.value);return n.length=y,n}},ToJy:function(t,e,n){"use strict";var r=n("HAuM"),o=n("ewvW"),i=n("0Dky"),a=[].sort,c=[1,2,3],u=i(function(){c.sort(void 0)}),s=i(function(){c.sort(null)}),f=n("swFL")("sort"),l=u||!s||f;n("I+eb")({target:"Array",proto:!0,forced:l},{sort:function(t){return void 0===t?a.call(o(this)):a.call(o(this),r(t))}})},Tskq:function(t,e,n){"use strict";t.exports=n("bWFh")("Map",function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},n("ZWaQ"),!0)},U3f4:function(t,e,n){n("g6v/")&&"g"!=/./g.flags&&n("m/L8").f(RegExp.prototype,"flags",{configurable:!0,get:n("rW0t")})},UMSQ:function(t,e,n){var r=n("ppGB"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},UesL:function(t,e,n){"use strict";var r=n("glrk"),o=n("wE6v");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return o(r(this),"number"!==t)}},UxlC:function(t,e,n){"use strict";var r=n("glrk"),o=n("ewvW"),i=n("UMSQ"),a=n("ppGB"),c=n("HYAF"),u=n("iqWW"),s=n("FMNM"),f=Math.max,l=Math.min,p=Math.floor,h=/\$([$&`']|\d\d?|<[^>]*>)/g,v=/\$([$&`']|\d\d?)/g;n("14Sl")("replace",2,function(t,e,n){return[function(n,r){var o=c(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,o){var c=n(e,t,this,o);if(c.done)return c.value;var p=r(t),h=String(this),v="function"==typeof o;v||(o=String(o));var g=p.global;if(g){var y=p.unicode;p.lastIndex=0}for(var b=[];;){var m=s(p,h);if(null===m)break;if(b.push(m),!g)break;""===String(m[0])&&(p.lastIndex=u(h,i(p.lastIndex),y))}for(var k,_="",x=0,S=0;S=x&&(_+=h.slice(x,T)+D,x=T+E.length)}return _+h.slice(x)}];function d(t,n,r,i,a,c){var u=r+t.length,s=i.length,f=v;return void 0!==a&&(a=o(a),f=h),e.call(c,f,function(e,o){var c;switch(o.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(u);case"<":c=a[o.slice(1,-1)];break;default:var f=+o;if(0===f)return e;if(f>s){var l=p(f/10);return 0===l?e:l<=s?void 0===i[l-1]?o.charAt(1):i[l-1]+o.charAt(1):e}c=i[f-1]}return void 0===c?"":c})}})},Uydy:function(t,e,n){var r=n("HsHA"),o=Math.acosh,i=Math.log,a=Math.sqrt,c=Math.LN2,u=!o||710!=Math.floor(o(Number.MAX_VALUE))||o(1/0)!=1/0;n("I+eb")({target:"Math",stat:!0,forced:u},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?i(t)+c:r(t-1+a(t-1)*a(t+1))}})},VC3L:function(t,e,n){"use strict";var r=n("0Dky"),o=n("QIpd"),i=1..toPrecision;n("I+eb")({target:"Number",proto:!0,forced:r(function(){return"1"!==i.call(1,void 0)})||!r(function(){i.call({})})},{toPrecision:function(t){return void 0===t?i.call(o(this)):i.call(o(this),t)}})},VpIT:function(t,e,n){var r=n("2oRo"),o=n("zk60"),i=r["__core-js_shared__"]||o("__core-js_shared__",{});(t.exports=function(t,e){return i[t]||(i[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.0.1",mode:n("xDBR")?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var r=n("JBy8"),o=n("dBg+"),i=n("glrk"),a=n("2oRo").Reflect;t.exports=a&&a.ownKeys||function(t){var e=r.f(i(t)),n=o.f;return n?e.concat(n(t)):e}},WDsR:function(t,e,n){var r=n("Xol8"),o=Math.abs;n("I+eb")({target:"Number",stat:!0},{isSafeInteger:function(t){return r(t)&&o(t)<=9007199254740991}})},WJkJ:function(t,e){t.exports="\t\n\v\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},WKiH:function(t,e,n){var r=n("HYAF"),o="["+n("WJkJ")+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$");t.exports=function(t,e){return t=String(r(t)),1&e&&(t=t.replace(i,"")),2&e&&(t=t.replace(a,"")),t}},"X2U+":function(t,e,n){var r=n("m/L8"),o=n("XGwC");t.exports=n("g6v/")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},Xe3L:function(t,e,n){"use strict";var r=n("hBjN"),o=n("0Dky")(function(){function t(){}return!(Array.of.call(t)instanceof t)});n("I+eb")({target:"Array",stat:!0,forced:o},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)r(n,t,arguments[t++]);return n.length=e,n}})},Xol8:function(t,e,n){var r=n("hh1v"),o=Math.floor;t.exports=function(t){return!r(t)&&isFinite(t)&&o(t)===t}},YGK4:function(t,e,n){"use strict";t.exports=n("bWFh")("Set",function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},n("ZWaQ"))},YNrV:function(t,e,n){"use strict";var r=n("33Wh"),o=n("dBg+"),i=n("0eef"),a=n("ewvW"),c=n("RK3t"),u=Object.assign;t.exports=!u||n("0Dky")(function(){var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach(function(t){e[t]=t}),7!=u({},t)[n]||"abcdefghijklmnopqrst"!=r(u({},e)).join("")})?function(t,e){for(var n=a(t),u=arguments.length,s=1,f=o.f,l=i.f;u>s;)for(var p,h=c(arguments[s++]),v=f?r(h).concat(f(h)):r(h),d=v.length,g=0;d>g;)l.call(h,p=v[g++])&&(n[p]=h[p]);return n}:u},ZOXb:function(t,e,n){"use strict";var r=n("0Dky"),o=Date.prototype,i=o.getTime,a=o.toISOString,c=function(t){return t>9?t:"0"+t};t.exports=r(function(){return"0385-07-25T07:06:39.999Z"!=a.call(new Date(-5e13-1))})||!r(function(){a.call(new Date(NaN))})?function(){if(!isFinite(i.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+("00000"+Math.abs(t)).slice(n?-6:-4)+"-"+c(this.getUTCMonth()+1)+"-"+c(this.getUTCDate())+"T"+c(this.getUTCHours())+":"+c(this.getUTCMinutes())+":"+c(this.getUTCSeconds())+"."+(e>99?e:"0"+c(e))+"Z"}:a},ZWaQ:function(t,e,n){"use strict";var r=n("m/L8").f,o=n("fHMY"),i=n("4syw"),a=n("+MLx"),c=n("GarU"),u=n("ImZN"),s=n("fdAy"),f=n("JiZb"),l=n("g6v/"),p=n("8YOa").fastKey,h=n("afO8"),v=h.set,d=h.getterFor;t.exports={getConstructor:function(t,e,n,s){var f=t(function(t,r){c(t,f,e),v(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),l||(t.size=0),null!=r&&u(r,t[s],t,n)}),h=d(e),g=function(t,e,n){var r,o,i=h(t),a=y(t,e);return a?a.value=n:(i.last=a={index:o=p(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),l?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},y=function(t,e){var n,r=h(t),o=p(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(f.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,l?t.size=0:this.size=0},delete:function(t){var e=h(this),n=y(this,t);if(n){var r=n.next,o=n.previous;delete e.index[n.index],n.removed=!0,o&&(o.next=r),r&&(r.previous=o),e.first==n&&(e.first=r),e.last==n&&(e.last=o),l?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!y(this,t)}}),i(f.prototype,n?{get:function(t){var e=y(this,t);return e&&e.value},set:function(t,e){return g(this,0===t?0:t,e)}}:{add:function(t){return g(this,t=0===t?0:t,t)}}),l&&r(f.prototype,"size",{get:function(){return h(this).size}}),f},setStrong:function(t,e,n){var r=e+" Iterator",o=d(e),i=d(r);s(t,e,function(t,e){v(this,{type:r,target:t,state:o(t),kind:e,last:void 0})},function(){for(var t=i(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),f(e)}}},ZfDv:function(t,e,n){var r=n("hh1v"),o=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},Zk8X:function(t,e,n){"use strict";var r=n("hXpO"),o=n("6unK")("sup");n("I+eb")({target:"String",proto:!0,forced:o},{sup:function(){return r(this,"sup","","")}})},a5NK:function(t,e,n){var r=Math.log,o=Math.LOG10E;n("I+eb")({target:"Math",stat:!0},{log10:function(t){return r(t)*o}})},afO8:function(t,e,n){var r,o,i,a=n("f5p1"),c=n("hh1v"),u=n("X2U+"),s=n("UTVS"),f=n("93I0"),l=n("0BK2"),p=n("2oRo").WeakMap;if(a){var h=new p,v=h.get,d=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return v.call(h,t)||{}},i=function(t){return d.call(h,t)}}else{var y=f("state");l[y]=!0,r=function(t,e){return u(t,y,e),e},o=function(t){return s(t,y)?t[y]:{}},i=function(t){return s(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!c(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},"b+VT":function(t,e,n){var r=n("2oRo").parseFloat,o=n("WKiH"),i=n("WJkJ"),a=1/r(i+"-0")!=-1/0;t.exports=a?function(t){var e=o(String(t),3),n=r(e);return 0===n&&"-"==e.charAt(0)?-0:n}:r},bWFh:function(t,e,n){"use strict";var r=n("2oRo"),o=n("lMq5"),i=n("I+eb"),a=n("busE"),c=n("8YOa"),u=n("ImZN"),s=n("GarU"),f=n("hh1v"),l=n("0Dky"),p=n("HH4o"),h=n("1E5z"),v=n("cVYH");t.exports=function(t,e,n,d,g){var y=r[t],b=y&&y.prototype,m=y,k=d?"set":"add",_={},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!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(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||!(g||b.forEach&&!l(function(){(new y).entries().next()}))))m=n.getConstructor(e,t,d,k),c.REQUIRED=!0;else if(o(t,!0)){var S=new m,E=S[k](g?{}:-0,1)!=S,T=l(function(){S.has(1)}),w=p(function(t){new y(t)}),O=!g&&l(function(){for(var t=new y,e=5;e--;)t[k](e,e);return!t.has(-0)});w||((m=e(function(e,n){s(e,m,t);var r=v(new y,e,m);return null!=n&&u(n,r[k],r,d),r})).prototype=b,b.constructor=m),(T||O)&&(x("delete"),x("has"),d&&x("get")),(O||E)&&x(k),g&&b.clear&&delete b.clear}return _[t]=m,i({global:!0,forced:m!=y},_),h(m,t),g||n.setStrong(m,t,d),m}},brp2:function(t,e,n){n("I+eb")({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},busE:function(t,e,n){var r=n("2oRo"),o=n("X2U+"),i=n("UTVS"),a=n("zk60"),c=n("noGo"),u=n("afO8"),s=u.get,f=u.enforce,l=String(c).split("toString");n("VpIT")("inspectSource",function(t){return c.call(t)}),(t.exports=function(t,e,n,c){var u=!!c&&!!c.unsafe,s=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(s=!0):delete t[e],s?t[e]=n:o(t,e,n)):s?t[e]=n:a(e,n)})(Function.prototype,"toString",function(){return"function"==typeof this&&s(this).source||c.call(this)})},cDke:function(t,e,n){var r=n("BX/b").f,o=n("0Dky")(function(){Object.getOwnPropertyNames(1)});n("I+eb")({target:"Object",stat:!0,forced:o},{getOwnPropertyNames:r})},cVYH:function(t,e,n){var r=n("hh1v"),o=n("0rvr");t.exports=function(t,e,n){var i,a=e.constructor;return a!==n&&"function"==typeof a&&(i=a.prototype)!==n.prototype&&r(i)&&o&&o(t,i),t}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},"dG/n":function(t,e,n){var r=n("Qo9l"),o=n("UTVS"),i=n("wDLo"),a=n("m/L8").f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eJiR:function(t,e,n){var r=n("jrUv"),o=Math.exp;n("I+eb")({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))}})},eajv:function(t,e,n){var r=Math.asinh,o=Math.log,i=Math.sqrt;n("I+eb")({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+i(e*e+1)):e}})},eoL8:function(t,e,n){var r=n("g6v/");n("I+eb")({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperty:n("m/L8").f})},ewvW:function(t,e,n){var r=n("HYAF");t.exports=function(t){return Object(r(t))}},f5p1:function(t,e,n){var r=n("noGo"),o=n("2oRo").WeakMap;t.exports="function"==typeof o&&/native code/.test(r.call(o))},fHMY:function(t,e,n){var r=n("glrk"),o=n("N+g0"),i=n("eDl+"),a=n("G+Rx"),c=n("zBJ4"),u=n("93I0")("IE_PROTO"),s=function(){},f=function(){var t,e=c("iframe"),n=i.length;for(e.style.display="none",a.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(" + diff --git a/www/main-es2015.910b13f4ffedd104e88e.js b/www/main-es2015.03e22bf1a315c027e1ae.js similarity index 93% rename from www/main-es2015.910b13f4ffedd104e88e.js rename to www/main-es2015.03e22bf1a315c027e1ae.js index 6334d77197a..f922f945d95 100644 --- a/www/main-es2015.910b13f4ffedd104e88e.js +++ b/www/main-es2015.03e22bf1a315c027e1ae.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",s="hour",r="day",i="week",o="month",l="quarter",a="year",c=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,u=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var s=String(t);return!s||s.length>=e?t:""+Array(e+1-s.length).join(n)+t},d={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),s=Math.floor(n/60),r=n%60;return(e<=0?"+":"-")+h(s,2,"0")+":"+h(r,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,o),r=e-s<0,i=t.clone().add(n+(r?-1:1),o);return Number(-(n+(e-s)/(r?s-i:i-s))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(c){return{M:o,y:a,w:i,d:r,h:s,m:n,s:e,ms:t,Q:l}[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},p={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=p;var m=function(t){return t instanceof w},_=function(t,e,n){var s;if(!t)return null;if("string"==typeof t)g[t]&&(s=t),e&&(g[t]=e,s=t);else{var r=t.name;g[r]=t,s=r}return n||(f=s),s},v=function(t,e,n){if(m(t))return t.clone();var s=e?"string"==typeof e?{format:e,pl:n}:e:{};return s.date=t,new w(s)},y=d;y.l=_,y.i=m,y.w=function(t,e){return v(t,{locale:e.$L,utc:e.$u})};var w=function(){function h(t){this.$L=this.$L||_(t.locale,null,!0)||f,this.parse(t)}var d=h.prototype;return d.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(y.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var s=e.match(c);if(s)return n?new Date(Date.UTC(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)):new Date(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)}return new Date(e)}(t),this.init()},d.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},d.$utils=function(){return y},d.isValid=function(){return!("Invalid Date"===this.$d.toString())},d.isSame=function(t,e){var n=v(t);return this.startOf(e)<=n&&n<=this.endOf(e)},d.isAfter=function(t,e){return v(t){throw t})}const l={closed:!0,next(t){},error(t){if(i.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},a=Array.isArray||(t=>t&&"number"==typeof t.length);function c(t){return null!==t&&"object"==typeof t}function u(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}u.prototype=Object.create(Error.prototype);const h=u,d=(()=>{class t{constructor(t){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let t,e=!1;if(this.closed)return;let{_parent:n,_parents:r,_unsubscribe:i,_subscriptions:o}=this;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;let l=-1,u=r?r.length:0;for(;n;)n.remove(this),n=++lt.concat(e instanceof h?e.errors:e),[])}const f="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class g extends d{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof g?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[f](){return this}static create(t,e,n){const s=new g(t,e,n);return s.syncErrorThrowable=!1,s}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parent:t,_parents:e}=this;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=t,this._parents=e,this}}class m extends g{constructor(t,e,n,r){let i;super(),this._parentSubscriber=t;let o=this;s(e)?i=e:e&&(i=e.next,n=e.error,r=e.complete,e!==l&&(s((o=Object.create(e)).unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=i,this._error=n,this._complete=r}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;i.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=i;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):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);i.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),i.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!i.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(s){return i.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=s,t.syncErrorThrown=!0,!0):(o(s),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const _="function"==typeof Symbol&&Symbol.observable||"@@observable";function v(){}function y(...t){return w(t)}function w(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:v}const b=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:s}=this,r=function(t,e,n){if(t){if(t instanceof g)return t;if(t[f])return t[f]()}return t||e||n?new g(t,e,n):new g(l)}(t,e,n);if(r.add(s?s.call(r,this.source):this.source||i.useDeprecatedSynchronousErrorHandling&&!r.syncErrorThrowable?this._subscribe(r):this._trySubscribe(r)),i.useDeprecatedSynchronousErrorHandling&&r.syncErrorThrowable&&(r.syncErrorThrowable=!1,r.syncErrorThrown))throw r.syncErrorValue;return r}_trySubscribe(t){try{return this._subscribe(t)}catch(e){i.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:s}=t;if(e||s)return!1;t=n&&n instanceof g?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=C(e))((e,n)=>{let s;s=this.subscribe(e=>{try{t(e)}catch(r){n(r),s&&s.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[_](){return this}pipe(...t){return 0===t.length?this:w(t)(this)}toPromise(t){return new(t=C(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=(e=>new t(e)),t})();function C(t){if(t||(t=i.Promise||Promise),!t)throw new Error("no Promise impl found");return t}function x(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}x.prototype=Object.create(Error.prototype);const S=x;class E extends d{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class k extends g{constructor(t){super(t),this.destination=t}}const T=(()=>{class t extends b{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new k(this)}lift(t){const e=new O(this,this);return e.operator=t,e}next(t){if(this.closed)throw new S;if(!this.isStopped){const{observers:e}=this,n=e.length,s=e.slice();for(let r=0;rnew O(t,e)),t})();class O extends T{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):d.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}class R extends g{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const P=t=>e=>{for(let n=0,s=t.length;ne=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,o),e);function M(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}const N=M(),D=t=>e=>{const n=t[N]();for(;;){const t=n.next();if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e},V=t=>e=>{const n=t[_]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)},$=t=>t&&"number"==typeof t.length&&"function"!=typeof t;function L(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const j=t=>{if(t instanceof b)return e=>t._isScalar?(e.next(t.value),void e.complete()):t.subscribe(e);if(t&&"function"==typeof t[_])return V(t);if($(t))return P(t);if(L(t))return A(t);if(t&&"function"==typeof t[N])return D(t);{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};function U(t,e,n,s,r=new R(t,n,s)){if(!r.closed)return j(e)(r)}class z extends g{notifyNext(t,e,n,s,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(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 H(t,e))}}class H{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new B(t,this.project,this.thisArg))}}class B extends g{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function G(t,e){return new b(e?n=>{const s=new d;let r=0;return s.add(e.schedule(function(){r!==t.length?(n.next(t[r++]),n.closed||s.add(this.schedule())):n.complete()})),s}:P(t))}function W(t,e){if(!e)return t instanceof b?t:new b(j(t));if(null!=t){if(function(t){return t&&"function"==typeof t[_]}(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>{const r=t[_]();s.add(r.subscribe({next(t){s.add(e.schedule(()=>n.next(t)))},error(t){s.add(e.schedule(()=>n.error(t)))},complete(){s.add(e.schedule(()=>n.complete()))}}))})),s}:V(t))}(t,e);if(L(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>t.then(t=>{s.add(e.schedule(()=>{n.next(t),s.add(e.schedule(()=>n.complete()))}))},t=>{s.add(e.schedule(()=>n.error(t)))}))),s}:A(t))}(t,e);if($(t))return G(t,e);if(function(t){return t&&"function"==typeof t[N]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new b(e?n=>{const s=new d;let r;return s.add(()=>{r&&"function"==typeof r.return&&r.return()}),s.add(e.schedule(()=>{r=t[N](),s.add(e.schedule(function(){if(n.closed)return;let t,e;try{const i=r.next();t=i.value,e=i.done}catch(s){return void n.error(s)}e?n.complete():(n.next(t),this.schedule())}))})),s}:D(t))}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}function Y(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?s=>s.pipe(Y((n,s)=>W(t(n,s)).pipe(F((t,r)=>e(n,t,s,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new Z(t,this.project,this.concurrent))}}class Z extends z{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Q(t){return t}function X(t=Number.POSITIVE_INFINITY){return Y(Q,t)}function K(...t){let e=Number.POSITIVE_INFINITY,n=null,s=t[t.length-1];return I(s)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof s&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof b?t[0]:X(e)(G(t,n))}function J(){return function(t){return t.lift(new tt(t))}}class tt{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const s=new et(t,n),r=e.subscribe(s);return s.closed||(s.connection=n.connect()),r}}class et extends g{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,s=t._connection;this.connection=null,!s||n&&s!==n||s.unsubscribe()}}const nt=class extends b{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new d).add(this.source.subscribe(new rt(this.getSubject(),this))),t.closed?(this._connection=null,t=d.EMPTY):this._connection=t),t}refCount(){return J()(this)}}.prototype,st={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:nt._subscribe},_isComplete:{value:nt._isComplete,writable:!0},getSubject:{value:nt.getSubject},connect:{value:nt.connect},refCount:{value:nt.refCount}};class rt extends k{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function it(t,e){return function(n){let s;if(s="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new ot(s,e));const r=Object.create(n,st);return r.source=n,r.subjectFactory=s,r}}class ot{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,s=this.subjectFactory(),r=n(s).subscribe(t);return r.add(e.subscribe(s)),r}}function lt(){return new T}const at="__parameters__";function ct(t,e,n){const s=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function r(...t){if(this instanceof r)return s.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,s){const r=t.hasOwnProperty(at)?t[at]:Object.defineProperty(t,at,{value:[]})[at];for(;r.length<=s;)r.push(null);return(r[s]=r[s]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r}const ut=ct("Inject",t=>({token:t})),ht=ct("Optional"),dt=ct("Self"),pt=ct("SkipSelf");var ft=function(t){return 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",t}({});function gt(t){for(let e in t)if(t[e]===gt)return e;throw Error("Could not find renamed property on target object.")}function mt(t){return{providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function _t(t){return t&&t.hasOwnProperty(vt)?t[vt]:null}const vt=gt({ngInjectableDef:gt});function yt(t){if("string"==typeof t)return t;if(t instanceof Array)return"["+t.map(yt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}const wt=gt({__forward_ref__:gt});function bt(t){return t.__forward_ref__=bt,t.toString=function(){return yt(this())},t}function Ct(t){const e=t;return"function"==typeof e&&e.hasOwnProperty(wt)&&e.__forward_ref__===bt?e():t}function xt(){const t="undefined"!=typeof globalThis&&globalThis,e="undefined"!=typeof window&&window,n="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,s="undefined"!=typeof global&&global;return t||s||e||n}const St=xt();let Et,kt=void 0;function Tt(t){const e=kt;return kt=t,e}function Ot(t,e=ft.Default){return(Et||function(t,e=ft.Default){if(void 0===kt)throw new Error("inject() must be called from an injection context");return null===kt?function(t,e,n){const s=_t(t);if(s&&"root"==s.providedIn)return void 0===s.value?s.value=s.factory():s.value;if(n&ft.Optional)return null;throw new Error(`Injector: NOT_FOUND [${yt(t)}]`)}(t,0,e):kt.get(t,e&ft.Optional?null:void 0,e)})(t,e)}const It=Ot;class Rt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ngInjectableDef=mt({providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Pt="__source",At=new Object,Mt=new Rt("INJECTOR",-1);class Nt{get(t,e=At){if(e===At){const e=new Error(`NullInjectorError: No provider for ${yt(t)}!`);throw e.name="NullInjectorError",e}return e}}const Dt=(()=>{class t{static create(t,e){return Array.isArray(t)?new Gt(t,e):new Gt(t.providers,t.parent,t.name||null)}}return t.THROW_IF_NOT_FOUND=At,t.NULL=new Nt,t.ngInjectableDef=mt({providedIn:"any",factory:()=>Ot(Mt)}),t.__NG_ELEMENT_ID__=-1,t})(),Vt=function(t){return t},$t=[],Lt=Vt,jt=function(){return Array.prototype.slice.call(arguments)},Ut=gt({provide:String,useValue:gt}),zt="ngTokenPath",Ft="ngTempTokenPath",Ht=/\n/gm,Bt="\u0275";class Gt{constructor(t,e=Dt.NULL,n=null){this.parent=e,this.source=n;const s=this._records=new Map;s.set(Dt,{token:Dt,fn:Vt,deps:$t,value:this,useNew:!1}),s.set(Mt,{token:Mt,fn:Vt,deps:$t,value:this,useNew:!1}),function t(e,n){if(n)if((n=Ct(n))instanceof Array)for(let s=0;st.push(yt(n))),`StaticInjector[${t.join(", ")}]`}}function Wt(t){return qt("Cannot mix multi providers and regular providers",t)}function Yt(t,e,n,s=null){t=t&&"\n"===t.charAt(0)&&t.charAt(1)==Bt?t.substr(2):t;let r=yt(e);if(e instanceof Array)r=e.map(yt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let s=e[n];t.push(n+":"+("string"==typeof s?JSON.stringify(s):yt(s)))}r=`{${t.join(", ")}}`}return`${n}${s?"("+s+")":""}[${r}]: ${t.replace(Ht,"\n ")}`}function qt(t,e){return new Error(Yt(t,e,"StaticInjectorError"))}const Zt="ngDebugContext",Qt="ngOriginalError",Xt="ngErrorLogger",Kt=new Rt("AnalyzeForEntryComponents"),Jt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}(),te=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(St))();function ee(t){return t[Zt]}function ne(t){return t[Qt]}function se(t,...e){t.error(...e)}class re{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),s=function(t){return t[Xt]||se}(t);s(this._console,"ERROR",t),e&&s(this._console,"ORIGINAL ERROR",e),n&&s(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?ee(t)?ee(t):this._findContext(ne(t)):null}_findOriginalError(t){let e=ne(t);for(;e&&ne(e);)e=ne(e);return e}}let ie=!0,oe=!1;function le(){return oe=!0,ie}class ae{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),this.inertBodyElement=this.inertDocument.createElement("body"),t.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t=""+t+"";try{t=encodeURI(t)}catch(s){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t=""+t+"";try{const n=(new window.DOMParser).parseFromString(t,"text/html").body;return n.removeChild(n.firstChild),n}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(t){const e=t.attributes;for(let s=e.length-1;0he(t.trim())).join(", ")),this.buf.push(" ",e,'="',ke(o),'"')}var s;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();ve.hasOwnProperty(e)&&!fe.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(ke(t))}checkClobberedElement(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}}const Se=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ee=/([^\#-~ |!])/g;function ke(t){return t.replace(/&/g,"&").replace(Se,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ee,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let Te;function Oe(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const Ie=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}();class Re{}const Pe=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ae=/^url\(([^)]+)\)$/,Me=/([A-Z])/g;function Ne(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function De(t){return!!t&&"function"==typeof t.then}function Ve(t){return!!t&&"function"==typeof t.subscribe}let $e=null;function Le(){if(!$e){const t=St.Symbol;if(t&&t.iterator)$e=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e{class t{}return t.NULL=new Qe,t})();class Ke{constructor(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(let s=0;s{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=(()=>rn(t)),t})(),rn=nn;class on{}class ln{}const an=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}(),cn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>un()),t})(),un=nn;class hn{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const dn=new hn("8.0.0");class pn{constructor(){}supports(t){return Fe(t)}create(t){return new gn(t)}}const fn=(t,e)=>e;class gn{constructor(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||fn}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,s=0,r=null;for(;e||n;){const i=!n||e&&e.currentIndex{s=this._trackByFn(e,t),null!==r&&je(r.trackById,s)?(i&&(r=this._verifyReinsertion(r,t,s,e)),je(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,s,e),i=!0),r=r._next,e++}),this.length=e;return this._truncate(r),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;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}}_mismatch(t,e,n,s){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,s))?(je(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,s)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(je(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,s)):t=this._addAfter(new mn(e,n),r,s),t}_verifyReinsertion(t,e,n,s){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,t._prev,s):t.currentIndex!=s&&(t.currentIndex=s,this._addToMoves(t,s)),t}_truncate(t){for(;null!==t;){const 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)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const s=t._prevRemoved,r=t._nextRemoved;return null===s?this._removalsHead=r:s._nextRemoved=r,null===r?this._removalsTail=s:r._prevRemoved=s,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const s=null===e?this._itHead:e._next;return t._next=s,t._prev=e,null===s?this._itTail=t:s._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new vn),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e?t:(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t,t)}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new vn),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}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class mn{constructor(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}}class _n{constructor(){this._head=null,this._tail=null}add(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)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&je(n.trackById,t))return n;return null}remove(t){const 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}}class vn{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _n,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function yn(t,e,n){const s=t.previousIndex;if(null===s)return s;let r=0;return n&&s{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const s=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,s)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const 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}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const s=n._prev,r=n._next;return s&&(s._next=r),r&&(r._prev=s),n._next=null,n._prev=null,n}const n=new Cn(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;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}}_maybeAddToChanges(t,e){je(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Cn{constructor(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}}const xn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new pn])}),t})(),Sn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new wn])}),t})(),En=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>kn()),t})(),kn=(...t)=>{},Tn=[new wn],On=new xn([new pn]),In=new Sn(Tn),Rn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Pn(t,sn)),t})(),Pn=nn,An=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Mn(t,sn)),t})(),Mn=nn;function Nn(t,e,n,s){let r=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${e}'. Current value: '${n}'.`;return s&&(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){const n=new Error(t);return Dn(n,e),n}(r,t)}function Dn(t,e){t[Zt]=e,t[Xt]=e.logError.bind(e)}function Vn(t){return new Error(`ViewDestroyedError: Attempt to use a destroyed view: ${t}`)}function $n(t,e,n){const s=t.state,r=1792&s;return r===e?(t.state=-1793&s|n,t.initIndex=-1,!0):r===n}function Ln(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function jn(t,e){return t.nodes[e]}function Un(t,e){return t.nodes[e]}function zn(t,e){return t.nodes[e]}function Fn(t,e){return t.nodes[e]}function Hn(t,e){return t.nodes[e]}const Bn={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},Gn=()=>{},Wn=new Map;function Yn(t){let e=Wn.get(t);return e||(e=yt(t)+"_"+Wn.size,Wn.set(t,e)),e}const qn="$$undefined",Zn="$$empty";function Qn(t){return{id:qn,styles:t.styles,encapsulation:t.encapsulation,data:t.data}}let Xn=0;function Kn(t,e,n,s){return!(!(2&t.state)&&je(t.oldValues[e.bindingIndex+n],s))}function Jn(t,e,n,s){return!!Kn(t,e,n,s)&&(t.oldValues[e.bindingIndex+n]=s,!0)}function ts(t,e,n,s){const r=t.oldValues[e.bindingIndex+n];if(1&t.state||!Ue(r,s)){const i=e.bindings[n].name;throw Nn(Bn.createDebugContext(t,e.nodeIndex),`${i}: ${r}`,`${i}: ${s}`,0!=(1&t.state))}}function es(t){let e=t;for(;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function ns(t,e){let n=t;for(;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function ss(t,e,n,s){try{return es(33554432&t.def.nodes[e].flags?Un(t,e).componentView:t),Bn.handleEvent(t,e,n,s)}catch(r){t.root.errorHandler.handleError(r)}}function rs(t){return t.parent?Un(t.parent,t.parentNodeDef.nodeIndex):null}function is(t){return t.parent?t.parentNodeDef.parent:null}function os(t,e){switch(201347067&e.flags){case 1:return Un(t,e.nodeIndex).renderElement;case 2:return jn(t,e.nodeIndex).renderText}}function ls(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function as(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function cs(t){return 1<{"number"==typeof t?(e[t]=r,n|=cs(t)):s[t]=r}),{matchedQueries:e,references:s,matchedQueryIds:n}}function hs(t,e){return t.map(t=>{let n,s;return Array.isArray(t)?[s,n]=t:(s=0,n=t),n&&("function"==typeof n||"object"==typeof n)&&e&&Object.defineProperty(n,Pt,{value:e,configurable:!0}),{flags:s,token:n,tokenKey:Yn(n)}})}function ds(t,e,n){let s=n.renderParent;return s?0==(1&s.flags)||0==(33554432&s.flags)||s.element.componentRendererType&&s.element.componentRendererType.encapsulation===Jt.Native?Un(t,n.renderParent.nodeIndex).renderElement:void 0:e}const ps=new WeakMap;function fs(t){let e=ps.get(t);return e||((e=t(()=>Gn)).factory=t,ps.set(t,e)),e}function gs(t,e,n,s,r){3===e&&(n=t.renderer.parentNode(os(t,t.def.lastRenderRootNode))),ms(t,e,0,t.def.nodes.length-1,n,s,r)}function ms(t,e,n,s,r,i,o){for(let l=n;l<=s;l++){const n=t.def.nodes[l];11&n.flags&&vs(t,n,e,r,i,o),l+=n.childCount}}function _s(t,e,n,s,r,i){let o=t;for(;o&&!ls(o);)o=o.parent;const l=o.parent,a=is(o),c=a.nodeIndex+a.childCount;for(let u=a.nodeIndex+1;u<=c;u++){const t=l.def.nodes[u];t.ngContentIndex===e&&vs(l,t,n,s,r,i),u+=t.childCount}if(!l.parent){const o=t.root.projectableNodes[e];if(o)for(let e=0;e-1}(r)||"root"===i.providedIn&&r._def.isRoot))){const n=t._providers.length;return t._def.providers[n]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:n,token:e.token},t._providers[n]=Ss,t._providers[n]=Rs(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Tt(s)}var r,i}function Rs(t,e){let n;switch(201347067&e.flags){case 512:n=function(t,e,n){const s=n.length;switch(s){case 0:return new e;case 1:return new e(Is(t,n[0]));case 2:return new e(Is(t,n[0]),Is(t,n[1]));case 3:return new e(Is(t,n[0]),Is(t,n[1]),Is(t,n[2]));default:const r=new Array(s);for(let e=0;e=n.length)&&(e=n.length-1),e<0)return null;const s=n[e];return s.viewContainerParent=null,Ds(n,e),Bn.dirtyParentQueries(s),Ms(s),s}function As(t,e,n){const s=e?os(e,e.def.lastRenderRootNode):t.renderElement,r=n.renderer.parentNode(s),i=n.renderer.nextSibling(s);gs(n,2,r,i,void 0)}function Ms(t){gs(t,3,null,null,void 0)}function Ns(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Ds(t,e){e>=t.length-1?t.pop():t.splice(e,1)}const Vs=new Object;function $s(t,e,n,s,r,i){return new Ls(t,e,n,s,r,i)}class Ls extends Ye{constructor(t,e,n,s,r,i){super(),this.selector=t,this.componentType=e,this._inputs=s,this._outputs=r,this.ngContentSelectors=i,this.viewDefFactory=n}get inputs(){const t=[],e=this._inputs;for(let n in e)t.push({propName:n,templateName:e[n]});return t}get outputs(){const t=[];for(let e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t}create(t,e,n,s){if(!s)throw new Error("ngModule should be provided");const r=fs(this.viewDefFactory),i=r.nodes[0].element.componentProvider.nodeIndex,o=Bn.createRootView(t,e||[],n,r,s,Vs),l=zn(o,i).instance;return n&&o.renderer.setAttribute(Un(o,0).renderElement,"ng-version",dn.full),new js(o,new Hs(o),l)}}class js extends We{constructor(t,e,n){super(),this._view=t,this._viewRef=e,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=e,this.changeDetectorRef=e,this.instance=n}get location(){return new sn(Un(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new Ys(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(t){this._viewRef.onDestroy(t)}}function Us(t,e,n){return new zs(t,e,n)}class zs{constructor(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}get element(){return new sn(this._data.renderElement)}get injector(){return new Ys(this._view,this._elDef)}get parentInjector(){let t=this._view,e=this._elDef.parent;for(;!e&&t;)e=is(t),t=t.parent;return t?new Ys(t,e):new Ys(this._view,null)}clear(){for(let t=this._embeddedViews.length-1;t>=0;t--){const e=Ps(this._data,t);Bn.destroyView(e)}}get(t){const e=this._embeddedViews[t];if(e){const t=new Hs(e);return t.attachToViewContainerRef(this),t}return null}get length(){return this._embeddedViews.length}createEmbeddedView(t,e,n){const s=t.createEmbeddedView(e||{});return this.insert(s,n),s}createComponent(t,e,n,s,r){const i=n||this.parentInjector;r||t instanceof Je||(r=i.get(tn));const o=t.create(i,s,void 0,r);return this.insert(o.hostView,e),o}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=t;return function(t,e,n,s){let r=e.viewContainer._embeddedViews;null==n&&(n=r.length),s.viewContainerParent=t,Ns(r,n,s),function(t,e){const n=rs(e);if(!n||n===t||16&e.state)return;e.state|=16;let s=n.template._projectedViews;s||(s=n.template._projectedViews=[]),s.push(e),function(t,n){if(4&n.flags)return;e.parent.def.nodeFlags|=4,n.flags|=4;let s=n.parent;for(;s;)s.childFlags|=4,s=s.parent}(0,e.parentNodeDef)}(e,s),Bn.dirtyParentQueries(s),As(e,n>0?r[n-1]:null,s)}(this._view,this._data,e,n._view),n.attachToViewContainerRef(this),t}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(t._view);return function(t,e,s){const r=t.viewContainer._embeddedViews,i=r[n];Ds(r,n),null==s&&(s=r.length),Ns(r,s,i),Bn.dirtyParentQueries(i),Ms(i),As(t,s>0?r[s-1]:null,i)}(this._data,0,e),t}indexOf(t){return this._embeddedViews.indexOf(t._view)}remove(t){const e=Ps(this._data,t);e&&Bn.destroyView(e)}detach(t){const e=Ps(this._data,t);return e?new Hs(e):null}}function Fs(t){return new Hs(t)}class Hs{constructor(t){this._view=t,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(t){const e=[];return gs(t,0,void 0,void 0,e),e}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){es(this._view)}detach(){this._view.state&=-5}detectChanges(){const t=this._view.root.rendererFactory;t.begin&&t.begin();try{Bn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}}checkNoChanges(){Bn.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Bn.destroyView(this._view)}detachFromAppRef(){this._appRef=null,Ms(this._view),Bn.dirtyParentQueries(this._view)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}}function Bs(t,e){return new Gs(t,e)}class Gs extends Rn{constructor(t,e){super(),this._parentView=t,this._def=e}createEmbeddedView(t){return new Hs(Bn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))}get elementRef(){return new sn(Un(this._parentView,this._def.nodeIndex).renderElement)}}function Ws(t,e){return new Ys(t,e)}class Ys{constructor(t,e){this.view=t,this.elDef=e}get(t,e=Dt.THROW_IF_NOT_FOUND){return Bn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:Yn(t)},e)}}function qs(t,e){const n=t.def.nodes[e];if(1&n.flags){const e=Un(t,n.nodeIndex);return n.element.template?e.template:e.renderElement}if(2&n.flags)return jn(t,n.nodeIndex).renderText;if(20240&n.flags)return zn(t,n.nodeIndex).instance;throw new Error(`Illegal state: read nodeValue for node index ${e}`)}function Zs(t){return new Qs(t.renderer)}class Qs{constructor(t){this.delegate=t}selectRootElement(t){return this.delegate.selectRootElement(t)}createElement(t,e){const[n,s]=bs(e),r=this.delegate.createElement(s,n);return t&&this.delegate.appendChild(t,r),r}createViewRoot(t){return t}createTemplateAnchor(t){const e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e}createText(t,e){const n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n}projectNodes(t,e){for(let n=0;nt())}onDestroy(t){this._destroyListeners.push(t)}}const Js=Yn(on),tr=Yn(cn),er=Yn(sn),nr=Yn(An),sr=Yn(Rn),rr=Yn(En),ir=Yn(Dt),or=Yn(Mt);function lr(t,e,n,s,r,i,o,l){const a=[];if(o)for(let u in o){const[t,e]=o[u];a[t]={flags:8,name:u,nonMinifiedName:e,ns:null,securityContext:null,suffix:null}}const c=[];if(l)for(let u in l)c.push({type:1,propName:u,target:null,eventName:l[u]});return cr(t,e|=16384,n,s,r,r,i,a,c)}function ar(t,e,n,s,r){return cr(-1,t,e,0,n,s,r)}function cr(t,e,n,s,r,i,o,l,a){const{matchedQueries:c,references:u,matchedQueryIds:h}=us(n);a||(a=[]),l||(l=[]),i=Ct(i);const d=hs(o,yt(r));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:h,references:u,ngContentIndex:-1,childCount:s,bindings:l,bindingFlags:Cs(l),outputs:a,element:null,provider:{token:r,value:i,deps:d},text:null,query:null,ngContent:null}}function ur(t,e){return fr(t,e)}function hr(t,e){let n=t;for(;n.parent&&!ls(n);)n=n.parent;return gr(n.parent,is(n),!0,e.provider.value,e.provider.deps)}function dr(t,e){const n=gr(t,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(let s=0;sss(t,e,n,s)}function fr(t,e){const n=(8192&e.flags)>0,s=e.provider;switch(201347067&e.flags){case 512:return gr(t,e.parent,n,s.value,s.deps);case 1024:return function(t,e,n,s,r){const i=r.length;switch(i){case 0:return s();case 1:return s(_r(t,e,n,r[0]));case 2:return s(_r(t,e,n,r[0]),_r(t,e,n,r[1]));case 3:return s(_r(t,e,n,r[0]),_r(t,e,n,r[1]),_r(t,e,n,r[2]));default:const o=Array(i);for(let s=0;ste});class Sr extends T{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let s,r=t=>null,i=()=>null;t&&"object"==typeof t?(s=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(r=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(i=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(i=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(s,r,i);return t instanceof d&&t.add(o),o}}class Er{constructor(){this.dirty=!0,this._results=[],this.changes=new Sr,this.length=0}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}[Le()](){return this._results[Le()]()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let s=0;s(class{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}))(),Ir=new Rt("AppId");function Rr(){return`${Pr()}${Pr()}${Pr()}`}function Pr(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const Ar=new Rt("Platform Initializer"),Mr=new Rt("Platform ID"),Nr=new Rt("appBootstrapListener"),Dr=(()=>(class{log(t){console.log(t)}warn(t){console.warn(t)}}))();function Vr(){throw new Error("Runtime compiler is not loaded")}const $r=Vr,Lr=Vr,jr=Vr,Ur=Vr,zr=(()=>(class{constructor(){this.compileModuleSync=$r,this.compileModuleAsync=Lr,this.compileModuleAndAllComponentsSync=jr,this.compileModuleAndAllComponentsAsync=Ur}clearCache(){}clearCacheFor(t){}getModuleId(t){}}))();class Fr{}let Hr,Br;function Gr(){const t=St.wtf;return!(!t||!(Hr=t.trace)||(Br=Hr.events,0))}const Wr=Gr(),Yr=Wr?function(t,e=null){return Br.createScope(t,e)}:(t,e)=>(function(t,e){return null}),qr=Wr?function(t,e){return Hr.leaveScope(t,e),e}:(t,e)=>e,Zr=(()=>Promise.resolve(0))();function Qr(t){"undefined"==typeof Zone?Zr.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Xr{constructor({enableLongStackTrace:t=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Sr(!1),this.onMicrotaskEmpty=new Sr(!1),this.onStable=new Sr(!1),this.onError=new Sr(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var e;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)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,n,s,r,i,o)=>{try{return ei(e),t.invokeTask(s,r,i,o)}finally{ni(e)}},onInvoke:(t,n,s,r,i,o,l)=>{try{return ei(e),t.invoke(s,r,i,o,l)}finally{ni(e)}},onHasTask:(t,n,s,r)=>{t.hasTask(s,r),n===s&&("microTask"==r.change?(e.hasPendingMicrotasks=r.microTask,ti(e)):"macroTask"==r.change&&(e.hasPendingMacrotasks=r.macroTask))},onHandleError:(t,n,s,r)=>(t.handleError(s,r),e.runOutsideAngular(()=>e.onError.emit(r)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Xr.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Xr.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,s){const r=this._inner,i=r.scheduleEventTask("NgZoneEvent: "+s,t,Jr,Kr,Kr);try{return r.runTask(i,e,n)}finally{r.cancelTask(i)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function Kr(){}const Jr={};function ti(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(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function ei(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ni(t){t._nesting--,ti(t)}class si{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Sr,this.onMicrotaskEmpty=new Sr,this.onStable=new Sr,this.onError=new Sr}run(t){return t()}runGuarded(t){return t()}runOutsideAngular(t){return t()}runTask(t){return t()}}const ri=(()=>(class{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Xr.assertNotInAngularZone(),Qr(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Qr(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let s=-1;e&&e>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==s),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:s,updateCb:n})}whenStable(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()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}))(),ii=(()=>{class t{constructor(){this._applications=new Map,ai.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return ai.findTestabilityInTree(this,t,e)}}return t.ctorParameters=(()=>[]),t})();class oi{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let li,ai=new oi,ci=function(t){return t instanceof Je};const ui=new Rt("AllowMultipleToken");class hi{constructor(t,e){this.name=t,this.token=e}}function di(t,e,n=[]){const s=`Platform: ${e}`,r=new Rt(s);return(e=[])=>{let i=pi();if(!i||i.injector.get(ui,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0});!function(t){if(li&&!li.destroyed&&!li.injector.get(ui,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");li=t.get(fi);const e=t.get(Ar,null);e&&e.forEach(t=>t())}(Dt.create({providers:t,name:s}))}return function(t){const e=pi();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}(r)}}function pi(){return li&&!li.destroyed?li:null}const fi=(()=>(class{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n="noop"===(r=e?e.ngZone:void 0)?new si:("zone.js"===r?void 0:r)||new Xr({enableLongStackTrace:le()}),s=[{provide:Xr,useValue:n}];var r;return n.run(()=>{const e=Dt.create({providers:s,parent:this.injector,name:t.moduleType.name}),r=t.create(e),i=r.injector.get(re,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return r.onDestroy(()=>_i(this._modules,r)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{i.handleError(t)}})),function(t,e,n){try{const r=n();return De(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(s){throw e.runOutsideAngular(()=>t.handleError(s)),s}}(i,n,()=>{const t=r.injector.get(Or);return t.runInitializers(),t.donePromise.then(()=>(this._moduleDoBootstrap(r),r))})})}bootstrapModule(t,e=[]){const n=gi({},e);return function(t,e,n){return t.get(Fr).createCompiler([e]).compileModuleAsync(n)}(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(mi);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${yt(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)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}))();function gi(t,e){return Array.isArray(e)?e.reduce(gi,t):Object.assign({},t,e)}const mi=(()=>{class t{constructor(t,e,n,s,r,i){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=s,this._componentFactoryResolver=r,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=le(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new b(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new b(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Xr.assertNotInAngularZone(),Qr(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Xr.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=K(o,l.pipe(t=>J()(it(lt)(t))))}bootstrap(t,e){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.");let n;n=t instanceof Ye?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const s=ci(n)?null:this._injector.get(tn),r=n.create(Dt.NULL,[],e||n.selector,s);r.onDestroy(()=>{this._unloadComponent(r)});const i=r.injector.get(ri,null);return i&&r.injector.get(ii).registerApplication(r.location.nativeElement,i),this._loadComponent(r),le()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const e=t._tickScope();try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,qr(e)}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;_i(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Nr,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),_i(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t._tickScope=Yr("ApplicationRef#tick()"),t})();function _i(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class vi{}const yi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},wi=(()=>(class{constructor(t,e){this._compiler=t,this._config=e||yi}load(t){return this._compiler instanceof zr?this.loadFactory(t):this.loadAndCompile(t)}loadAndCompile(t){let[e,s]=t.split("#");return void 0===s&&(s="default"),n("zn8P")(e).then(t=>t[s]).then(t=>bi(t,e,s)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,s]=t.split("#"),r="NgFactory";return void 0===s&&(s="default",r=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[s+r]).then(t=>bi(t,e,s))}}))();function bi(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}class Ci{constructor(t,e){this.name=t,this.callback=e}}class xi{constructor(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Si&&e.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class Si extends xi{constructor(t,e,n){super(t,e,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=t}addChild(t){t&&(this.childNodes.push(t),t.parent=this)}removeChild(t){const e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))}insertChildrenAfter(t,e){const n=this.childNodes.indexOf(t);-1!==n&&(this.childNodes.splice(n+1,0,...e),e.forEach(e=>{e.parent&&e.parent.removeChild(e),t.parent=this}))}insertBefore(t,e){const 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))}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return function t(e,n,s){e.childNodes.forEach(e=>{e instanceof Si&&(n(e)&&s.push(e),t(e,n,s))})}(this,t,e),e}queryAllNodes(t){const e=[];return function t(e,n,s){e instanceof Si&&e.childNodes.forEach(e=>{n(e)&&s.push(e),e instanceof Si&&t(e,n,s)})}(this,t,e),e}get children(){return this.childNodes.filter(t=>t instanceof Si)}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name==t&&n.callback(e)})}}const Ei=new Map,ki=function(t){return Ei.get(t)||null};function Ti(t){Ei.set(t.nativeNode,t)}const Oi=di(null,"core",[{provide:Mr,useValue:"unknown"},{provide:fi,deps:[Dt]},{provide:ii,deps:[]},{provide:Dr,deps:[]}]),Ii=new Rt("LocaleId");function Ri(){return On}function Pi(){return In}function Ai(t){return t||"en-US"}function Mi(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}const Ni=(()=>(class{constructor(t){}}))();function Di(t,e,n,s,r,i){t|=1;const{matchedQueries:o,references:l,matchedQueryIds:a}=us(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:o,matchedQueryIds:a,references:l,ngContentIndex:n,childCount:s,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?fs(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:r||Gn},provider:null,text:null,query:null,ngContent:null}}function Vi(t,e,n,s,r,i,o=[],l,a,c,u,h){c||(c=Gn);const{matchedQueries:d,references:p,matchedQueryIds:f}=us(n);let g=null,m=null;i&&([g,m]=bs(i)),l=l||[];const _=new Array(l.length);for(let w=0;w{const[n,s]=bs(t);return[n,s,e]});return h=function(t){if(t&&t.id===qn){const e=null!=t.encapsulation&&t.encapsulation!==Jt.None||t.styles.length||Object.keys(t.data).length;t.id=e?`c${Xn++}`:Zn}return t&&t.id===Zn&&(t=null),t||null}(h),u&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:d,matchedQueryIds:f,references:p,ngContentIndex:s,childCount:r,bindings:_,bindingFlags:Cs(_),outputs:v,element:{ns:g,name:m,attrs:y,template:null,componentProvider:null,componentView:u||null,componentRendererType:h,publicProviders:null,allProviders:null,handleEvent:c||Gn},provider:null,text:null,query:null,ngContent:null}}function $i(t,e,n){const s=n.element,r=t.root.selectorOrNode,i=t.renderer;let o;if(t.parent||!r){o=s.name?i.createElement(s.name,s.ns):i.createComment("");const r=ds(t,e,n);r&&i.appendChild(r,o)}else o=i.selectRootElement(r,!!s.componentRendererType&&s.componentRendererType.encapsulation===Jt.ShadowDom);if(s.attrs)for(let l=0;lss(t,e,n,s)}function Ui(t,e,n,s){if(!Jn(t,e,n,s))return!1;const r=e.bindings[n],i=Un(t,e.nodeIndex),o=i.renderElement,l=r.name;switch(15&r.flags){case 1:!function(t,e,n,s,r,i){const o=e.securityContext;let l=o?t.root.sanitizer.sanitize(o,i):i;l=null!=l?l.toString():null;const a=t.renderer;null!=i?a.setAttribute(n,r,l,s):a.removeAttribute(n,r,s)}(t,r,o,r.ns,l,s);break;case 2:!function(t,e,n,s){const r=t.renderer;s?r.addClass(e,n):r.removeClass(e,n)}(t,o,l,s);break;case 4:!function(t,e,n,s,r){let i=t.root.sanitizer.sanitize(Ie.STYLE,r);if(null!=i){i=i.toString();const t=e.suffix;null!=t&&(i+=t)}else i=null;const o=t.renderer;null!=i?o.setStyle(n,s,i):o.removeStyle(n,s)}(t,r,o,l,s);break;case 8:!function(t,e,n,s,r){const i=e.securityContext;let o=i?t.root.sanitizer.sanitize(i,r):r;t.renderer.setProperty(n,s,o)}(33554432&e.flags&&32&r.flags?i.componentView:t,r,o,l,s)}return!0}function zi(t,e,n){let s=[];for(let r in n)s.push({propName:r,bindingType:n[r]});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:cs(e),bindings:s},ngContent:null}}function Fi(t){const e=t.def.nodeMatchedQueries;for(;t.parent&&as(t);){let n=t.parentNodeDef;t=t.parent;const s=n.nodeIndex+n.childCount;for(let r=0;r<=s;r++){const s=t.def.nodes[r];67108864&s.flags&&536870912&s.flags&&(s.query.filterId&e)===s.query.filterId&&Hn(t,r).setDirty(),!(1&s.flags&&r+s.childCount0)c=t,Ji(t)||(u=t);else for(;c&&f===c.nodeIndex+c.childCount;){const t=c.parent;t&&(t.childFlags|=c.childFlags,t.childMatchedQueries|=c.childMatchedQueries),u=(c=t)&&Ji(c)?c.renderParent:c}}return{factory:null,nodeFlags:o,rootNodeFlags:l,nodeMatchedQueries:a,flags:t,nodes:e,updateDirectives:n||Gn,updateRenderer:s||Gn,handleEvent:(t,n,s,r)=>e[n].element.handleEvent(t,s,r),bindingCount:r,outputCount:i,lastRenderRootNode:p}}function Ji(t){return 0!=(1&t.flags)&&null===t.element.name}function to(t,e,n){const s=e.element&&e.element.template;if(s){if(!s.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(s.lastRenderRootNode&&16777216&s.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){const s=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=s&&e.nodeIndex+e.childCount>s)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${e.nodeIndex}!`)}}function eo(t,e,n,s){const r=ro(t.root,t.renderer,t,e,n);return io(r,t.component,s),oo(r),r}function no(t,e,n){const s=ro(t,t.renderer,null,null,e);return io(s,n,n),oo(s),s}function so(t,e,n,s){const r=e.element.componentRendererType;let i;return i=r?t.root.rendererFactory.createRenderer(s,r):t.root.renderer,ro(t.root,i,t,e.element.componentProvider,n)}function ro(t,e,n,s,r){const i=new Array(r.nodes.length),o=r.outputCount?new Array(r.outputCount):null;return{def:r,parent:n,viewContainerParent:null,parentNodeDef:s,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(r.bindingCount),disposables:o,initIndex:-1}}function io(t,e,n){t.component=e,t.context=n}function oo(t){let e;ls(t)&&(e=Un(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);const n=t.def,s=t.nodes;for(let r=0;r0&&Ui(t,e,0,n)&&(p=!0),d>1&&Ui(t,e,1,s)&&(p=!0),d>2&&Ui(t,e,2,r)&&(p=!0),d>3&&Ui(t,e,3,i)&&(p=!0),d>4&&Ui(t,e,4,o)&&(p=!0),d>5&&Ui(t,e,5,l)&&(p=!0),d>6&&Ui(t,e,6,a)&&(p=!0),d>7&&Ui(t,e,7,c)&&(p=!0),d>8&&Ui(t,e,8,u)&&(p=!0),d>9&&Ui(t,e,9,h)&&(p=!0),p}(t,e,n,s,r,i,o,l,a,c,u,h);case 2:return function(t,e,n,s,r,i,o,l,a,c,u,h){let d=!1;const p=e.bindings,f=p.length;if(f>0&&Jn(t,e,0,n)&&(d=!0),f>1&&Jn(t,e,1,s)&&(d=!0),f>2&&Jn(t,e,2,r)&&(d=!0),f>3&&Jn(t,e,3,i)&&(d=!0),f>4&&Jn(t,e,4,o)&&(d=!0),f>5&&Jn(t,e,5,l)&&(d=!0),f>6&&Jn(t,e,6,a)&&(d=!0),f>7&&Jn(t,e,7,c)&&(d=!0),f>8&&Jn(t,e,8,u)&&(d=!0),f>9&&Jn(t,e,9,h)&&(d=!0),d){let d=e.text.prefix;f>0&&(d+=Xi(n,p[0])),f>1&&(d+=Xi(s,p[1])),f>2&&(d+=Xi(r,p[2])),f>3&&(d+=Xi(i,p[3])),f>4&&(d+=Xi(o,p[4])),f>5&&(d+=Xi(l,p[5])),f>6&&(d+=Xi(a,p[6])),f>7&&(d+=Xi(c,p[7])),f>8&&(d+=Xi(u,p[8])),f>9&&(d+=Xi(h,p[9]));const g=jn(t,e.nodeIndex).renderText;t.renderer.setValue(g,d)}return d}(t,e,n,s,r,i,o,l,a,c,u,h);case 16384:return function(t,e,n,s,r,i,o,l,a,c,u,h){const d=zn(t,e.nodeIndex),p=d.instance;let f=!1,g=void 0;const m=e.bindings.length;return m>0&&Kn(t,e,0,n)&&(f=!0,g=yr(t,d,e,0,n,g)),m>1&&Kn(t,e,1,s)&&(f=!0,g=yr(t,d,e,1,s,g)),m>2&&Kn(t,e,2,r)&&(f=!0,g=yr(t,d,e,2,r,g)),m>3&&Kn(t,e,3,i)&&(f=!0,g=yr(t,d,e,3,i,g)),m>4&&Kn(t,e,4,o)&&(f=!0,g=yr(t,d,e,4,o,g)),m>5&&Kn(t,e,5,l)&&(f=!0,g=yr(t,d,e,5,l,g)),m>6&&Kn(t,e,6,a)&&(f=!0,g=yr(t,d,e,6,a,g)),m>7&&Kn(t,e,7,c)&&(f=!0,g=yr(t,d,e,7,c,g)),m>8&&Kn(t,e,8,u)&&(f=!0,g=yr(t,d,e,8,u,g)),m>9&&Kn(t,e,9,h)&&(f=!0,g=yr(t,d,e,9,h,g)),g&&p.ngOnChanges(g),65536&e.flags&&Ln(t,256,e.nodeIndex)&&p.ngOnInit(),262144&e.flags&&p.ngDoCheck(),f}(t,e,n,s,r,i,o,l,a,c,u,h);case 32:case 64:case 128:return function(t,e,n,s,r,i,o,l,a,c,u,h){const d=e.bindings;let p=!1;const f=d.length;if(f>0&&Jn(t,e,0,n)&&(p=!0),f>1&&Jn(t,e,1,s)&&(p=!0),f>2&&Jn(t,e,2,r)&&(p=!0),f>3&&Jn(t,e,3,i)&&(p=!0),f>4&&Jn(t,e,4,o)&&(p=!0),f>5&&Jn(t,e,5,l)&&(p=!0),f>6&&Jn(t,e,6,a)&&(p=!0),f>7&&Jn(t,e,7,c)&&(p=!0),f>8&&Jn(t,e,8,u)&&(p=!0),f>9&&Jn(t,e,9,h)&&(p=!0),p){const p=Fn(t,e.nodeIndex);let g;switch(201347067&e.flags){case 32:g=new Array(d.length),f>0&&(g[0]=n),f>1&&(g[1]=s),f>2&&(g[2]=r),f>3&&(g[3]=i),f>4&&(g[4]=o),f>5&&(g[5]=l),f>6&&(g[6]=a),f>7&&(g[7]=c),f>8&&(g[8]=u),f>9&&(g[9]=h);break;case 64:g={},f>0&&(g[d[0].name]=n),f>1&&(g[d[1].name]=s),f>2&&(g[d[2].name]=r),f>3&&(g[d[3].name]=i),f>4&&(g[d[4].name]=o),f>5&&(g[d[5].name]=l),f>6&&(g[d[6].name]=a),f>7&&(g[d[7].name]=c),f>8&&(g[d[8].name]=u),f>9&&(g[d[9].name]=h);break;case 128:const t=n;switch(f){case 1:g=t.transform(n);break;case 2:g=t.transform(s);break;case 3:g=t.transform(s,r);break;case 4:g=t.transform(s,r,i);break;case 5:g=t.transform(s,r,i,o);break;case 6:g=t.transform(s,r,i,o,l);break;case 7:g=t.transform(s,r,i,o,l,a);break;case 8:g=t.transform(s,r,i,o,l,a,c);break;case 9:g=t.transform(s,r,i,o,l,a,c,u);break;case 10:g=t.transform(s,r,i,o,l,a,c,u,h)}}p.value=g}return p}(t,e,n,s,r,i,o,l,a,c,u,h);default:throw"unreachable"}}(t,e,s,r,i,o,l,a,c,u,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){let s=!1;for(let r=0;r0&&ts(t,e,0,n),d>1&&ts(t,e,1,s),d>2&&ts(t,e,2,r),d>3&&ts(t,e,3,i),d>4&&ts(t,e,4,o),d>5&&ts(t,e,5,l),d>6&&ts(t,e,6,a),d>7&&ts(t,e,7,c),d>8&&ts(t,e,8,u),d>9&&ts(t,e,9,h)}(t,e,s,r,i,o,l,a,c,u,h,d):function(t,e,n){for(let s=0;s{const s=Oo.get(t.token);3840&t.flags&&s&&(e=!0,n=n||s.deprecatedBehavior)}),t.modules.forEach(t=>{Io.forEach((s,r)=>{_t(r).providedIn===t&&(e=!0,n=n||s.deprecatedBehavior)})}),{hasOverrides:e,hasDeprecatedOverrides:n})}(t);return e?(function(t){for(let e=0;e0){let e=new Set(t.modules);Io.forEach((s,r)=>{if(e.has(_t(r).providedIn)){let e={token:r,flags:s.flags|(n?4096:0),deps:hs(s.deps),value:s.value,index:t.providers.length};t.providers.push(e),t.providersByKey[Yn(r)]=e}})}}(t=t.factory(()=>Gn)),t):t}(s))}const Oo=new Map,Io=new Map,Ro=new Map;function Po(t){let e;Oo.set(t.token,t),"function"==typeof t.token&&(e=_t(t.token))&&"function"==typeof e.providedIn&&Io.set(t.token,t)}function Ao(t,e){const n=fs(e.viewDefFactory),s=fs(n.nodes[0].element.componentView);Ro.set(t,s)}function Mo(){Oo.clear(),Io.clear(),Ro.clear()}function No(t){if(0===Oo.size)return t;const e=function(t){const e=[];let n=null;for(let s=0;sGn);for(let s=0;s"-"+t[1].toLowerCase())}`)]=Ne(l))}const s=e.parent,l=Un(t,s.nodeIndex).renderElement;if(s.element.name)for(let e in n){const s=n[e];null!=s?t.renderer.setAttribute(l,e,s):t.renderer.removeAttribute(l,e)}else t.renderer.setValue(l,`bindings=${JSON.stringify(n,null,2)}`)}}var r,i}function Zo(t,e,n,s){ho(t,e,n,...s)}function Qo(t,e){for(let n=e;n++i===r?t.error.bind(t,...e):Gn),inew Ko(t,e),handleEvent:Go,updateDirectives:Wo,updateRenderer:Yo}:{setCurrentNode:()=>{},createRootView:Co,createEmbeddedView:eo,createComponentView:so,createNgModuleRef:Xs,overrideProvider:Gn,overrideComponentView:Gn,clearOverrides:Gn,checkAndUpdateView:ao,checkNoChangesView:lo,destroyView:fo,createDebugContext:(t,e)=>new Ko(t,e),handleEvent:(t,e,n,s)=>t.def.handleEvent(t,e,n,s),updateDirectives:(t,e)=>t.def.updateDirectives(0===e?Do:Vo,t),updateRenderer:(t,e)=>t.def.updateRenderer(0===e?Do:Vo,t)};Bn.setCurrentNode=t.setCurrentNode,Bn.createRootView=t.createRootView,Bn.createEmbeddedView=t.createEmbeddedView,Bn.createComponentView=t.createComponentView,Bn.createNgModuleRef=t.createNgModuleRef,Bn.overrideProvider=t.overrideProvider,Bn.overrideComponentView=t.overrideComponentView,Bn.clearOverrides=t.clearOverrides,Bn.checkAndUpdateView=t.checkAndUpdateView,Bn.checkNoChangesView=t.checkNoChangesView,Bn.destroyView=t.destroyView,Bn.resolveDep=_r,Bn.createDebugContext=t.createDebugContext,Bn.handleEvent=t.handleEvent,Bn.updateDirectives=t.updateDirectives,Bn.updateRenderer=t.updateRenderer,Bn.dirtyParentQueries=Fi}();const e=function(t){const e=Array.from(t.providers),n=Array.from(t.modules),s={};for(const r in t.providersByKey)s[r]=t.providersByKey[r];return{factory:t.factory,isRoot:t.isRoot,providers:e,modules:n,providersByKey:s}}(fs(this._ngModuleDefFactory));return Bn.createNgModuleRef(this.moduleType,t||Dt.NULL,this._bootstrapComponents,e)}}const ol="Test Runner";function ll(t){let e="";if(t)for(const n in t)t.hasOwnProperty(n)&&null!=t[n]&&(e+=`${e?"&":""}${n}=${t[n]}`);return e}function al(t,e){const n=t.shift();return e[n]?t.length>0?al(t,e[n]):e[n]:null}var cl=n("Wgwc");const ul=(()=>{class t{constructor(){if(this.build=cl(),!t.init){const e=cl();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][APP] ${ol} - ${t} | ${e}`):console[n](`%c[ACA]%c[APP] %c${ol} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0",t.init=!1,t})();class hl{constructor(){this.show_menu=!0}}class dl{}const pl=new Rt("Location Initialized");class fl{}const gl=new Rt("appBaseHref"),ml=(()=>{class t{constructor(e,n){this._subject=new Sr,this._urlChangeListeners=[],this._platformStrategy=e;const s=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=t.stripTrailingSlash(_l(s)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(e,n=""){return this.path()==this.normalize(e+t.normalizeQueryParams(n))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,_l(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(e,n="",s=null){this._platformStrategy.pushState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}replaceState(e,n="",s=null){this._platformStrategy.replaceState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}static normalizeQueryParams(t){return t&&"?"!==t[0]?"?"+t:t}static joinWithSlash(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}static stripTrailingSlash(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}}return t})();function _l(t){return t.replace(/\/index.html$/,"")}const vl=(()=>(class extends fl{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=ml.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,s){let r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,s){let r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),yl=(()=>(class extends fl{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)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.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return ml.joinWithSlash(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+ml.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,s){const r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,s){const r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),wl=void 0;var bl=["en",[["a","p"],["AM","PM"],wl],[["AM","PM"],wl,wl],[["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"]],wl,[["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"]],wl,[["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}",wl,"{1} 'at' {0}",wl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];const Cl={},xl=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),Sl=new Rt("UseV4Plurals");class El{}const kl=(()=>(class extends El{constructor(t,e){super(),this.locale=t,this.deprecatedPluralFn=e}getPluralCategory(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){const e=t.toLowerCase().replace(/_/g,"-");let n=Cl[e];if(n)return n;const s=e.split("-")[0];if(n=Cl[s])return n;if("en"===s)return bl;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[18]}(e||this.locale)(t)){case xl.Zero:return"zero";case xl.One:return"one";case xl.Two:return"two";case xl.Few:return"few";case xl.Many:return"many";default:return"other"}}}))();function Tl(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[s,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(s.trim()===e)return decodeURIComponent(r)}return null}const Ol=(()=>(class{constructor(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}ngOnChanges(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){const e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){const t=e.get(tn);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(t.injector)}else this._moduleRef=null;const n=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(Xe)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(n,this._viewContainerRef.length,e,this.ngComponentOutletContent)}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}))();class Il{constructor(t,e,n,s){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=s}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}const Rl=(()=>(class{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){le()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,s)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Il(null,this._ngForOf,-1,-1),s),r=new Pl(t,n);e.push(r)}else if(null==s)this._viewContainer.remove(n);else{const r=this._viewContainer.get(n);this._viewContainer.move(r,s);const i=new Pl(t,r);e.push(i)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}))();class Pl{constructor(t,e){this.record=t,this.view=e}}const Al=(()=>(class{constructor(t,e){this._viewContainer=t,this._context=new Ml,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){Nl("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Nl("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){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)))}static ngTemplateGuard_ngIf(t,e){return!0}}))();class Ml{constructor(){this.$implicit=null,this.ngIf=null}}function Nl(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${yt(e)}'.`)}class Dl{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}const Vl=(()=>(class{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const 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}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e(class{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new Dl(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}))(),Ll=(()=>(class{constructor(t,e,n){n._addDefault(new Dl(t,e))}}))(),jl=(()=>(class{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){this._shouldRecreateView(t)?(this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))):this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)}_shouldRecreateView(t){const e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)}_hasContextShapeChanged(t){const e=Object.keys(t.previousValue||{}),n=Object.keys(t.currentValue||{});if(e.length===n.length){for(let t of n)if(-1===e.indexOf(t))return!0;return!1}return!0}_updateExistingContext(t){for(let e of Object.keys(t))this._viewRef.context[e]=this.ngTemplateOutletContext[e]}}))(),Ul=(()=>(class{}))(),zl=new Rt("DocumentToken"),Fl="browser";function Hl(t){return t===Fl}const Bl=(()=>{class t{}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new Gl(Ot(zl),window,Ot(re))}),t})();class Gl{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=(()=>[0,0])}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const n=this.document.querySelector(`#${t}`);if(n)return void this.scrollToElement(n);const s=this.document.querySelector(`[name='${t}']`);if(s)return void this.scrollToElement(s)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,s=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(n-r[0],s-r[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}const Wl=new b(t=>t.complete());function Yl(t){return t?function(t){return new b(e=>t.schedule(()=>e.complete()))}(t):Wl}function ql(t){const e=new b(e=>{e.next(t),e.complete()});return e._isScalar=!0,e.value=t,e}function Zl(...t){let e=t[t.length-1];switch(I(e)?t.pop():e=void 0,t.length){case 0:return Yl(e);case 1:return e?G(t,e):ql(t[0]);default:return G(t,e)}}class Ql extends T{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new S;return this._value}next(t){super.next(this._value=t)}}function Xl(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}Xl.prototype=Object.create(Error.prototype);const Kl=Xl,Jl={};class ta{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new ea(t,this.resultSelector))}}class ea extends z{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(Jl),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{let n;try{n=t()}catch(s){return void e.error(s)}return(n?W(n):Yl()).subscribe(e)})}function sa(){return X(1)}function ra(t,e){return function(n){return n.lift(new ia(t,e))}}class ia{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new oa(t,this.predicate,this.thisArg))}}class oa extends g{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}function la(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}la.prototype=Object.create(Error.prototype);const aa=la;function ca(t){return function(e){return 0===t?Yl():e.lift(new ua(t))}}class ua{constructor(t){if(this.total=t,this.total<0)throw new aa}call(t,e){return e.subscribe(new ha(t,this.total))}}class ha extends g{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,s=this.count++;e.length0){const n=this.count>=this.total?this.total:this.count,s=this.ring;for(let r=0;rda({hasValue:!1,next(){this.hasValue=!0},complete(){if(!this.hasValue)throw t()}});function ma(t=null){return e=>e.lift(new _a(t))}class _a{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new va(t,this.defaultValue))}}class va extends g{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}function ya(t,e){const n=arguments.length>=2;return s=>s.pipe(t?ra((e,n)=>t(e,n,s)):Q,ca(1),n?ma(e):ga(()=>new Kl))}function wa(t){return function(e){const n=new ba(t),s=e.lift(n);return n.caught=s}}class ba{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Ca(t,this.selector,this.caught))}}class Ca extends z{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const s=new R(this,void 0,void 0);this.add(s),U(this,n,void 0,void 0,s)}}}function xa(t){return e=>0===t?Yl():e.lift(new Sa(t))}class Sa{constructor(t){if(this.total=t,this.total<0)throw new aa}call(t,e){return e.subscribe(new Ea(t,this.total))}}class Ea extends g{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}function ka(t,e){const n=arguments.length>=2;return s=>s.pipe(t?ra((e,n)=>t(e,n,s)):Q,xa(1),n?ma(e):ga(()=>new Kl))}class Ta{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new Oa(t,this.predicate,this.thisArg,this.source))}}class Oa extends g{constructor(t,e,n,s){super(t),this.predicate=e,this.thisArg=n,this.source=s,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}function Ia(t,e){return"function"==typeof e?n=>n.pipe(Ia((n,s)=>W(t(n,s)).pipe(F((t,r)=>e(n,t,s,r))))):e=>e.lift(new Ra(t))}class Ra{constructor(t){this.project=t}call(t,e){return e.subscribe(new Pa(t,this.project))}}class Pa extends z{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(s){return void this.destination.error(s)}this._innerSub(e,t,n)}_innerSub(t,e,n){const s=this.innerSubscription;s&&s.unsubscribe();const r=new R(this,void 0,void 0);this.destination.add(r),this.innerSubscription=U(this,t,e,n,r)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,s,r){this.destination.next(e)}}function Aa(...t){return sa()(Zl(...t))}function Ma(...t){return e=>{let n=t[t.length-1];I(n)?t.pop():n=null;const s=t.length;return Aa(1!==s||n?s>0?G(t,n):Yl(n):ql(t[0]),e)}}function Na(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(s){return s.lift(new Da(t,e,n))}}class Da{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new Va(t,this.accumulator,this.seed,this.hasSeed))}}class Va extends g{constructor(t,e,n,s){super(t),this.accumulator=e,this._seed=n,this.hasSeed=s,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(s){this.destination.error(s)}this.seed=n,this.destination.next(n)}}function $a(t,e){return Y(t,e,1)}class La{constructor(t){this.callback=t}call(t,e){return e.subscribe(new ja(t,this.callback))}}class ja extends g{constructor(t,e){super(t),this.add(new d(e))}}let Ua=null;function za(){return Ua}class Fa{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(t){this._attrToPropMap=t}}class Ha extends Fa{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const e=this.createElement("div",document);if(null!=this.getStyle(e,"animationName"))this._animationPrefix="";else{const t=["Webkit","Moz","O","ms"];for(let n=0;n{null!=this.getStyle(e,t)&&(this._transitionEnd=n[t])})}catch(t){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(t){return t.getDistributedNodes()}resolveAndSetHref(t,e,n){t.href=null==n?e:e+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}const Ba={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},Ga=3,Wa={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Ya={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},qa=(()=>{if(St.Node)return St.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))}})();class Za extends Ha{parse(t){throw new Error("parse not implemented")}static makeCurrent(){var t;t=new Za,Ua||(Ua=t)}hasProperty(t,e){return e in t}setProperty(t,e,n){t[e]=n}getProperty(t,e){return t[e]}invoke(t,e,n){t[e](...n)}logError(t){window.console&&(console.error?console.error(t):console.log(t))}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return Ba}contains(t,e){return qa.call(t,e)}querySelector(t,e){return t.querySelector(e)}querySelectorAll(t,e){return t.querySelectorAll(e)}on(t,e,n){t.addEventListener(e,n,!1)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}createMouseEvent(t){const e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(t,!0,!0),e}createEvent(t){const e=this.getDefaultDocument().createEvent("Event");return e.initEvent(t,!0,!0),e}preventDefault(t){t.preventDefault(),t.returnValue=!1}isPrevented(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue}getInnerHTML(t){return t.innerHTML}getTemplateContent(t){return"content"in t&&this.isTemplateElement(t)?t.content:null}getOuterHTML(t){return t.outerHTML}nodeName(t){return t.nodeName}nodeValue(t){return t.nodeValue}type(t){return t.type}content(t){return this.hasProperty(t,"content")?t.content:t}firstChild(t){return t.firstChild}nextSibling(t){return t.nextSibling}parentElement(t){return t.parentNode}childNodes(t){return t.childNodes}childNodesAsList(t){const e=t.childNodes,n=new Array(e.length);for(let s=0;st.insertBefore(n,e))}insertAfter(t,e,n){t.insertBefore(n,e.nextSibling)}setInnerHTML(t,e){t.innerHTML=e}getText(t){return t.textContent}setText(t,e){t.textContent=e}getValue(t){return t.value}setValue(t,e){t.value=e}getChecked(t){return t.checked}setChecked(t,e){t.checked=e}createComment(t){return this.getDefaultDocument().createComment(t)}createTemplate(t){const e=this.getDefaultDocument().createElement("template");return e.innerHTML=t,e}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createElementNS(t,e,n){return(n=n||this.getDefaultDocument()).createElementNS(t,e)}createTextNode(t,e){return(e=e||this.getDefaultDocument()).createTextNode(t)}createScriptTag(t,e,n){const s=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return s.setAttribute(t,e),s}createStyleElement(t,e){const n=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(t,e)),n}createShadowRoot(t){return t.createShadowRoot()}getShadowRoot(t){return t.shadowRoot}getHost(t){return t.host}clone(t){return t.cloneNode(!0)}getElementsByClassName(t,e){return t.getElementsByClassName(e)}getElementsByTagName(t,e){return t.getElementsByTagName(e)}classList(t){return Array.prototype.slice.call(t.classList,0)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}hasClass(t,e){return t.classList.contains(e)}setStyle(t,e,n){t.style[e]=n}removeStyle(t,e){t.style[e]=""}getStyle(t,e){return t.style[e]}hasStyle(t,e,n){const s=this.getStyle(t,e)||"";return n?s==n:s.length>0}tagName(t){return t.tagName}attributeMap(t){const e=new Map,n=t.attributes;for(let s=0;s{class t extends dl{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=za().getLocation(),this._history=za().getHistory()}getBaseHrefFromDOM(){return za().getBaseHref(this._doc)}onPopState(t){za().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){za().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){Ka()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){Ka()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return t.ctorParameters=(()=>[{type:void 0,decorators:[{type:ut,args:[zl]}]}]),t})(),tc=new Rt("TRANSITION_ID"),ec=[{provide:Tr,useFactory:function(t,e,n){return()=>{n.get(Or).donePromise.then(()=>{const n=za();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(e=>n.getAttribute(e,"ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[tc,zl,Dt],multi:!0}];class nc{static init(){var t;t=new nc,ai=t}addToWindow(t){St.getAngularTestability=((e,n=!0)=>{const s=t.findTestabilityInTree(e,n);if(null==s)throw new Error("Could not find testability for element.");return s}),St.getAllAngularTestabilities=(()=>t.getAllTestabilities()),St.getAllAngularRootElements=(()=>t.getAllRootElements()),St.frameworkStabilizers||(St.frameworkStabilizers=[]),St.frameworkStabilizers.push(t=>{const e=St.getAllAngularTestabilities();let n=e.length,s=!1;const r=function(e){s=s||e,0==--n&&t(s)};e.forEach(function(t){t.whenStable(r)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const s=t.getTestability(e);return null!=s?s:n?za().isShadowRoot(e)?this.findTestabilityInTree(t,za().getHost(e),!0):this.findTestabilityInTree(t,za().parentElement(e),!0):null}}function sc(t,e){"undefined"!=typeof COMPILED&&COMPILED||((St.ng=St.ng||{})[t]=e)}const rc=(()=>({ApplicationRef:mi,NgZone:Xr}))();function ic(t){return ki(t)}const oc=new Rt("EventManagerPlugins"),lc=(()=>(class{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let s=0;s(class{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}))(),uc=(()=>(class extends cc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>za().remove(t))}}))(),hc={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/"},dc=/%COMP%/g,pc="_nghost-%COMP%",fc="_ngcontent-%COMP%";function gc(t,e,n){for(let s=0;s{!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}const _c=(()=>(class{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new vc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case Jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new bc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case Jt.Native:case Jt.ShadowDom:return new Cc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=gc(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}))();class vc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(hc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let 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}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,s){if(s){e=`${s}:${e}`;const r=hc[s];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const s=hc[n];s?t.removeAttributeNS(s,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&an.DashCase?t.style.setProperty(e,n,s&an.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&an.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){wc(e,"property"),t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return wc(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,mc(n)):this.eventManager.addEventListener(t,e,mc(n))}}const yc=(()=>"@".charCodeAt(0))();function wc(t,e){if(t.charCodeAt(0)===yc)throw new Error(`Found the synthetic ${e} ${t}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class bc extends vc{constructor(t,e,n,s){super(t),this.component=n;const r=gc(s+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr=fc.replace(dc,s+"-"+n.id),this.hostAttr=pc.replace(dc,s+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Cc extends vc{constructor(t,e,n,s){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=s,this.shadowRoot=s.encapsulation===Jt.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const r=gc(s.id,s.styles,[]);for(let i=0;i"undefined"!=typeof Zone&&Zone.__symbol__||function(t){return"__zone_symbol__"+t})(),Sc=xc("addEventListener"),Ec=xc("removeEventListener"),kc={},Tc="__zone_symbol__propagationStopped",Oc=(()=>{const t="undefined"!=typeof Zone&&Zone[xc("BLACK_LISTED_EVENTS")];if(t){const e={};return t.forEach(t=>{e[t]=t}),e}})(),Ic=function(t){return!!Oc&&Oc.hasOwnProperty(t)},Rc=function(t){const e=kc[t.type];if(!e)return;const n=this[e];if(!n)return;const s=[t];if(1===n.length){const t=n[0];return t.zone!==Zone.current?t.zone.run(t.handler,this,s):t.handler.apply(this,s)}{const e=n.slice();for(let n=0;n(class extends ac{constructor(t,e,n){super(t),this.ngZone=e,n&&function(t){return"server"===t}(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const t=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[Tc]=!0),t&&t.apply(this,arguments)}}supports(t){return!0}addEventListener(t,e,n){let s=n;if(!t[Sc]||Xr.isInAngularZone()&&!Ic(e))t.addEventListener(e,s,!1);else{let n=kc[e];n||(n=kc[e]=xc("ANGULAR"+e+"FALSE"));let r=t[n];const i=r&&r.length>0;r||(r=t[n]=[]);const o=Ic(e)?Zone.root:Zone.current;if(0===r.length)r.push({zone:o,handler:s});else{let t=!1;for(let e=0;ethis.removeEventListener(t,e,s)}removeEventListener(t,e,n){let s=t[Ec];if(!s)return t.removeEventListener.apply(t,[e,n,!1]);let r=kc[e],i=r&&t[r];if(!i)return t.removeEventListener.apply(t,[e,n,!1]);let o=!1;for(let l=0;l(class{constructor(){this.events=[],this.overrides={}}buildHammer(t){const e=new Hammer(t,this.options);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(const n in this.overrides)e.get(n).set(this.overrides[n]);return e}}))(),Vc=(()=>(class extends ac{constructor(t,e,n,s){super(t),this._config=e,this.console=n,this.loader=s}supports(t){return!(!Ac.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))}addEventListener(t,e,n){const s=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){let s=!1,r=()=>{s=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(r=(()=>{}));s||(r=this.addEventListener(t,e,n))}).catch(()=>{this.console.warn(`The "${e}" event cannot be bound because the custom `+"Hammer.JS loader failed."),r=(()=>{})}),()=>{r()}}return s.runOutsideAngular(()=>{const r=this._config.buildHammer(t),i=function(t){s.runGuarded(function(){n(t)})};return r.on(e,i),()=>{r.off(e,i),"function"==typeof r.destroy&&r.destroy()}})}isCustomEvent(t){return this._config.events.indexOf(t)>-1}}))(),$c=["alt","control","meta","shift"],Lc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},jc=(()=>{class t extends ac{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,s){const r=t.parseEventName(n),i=t.eventCallback(r.fullKey,s,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>za().onAndCancel(e,r.domEventName,i))}static parseEventName(e){const n=e.toLowerCase().split("."),s=n.shift();if(0===n.length||"keydown"!==s&&"keyup"!==s)return null;const r=t._normalizeKey(n.pop());let i="";if($c.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),i+=t+".")}),i+=r,0!=n.length||0===r.length)return null;const o={};return o.domEventName=s,o.fullKey=i,o}static getEventFullKey(t){let e="",n=za().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),$c.forEach(s=>{s!=n&&(0,Lc[s])(t)&&(e+=s+".")}),e+=n}static eventCallback(e,n,s){return r=>{t.getEventFullKey(r)===e&&s.runGuarded(()=>n(r))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t})();class Uc{}const zc=(()=>(class extends Uc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case Ie.NONE:return e;case Ie.HTML:return e instanceof Hc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){let n=null;try{Te=Te||new ae(t);let s=e?String(e):"";n=Te.getInertBodyElement(s);let r=5,i=s;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,s=i,i=n.innerHTML,n=Te.getInertBodyElement(s)}while(s!==i);const o=new xe,l=o.sanitizeChildren(Oe(n)||n);return le()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),l}finally{if(n){const t=Oe(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e)));case Ie.STYLE:return e instanceof Bc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";const e=t.match(Ae);return e&&he(e[1])===e[1]||t.match(Pe)&&function(t){let e=!0,n=!0;for(let s=0;s{class t{constructor(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.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Ir,useValue:e.appId},{provide:tc,useExisting:Ir},ec]}}}return t})();function Xc(){return new Kc(Ot(zl))}const Kc=(()=>{class t{constructor(t){this._doc=t}getTitle(){return za().getTitle(this._doc)}setTitle(t){za().setTitle(this._doc,t)}}return t.ngInjectableDef=mt({factory:Xc,token:t,providedIn:"root"}),t})();"undefined"!=typeof window&&window;class Jc{constructor(t,e){this.id=t,this.url=e}}class tu extends Jc{constructor(t,e,n="imperative",s=null){super(t,e),this.navigationTrigger=n,this.restoredState=s}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class eu extends Jc{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class nu extends Jc{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class su extends Jc{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ru extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class iu extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class ou extends Jc{constructor(t,e,n,s,r){super(t,e),this.urlAfterRedirects=n,this.state=s,this.shouldActivate=r}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class lu extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class au extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class cu{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class uu{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class hu{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class du{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class pu{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class fu{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class gu{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const mu=(()=>(class{}))(),_u="primary";class vu{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function yu(t){return new vu(t)}const wu="ngNavigationCancelingError";function bu(t){const e=Error("NavigationCancelingError: "+t);return e[wu]=!0,e}function Cu(t,e,n){const s=n.path.split("/");if(s.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||s.length0?t[t.length-1]:null}function Pu(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Au(t){return Ve(t)?t:De(t)?W(Promise.resolve(t)):Zl(t)}function Mu(t,e,n){return n?function(t,e){return Ou(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!$u(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const s in n.children){if(!e.children[s])return!1;if(!t(e.children[s],n.children[s]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>e[n]===t[n])}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,s,r){if(n.segments.length>r.length){return!!$u(n.segments.slice(0,r.length),r)&&!s.hasChildren()}if(n.segments.length===r.length){if(!$u(n.segments,r))return!1;for(const e in s.children){if(!n.children[e])return!1;if(!t(n.children[e],s.children[e]))return!1}return!0}{const t=r.slice(0,n.segments.length),i=r.slice(n.segments.length);return!!$u(n.segments,t)&&!!n.children[_u]&&e(n.children[_u],s,i)}}(e,n,n.segments)}(t.root,e.root)}class Nu{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=yu(this.queryParams)),this._queryParamMap}toString(){return zu.serialize(this)}}class Du{constructor(t,e){this.segments=t,this.children=e,this.parent=null,Pu(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Fu(this)}}class Vu{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=yu(this.parameters)),this._parameterMap}toString(){return qu(this)}}function $u(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Lu(t,e){let n=[];return Pu(t.children,(t,s)=>{s===_u&&(n=n.concat(e(t,s)))}),Pu(t.children,(t,s)=>{s!==_u&&(n=n.concat(e(t,s)))}),n}class ju{}class Uu{parse(t){const e=new Ju(t);return new Nu(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){var e;return`${`/${function t(e,n){if(!e.hasChildren())return Fu(e);if(n){const n=e.children[_u]?t(e.children[_u],!1):"",s=[];return Pu(e.children,(e,n)=>{n!==_u&&s.push(`${n}:${t(e,!1)}`)}),s.length>0?`${n}(${s.join("//")})`:n}{const n=Lu(e,(n,s)=>s===_u?[t(e.children[_u],!1)]:[`${s}:${t(n,!1)}`]);return`${Fu(e)}/(${n.join("//")})`}}(t.root,!0)}`}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Bu(e)}=${Bu(t)}`).join("&"):`${Bu(e)}=${Bu(n)}`});return e.length?`?${e.join("&")}`:""}(t.queryParams)}${"string"==typeof t.fragment?`#${e=t.fragment,encodeURI(e)}`:""}`}}const zu=new Uu;function Fu(t){return t.segments.map(t=>qu(t)).join("/")}function Hu(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Bu(t){return Hu(t).replace(/%3B/gi,";")}function Gu(t){return Hu(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Wu(t){return decodeURIComponent(t)}function Yu(t){return Wu(t.replace(/\+/g,"%20"))}function qu(t){return`${Gu(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Gu(t)}=${Gu(e[t])}`).join("")}`;var e}const Zu=/^[^\/()?;=#]+/;function Qu(t){const e=t.match(Zu);return e?e[0]:""}const Xu=/^[^=?&#]+/,Ku=/^[^?&#]+/;class Ju{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Du([],{}):new Du([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[_u]=new Du(t,e)),n}parseSegment(){const t=Qu(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Vu(Wu(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Qu(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Qu(this.remaining);t&&this.capture(n=t)}t[Wu(e)]=Wu(n)}parseQueryParam(t){const e=function(t){const e=t.match(Xu);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(Ku);return e?e[0]:""}(this.remaining);t&&this.capture(n=t)}const s=Yu(e),r=Yu(n);if(t.hasOwnProperty(s)){let e=t[s];Array.isArray(e)||(t[s]=e=[e]),e.push(r)}else t[s]=r}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Qu(this.remaining),s=this.remaining[n.length];if("/"!==s&&")"!==s&&";"!==s)throw new Error(`Cannot parse url '${this.url}'`);let r=void 0;n.indexOf(":")>-1?(r=n.substr(0,n.indexOf(":")),this.capture(r),this.capture(":")):t&&(r=_u);const i=this.parseChildren();e[r]=1===Object.keys(i).length?i[_u]:new Du([],i),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class th{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=eh(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=eh(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=nh(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return nh(t,this._root).map(t=>t.value)}}function eh(t,e){if(t===e.value)return e;for(const n of e.children){const e=eh(t,n);if(e)return e}return null}function nh(t,e){if(t===e.value)return[e];for(const n of e.children){const s=nh(t,n);if(s.length)return s.unshift(e),s}return[]}class sh{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function rh(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class ih extends th{constructor(t,e){super(t),this.snapshot=e,hh(this,t)}toString(){return this.snapshot.toString()}}function oh(t,e){const n=function(t,e){const n=new ch([],{},{},"",{},_u,e,null,t.root,-1,{});return new uh("",new sh(n,[]))}(t,e),s=new Ql([new Vu("",{})]),r=new Ql({}),i=new Ql({}),o=new Ql({}),l=new Ql(""),a=new lh(s,r,o,l,i,_u,e,n.root);return a.snapshot=n.root,new ih(new sh(a,[]),n)}class lh{constructor(t,e,n,s,r,i,o,l){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=r,this.outlet=i,this.component=o,this._futureSnapshot=l}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(F(t=>yu(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(F(t=>yu(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function ah(t,e="emptyOnly"){const n=t.pathFromRoot;let s=0;if("always"!==e)for(s=n.length-1;s>=1;){const t=n[s],e=n[s-1];if(t.routeConfig&&""===t.routeConfig.path)s--;else{if(e.component)break;s--}}return function(t){return t.reduce((t,e)=>({params:Object.assign({},t.params,e.params),data:Object.assign({},t.data,e.data),resolve:Object.assign({},t.resolve,e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(s))}class ch{constructor(t,e,n,s,r,i,o,l,a,c,u){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=r,this.outlet=i,this.component=o,this.routeConfig=l,this._urlSegment=a,this._lastPathIndex=c,this._resolve=u}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=yu(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=yu(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class uh extends th{constructor(t,e){super(e),this.url=t,hh(this,e)}toString(){return dh(this._root)}}function hh(t,e){e.value._routerState=t,e.children.forEach(e=>hh(t,e))}function dh(t){const e=t.children.length>0?` { ${t.children.map(dh).join(", ")} } `:"";return`${t.value}${e}`}function ph(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Ou(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Ou(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nOu(t.parameters,s[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||fh(t.parent,e.parent))}function gh(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function mh(t,e,n,s,r){let i={};return s&&Pu(s,(t,e)=>{i[e]=Array.isArray(t)?t.map(t=>`${t}`):`${t}`}),new Nu(n.root===t?e:function t(e,n,s){const r={};return Pu(e.children,(e,i)=>{r[i]=e===n?s:t(e,n,s)}),new Du(e.segments,r)}(n.root,t,e),i,r)}class _h{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&gh(n[0]))throw new Error("Root segment cannot have matrix parameters");const s=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(s&&s!==Ru(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class vh{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function yh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[_u]:`${t}`}function wh(t,e,n){if(t||(t=new Du([],{})),0===t.segments.length&&t.hasChildren())return bh(t,e,n);const s=function(t,e,n){let s=0,r=e;const i={match:!1,pathIndex:0,commandIndex:0};for(;r=n.length)return i;const e=t.segments[r],o=yh(n[s]),l=s0&&void 0===o)break;if(o&&l&&"object"==typeof l&&void 0===l.outlets){if(!Eh(o,l,e))return i;s+=2}else{if(!Eh(o,{},e))return i;s++}r++}return{match:!0,pathIndex:r,commandIndex:s}}(t,e,n),r=n.slice(s.commandIndex);if(s.match&&s.pathIndex{null!==n&&(r[s]=wh(t.children[s],e,n))}),Pu(t.children,(t,e)=>{void 0===s[e]&&(r[e]=t)}),new Du(t.segments,r)}}function Ch(t,e,n){const s=t.segments.slice(0,e);let r=0;for(;r{null!==t&&(e[n]=Ch(new Du([],{}),0,t))}),e}function Sh(t){const e={};return Pu(t,(t,n)=>e[n]=`${t}`),e}function Eh(t,e,n){return t==n.path&&Ou(e,n.parameters)}const kh=(t,e,n)=>F(s=>(new Th(e,s.targetRouterState,s.currentRouterState,n).activate(t),s));class Th{constructor(t,e,n,s){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=s}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),ph(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const s=rh(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,s[e],n),delete s[e]}),Pu(s,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const s=t.value,r=e?e.value:null;if(s===r)if(s.component){const r=n.getContext(s.outlet);r&&this.deactivateChildRoutes(t,e,r.children)}else this.deactivateChildRoutes(t,e,n);else r&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),s=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:s})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const s=rh(t),r=t.value.component?n.children:e;Pu(s,(t,e)=>this.deactivateRouteAndItsChildren(t,r)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const s=rh(e);t.children.forEach(t=>{this.activateRoutes(t,s[t.value.outlet],n),this.forwardEvent(new fu(t.value.snapshot))}),t.children.length&&this.forwardEvent(new du(t.value.snapshot))}activateRoutes(t,e,n){const s=t.value,r=e?e.value:null;if(ph(s),s===r)if(s.component){const r=n.getOrCreateContext(s.outlet);this.activateChildRoutes(t,e,r.children)}else this.activateChildRoutes(t,e,n);else if(s.component){const e=n.getOrCreateContext(s.outlet);if(this.routeReuseStrategy.shouldAttach(s.snapshot)){const t=this.routeReuseStrategy.retrieve(s.snapshot);this.routeReuseStrategy.store(s.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),Oh(t.route)}else{const n=function(t){for(let e=s.snapshot.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(),r=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=s,e.resolver=r,e.outlet&&e.outlet.activateWith(s,r),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Oh(t){ph(t.value),t.children.forEach(Oh)}function Ih(t){return"function"==typeof t}function Rh(t){return t instanceof Nu}class Ph{constructor(t){this.segmentGroup=t||null}}class Ah{constructor(t){this.urlTree=t}}function Mh(t){return new b(e=>e.error(new Ph(t)))}function Nh(t){return new b(e=>e.error(new Ah(t)))}function Dh(t){return new b(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class Vh{constructor(t,e,n,s,r){this.configLoader=e,this.urlSerializer=n,this.urlTree=s,this.config=r,this.allowRedirects=!0,this.ngModule=t.get(tn)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,_u).pipe(F(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(wa(t=>{if(t instanceof Ah)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof Ph)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,_u).pipe(F(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(wa(t=>{if(t instanceof Ph)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const s=t.segments.length>0?new Du([],{[_u]:t}):t;return new Nu(s,e,n)}expandSegmentGroup(t,e,n,s){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(F(t=>new Du([],t))):this.expandSegment(t,n,e,n.segments,s,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Zl({});const n=[],s=[],r={};return Pu(t,(t,i)=>{const o=e(i,t).pipe(F(t=>r[i]=t));i===_u?n.push(o):s.push(o)}),Zl.apply(null,n.concat(s)).pipe(sa(),ya(),F(()=>r))}(n.children,(n,s)=>this.expandSegmentGroup(t,e,s,n))}expandSegment(t,e,n,s,r,i){return Zl(...n).pipe(F(o=>this.expandSegmentAgainstRoute(t,e,n,o,s,r,i).pipe(wa(t=>{if(t instanceof Ph)return Zl(null);throw t}))),sa(),ka(t=>!!t),wa((t,n)=>{if(t instanceof Kl||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,s,r))return Zl(new Du([],{}));throw new Ph(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,s,r,i,o){return Uh(s)!==i?Mh(e):void 0===s.redirectTo?this.matchSegmentAgainstRoute(t,e,s,r):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i):Mh(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i){return"**"===s.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,s,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,s){const r=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Nh(r):this.lineralizeSegments(n,r).pipe(Y(n=>{const r=new Du(n,{});return this.expandSegment(t,r,e,n,s,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i){const{matched:o,consumedSegments:l,lastChild:a,positionalParamSegments:c}=$h(e,s,r);if(!o)return Mh(e);const u=this.applyRedirectCommands(l,s.redirectTo,c);return s.redirectTo.startsWith("/")?Nh(u):this.lineralizeSegments(s,u).pipe(Y(s=>this.expandSegment(t,e,n,s.concat(r.slice(a)),i,!1)))}matchSegmentAgainstRoute(t,e,n,s){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(F(t=>(n._loadedConfig=t,new Du(s,{})))):Zl(new Du(s,{}));const{matched:r,consumedSegments:i,lastChild:o}=$h(e,n,s);if(!r)return Mh(e);const l=s.slice(o);return this.getChildConfig(t,n,s).pipe(Y(t=>{const n=t.module,s=t.routes,{segmentGroup:r,slicedSegments:o}=function(t,e,n,s){return n.length>0&&function(t,e,n){return s.some(n=>jh(t,e,n)&&Uh(n)!==_u)}(t,n)?{segmentGroup:Lh(new Du(e,function(t,e){const n={};n[_u]=e;for(const s of t)""===s.path&&Uh(s)!==_u&&(n[Uh(s)]=new Du([],{}));return n}(s,new Du(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return s.some(n=>jh(t,e,n))}(t,n)?{segmentGroup:Lh(new Du(t.segments,function(t,e,n,s){const r={};for(const i of n)jh(t,e,i)&&!s[Uh(i)]&&(r[Uh(i)]=new Du([],{}));return Object.assign({},s,r)}(t,n,s,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,i,l,s);return 0===o.length&&r.hasChildren()?this.expandChildren(n,s,r).pipe(F(t=>new Du(i,t))):0===s.length&&0===o.length?Zl(new Du(i,{})):this.expandSegment(n,r,s,o,_u,!0).pipe(F(t=>new Du(i.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Zl(new xu(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Zl(e._loadedConfig):function(t,e,n){const s=e.canLoad;return s&&0!==s.length?W(s).pipe(F(s=>{const r=t.get(s);let i;if(function(t){return t&&Ih(t.canLoad)}(r))i=r.canLoad(e,n);else{if(!Ih(r))throw new Error("Invalid CanLoad guard");i=r(e,n)}return Au(i)})).pipe(sa(),(r=(t=>!0===t),t=>t.lift(new Ta(r,void 0,t)))):Zl(!0);var r}(t.injector,e,n).pipe(Y(n=>n?this.configLoader.load(t.injector,e).pipe(F(t=>(e._loadedConfig=t,t))):function(t){return new b(e=>e.error(bu(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Zl(new xu([],t))}lineralizeSegments(t,e){let n=[],s=e.root;for(;;){if(n=n.concat(s.segments),0===s.numberOfChildren)return Zl(n);if(s.numberOfChildren>1||!s.children[_u])return Dh(t.redirectTo);s=s.children[_u]}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,s){const r=this.createSegmentGroup(t,e.root,n,s);return new Nu(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return Pu(t,(t,s)=>{if("string"==typeof t&&t.startsWith(":")){const r=t.substring(1);n[s]=e[r]}else n[s]=t}),n}createSegmentGroup(t,e,n,s){const r=this.createSegments(t,e.segments,n,s);let i={};return Pu(e.children,(e,r)=>{i[r]=this.createSegmentGroup(t,e,n,s)}),new Du(r,i)}createSegments(t,e,n,s){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,s):this.findOrReturn(e,n))}findPosParam(t,e,n){const s=n[e.path.substring(1)];if(!s)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return s}findOrReturn(t,e){let n=0;for(const s of e){if(s.path===t.path)return e.splice(n),s;n++}return t}}function $h(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const s=(e.matcher||Cu)(n,t,e);return s?{matched:!0,consumedSegments:s.consumed,lastChild:s.consumed.length,positionalParamSegments:s.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Lh(t){if(1===t.numberOfChildren&&t.children[_u]){const e=t.children[_u];return new Du(t.segments.concat(e.segments),e.children)}return t}function jh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Uh(t){return t.outlet||_u}class zh{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Fh{constructor(t,e){this.component=t,this.route=e}}function Hh(t,e,n){const s=t._root;return function t(e,n,s,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const o=rh(n);return e.children.forEach(e=>{!function(e,n,s,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const o=e.value,l=n?n.value:null,a=s?s.getContext(e.value.outlet):null;if(l&&o.routeConfig===l.routeConfig){const c=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!$u(t.url,e.url);case"pathParamsOrQueryParamsChange":return!$u(t.url,e.url)||!Ou(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!fh(t,e)||!Ou(t.queryParams,e.queryParams);case"paramsChange":default:return!fh(t,e)}}(l,o,o.routeConfig.runGuardsAndResolvers);if(c?i.canActivateChecks.push(new zh(r)):(o.data=l.data,o._resolvedData=l._resolvedData),t(e,n,o.component?a?a.children:null:s,r,i),c){i.canDeactivateChecks.push(new Fh(a&&a.outlet&&a.outlet.component||null,l))}}else l&&Gh(n,a,i),i.canActivateChecks.push(new zh(r)),t(e,null,o.component?a?a.children:null:s,r,i)}(e,o[e.value.outlet],s,r.concat([e.value]),i),delete o[e.value.outlet]}),Pu(o,(t,e)=>Gh(t,s.getContext(e),i)),i}(s,e?e._root:null,n,[s.value])}function Bh(t,e,n){const s=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(s?s.module.injector:n).get(t)}function Gh(t,e,n){const s=rh(t),r=t.value;Pu(s,(t,s)=>{Gh(t,r.component?e?e.children.getContext(s):null:e,n)}),n.canDeactivateChecks.push(new Fh(r.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,r))}const Wh=Symbol("INITIAL_VALUE");function Yh(){return Ia(t=>(function(...t){let e=null,n=null;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&a(t[0])&&(t=t[0]),G(t,n).lift(new ta(e))})(...t.map(t=>t.pipe(xa(1),Ma(Wh)))).pipe(Na((t,e)=>{let n=!1;return e.reduce((t,s,r)=>{if(t!==Wh)return t;if(s===Wh&&(n=!0),!n){if(!1===s)return s;if(r===e.length-1||Rh(s))return s}return t},t)},Wh),ra(t=>t!==Wh),F(t=>Rh(t)?t:!0===t),xa(1)))}function qh(t,e){return null!==t&&e&&e(new pu(t)),Zl(!0)}function Zh(t,e){return null!==t&&e&&e(new hu(t)),Zl(!0)}function Qh(t,e,n){const s=e.routeConfig?e.routeConfig.canActivate:null;return s&&0!==s.length?Zl(s.map(s=>na(()=>{const r=Bh(s,e,n);let i;if(function(t){return t&&Ih(t.canActivate)}(r))i=Au(r.canActivate(e,t));else{if(!Ih(r))throw new Error("Invalid CanActivate guard");i=Au(r(e,t))}return i.pipe(ka())}))).pipe(Yh()):Zl(!0)}function Xh(t,e,n){const s=e[e.length-1],r=e.slice(0,e.length-1).reverse().map(t=>(function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null})(t)).filter(t=>null!==t).map(e=>na(()=>Zl(e.guards.map(r=>{const i=Bh(r,e.node,n);let o;if(function(t){return t&&Ih(t.canActivateChild)}(i))o=Au(i.canActivateChild(s,t));else{if(!Ih(i))throw new Error("Invalid CanActivateChild guard");o=Au(i(s,t))}return o.pipe(ka())})).pipe(Yh())));return Zl(r).pipe(Yh())}class Kh{}class Jh{constructor(t,e,n,s,r,i){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=s,this.paramsInheritanceStrategy=r,this.relativeLinkResolution=i}recognize(){try{const e=nd(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,n=this.processSegmentGroup(this.config,e,_u),s=new ch([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},_u,this.rootComponentType,null,this.urlTree.root,-1,{}),r=new sh(s,n),i=new uh(this.url,r);return this.inheritParamsAndData(i._root),Zl(i)}catch(t){return new b(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=ah(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Lu(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};n.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),s=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${s}'.`)}e[t.value.outlet]=t.value})}(),n.sort((t,e)=>t.value.outlet===_u?-1:e.value.outlet===_u?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,s){for(const i of t)try{return this.processSegmentAgainstRoute(i,e,n,s)}catch(r){if(!(r instanceof Kh))throw r}if(this.noLeftoversInUrl(e,n,s))return[];throw new Kh}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,s){if(t.redirectTo)throw new Kh;if((t.outlet||_u)!==s)throw new Kh;let r,i=[],o=[];if("**"===t.path){const i=n.length>0?Ru(n).parameters:{};r=new ch(n,i,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,id(t),s,t.component,t,td(e),ed(e)+n.length,od(t))}else{const l=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new Kh;return{consumedSegments:[],lastChild:0,parameters:{}}}const s=(e.matcher||Cu)(n,t,e);if(!s)throw new Kh;const r={};Pu(s.posParams,(t,e)=>{r[e]=t.path});const i=s.consumed.length>0?Object.assign({},r,s.consumed[s.consumed.length-1].parameters):r;return{consumedSegments:s.consumed,lastChild:s.consumed.length,parameters:i}}(e,t,n);i=l.consumedSegments,o=n.slice(l.lastChild),r=new ch(i,l.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,id(t),s,t.component,t,td(e),ed(e)+i.length,od(t))}const l=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:a,slicedSegments:c}=nd(e,i,o,l,this.relativeLinkResolution);if(0===c.length&&a.hasChildren()){const t=this.processChildren(l,a);return[new sh(r,t)]}if(0===l.length&&0===c.length)return[new sh(r,[])];const u=this.processSegment(l,a,c,_u);return[new sh(r,u)]}}function td(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function ed(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function nd(t,e,n,s,r){if(n.length>0&&function(t,e,n){return s.some(n=>sd(t,e,n)&&rd(n)!==_u)}(t,n)){const r=new Du(e,function(t,e,n,s){const r={};r[_u]=s,s._sourceSegment=t,s._segmentIndexShift=e.length;for(const i of n)if(""===i.path&&rd(i)!==_u){const n=new Du([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,r[rd(i)]=n}return r}(t,e,s,new Du(n,t.children)));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return s.some(n=>sd(t,e,n))}(t,n)){const i=new Du(t.segments,function(t,e,n,s,r,i){const o={};for(const l of s)if(sd(t,n,l)&&!r[rd(l)]){const n=new Du([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===i?t.segments.length:e.length,o[rd(l)]=n}return Object.assign({},r,o)}(t,e,n,s,t.children,r));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}const i=new Du(t.segments,t.children);return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}function sd(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function rd(t){return t.outlet||_u}function id(t){return t.data||{}}function od(t){return t.resolve||{}}function ld(t,e,n,s){const r=Bh(t,e,s);return Au(r.resolve?r.resolve(e,n):r(e,n))}function ad(t){return function(e){return e.pipe(Ia(e=>{const n=t(e);return n?W(n).pipe(F(()=>e)):W([e])}))}}class cd{}class ud{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const hd=new Rt("ROUTES");class dd{constructor(t,e,n,s){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=s}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(F(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const s=n.create(t);return new xu(Iu(s.injector.get(hd)).map(Tu),s)}))}loadModuleFactory(t){return"string"==typeof t?W(this.loader.load(t)):Au(t()).pipe(Y(t=>t instanceof en?Zl(t):W(this.compiler.compileModuleAsync(t))))}}class pd{}class fd{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function gd(t){throw t}function md(t,e,n){return e.parse("/")}function _d(t,e){return Zl(null)}class vd{constructor(t,e,n,s,r,i,o,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=s,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new T,this.errorHandler=gd,this.malformedUriErrorHandler=md,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:_d,afterPreactivation:_d},this.urlHandlingStrategy=new fd,this.routeReuseStrategy=new ud,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=r.get(tn),this.console=r.get(Dr);const a=r.get(Xr);this.isNgZoneEnabled=a instanceof Xr,this.resetConfig(l),this.currentUrlTree=new Nu(new Du([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new dd(i,o,t=>this.triggerEvent(new cu(t)),t=>this.triggerEvent(new uu(t))),this.routerState=oh(this.currentUrlTree,this.rootComponentType),this.transitions=new Ql({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(ra(t=>0!==t.id),F(t=>Object.assign({},t,{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Ia(t=>{let n=!1,s=!1;return Zl(t).pipe(da(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign({},this.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Ia(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Zl(t).pipe(Ia(t=>{const n=this.transitions.getValue();return e.next(new tu(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?Wl:[t]}),Ia(t=>Promise.resolve(t)),function(t,e,n,s){return function(r){return r.pipe(Ia(r=>(function(t,e,n,s,i){return new Vh(t,e,n,r.extractedUrl,i).apply()})(t,e,n,0,s).pipe(F(t=>Object.assign({},r,{urlAfterRedirects:t})))))}}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),da(t=>{this.currentNavigation=Object.assign({},this.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,e,n,s,r){return function(i){return i.pipe(Y(i=>(function(t,e,n,s,r="emptyOnly",i="legacy"){return new Jh(t,e,n,s,r,i).recognize()})(t,e,i.urlAfterRedirects,n(i.urlAfterRedirects),s,r).pipe(F(t=>Object.assign({},i,{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),da(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),da(t=>{const n=new ru(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:s,source:r,restoredState:i,extras:o}=t,l=new tu(n,this.serializeUrl(s),r,i);e.next(l);const a=oh(s,this.rootComponentType).snapshot;return Zl(Object.assign({},t,{targetSnapshot:a,urlAfterRedirects:s,extras:Object.assign({},o,{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),Wl}),ad(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!o})}),da(t=>{const e=new iu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),F(t=>Object.assign({},t,{guards:Hh(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,currentSnapshot:r,guards:{canActivateChecks:i,canDeactivateChecks:o}}=n;return 0===o.length&&0===i.length?Zl(Object.assign({},n,{guardsResult:!0})):function(t,e,n,s){return W(o).pipe(Y(t=>(function(t,e,n,s,r){const i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?Zl(i.map(i=>{const o=Bh(i,e,r);let l;if(function(t){return t&&Ih(t.canDeactivate)}(o))l=Au(o.canDeactivate(t,e,n,s));else{if(!Ih(o))throw new Error("Invalid CanDeactivate guard");l=Au(o(t,e,n,s))}return l.pipe(ka())})).pipe(Yh()):Zl(!0)})(t.component,t.route,n,e,s)),ka(t=>!0!==t,!0))}(0,s,r,t).pipe(Y(n=>n&&function(t){return"boolean"==typeof n}()?function(t,e,n,s){return W(i).pipe($a(e=>W([Zh(e.route.parent,s),qh(e.route,s),Xh(t,e.path,n),Qh(t,e.route,n)]).pipe(sa(),ka(t=>!0!==t,!0))),ka(t=>!0!==t,!0))}(s,0,t,e):Zl(n)),F(t=>Object.assign({},n,{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),da(t=>{if(Rh(t.guardsResult)){const e=bu(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),da(t=>{const e=new ou(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),ra(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new nu(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),ad(t=>{if(t.guards.canActivateChecks.length)return Zl(t).pipe(da(t=>{const e=new lu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,guards:{canActivateChecks:r}}=n;return r.length?W(r).pipe($a(n=>(function(t,e,n,r){return function(t,e,n,s){const r=Object.keys(t);if(0===r.length)return Zl({});if(1===r.length){const i=r[0];return ld(t[i],e,n,s).pipe(F(t=>({[i]:t})))}const i={};return W(r).pipe(Y(r=>ld(t[r],e,n,s).pipe(F(t=>(i[r]=t,t))))).pipe(ya(),F(()=>i))}(t._resolve,t,s,r).pipe(F(e=>(t._resolvedData=e,t.data=Object.assign({},t.data,ah(t,n).resolve),null)))})(n.route,0,t,e)),function(t,e){return arguments.length>=2?function(e){return y(Na(t,void 0),ca(1),ma(void 0))(e)}:function(e){return y(Na((e,n,s)=>t(e)),ca(1))(e)}}((t,e)=>t),F(t=>n)):Zl(n)}))}}(this.paramsInheritanceStrategy,this.ngModule.injector),da(t=>{const e=new au(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}))}),ad(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!o})}),F(t=>{const e=function(t,e,n){const s=function t(e,n,s){if(s&&e.shouldReuseRoute(n.value,s.value.snapshot)){const r=s.value;r._futureSnapshot=n.value;const i=function(e,n,s){return n.children.map(n=>{for(const r of s.children)if(e.shouldReuseRoute(r.value.snapshot,n.value))return t(e,n,r);return t(e,n)})}(e,n,s);return new sh(r,i)}{const s=e.retrieve(n.value);if(s){const t=s.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let s=0;st(e,n));return new sh(s,i)}}var r}(t,e._root,n?n._root:void 0);return new ih(s,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign({},t,{targetRouterState:e})}),da(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),kh(this.rootContexts,this.routeReuseStrategy,t=>this.triggerEvent(t)),da({next(){n=!0},complete(){n=!0}}),function(t){return e=>e.lift(new La(t))}(()=>{if(!n&&!s){this.resetUrlToCurrentUrlTree();const n=new nu(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null}),wa(n=>{if(s=!0,function(t){return n&&n[wu]}()){const s=Rh(n.url);s||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const r=new nu(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(r),t.resolve(!1),s&&this.navigateByUrl(n.url)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const s=new su(t.id,this.serializeUrl(t.extractedUrl),n);e.next(s);try{t.resolve(this.errorHandler(n))}catch(r){t.reject(r)}}return Wl}))}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign({},this.getTransition(),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",s=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,s,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){Su(t),this.config=t.map(Tu),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:s,fragment:r,preserveQueryParams:i,queryParamsHandling:o,preserveFragment:l}=e;le()&&i&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const a=n||this.routerState.root,c=l?this.currentUrlTree.fragment:r;let u=null;if(o)switch(o){case"merge":u=Object.assign({},this.currentUrlTree.queryParams,s);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=s||null}else u=i?this.currentUrlTree.queryParams:s||null;return null!==u&&(u=this.removeEmptyProps(u)),function(t,e,n,s,r){if(0===n.length)return mh(e.root,e.root,e,s,r);const i=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new _h(!0,0,t);let e=0,n=!1;const s=t.reduce((t,s,r)=>{if("object"==typeof s&&null!=s){if(s.outlets){const e={};return Pu(s.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(s.segmentPath)return[...t,s.segmentPath]}return"string"!=typeof s?[...t,s]:0===r?(s.split("/").forEach((s,r)=>{0==r&&"."===s||(0==r&&""===s?n=!0:".."===s?e++:""!=s&&t.push(s))}),t):[...t,s]},[]);return new _h(n,e,s)}(n);if(i.toRoot())return mh(e.root,new Du([],{}),e,s,r);const o=function(t,n,s){if(t.isAbsolute)return new vh(e.root,!0,0);if(-1===s.snapshot._lastPathIndex)return new vh(s.snapshot._urlSegment,!0,0);const r=gh(t.commands[0])?0:1;return function(e,n,i){let o=s.snapshot._urlSegment,l=s.snapshot._lastPathIndex+r,a=t.numberOfDoubleDots;for(;a>l;){if(a-=l,!(o=o.parent))throw new Error("Invalid number of '../'");l=o.segments.length}return new vh(o,!1,l-a)}()}(i,0,t),l=o.processChildren?bh(o.segmentGroup,o.index,i.commands):wh(o.segmentGroup,o.index,i.commands);return mh(o.segmentGroup,l,e,s,r)}(a,this.currentUrlTree,t,u,c)}navigateByUrl(t,e={skipLocationChange:!1}){le()&&this.isNgZoneEnabled&&!Xr.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=Rh(t)?t:this.parseUrl(t),s=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(s,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const s=t[n];return null!=s&&(e[n]=s),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new eu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,s){const r=this.getTransition();if(r&&"imperative"!==e&&"imperative"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"hashchange"==e&&"popstate"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"popstate"==e&&"hashchange"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);let i=null,o=null;const l=new Promise((t,e)=>{i=t,o=e}),a=++this.navigationId;return this.setTransition({id:a,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:s,resolve:i,reject:o,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,s){const r=this.urlSerializer.serialize(t);s=s||{},this.location.isCurrentPathEqualTo(r)||e?this.location.replaceState(r,"",Object.assign({},s,{navigationId:n})):this.location.go(r,"",Object.assign({},s,{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}class yd{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new wd,this.attachRef=null}}class wd{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new yd,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}const bd=(()=>(class{constructor(t,e,n,s,r){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=r,this.activated=null,this._activatedRoute=null,this.activateEvents=new Sr,this.deactivateEvents=new Sr,this.name=s||_u,t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),s=this.parentContexts.getOrCreateContext(this.name).children,r=new Cd(t,s,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,r),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}))();class Cd{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===lh?this.route:t===wd?this.childContexts:this.parent.get(t,e)}}class xd{}class Sd{preload(t,e){return e().pipe(wa(()=>Zl(null)))}}class Ed{preload(t,e){return Zl(null)}}const kd=(()=>(class{constructor(t,e,n,s,r){this.router=t,this.injector=s,this.preloadingStrategy=r,this.loader=new dd(e,n,e=>t.triggerEvent(new cu(e)),e=>t.triggerEvent(new uu(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(ra(t=>t instanceof eu),$a(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(tn);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const s of e)if(s.loadChildren&&!s.canLoad&&s._loadedConfig){const t=s._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else s.loadChildren&&!s.canLoad?n.push(this.preloadConfig(t,s)):s.children&&n.push(this.processRoutes(t,s.children));return W(n).pipe(X(),F(t=>void 0))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Y(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}))();class Td{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof tu?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof eu&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof gu&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new gu(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}const Od=new Rt("ROUTER_CONFIGURATION"),Id=new Rt("ROUTER_FORROOT_GUARD"),Rd=[ml,{provide:ju,useClass:Uu},{provide:vd,useFactory:$d,deps:[mi,ju,wd,ml,Dt,kr,zr,hd,Od,[pd,new ht],[cd,new ht]]},wd,{provide:lh,useFactory:Ld,deps:[vd]},{provide:kr,useClass:wi},kd,Ed,Sd,{provide:Od,useValue:{enableTracing:!1}}];function Pd(){return new hi("Router",vd)}const Ad=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[Rd,Vd(e),{provide:Id,useFactory:Dd,deps:[[vd,new ht,new pt]]},{provide:Od,useValue:n||{}},{provide:fl,useFactory:Nd,deps:[dl,[new ut(gl),new ht],Od]},{provide:Td,useFactory:Md,deps:[vd,Bl,Od]},{provide:xd,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:Ed},{provide:hi,multi:!0,useFactory:Pd},[jd,{provide:Tr,multi:!0,useFactory:Ud,deps:[jd]},{provide:Fd,useFactory:zd,deps:[jd]},{provide:Nr,multi:!0,useExisting:Fd}]]}}static forChild(e){return{ngModule:t,providers:[Vd(e)]}}}return t})();function Md(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Td(t,e,n)}function Nd(t,e,n={}){return n.useHash?new vl(t,e):new yl(t,e)}function Dd(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function Vd(t){return[{provide:Kt,multi:!0,useValue:t},{provide:hd,multi:!0,useValue:t}]}function $d(t,e,n,s,r,i,o,l,a={},c,u){const h=new vd(null,e,n,s,r,i,o,Iu(l));if(c&&(h.urlHandlingStrategy=c),u&&(h.routeReuseStrategy=u),a.errorHandler&&(h.errorHandler=a.errorHandler),a.malformedUriErrorHandler&&(h.malformedUriErrorHandler=a.malformedUriErrorHandler),a.enableTracing){const t=za();h.events.subscribe(e=>{t.logGroup(`Router Event: ${e.constructor.name}`),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return a.onSameUrlNavigation&&(h.onSameUrlNavigation=a.onSameUrlNavigation),a.paramsInheritanceStrategy&&(h.paramsInheritanceStrategy=a.paramsInheritanceStrategy),a.urlUpdateStrategy&&(h.urlUpdateStrategy=a.urlUpdateStrategy),a.relativeLinkResolution&&(h.relativeLinkResolution=a.relativeLinkResolution),h}function Ld(t){return t.routerState.root}const jd=(()=>(class{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new T}appInitializer(){return this.injector.get(pl,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(vd),s=this.injector.get(Od);if(this.isLegacyDisabled(s)||this.isLegacyEnabled(s))t(!0);else if("disabled"===s.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==s.initialNavigation)throw new Error(`Invalid initialNavigation options: '${s.initialNavigation}'`);n.hooks.afterPreactivation=(()=>this.initNavigation?Zl(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone)),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(Od),n=this.injector.get(kd),s=this.injector.get(Td),r=this.injector.get(vd),i=this.injector.get(mi);t===i.components[0]&&(this.isLegacyEnabled(e)?r.initialNavigation():this.isLegacyDisabled(e)&&r.setUpLocationChangeListener(),n.setUpPreloading(),s.init(),r.resetRootComponentType(i.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}))();function Ud(t){return t.appInitializer.bind(t)}function zd(t){return t.bootstrapListener.bind(t)}const Fd=new Rt("Router Initializer");var Hd=Qn({encapsulation:2,styles:[],data:{}});function Bd(t){return Ki(0,[(t()(),Vi(0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),lr(1,212992,null,0,bd,[wd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,1,0)},null)}function Gd(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"ng-component",[],null,null,null,Bd,Hd)),lr(1,49152,null,0,mu,[],null,null)],null,null)}var Wd=$s("ng-component",mu,Gd,{},{},[]);const Yd="Dropdowns",qd=(()=>(class{constructor(){this.klass="default",this.items=[],this.placeholder="Select item",this.searchChange=new Sr,this.font_size=16,this.width=128,this.filtered_items=[]}ngOnChanges(t){t.items&&(this.list=this.items.map(t=>t instanceof Object?t:{id:t,name:t}),this.longest=this.list.reduce((t,e)=>e.name.length>t.name.length?e:t,{id:"",name:""}),this.filter())}ngAfterViewInit(){this.resize()}trackByFn(t,e){return e?"string"==typeof e?e:e.id:t}resize(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)}filter(){if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(t=>("string"==typeof t?t:t.name).toLowerCase().indexOf(this.search.toLowerCase())>=0)),this.options&&this.options.hide_active&&this.selected)){const t="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(e=>("string"==typeof e?e:e.id).indexOf(t)<0)}}toggleShow(){this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(()=>{this.input&&this.input.nativeElement.focus()},100)}updateScroll(){if(!this.viewport||!this.scroll_el)return setTimeout(()=>this.updateScroll(),50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;const t="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(e=>("string"==typeof e?e:e.id)===t))}select(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)}change(t){const e="string"==typeof this.selected?this.selected:this.selected.id,n=this.filtered_items.findIndex(t=>("string"==typeof t?t:t.id)==e)+t;n>=0&&nthis.updateScroll(),100))}close(){this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null),this.close_timer=setTimeout(()=>this.show=!1,100)}cancelClose(){setTimeout(()=>{this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null)},50)}writeValue(t){this.selected=t,this.show=!1}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Zd=cl,Qd=(()=>{class t{constructor(){if(this.build=Zd(),!t.init){const e=Zd();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Yd} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Yd} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();function Xd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function Kd(t){return Array.isArray(t)?t:[t]}function Jd(t){return null==t?"":"string"==typeof t?t:`${t}px`}function tp(t,e,n,r){return s(n)&&(r=n,n=void 0),r?tp(t,e,n).pipe(F(t=>a(t)?r(...t):r(t))):new b(s=>{!function t(e,n,s,r,i){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,s,i),o=(()=>t.removeEventListener(n,s,i))}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,s),o=(()=>t.off(n,s))}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,s),o=(()=>t.removeListener(n,s))}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,l=e.length;o1?Array.prototype.slice.call(arguments):t)},s,n)})}class ep extends d{constructor(t,e){super()}schedule(t,e=0){return this}}class np extends ep{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,s=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(s,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(s,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,s=void 0;try{this.work(t)}catch(r){n=!0,s=!!r&&r||new Error(r)}if(n)return this.unsubscribe(),s}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,s=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==s&&n.splice(s,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}class sp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}const rp=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=(()=>Date.now()),t})();class ip extends rp{constructor(t,e=rp.now){super(t,()=>ip.delegate&&ip.delegate!==this?ip.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return ip.delegate&&ip.delegate!==this?ip.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let 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}}}class op extends ip{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s(function(t){const e=cp[t];e&&e()})(e)),e},clearImmediate(t){delete cp[t]}};class hp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=up.setImmediate(t.flush.bind(t,null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(up.clearImmediate(e),t.scheduled=void 0)}}class dp extends ip{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s=0}function wp(t){const{index:e,period:n,subscriber:s}=t;if(s.next(e),!s.closed){if(-1===n)return s.complete();t.index=e+1,this.schedule(t,n)}}function bp(t,e=mp){return n=(()=>(function(t=0,e,n){let s=-1;return yp(e)?s=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=mp),new b(e=>{const r=yp(t)?t:+t-n.now();return n.schedule(wp,r,{index:0,period:s,subscriber:e})})})(t,e)),function(t){return t.lift(new _p(n))};var n}function Cp(t){return e=>e.lift(new xp(t))}class xp{constructor(t){this.notifier=t}call(t,e){const n=new Sp(t),s=U(n,this.notifier);return s&&!n.seenValue?(n.add(s),e.subscribe(n)):n}}class Sp extends z{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,s,r){this.seenValue=!0,this.complete()}notifyComplete(){}}class Ep{call(t,e){return e.subscribe(new kp(t))}}class kp extends g{constructor(t){super(t),this.hasPrev=!1}_next(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t}}class Tp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}class Op extends ip{}const Ip=new Op(Tp);function Rp(t,e){return new b(e?n=>e.schedule(Pp,0,{error:t,subscriber:n}):e=>e.error(t))}function Pp({error:t,subscriber:e}){e.error(t)}var Ap;!function(t){t.NEXT="N",t.ERROR="E",t.COMPLETE="C"}(Ap||(Ap={}));const Mp=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(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()}}do(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()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Zl(this.value);case"E":return Rp(this.error);case"C":return Yl()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})();class Np extends g{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(Np.dispatch,this.delay,new Dp(t,this.destination)))}_next(t){this.scheduleMessage(Mp.createNext(t))}_error(t){this.scheduleMessage(Mp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(Mp.createComplete()),this.unsubscribe()}}class Dp{constructor(t,e){this.notification=t,this.destination=e}}class Vp extends T{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift(),super.next(t)}nextTimeWindow(t){this._events.push(new $p(this._getNow(),t)),this._trimBufferThenGetEvents(),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),s=this.scheduler,r=n.length;let i;if(this.closed)throw new S;if(this.isStopped||this.hasError?i=d.EMPTY:(this.observers.push(t),i=new E(this,t)),s&&t.add(t=new Np(t,s)),e)for(let o=0;oe&&(i=Math.max(i,r-e)),i>0&&s.splice(0,i),s}}class $p{constructor(t,e){this.time=t,this.value=e}}let Lp;try{Lp="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Dv){Lp=!1}const jp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Hl(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&&!Lp)&&"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.ngInjectableDef=mt({factory:function(){return new t(Ot(Mr,8))},token:t,providedIn:"root"}),t})(),Up=(()=>(class{}))(),zp=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();let Fp;function Hp(){if("object"!=typeof document||!document)return zp.NORMAL;if(!Fp){const 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";const n=document.createElement("div"),s=n.style;s.width="2px",s.height="1px",t.appendChild(n),document.body.appendChild(t),Fp=zp.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Fp=0===t.scrollLeft?zp.NEGATED:zp.INVERTED),t.parentNode.removeChild(t)}return Fp}class Bp{}class Gp extends Bp{constructor(t){super(),this._data=t}connect(){return this._data instanceof b?this._data:Zl(this._data)}disconnect(){}}const Wp=new Rt("VIRTUAL_SCROLL_STRATEGY");class Yp{constructor(t,e,n){this._scrolledIndexChange=new T,this.scrolledIndexChange=this._scrolledIndexChange.pipe(t=>t.lift(new fp(void 0,void 0))),this._viewport=null,this._itemSize=t,this._minBufferPx=e,this._maxBufferPx=n}attach(t){this._viewport=t,this._updateTotalContentSize(),this._updateRenderedRange()}detach(){this._scrolledIndexChange.complete(),this._viewport=null}updateItemAndBufferSize(t,e,n){if(n0&&(s.end=Math.min(i,s.end+t),s.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(s),this._viewport.setRenderedContentOffset(this._itemSize*s.start),this._scrolledIndexChange.next(Math.floor(e))}}function qp(t){return t._scrollStrategy}const Zp=(()=>(class{constructor(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Yp(this.itemSize,this.minBufferPx,this.maxBufferPx)}get itemSize(){return this._itemSize}set itemSize(t){this._itemSize=Xd(t)}get minBufferPx(){return this._minBufferPx}set minBufferPx(t){this._minBufferPx=Xd(t)}get maxBufferPx(){return this._maxBufferPx}set maxBufferPx(t){this._maxBufferPx=Xd(t)}ngOnChanges(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}}))(),Qp=20,Xp=(()=>{class t{constructor(t,e){this._ngZone=t,this._platform=e,this._scrolled=new T,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=Qp){return this._platform.isBrowser?new b(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(bp(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Zl()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(ra(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,s)=>{this._scrollableContainsElement(s,t)&&e.push(s)}),e}_scrollableContainsElement(t,e){let n=e.nativeElement,s=t.getElementRef().nativeElement;do{if(n==s)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>tp(window.document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Xr),Ot(jp))},token:t,providedIn:"root"}),t})(),Kp=(()=>(class{constructor(t,e,n,s){this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=s,this._destroyed=new T,this._elementScrolled=new b(t=>this.ngZone.runOutsideAngular(()=>tp(this.elementRef.nativeElement,"scroll").pipe(Cp(this._destroyed)).subscribe(t)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(t){const e=this.elementRef.nativeElement,n=this.dir&&"rtl"==this.dir.value;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Hp()!=zp.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Hp()==zp.INVERTED?t.left=t.right:Hp()==zp.NEGATED&&(t.left=t.right?-t.right:t.right)):null!=t.right&&(t.left=e.scrollWidth-e.clientWidth-t.right),this._applyScrollToOptions(t)}_applyScrollToOptions(t){const e=this.elementRef.nativeElement;"object"==typeof document&&"scrollBehavior"in document.documentElement.style?e.scrollTo(t):(null!=t.top&&(e.scrollTop=t.top),null!=t.left&&(e.scrollLeft=t.left))}measureScrollOffset(t){const e=this.elementRef.nativeElement;if("top"==t)return e.scrollTop;if("bottom"==t)return e.scrollHeight-e.clientHeight-e.scrollTop;const n=this.dir&&"rtl"==this.dir.value;return"start"==t?t=n?"right":"left":"end"==t&&(t=n?"left":"right"),n&&Hp()==zp.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Hp()==zp.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft}}))(),Jp="undefined"!=typeof requestAnimationFrame?lp:pp,tf=(()=>(class extends Kp{constructor(t,e,n,s,r,i){if(super(t,i,n,r),this.elementRef=t,this._changeDetectorRef=e,this._scrollStrategy=s,this._detachedSubject=new T,this._renderedRangeSubject=new T,this.orientation="vertical",this.scrolledIndexChange=new b(t=>this._scrollStrategy.scrolledIndexChange.subscribe(e=>Promise.resolve().then(()=>this.ngZone.run(()=>t.next(e))))),this.renderedRangeStream=this._renderedRangeSubject.asObservable(),this._totalContentSizeTransform="",this._totalContentSize=0,this._renderedRange={start:0,end:0},this._dataLength=0,this._viewportSize=0,this._renderedContentOffset=0,this._renderedContentOffsetNeedsRewrite=!1,this._isChangeDetectionPending=!1,this._runAfterChangeDetection=[],!s)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.')}ngOnInit(){super.ngOnInit(),this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._measureViewportSize(),this._scrollStrategy.attach(this),this.elementScrolled().pipe(Ma(null),bp(0,Jp)).subscribe(()=>this._scrollStrategy.onContentScrolled()),this._markChangeDetectionNeeded()}))}ngOnDestroy(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),super.ngOnDestroy()}attach(t){if(this._forOf)throw Error("CdkVirtualScrollViewport is already attached.");this.ngZone.runOutsideAngular(()=>{this._forOf=t,this._forOf.dataStream.pipe(Cp(this._detachedSubject)).subscribe(t=>{const e=t.length;e!==this._dataLength&&(this._dataLength=e,this._scrollStrategy.onDataLengthChanged()),this._doChangeDetection()})})}detach(){this._forOf=null,this._detachedSubject.next()}getDataLength(){return this._dataLength}getViewportSize(){return this._viewportSize}getRenderedRange(){return this._renderedRange}setTotalContentSize(t){this._totalContentSize!==t&&(this._totalContentSize=t,this._totalContentSizeTransform=`scale${"horizontal"==this.orientation?"X":"Y"}(${this._totalContentSize})`,this._markChangeDetectionNeeded())}setRenderedRange(t){var e,n;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(()=>this._scrollStrategy.onContentRendered()))}getOffsetToRenderedContentStart(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}setRenderedContentOffset(t,e="to-start"){const n="horizontal"==this.orientation,s=n?"X":"Y";let r=`translate${s}(${Number((n&&this.dir&&"rtl"==this.dir.value?-1:1)*t)}px)`;this._renderedContentOffset=t,"to-end"===e&&(r+=` translate${s}(-100%)`,this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=r&&(this._renderedContentTransform=r,this._markChangeDetectionNeeded(()=>{this._renderedContentOffsetNeedsRewrite?(this._renderedContentOffset-=this.measureRenderedContentSize(),this._renderedContentOffsetNeedsRewrite=!1,this.setRenderedContentOffset(this._renderedContentOffset)):this._scrollStrategy.onRenderedOffsetChanged()}))}scrollToOffset(t,e="auto"){const n={behavior:e};"horizontal"===this.orientation?n.start=t:n.top=t,this.scrollTo(n)}scrollToIndex(t,e="auto"){this._scrollStrategy.scrollToIndex(t,e)}measureScrollOffset(t){return super.measureScrollOffset(t||("horizontal"===this.orientation?"start":"top"))}measureRenderedContentSize(){const t=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?t.offsetWidth:t.offsetHeight}measureRangeSize(t){return this._forOf?this._forOf.measureRangeSize(t,this.orientation):0}checkViewportSize(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}_measureViewportSize(){const t=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?t.clientWidth:t.clientHeight}_markChangeDetectionNeeded(t){t&&this._runAfterChangeDetection.push(t),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._doChangeDetection()})))}_doChangeDetection(){this._isChangeDetectionPending=!1,this.ngZone.run(()=>this._changeDetectorRef.markForCheck()),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;const t=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(const e of t)e()}}))();function ef(t,e){if(!e.getBoundingClientRect)return 0;const n=e.getBoundingClientRect();return"horizontal"==t?n.width:n.height}const nf=(()=>(class{constructor(t,e,n,s,r){this._viewContainerRef=t,this._template=e,this._differs=n,this._viewport=s,this.viewChange=new T,this._dataSourceChanges=new T,this.cdkVirtualForTemplateCacheSize=20,this.dataStream=this._dataSourceChanges.pipe(Ma(null),t=>t.lift(new Ep),Ia(([t,e])=>this._changeDataSource(t,e)),function(t,e,n){let s;return s={bufferSize:1,windowTime:void 0,refCount:!1,scheduler:void 0},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:s}){let r,i,o=0,l=!1,a=!1;return function(c){o++,r&&!l||(l=!1,r=new Vp(t,e,s),i=c.subscribe({next(t){r.next(t)},error(t){l=!0,r.error(t)},complete(){a=!0,r.complete()}}));const u=r.subscribe(this);this.add(()=>{o--,u.unsubscribe(),i&&!a&&n&&0===o&&(i.unsubscribe(),i=void 0,r=void 0)})}}(s))}()),this._differ=null,this._templateCache=[],this._needsUpdate=!1,this._destroyed=new T,this.dataStream.subscribe(t=>{this._data=t,this._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe(Cp(this._destroyed)).subscribe(t=>{this._renderedRange=t,r.run(()=>this.viewChange.next(this._renderedRange)),this._onRenderedDataChange()}),this._viewport.attach(this)}get cdkVirtualForOf(){return this._cdkVirtualForOf}set cdkVirtualForOf(t){this._cdkVirtualForOf=t;const e=function(t){return t&&"function"==typeof t.connect}(t)?t:new Gp(t instanceof b?t:Array.prototype.slice.call(t||[]));this._dataSourceChanges.next(e)}get cdkVirtualForTrackBy(){return this._cdkVirtualForTrackBy}set cdkVirtualForTrackBy(t){this._needsUpdate=!0,this._cdkVirtualForTrackBy=t?(e,n)=>t(e+(this._renderedRange?this._renderedRange.start:0),n):void 0}set cdkVirtualForTemplate(t){t&&(this._needsUpdate=!0,this._template=t)}measureRangeSize(t,e){if(t.start>=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");const n=t.start-this._renderedRange.start;let s=0,r=t.end-t.start;for(;r--;){const t=this._viewContainerRef.get(r+n);let i=t?t.rootNodes.length:0;for(;i--;)s+=ef(e,t.rootNodes[i])}return s}ngDoCheck(){if(this._differ&&this._needsUpdate){const t=this._differ.diff(this._renderedItems);t?this._applyChanges(t):this._updateContext(),this._needsUpdate=!1}}ngOnDestroy(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(let t of this._templateCache)t.destroy()}_onRenderedDataChange(){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)}_changeDataSource(t,e){return t&&t.disconnect(this),this._needsUpdate=!0,e?e.connect(this):Zl()}_updateContext(){const t=this._data.length;let e=this._viewContainerRef.length;for(;e--;){let n=this._viewContainerRef.get(e);n.context.index=this._renderedRange.start+e,n.context.count=t,this._updateComputedContextProperties(n.context),n.detectChanges()}}_applyChanges(t){t.forEachOperation((t,e,n)=>{if(null==t.previousIndex)this._insertViewForNewItem(n).context.$implicit=t.item;else if(null==n)this._cacheView(this._detachView(e));else{const s=this._viewContainerRef.get(e);this._viewContainerRef.move(s,n),s.context.$implicit=t.item}}),t.forEachIdentityChange(t=>{this._viewContainerRef.get(t.currentIndex).context.$implicit=t.item});const e=this._data.length;let n=this._viewContainerRef.length;for(;n--;){const t=this._viewContainerRef.get(n);t.context.index=this._renderedRange.start+n,t.context.count=e,this._updateComputedContextProperties(t.context)}}_cacheView(t){if(this._templateCache.length(class{}))(),rf=20,of=(()=>{class t{constructor(t,e){this._platform=t,e.runOutsideAngular(()=>{this._change=t.isBrowser?K(tp(window,"resize"),tp(window,"orientationchange")):Zl(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=document.documentElement,e=t.getBoundingClientRect();return{top:-e.top||document.body.scrollTop||window.scrollY||t.scrollTop||0,left:-e.left||document.body.scrollLeft||window.scrollX||t.scrollLeft||0}}change(t=rf){return t>0?this._change.pipe(bp(t)):this._change}_updateViewportSize(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(jp),Ot(Xr))},token:t,providedIn:"root"}),t})();function lf(){throw Error("Host already has a portal attached")}class af{attach(t){return null==t&&function(){throw Error("Attempting to attach a portal to a null PortalOutlet")}(),t.hasAttached()&&lf(),this._attachedHost=t,t.attach(this)}detach(){let 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())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class cf extends af{constructor(t,e,n,s){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=s}}class uf extends af{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class hf{constructor(){this._isDisposed=!1}hasAttached(){return!!this._attachedPortal}attach(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&lf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof cf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof uf?(this._attachedPortal=t,this.attachTemplatePortal(t)):void function(){throw Error("Attempting to attach an unknown Portal type. BasePortalOutlet accepts either a ComponentPortal or a TemplatePortal.")}()}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class df extends hf{constructor(t,e,n,s){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=s}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.detectChanges(),n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}const pf=(()=>(class{}))();class ff{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=Jd(-this._previousScrollPosition.left),t.style.top=Jd(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,s=e.scrollBehavior||"",r=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=s,n.scrollBehavior=r}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}function gf(){return Error("Scroll strategy has already been attached.")}class mf{constructor(t,e,n,s){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=s,this._scrollSubscription=null,this._detach=(()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())})}attach(t){if(this._overlayRef)throw gf();this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class _f{enable(){}disable(){}attach(){}}function vf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function yf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class wf{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=s,this._scrollSubscription=null}attach(t){if(this._overlayRef)throw gf();this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();vf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}const bf=(()=>{class t{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=(()=>new _f),this.close=(t=>new mf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t)),this.block=(()=>new ff(this._viewportRuler,this._document)),this.reposition=(t=>new wf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t)),this._document=s}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Xp),Ot(of),Ot(Xr),Ot(zl))},token:t,providedIn:"root"}),t})();class Cf{constructor(t){this.scrollStrategy=new _f,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(e=>{void 0!==t[e]&&(this[e]=t[e])})}}class xf{constructor(t,e,n,s,r){this.offsetX=n,this.offsetY=s,this.panelClass=r,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}const Sf=(()=>(class{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}))();function Ef(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "top", "bottom" or "center".')}function kf(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "start", "end" or "center".')}const Tf=(()=>{class t{constructor(t){this._attachedOverlays=[],this._keydownListener=(t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEventSubscriptions>0){e[n]._keydownEvents.next(t);break}}),this._document=t}ngOnDestroy(){this._detach()}add(t){this.remove(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this._detach()}_detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zl))},token:t,providedIn:"root"}),t})(),Of=(()=>{class t{constructor(t){this._document=t}ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zl))},token:t,providedIn:"root"}),t})();class If{constructor(t,e,n,s,r,i,o,l){this._portalOutlet=t,this._host=e,this._pane=n,this._config=s,this._ngZone=r,this._keyboardDispatcher=i,this._document=o,this._location=l,this._backdropElement=null,this._backdropClick=new T,this._attachments=new T,this._detachments=new T,this._locationChanges=d.EMPTY,this._keydownEventsObservable=new b(t=>{const e=this._keydownEvents.subscribe(t);return this._keydownEventSubscriptions++,()=>{e.unsubscribe(),this._keydownEventSubscriptions--}}),this._keydownEvents=new T,this._keydownEventSubscriptions=0,s.scrollStrategy&&(this._scrollStrategy=s.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=s.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return this._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(xa(1)).subscribe(()=>{this.hasAttached()&&this.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(()=>this.dispose())),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),t}dispose(){const 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()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick.asObservable()}attachments(){return this._attachments.asObservable()}detachments(){return this._detachments.asObservable()}keydownEvents(){return this._keydownEventsObservable}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign({},this._config,t),this._updateElementSize()}setDirection(t){this._config=Object.assign({},this._config,{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){const t=this._pane.style;t.width=Jd(this._config.width),t.height=Jd(this._config.height),t.minWidth=Jd(this._config.minWidth),t.minHeight=Jd(this._config.minHeight),t.maxWidth=Jd(this._config.maxWidth),t.maxHeight=Jd(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"auto":"none"}_attachBackdrop(){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",t=>this._backdropClick.next(t)),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add("cdk-overlay-backdrop-showing")})}):this._backdropElement.classList.add("cdk-overlay-backdrop-showing")}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t,e=this._backdropElement;if(!e)return;let n=()=>{e&&e.parentNode&&e.parentNode.removeChild(e),this._backdropElement==e&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(e,this._config.backdropClass,!1),clearTimeout(t)};e.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{e.addEventListener("transitionend",n)}),e.style.pointerEvents="none",t=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const s=t.classList;Kd(e).forEach(t=>{n?s.add(t):s.remove(t)})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.asObservable().pipe(Cp(K(this._attachments,this._detachments))).subscribe(()=>{this._pane&&this._host&&0!==this._pane.children.length||(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const Rf="cdk-overlay-connected-position-bounding-box";class Pf{constructor(t,e,n,s,r){this._viewportRuler=e,this._document=n,this._platform=s,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 T,this._resizeSubscription=d.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges.asObservable(),this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){if(this._overlayRef&&t!==this._overlayRef)throw Error("This position strategy is already attached to an overlay");this._validatePositions(),t.hostElement.classList.add(Rf),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(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,s=[];let r;for(let i of this._preferredPositions){let o=this._getOriginPoint(t,i),l=this._getOverlayPoint(o,e,i),a=this._getOverlayFit(l,e,n,i);if(a.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(i,o);this._canFitWithFlexibleDimensions(a,l,n)?s.push({position:i,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,i)}):(!r||r.overlayFit.visibleAreae&&(e=s,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(r.position,r.originPoint);this._applyPosition(r.position,r.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&Af(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Rf),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,s;if("center"==e.originX)n=t.left+t.width/2;else{const s=this._isRtl()?t.right:t.left,r=this._isRtl()?t.left:t.right;n="start"==e.originX?s:r}return{x:n,y:s="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom}}_getOverlayPoint(t,e,n){let s,r;return s="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+s,y:t.y+(r="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}}_getOverlayFit(t,e,n,s){let{x:r,y:i}=t,o=this._getOffset(s,"x"),l=this._getOffset(s,"y");o&&(r+=o),l&&(i+=l);let a=0-i,c=i+e.height-n.height,u=this._subtractOverflows(e.width,0-r,r+e.width-n.width),h=this._subtractOverflows(e.height,a,c),d=u*h;return{visibleArea:d,isCompletelyWithinViewport:e.width*e.height===d,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:u==e.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const s=n.bottom-e.y,r=n.right-e.x,i=this._overlayRef.getConfig().minHeight,o=this._overlayRef.getConfig().minWidth,l=t.fitsInViewportHorizontally||null!=o&&o<=r;return(t.fitsInViewportVertically||null!=i&&i<=s)&&l}}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const s=this._viewportRect,r=Math.max(t.x+e.width-s.right,0),i=Math.max(t.y+e.height-s.bottom,0),o=Math.max(s.top-n.top-t.y,0),l=Math.max(s.left-n.left-t.x,0);let a=0,c=0;return this._previousPushAmount={x:a=e.width<=s.width?l||-r:t.xs&&!this._isInitialRender&&!this._growAfterOpen&&(i=t.y-s/2)}if("end"===e.overlayX&&!s||"start"===e.overlayX&&s)c=n.right-t.x+this._viewportMargin,l=t.x-n.left;else if("start"===e.overlayX&&!s||"end"===e.overlayX&&s)a=t.x,l=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),s=this._lastBoundingBoxSize.width;a=t.x-e,(l=2*e)>s&&!this._isInitialRender&&!this._growAfterOpen&&(a=t.x-s/2)}return{top:i,left:a,bottom:o,right:c,width:l,height:r}}_setBoundingBoxStyles(t,e){const 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));const s={};if(this._hasExactPosition())s.top=s.left="0",s.bottom=s.right="",s.width=s.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,r=this._overlayRef.getConfig().maxWidth;s.height=Jd(n.height),s.top=Jd(n.top),s.bottom=Jd(n.bottom),s.width=Jd(n.width),s.left=Jd(n.left),s.right=Jd(n.right),s.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",s.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(s.maxHeight=Jd(t)),r&&(s.maxWidth=Jd(r))}this._lastBoundingBoxSize=n,Af(this._boundingBox.style,s)}_resetBoundingBoxStyles(){Af(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){Af(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={};if(this._hasExactPosition()){const s=this._viewportRuler.getViewportScrollPosition();Af(n,this._getExactOverlayY(e,t,s)),Af(n,this._getExactOverlayX(e,t,s))}else n.position="static";let s="",r=this._getOffset(e,"x"),i=this._getOffset(e,"y");r&&(s+=`translateX(${r}px) `),i&&(s+=`translateY(${i}px)`),n.transform=s.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Af(this._pane.style,n)}_getExactOverlayY(t,e,n){let s={top:null,bottom:null},r=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));let i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=i,"bottom"===t.overlayY?s.bottom=`${this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)}px`:s.top=Jd(r.y),s}_getExactOverlayX(t,e,n){let s,r={left:null,right:null},i=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(i=this._pushOverlayOnScreen(i,this._overlayRect,n)),"right"==(s=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=`${this._document.documentElement.clientWidth-(i.x+this._overlayRect.width)}px`:r.left=Jd(i.x),r}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:yf(t,n),isOriginOutsideView:vf(t,n),isOverlayClipped:yf(e,n),isOverlayOutsideView:vf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const 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}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){if(!this._preferredPositions.length)throw Error("FlexibleConnectedPositionStrategy: At least one position is required.");this._preferredPositions.forEach(t=>{kf("originX",t.originX),Ef("originY",t.originY),kf("overlayX",t.overlayX),Ef("overlayY",t.overlayY)})}_addPanelClasses(t){this._pane&&Kd(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;return t instanceof sn?t.nativeElement.getBoundingClientRect():t instanceof HTMLElement?t.getBoundingClientRect():{top:t.y,bottom:t.y,left:t.x,right:t.x,height:0,width:0}}}function Af(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}class Mf{constructor(t,e,n,s,r,i,o){this._preferredPositions=[],this._positionStrategy=new Pf(n,s,r,i,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e)}get _isRtl(){return"rtl"===this._overlayRef.getDirection()}get onPositionChange(){return this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,s){const r=new xf(t,e,n,s);return this._preferredPositions.push(r),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Nf="cdk-global-overlay-wrapper";class Df{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const 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(Nf),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig();t.position=this._cssPosition,t.marginLeft="100%"===n.width?"0":this._leftOffset,t.marginTop="100%"===n.height?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,"100%"===n.width?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="100%"===n.height?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Nf),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}const Vf=(()=>{class t{constructor(t,e,n,s){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=s}global(){return new Df}connectedTo(t,e,n){return new Mf(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new Pf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(of),Ot(zl),Ot(jp),Ot(Of))},token:t,providedIn:"root"}),t})();let $f=0;const Lf=(()=>(class{constructor(t,e,n,s,r,i,o,l,a,c){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=s,this._keyboardDispatcher=r,this._injector=i,this._ngZone=o,this._document=l,this._directionality=a,this._location=c}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),s=this._createPortalOutlet(n),r=new Cf(t);return r.direction=r.direction||this._directionality.value,new If(s,e,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id=`cdk-overlay-${$f++}`,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(mi)),new df(t,this._componentFactoryResolver,this._appRef,this._injector)}}))(),jf=new Rt("cdk-connected-overlay-scroll-strategy");function Uf(t){return()=>t.scrollStrategies.reposition()}const zf=(()=>(class{}))(),Ff="Pipes";function Hf(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}class Bf{constructor(t,e){this._parentInjector=t,this._customTokens=e}get(t,e){const n=this._customTokens.get(t);return void 0!==n?n:this._parentInjector.get(t,e)}}const Gf=(()=>(class{constructor(t){this.injector=t,this.klass="default",this._overlay=t.get(Wf)}ngOnInit(){setTimeout(()=>{this.offset=this._overlay.details.offset,this.setMethod()},1)}setMethod(){this.method="component",this.content=this._overlay.content,this.klass=this._overlay.details.klass||"default","string"==typeof this.content?this.method="text":this.content instanceof Rn&&(this.method="template",this.context=Object.assign({},this._overlay.details.data||{},{event:this._overlay.post.bind(this._overlay),close:this._overlay.close.bind(this._overlay)}),Object.defineProperty(this.context,"position",{get:()=>this._overlay.position}))}}))();class Wf{constructor(t,e,n,s,r){this.id=t,this.service=e,this.injector=n,this.overlay=s,this.details=r,this.onClose=new T,this.event=new T,this.position_subject=new Ql(null),this.subs=[],this._overlay=this.overlay.create(this.details.config),this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null))}open(t,e){this._overlay&&this._close("reopen",null),e&&(delete this._overlay,this._overlay=this.overlay.create(e),this.details.config=e,this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null)));const n=this._createInjector(this,this.injector);this.onClose=new T,this.event=new T,this._overlay.attach(new cf(Gf,null,n)),this.set(t)}set(t,e=!0){this._data=t,e&&setTimeout(()=>this.updatePosition(),100)}get data(){return this._data||this.details.data||null}get content(){return this.details.content}get ID(){return this.id}listen(t){const e=this.event.subscribe(t);return this.subs.push(e),e}post(t,e){this.event.next({type:t,data:e})}get position(){return this.position_subject?this.position_subject.getValue():null}close(t){this._close("close",t)}_close(t,e){this._overlay&&this._overlay.dispose(),"reopen"!==t&&this.onClose.next({type:t,data:e}),this.onClose.complete(),this.event.complete(),this.subs=[]}_createInjector(t,e){const n=new WeakMap([[Wf,t]]);return new Bf(e,n)}updatePosition(){const t=this.details.config;this._overlay.updatePosition();const e=t.positionStrategy;e instanceof Pf&&setTimeout(()=>{e._lastPosition&&this.position_subject.next({x:e._lastPosition.originX,y:e._lastPosition.originY})},1)}}const Yf=(()=>(class{constructor(t,e){this.overlay=t,this.renderer=e,this.events=[],this.displayed_events=[],this.subs={},this.delay=5e3,this.offset=0}ngOnInit(){this.context=this.overlay.details.data,this.subs.add=this.context.add.subscribe(t=>this.add(t)),this.subs.remove=this.context.remove.subscribe(t=>this.remove(t)),this.subs.delay=this.context.delay.subscribe(t=>this.delay=t)}ngOnDestroy(){for(const t in this.subs)this.subs[t]&&this.subs[t]instanceof d&&this.subs[t].unsubscribe()}add(t){this.events.findIndex(e=>e.id===t.id)<0&&(t.method="component","string"==typeof t.content?t.method="text":t.content instanceof Rn&&(t.method="template",t.context={close:()=>this.remove(t.id)}),this.events=this.events&&this.events.length>0?[...this.events,t]:[t],this.displayed_events=this.events.slice(-8),t.close=(()=>this.remove(t.id)),0!==t.delay&&setTimeout(()=>this.remove(t.id),t.delay||this.delay||5e3))}remove(t){this.events=this.events.filter(e=>e.id!==t),this.displayed_events=this.events.slice(-8)}action(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)}grab(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=n,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",e=>this.pull(t,e)),touchmove:this.renderer.listen("window","touchmove",e=>this.pull(t,e)),mouseup:this.renderer.listen("window","mouseup",e=>this.release(t)),touchend:this.renderer.listen("window","touchend",e=>this.release(t))}}pull(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)}release(t){t.offset>128&&this.remove(t.id);for(const e in t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0}trackByFn(t,e){return(t?t.id:null)||e}}))(),qf=(()=>{class t{constructor(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new T,this._notify.remove=new T,this._notify.delay=new T,this.registerPreset("default",new Cf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new Cf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}register(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Wf(t,this,this.injector,this.overlay,e),this._refs[t]}open(t,e,n,s){if(e.config?e.config instanceof Cf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error(`No content set for the overlay ${t}`);const r=this._refs[t],i=r.details.config instanceof Cf?r.details.config:this.preset(r.details.config);r.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),s&&this._refs[t].onClose.subscribe(s))}update(t,e){this._refs[t]&&this._refs[t].set(e)}close(t){this._refs[t]&&this._refs[t].close(null)}remove(t){this._refs[t]&&(this._refs[t]=null)}registerPreset(t,e){this._presets[t]=e}preset(t="default"){return this._presets[t]||this._presets.default}loadNotificationsOutlet(){this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(()=>{this.registerPreset("ACA_NOTIFICATIONS_OUTLET",new Cf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:this.overlay.position().global().bottom("0").right("0"),scrollStrategy:this.overlay.scrollStrategies.noop()})),this.open("ACA_NOTIFICATIONS_OUTLET",{content:Yf,data:this._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)}notify(t,e,n,s,r){let i=null;return this._notify.add&&(i=`notification-${Math.floor(999999*Math.random())}`,this._notify.add.next({id:i,content:t,action:e,on_action:n,type:s,delay:r,event:t=>n?n(t):null})),i}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Lf),Ot(Mt))},token:t,providedIn:"root"}),t})(),Zf=(()=>(class{constructor(t,e,n,s){this.el=t,this.service=e,this.overlay=n,this.renderer=s,this.id=`tooltip-${Math.floor(9999999*Math.random())}`,this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new Sr,this.event=new Sr,this.close=new Sr,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}ngOnInit(){this.updateConfig(),this.el&&this.listenForScroll()}ngOnDestroy(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()}ngOnChanges(t){if(t.config&&this.updateConfig(),t.reposition){const t=this.overlay.scrollStrategies;this.strategy=this.reposition?t.reposition():t.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(()=>this.open(),10):this.closeTooltip(t.show.previousValue))}open(){this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},t=>this.event.emit(t),t=>{this.show=!1,this.showChange.emit(!1),this.close.emit(t),this.clearListeners()})}getOverlayPosition(t){const e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)}getPositions(){const t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}}updateConfig(){this.service.registerPreset(this.id,new Cf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))}listenForScroll(){if(this.show){let t=this.el.nativeElement.parentElement;for(;t;t=t.parentElement)this.listeners.push(this.renderer.listen(t,"scroll",()=>this.update()))}}clearListeners(){for(const t of this.listeners)t();this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)}update(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))}listenForHover(){this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",t=>{this.show=!0,this.showChange.emit(this.show),this._leave_listener=this.renderer.listen(this.el.nativeElement,"mouseleave",t=>{this.show=!1,this.showChange.emit(this.show),this.closeTooltip(this.show)}),this.open()})}closeTooltip(t){!this.content&&this.el?function(t,e,n,s="debug",r){if(window.debug){const t=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Hf()?console[s](`%c[${Ff}]%c[Tooltip] %c${e}`,...t,n):console[s](`[${Ff}][Tooltip] ${e}`,n):Hf()?console[s](`%c[${Ff}]%c[Tooltip] %c${e}`,...t):console[s](`[${Ff}][Tooltip] ${e}`)}}(0,"No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()}}))(),Qf=(()=>(class{constructor(t,e){this.item=t,this.service=e}ngOnInit(){setTimeout(()=>{this.text=this.item.details.data.text,this.center=this.item.details.data.center},10),setTimeout(()=>this.service.close(this.item.ID),1e3)}}))(),Xf=cl,Kf=(()=>{class t{constructor(){if(this.build=Xf(),!t.init){const e=Xf();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){Hf()?console[n](`%c[ACA]%c[LIB] %c${Ff} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"):console[n](`[ACA][LIB] ${Ff} - ${t} | ${e}`)}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Jf=new Rt("cdk-dir-doc",{providedIn:"root",factory:function(){return It(zl)}}),tg=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Sr,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Jf,8))},token:t,providedIn:"root"}),t})(),eg=(()=>(class{}))();var ng=Qn({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function sg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function rg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function ig(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,rg)),lr(2,540672,null,0,jl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function og(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function lg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,og)),lr(2,671744,null,0,Ol,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ag(t){return Ki(0,[(t()(),Vi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Vi(1,0,null,null,7,null,null,null,null,null,null,null)),lr(2,16384,null,0,Vl,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Di(16777216,null,null,1,null,sg)),lr(4,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,ig)),lr(6,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,lg)),lr(8,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function cg(t){return Ki(0,[(t()(),Di(16777216,null,null,1,null,ag)),lr(1,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function ug(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"overlay-outlet",[],null,null,null,cg,ng)),lr(1,114688,null,0,Gf,[Dt],null,null)],function(t,e){t(e,1,0)},null)}var hg=$s("overlay-outlet",Gf,ug,{},{},[]),dg=Qn({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function pg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Zi(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function fg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"a-floating-text",[],null,null,null,pg,dg)),lr(1,114688,null,0,Qf,[Wf,qf],null,null)],function(t,e){t(e,1,0)},null)}var gg=$s("a-floating-text",Qf,fg,{},{},[]),mg=Qn({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function _g(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function vg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,_g)),lr(2,540672,null,0,jl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function yg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function wg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,yg)),lr(2,671744,null,0,Ol,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function bg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function Cg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Zi(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function xg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function Sg(t){return Ki(0,[(t()(),Vi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Vi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==r.grab(t.context.$implicit,n)&&s),"touchstart"===e&&(s=!1!==r.grab(t.context.$implicit,n)&&s),s},null,null)),(t()(),Vi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Vi(4,0,null,null,7,null,null,null,null,null,null,null)),lr(5,16384,null,0,Vl,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Di(16777216,null,null,1,null,vg)),lr(7,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,wg)),lr(9,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,bg)),lr(11,16384,null,0,Ll,[An,Rn,Vl],null,null),(t()(),Vi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var s=!0,r=t.component;return"click"===e&&(r.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),"touchend"===e&&(r.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),s},null,null)),(t()(),Di(16777216,null,null,1,null,Cg)),lr(14,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Di(16777216,null,null,1,null,xg)),lr(16,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function Eg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,Sg)),lr(2,278528,null,0,Rl,[An,Rn,xn],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function kg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"notification-outlet",[],null,null,null,Eg,mg)),lr(1,245760,null,0,Yf,[Wf,cn],null,null)],function(t,e){t(e,1,0)},null)}var Tg=$s("notification-outlet",Yf,kg,{},{},[]);class Og extends z{constructor(t,e){super(t),this.sources=e,this.completed=0,this.haveValues=0;const n=e.length;this.values=new Array(n);for(let s=0;s(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Pg=new Rt("CompositionEventMode"),Ag=(()=>(class{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=za()?za().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}))();class Mg{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class Ng extends Mg{get formDirective(){return null}get path(){return null}}function Dg(){throw new Error("unimplemented")}class Vg extends Mg{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return Dg()}get asyncValidator(){return Dg()}}const $g=(()=>(class extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}))();function Lg(t){return null==t||0===t.length}const jg=/^(?=.{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])?)*$/;class Ug{static min(t){return e=>{if(Lg(e.value)||Lg(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(Lg(e.value)||Lg(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return Lg(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return Lg(t.value)?null:jg.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(Lg(e.value))return null;const n=e.value?e.value.length:0;return n{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return Ug.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(Lg(t.value))return null;const s=t.value;return e.test(s)?null:{pattern:{requiredPattern:n,actualValue:s}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(zg);return 0==e.length?null:function(t){return Hg(function(t,n){return e.map(e=>e(t))}(t))}}static composeAsync(t){if(!t)return null;const e=t.filter(zg);return 0==e.length?null:function(t){return function t(...e){let n;return"function"==typeof e[e.length-1]&&(n=e.pop()),1===e.length&&a(e[0])&&(e=e[0]),0===e.length?Wl:n?t(e).pipe(F(t=>n(...t))):new b(t=>new Og(t,e))}(function(t,n){return e.map(e=>e(t))}(t).map(Fg)).pipe(F(Hg))}}}function zg(t){return null!=t}function Fg(t){const e=De(t)?W(t):t;if(!Ve(e))throw new Error("Expected validator to return Promise or Observable.");return e}function Hg(t){const e=t.reduce((t,e)=>null!=e?Object.assign({},t,e):t,{});return 0===Object.keys(e).length?null:e}function Bg(t){return t.validate?e=>t.validate(e):t}function Gg(t){return t.validate?e=>t.validate(e):t}const Wg=(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Yg=(()=>(class{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}))(),qg=(()=>(class{constructor(t,e,n,s){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=s,this.onChange=(()=>{}),this.onTouched=(()=>{})}ngOnInit(){this._control=this._injector.get(Vg),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=(()=>{t(this.value),this._registry.select(this)})}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}))(),Zg={formControlName:'\n

\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',formGroupName:'\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',formArrayName:'\n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });',ngModelGroup:'\n
\n
\n \n
\n
',ngModelWithFormGroup:'\n
\n \n \n
\n '};function Qg(t,e){return[...e.path,t]}function Xg(t,e){t||Jg(e,"Cannot find control with"),e.valueAccessor||Jg(e,"No value accessor for form control with"),t.validator=Ug.compose([t.validator,e.validator]),t.asyncValidator=Ug.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&Kg(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&Kg(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function Kg(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Jg(t,e){let 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 tm(t){return null!=t?Ug.compose(t.map(Bg)):null}function em(t){return null!=t?Ug.composeAsync(t.map(Gg)):null}const nm=[Rg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Wg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?`${e}`:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=(e=>{this.value=this._getOptionValue(e),t(this.value)})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}))(),(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=((t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)})}else e=((t,e)=>{t._setSelected(!1)});this._optionMap.forEach(e)}registerOnChange(t){this.onChange=(e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e{}),this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return this.status===sm}get invalid(){return this.status===rm}get pending(){return this.status==im}get disabled(){return this.status===om}get enabled(){return this.status!==om}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=lm(t)}setAsyncValidators(t){this.asyncValidator=am(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=im,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=om,this.errors=null,this._forEachChild(e=>{e.disable(Object.assign({},t,{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=sm,this._forEachChild(e=>{e.enable(Object.assign({},t,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==sm&&this.status!==im||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)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?om:sm}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=im;const e=Fg(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(".")),e instanceof Array&&0===e.length?null:e.reduce((t,e)=>t instanceof dm?t.controls.hasOwnProperty(e)?t.controls[e]:null:t instanceof pm&&t.at(e)||null,t))}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Sr,this.statusChanges=new Sr}_calculateStatus(){return this._allControlsDisabled()?om:this.errors?rm:this._anyControlsHaveStatus(im)?im:this._anyControlsHaveStatus(rm)?rm:sm}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){cm(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class hm extends um{constructor(t=null,e,n){super(lm(e),am(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=(()=>{})}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(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}}class dm extends um{constructor(t,e,n){super(lm(e),am(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof hm?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,s)=>{e=e||this.contains(s)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,s)=>{n=e(n,t,s)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class pm extends um{constructor(t,e,n){super(lm(e),am(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof hm?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}`)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const fm=(()=>Promise.resolve(null))(),gm=(()=>(class extends Ng{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Sr,this.form=new dm({},tm(t),em(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){fm.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Xg(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){fm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),function(e,n){const s=e.indexOf(t);s>-1&&e.splice(s,1)}(this._directives)})}addFormGroup(t){fm.then(()=>{const e=this._findContainer(t.path),n=new dm({});(function(t,e){null==t&&Jg(e,"Cannot find control with"),t.validator=Ug.compose([t.validator,e.validator]),t.asyncValidator=Ug.composeAsync([t.asyncValidator,e.asyncValidator])})(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){fm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){fm.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,e=this._directives,this.form._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}))();class mm{static modelParentException(){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 ${Zg.formControlName}\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 ${Zg.ngModelWithFormGroup}`)}static formGroupNameException(){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 ${Zg.formGroupName}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Zg.ngModelGroup}`)}static missingNameException(){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: \n Example 2: ')}static modelGroupParentException(){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 ${Zg.formGroupName}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Zg.ngModelGroup}`)}static ngFormWarning(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")}}const _m=new Rt("NgFormSelectorWarning");class vm extends Ng{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Qg(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return tm(this._validators)}get asyncValidator(){return em(this._asyncValidators)}_checkParentType(){}}const ym=(()=>{class t extends vm{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof gm||mm.modelGroupParentException()}}return t})(),wm=(()=>Promise.resolve(null))(),bm=(()=>(class extends Vg{constructor(t,e,n,s){super(),this.control=new hm,this._registered=!1,this.update=new Sr,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Jg(t,"Value accessor was not provided as an array for form control with");let n=void 0,s=void 0,r=void 0;return e.forEach(e=>{e.constructor===Ag?n=e:function(t){return nm.some(e=>t.constructor===e)}(e)?(s&&Jg(t,"More than one built-in value accessor matches form control with"),s=e):(r&&Jg(t,"More than one custom value accessor matches form control with"),r=e)}),r||s||n||(Jg(t,"No valid value accessor for form control with"),null)}(this,s)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!je(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Qg(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return tm(this._rawValidators)}get asyncValidator(){return em(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Xg(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof ym)&&this._parent instanceof vm?mm.formGroupNameException():this._parent instanceof ym||this._parent instanceof gm||mm.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||mm.missingNameException()}_updateValue(t){wm.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;wm.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}))(),Cm=new Rt("NgModelWithFormControlWarning"),xm=(()=>(class{}))(),Sm=(()=>(class{group(t,e=null){const n=this._reduceControls(t);let s=null,r=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(s=null!=e.validators?e.validators:null,r=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(s=null!=e.validator?e.validator:null,r=null!=e.asyncValidator?e.asyncValidator:null)),new dm(n,{asyncValidators:r,updateOn:i,validators:s})}control(t,e,n){return new hm(t,e,n)}array(t,e,n){const s=t.map(t=>this._createControl(t));return new pm(s,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof hm||t instanceof dm||t instanceof pm?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}))(),Em=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:_m,useValue:e.warnOnDeprecatedNgFormSelector}]}}}return t})(),km=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Cm,useValue:e.warnOnNgModelWithFormControl}]}}}return t})();var Tm=Qn({encapsulation:2,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:0}.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:0}.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}"],data:{}});function Om(t){return Ki(2,[zi(402653184,1,{_contentWrapper:0}),(t()(),Vi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),Wi(null,0),(t()(),Vi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Im=Qn({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function Rm(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Vi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,r=t.component;return"input"===e&&(s=!1!==qs(t,5)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==qs(t,5).onTouched()&&s),"compositionstart"===e&&(s=!1!==qs(t,5)._compositionStart()&&s),"compositionend"===e&&(s=!1!==qs(t,5)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(r.search=n)&&s),"ngModelChange"===e&&(r.searchChange.emit(n),s=!1!==r.filter()&&s),s},null,null)),lr(5,16384,null,0,Ag,[cn,sn,[2,Pg]],null,null),ar(1024,null,Ig,function(t){return[t]},[Ag]),lr(7,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(9,16384,null,0,$g,[[4,Vg]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,qs(e,9).ngClassUntouched,qs(e,9).ngClassTouched,qs(e,9).ngClassPristine,qs(e,9).ngClassDirty,qs(e,9).ngClassValid,qs(e,9).ngClassInvalid,qs(e,9).ngClassPending)})}function Pm(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.select(t.context.$implicit)&&s),s},null,null)),(t()(),Vi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Am(t){return Ki(0,[(t()(),Vi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,Om,Tm)),ar(6144,null,Kp,null,[tf]),lr(3,540672,null,0,Zp,[],{itemSize:[0,"itemSize"]},null),ar(1024,null,Wp,qp,[Zp]),lr(5,245760,[[4,4],[5,4],["viewport",4]],0,tf,[sn,En,Xr,[2,Wp],[2,tg],Xp],null,null),(t()(),Di(16777216,[[2,2]],0,1,null,Pm)),lr(7,409600,null,0,nf,[An,Rn,xn,[1,tf],Xr],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===qs(e,5).orientation,"horizontal"!==qs(e,5).orientation)})}function Mm(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Nm(t){return Ki(0,[(t()(),Vi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.cancelClose()&&s),s},null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var s=!0,r=t.component;return"click"===e&&(s=0!=(r.show=!r.show)&&s),s},null,null)),(t()(),Vi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Di(16777216,[[2,2]],null,1,null,Rm)),lr(7,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Di(16777216,[[2,2]],null,1,null,Am)),lr(10,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Di(0,[[2,2],["noItems",2]],null,0,null,Mm))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,qs(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Dm(t){return Ki(0,[zi(402653184,1,{reference:0}),zi(402653184,2,{dropdown_tooltip:0}),zi(402653184,3,{input:0}),zi(402653184,4,{viewport:0}),zi(402653184,5,{scroll_el:0}),(t()(),Vi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var s=!0,r=t.component;return"keyup.enter"===e&&(s=!1!==r.toggleShow()&&s),"keydown.arrowup"===e&&(s=!1!==n.preventDefault()&&s),"keydown.arrowdown"===e&&(s=!1!==n.preventDefault()&&s),"keyup.arrowup"===e&&(s=!1!==(r.focus?r.change(-1):"")&&s),"keyup.arrowdown"===e&&(s=!1!==(r.focus?r.change(1):"")&&s),"focus"===e&&(s=0!=(r.focus=!0)&&s),"blur"===e&&(s=0!=(r.focus=!1)&&s),"window:resize"===e&&(s=!1!==r.resize()&&s),"window:click"===e&&(s=!1!==(r.show?r.close():"")&&s),s},null,null)),(t()(),Vi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Vi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var s=!0,r=t.component;return"showChange"===e&&(s=!1!==(r.show=n)&&s),"showChange"===e&&(s=!1!==r.updateScroll()&&s),"click"===e&&(s=!1!==r.toggleShow()&&s),s},null,null)),lr(8,737280,null,0,Zf,[sn,qf,Lf,cn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Vi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),Zi(10,null,["",""])),(t()(),Vi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Vi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Vi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(15,null,["",""])),(t()(),Vi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Di(0,[[2,2],["dropdown",2]],null,0,null,Nm))],function(t,e){t(e,8,0,e.component.show,qs(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}const Vm="Checkbox",$m=(()=>(class{constructor(){this.klass="default"}toggle(){this.state=!this.state,this.onChange&&this.onChange(this.state)}writeValue(t){this.state=t}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouch=t}}))(),Lm=cl,jm=(()=>{class t{constructor(){if(this.build=Lm(),!t.init){const e=Lm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Vm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Vm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Um=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}handleMouse(t){this.handleEvent(t)}handleTouch(t){this.handleEvent(t)}ngOnInit(){}ngAfterViewInit(){setTimeout(()=>{this.element&&this.element.nativeElement&&(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width)))})}ngOnDestroy(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}handleEvent(t){this.cancelled=!1;const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,n=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:`${n-this.cached_box.top}px`,left:`${e-this.cached_box.left}px`},this.mouse_release_cancel=this.renderer.listen("window","mouseup",t=>this.handleRelease(t)),this.touch_release_cancel=this.renderer.listen("window","touchend",t=>this.handleRelease(t)),this.transitioning=!0,setTimeout(()=>{this.transitioning=!1,this.cancelled&&(this.show=!1)},350)}handleRelease(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}}))(),zm=(()=>(class{constructor(t,e){this.el=t,this.renderer=e,this.tapped=new Sr,this.touchrelease=new Sr,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}ngAfterViewInit(){this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",t=>this.handleHold(t)),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",t=>this.handleHold(t)))}ngOnDestroy(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}}remove(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)}handleHold(t){const e={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=e,this.mouse_listener=this.renderer.listen(window,"mouseup",t=>this.handleRelease(t)),this.touch_listener=this.renderer.listen(window,"touchend",t=>this.handleRelease(t)),this.timer=setTimeout(()=>this.remove(),this.max_delay)}handleRelease(t){this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(()=>{const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(e-this.start.x,2)+2){this.tapped.emit(t),this.touchrelease.emit(t)},100)),this.start={x:-999,y:-999}},50)}}))(),Fm="Custom Events",Hm=cl,Bm=(()=>{class t{constructor(){if(this.build=Hm(),!t.init){const e=Hm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Fm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Fm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var Gm=Qn({encapsulation:0,styles:["[_nghost-%COMP%]{position:relative;overflow:hidden}.event-feedback[_ngcontent-%COMP%]{position:absolute;border-radius:100%;background-color:rgba(0,0,0,.1);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;pointer-events:none}.event-feedback.show[_ngcontent-%COMP%]{-webkit-animation:.5s feedback;animation:.5s feedback;opacity:1}.event-feedback.hide[_ngcontent-%COMP%]{-webkit-animation:.5s fadeout;animation:.5s fadeout}.event-feedback.light[_ngcontent-%COMP%]{background-color:rgba(255,255,255,.1)}@-webkit-keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@-webkit-keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}@keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}"],data:{}});function Wm(t){return Ki(0,[Wi(null,0),(t()(),Vi(1,0,null,null,0,"div",[],[[8,"className",0],[4,"top",null],[4,"left",null],[4,"height",null],[4,"width",null],[2,"show",null],[2,"hide",null]],null,null,null,null))],null,function(t,e){var n=e.component;t(e,1,0,"event-feedback"+(n.klass?" "+n.klass:""),n.position.top,n.position.left,n.size+"px",n.size+"px",n.show,!1===n.show)})}var Ym=Qn({encapsulation:0,styles:[".checkbox[_ngcontent-%COMP%]{display:flex;align-items:center}.box[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;margin:.25em;font-size:.8em;height:1.5em;width:1.5em;border-radius:4px;padding:0;border:2px solid #ccc;cursor:pointer;outline:0;transition:background-color .2s,border-color .2s}.box[_ngcontent-%COMP%]:hover{background-color:#ccc}.box[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function qm(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.toggle()&&s),s},null,null)),lr(1,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Zi(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Zm(t){return Ki(0,[(t()(),Vi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Vi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,2).handleTouch(n)&&s),"keyup.enter"===e&&(s=!1!==r.toggle()&&s),"tapped"===e&&(s=!1!==r.toggle()&&s),s},Wm,Gm)),lr(2,4440064,null,0,Um,[sn,cn],{center:[0,"center"]},null),lr(3,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,qm)),lr(6,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}const Qm="Buttons",Xm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new Sr,this.id=`button-${Math.floor(999999*Math.random())}`}ngOnChanges(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()}ngAfterViewInit(){this.setClass(this.klass)}setClass(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))}setGroup(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")}setState(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")}tap(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))}writeValue(t){this.state=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Km=cl,Jm=(()=>{class t{constructor(){if(this.build=Km(),!t.init){const e=Km();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Qm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Qm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var t_=Qn({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function e_(t){return Ki(0,[(t()(),Vi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,1).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,1).handleTouch(n)&&s),"tapped"===e&&(s=!1!==r.tap()&&s),s},Wm,Gm)),lr(1,4440064,null,0,Um,[sn,cn],null,null),lr(2,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),Wi(0,0)],function(t,e){t(e,1,0)},null)}const n_=(()=>(class{constructor(t){this.sanitizer=t}transform(t,e="html"){switch(e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}}}))(),s_="Pipes",r_=cl,i_=(()=>{class t{constructor(){if(this.build=r_(),!t.init){const e=r_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${s_} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${s_} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();class o_{constructor(){this._timers={},this._intervals={},this._subscriptions={}}timeout(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(()=>{e(),this._timers[t]=null},n)}clearTimeout(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)}interval(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(()=>e(),n)}clearInterval(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)}subscription(t,e){this.unsub(t),this._subscriptions[t]=e}unsub(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof d?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)}}class l_ extends o_{ngOnDestroy(){for(const t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(const t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(const t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)}}function a_(t,e,n,s){return new(n||(n=Promise))(function(r,i){function o(t){try{a(s.next(t))}catch(e){i(e)}}function l(t){try{a(s.throw(t))}catch(e){i(e)}}function a(t){t.done?r(t.value):new n(function(e){e(t.value)}).then(o,l)}a((s=s.apply(t,e||[])).next())})}class c_{}class u_{}class h_{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),s=n.toLowerCase(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,s),this.headers.has(s)?this.headers.get(s).push(r):this.headers.set(s,[r])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const s=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(s,n),this.maybeSetNormalizedName(e,s))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof h_?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new h_;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof h_?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const s=("a"===t.op?this.headers.get(e):void 0)||[];s.push(...n),this.headers.set(e,s);break;case"d":const r=t.value;if(r){let t=this.headers.get(e);if(!t)return;0===(t=t.filter(t=>-1===r.indexOf(t))).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class d_{encodeKey(t){return p_(t)}encodeValue(t){return p_(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function p_(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class f_{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new d_,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const s=t.indexOf("="),[r,i]=-1==s?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,s)),e.decodeValue(t.slice(s+1))],o=n.get(r)||[];o.push(i),n.set(r,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).join("&")}clone(t){const e=new f_({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function g_(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function m_(t){return"undefined"!=typeof Blob&&t instanceof Blob}function __(t){return"undefined"!=typeof FormData&&t instanceof FormData}class v_{constructor(t,e,n,s){let r;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||s?(this.body=void 0!==n?n:null,r=s):r=n,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.params&&(this.params=r.params)),this.headers||(this.headers=new h_),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),l)),t.setParams&&(a=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),a)),new v_(e,n,r,{params:a,headers:l,reportProgress:o,responseType:s,withCredentials:i})}}const y_=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class w_{constructor(t,e=200,n="OK"){this.headers=t.headers||new h_,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class b_ extends w_{constructor(t={}){super(t),this.type=y_.ResponseHeader}clone(t={}){return new b_({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class C_ extends w_{constructor(t={}){super(t),this.type=y_.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new C_({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class x_ extends w_{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function S_(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}const E_=(()=>(class{constructor(t){this.handler=t}request(t,e,n={}){let s;if(t instanceof v_)s=t;else{let r=void 0;r=n.headers instanceof h_?n.headers:new h_(n.headers);let i=void 0;n.params&&(i=n.params instanceof f_?n.params:new f_({fromObject:n.params})),s=new v_(t,e,void 0!==n.body?n.body:null,{headers:r,params:i,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const r=Zl(s).pipe($a(t=>this.handler.handle(t)));if(t instanceof v_||"events"===n.observe)return r;const i=r.pipe(ra(t=>t instanceof C_));switch(n.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return i.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return i.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return i.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return i.pipe(F(t=>t.body))}case"response":return i;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new f_).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,S_(n,e))}post(t,e,n={}){return this.request("POST",t,S_(n,e))}put(t,e,n={}){return this.request("PUT",t,S_(n,e))}}))();class k_{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const T_=new Rt("HTTP_INTERCEPTORS"),O_=(()=>(class{intercept(t,e){return e.handle(t)}}))(),I_=/^\)\]\}',?\n/;class R_{}const P_=(()=>(class{constructor(){}build(){return new XMLHttpRequest}}))(),A_=(()=>(class{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new b(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const s=t.serializeBody();let r=null;const i=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,s=n.statusText||"OK",i=new h_(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return r=new b_({headers:i,status:e,statusText:s,url:o})},o=()=>{let{headers:s,status:r,statusText:o,url:l}=i(),a=null;204!==r&&(a=void 0===n.response?n.responseText:n.response),0===r&&(r=a?200:0);let c=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof a){const t=a;a=a.replace(I_,"");try{a=""!==a?JSON.parse(a):null}catch(u){a=t,c&&(c=!1,a={error:u,text:a})}}c?(e.next(new C_({body:a,headers:s,status:r,statusText:o,url:l||void 0})),e.complete()):e.error(new x_({error:a,headers:s,status:r,statusText:o,url:l||void 0}))},l=t=>{const{url:s}=i(),r=new x_({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:s||void 0});e.error(r)};let a=!1;const c=s=>{a||(e.next(i()),a=!0);let r={type:y_.DownloadProgress,loaded:s.loaded};s.lengthComputable&&(r.total=s.total),"text"===t.responseType&&n.responseText&&(r.partialText=n.responseText),e.next(r)},u=t=>{let n={type:y_.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",l),t.reportProgress&&(n.addEventListener("progress",c),null!==s&&n.upload&&n.upload.addEventListener("progress",u)),n.send(s),e.next({type:y_.Sent}),()=>{n.removeEventListener("error",l),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",c),null!==s&&n.upload&&n.upload.removeEventListener("progress",u)),n.abort()}})}}))(),M_=new Rt("XSRF_COOKIE_NAME"),N_=new Rt("XSRF_HEADER_NAME");class D_{}const V_=(()=>(class{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Tl(t,this.cookieName),this.lastCookieString=t),this.lastToken}}))(),$_=(()=>(class{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const s=this.tokenService.getToken();return null===s||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,s)})),e.handle(t)}}))(),L_=(()=>(class{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(T_,[]);this.chain=t.reduceRight((t,e)=>new k_(t,e),this.backend)}return this.chain.handle(t)}}))(),j_=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:$_,useClass:O_}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:M_,useValue:e.cookieName}:[],e.headerName?{provide:N_,useValue:e.headerName}:[]]}}}return t})(),U_=(()=>(class{}))(),z_=(()=>{class t{constructor(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new Ql(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}init(){return a_(this,void 0,void 0,function*(){yield this.loadFromFile("api"),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete()})}get setup(){return this._setup}get app_name(){return this._app_name}isSetup(t){return this._is_setup_observer.subscribe(t)}log(t,e,n,s="debug",r=!1){if(window.debug||r){const r=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...r,n):console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...r)}}get(t){const e=t.split(".");let n=null;return"session"===e[0]?(e.shift(),n=al(e,this._settings.session)):"local"===e[0]?(e.shift(),n=al(e,this._settings.local)):n=al(e,this._settings.api)||al(e,this._settings.session)||al(e,this._settings.local),n}loadStore(t,e){if(e)for(let n=0;n5)return Promise.resolve();const s=`load|${t}|${e}`;return this._promises[s]||(this._promises[s]=new Promise((r,i)=>{this.http.get(e).subscribe(e=>{this._settings[t]=Object.assign({},this._settings[t]||{},e||{})},i=>{this.log("Settings",`Failed to load settings from "${e}"`),this._promises[s]=null,this.loadFromFile(t,e,++n).then(()=>r())},()=>r())})),this._promises[s]})}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),F_=["control","shift","alt","meta","os"],H_=(()=>{class t{constructor(){this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.last_down!==e&&(this.keydown_states[e]||(this.keydown_states[e]=new Ql(null),this.keydown_observers[e]=this.keydown_states[e].asObservable()),this.keydown_states[e].next(this.counter++),this.combo_end.indexOf(e)>=0&&t.preventDefault(),this.last_down=e)}),window.addEventListener("keyup",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.keydown_states[e].next(null),this.last_down===e&&(this.last_down=null)})}listen(t,e){const n=(t=t instanceof Array?t:t.split("+")).map(t=>this.mapKey(t.toLowerCase()));if(n.length>0&&this.validCombination(n)){this.registered_combos.push(n);const t=n[n.length-1];return this.keydown_states[t]||(this.keydown_states[t]=new Ql(null),this.keydown_observers[t]=this.keydown_states[t].asObservable()),this.updateCombinationEndList(),this.keydown_observers[t].subscribe(t=>{if(t){const t=[];if(n.length>1){for(const e of n){const n=this.keydown_states[e];t.push(n&&n.getValue()||-1)}for(let e=0;et[e+1])return}e()}})}return null}mapKey(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t}updateCombinationEndList(){for(const t of this.registered_combos)this.combo_end.push(t[t.length-1]);this.combo_end=function(t,e=""){return[].filter((t,n,s)=>s.indexOf(s.find(e?n=>n[e]===t[e]:e=>e===t))===n)}()}validCombination(t){let e=0;for(const n of t)F_.indexOf(n)<0&&e++;return e>0}}return t.ngInjectableDef=mt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),B_=[],G_=(()=>{class t extends o_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=ll(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let r;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>r=t,t=>{s(t),delete this._promises[n]},()=>{t(r),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}repositories(){const t="repositories";return this._promises[t]||(this._promises[t]=new Promise((e,n)=>{let s;this.http.get(`${this.api_route}/repositories`).subscribe(t=>s=t,e=>{n(e),delete this._promises[t]},()=>{e(s),this.timeout(t,()=>delete this._promises[t],1e3)})})),this._promises[t]}commits(t){const e=`commits|${ll(t)}`;return this._promises[e]||(this._promises[e]=new Promise((t,n)=>{let s;this.http.get(`${this.api_route}/repositories_commits`).subscribe(t=>s=t,t=>{n(t),delete this._promises[e]},()=>{t(s),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}versions(t){const e=`versions|${t}`;return this._promises[e]||(this._promises[e]=new Promise((n,s)=>{const r=`${this.api_route}/${encodeURIComponent(t)}`;let i;this.http.get(r).subscribe(t=>i=t,t=>{s(t),delete this._promises[e]},()=>{n(i),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}driverCommits(t,e){const n=ll(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const r=`${this.api_route}/${encodeURIComponent(t)}/commits`;let i;this.http.get(r).subscribe(t=>i=t,t=>{n(t),delete this._promises[s]},()=>{e(i),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}build(t){const e=ll(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{this.http.post(`${this.api_route}`,e).subscribe(t=>null,t=>{s(t),delete this._promises[n]},()=>{t(),delete this._promises[n]})})),this._promises[n]}clean(t,e){const n=ll(e),s=`clean|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((t,e)=>{this.http.delete(`${this.api_route}${n?"?"+n:""}`).subscribe(t=>null,t=>{e(t),delete this._promises[s]},()=>{t(),delete this._promises[s]})})),this._promises[s]}get api_route(){return this.parent?`${this.parent.endpoint}/build`:"/build"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),W_=(()=>{class t extends o_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=ll(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let r;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>r=t,t=>{s(t),delete this._promises[n]},()=>{t(r),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}specCommits(t,e){const n=ll(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const r=`${this.api_route}/${encodeURIComponent(t)}/commits`;let i;this.http.get(r).subscribe(t=>i=t,t=>{n(t),delete this._promises[s]},()=>{e(i),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}run(t){for(const s in t)null==t[s]&&delete t[s];const e=ll(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((s,r)=>{let i;this.http.post(`${this.api_route}${e?"?"+e:""}`,t,{responseType:"text"}).subscribe(t=>i=t,t=>{r(t),delete this._promises[n]},()=>{s(i),delete this._promises[n]})})),this._promises[n]}get api_route(){return this.parent?`${this.parent.endpoint}/test`:"/test"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),Y_=new b(v);class q_{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new Z_(t,this.delay,this.scheduler))}}class Z_ extends g{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,s=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-s.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-s.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(Z_.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new Q_(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Mp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Mp.createComplete()),this.unsubscribe()}}class Q_{constructor(t,e){this.time=t,this.notification=e}}const X_="Service workers are disabled or not supported by this browser";class K_{constructor(t){if(this.serviceWorker=t,t){const e=tp(t,"controllerchange").pipe(F(()=>t.controller)),n=Aa(na(()=>Zl(t.controller)),e);this.worker=n.pipe(ra(t=>!!t)),this.registration=this.worker.pipe(Ia(()=>t.getRegistration()));const s=tp(t,"message").pipe(F(t=>t.data)).pipe(ra(t=>t&&t.type)).pipe(it(new T));s.connect(),this.events=s}else this.worker=this.events=this.registration=(e=X_,na(()=>Rp(new Error(e))));var e}postMessage(t,e){return this.worker.pipe(xa(1),da(n=>{n.postMessage(Object.assign({action:t},e))})).toPromise().then(()=>void 0)}postMessageWithStatus(t,e,n){const s=this.waitForStatus(n),r=this.postMessage(t,e);return Promise.all([s,r]).then(()=>void 0)}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(t){return this.events.pipe(ra(e=>e.type===t))}nextEventOfType(t){return this.eventsOfType(t).pipe(xa(1))}waitForStatus(t){return this.eventsOfType("STATUS").pipe(ra(e=>e.nonce===t),xa(1),F(t=>{if(!t.status)throw new Error(t.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}const J_=(()=>(class{constructor(t){if(this.sw=t,this.subscriptionChanges=new T,!t.isEnabled)return this.messages=Y_,this.notificationClicks=Y_,void(this.subscription=Y_);this.messages=this.sw.eventsOfType("PUSH").pipe(F(t=>t.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(F(t=>t.data)),this.pushManager=this.sw.registration.pipe(F(t=>t.pushManager));const e=this.pushManager.pipe(Ia(t=>t.getSubscription()));this.subscription=K(e,this.subscriptionChanges)}get isEnabled(){return this.sw.isEnabled}requestSubscription(t){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const e={userVisibleOnly:!0};let n=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),s=new Uint8Array(new ArrayBuffer(n.length));for(let r=0;rt.subscribe(e)),xa(1)).toPromise().then(t=>(this.subscriptionChanges.next(t),t))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe(xa(1),Ia(t=>{if(null===t)throw new Error("Not subscribed to push notifications.");return t.unsubscribe().then(t=>{if(!t)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(X_))}decodeBase64(t){return atob(t)}}))(),tv=(()=>(class{constructor(t){if(this.sw=t,!t.isEnabled)return this.available=Y_,void(this.activated=Y_);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED")}get isEnabled(){return this.sw.isEnabled}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:t},t)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:t},t)}}))();class ev{}const nv=new Rt("NGSW_REGISTER_SCRIPT");function sv(t,e,n,s){return()=>{if(!(Hl(s)&&"serviceWorker"in navigator&&!1!==n.enabled))return;let r;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof n.registrationStrategy)r=n.registrationStrategy();else{const[e,...s]=(n.registrationStrategy||"registerWhenStable").split(":");switch(e){case"registerImmediately":r=Zl(null);break;case"registerWithDelay":r=Zl(null).pipe(function(t,e=mp){var n;const s=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new q_(s,e))}(+s[0]||0));break;case"registerWhenStable":r=t.get(mi).isStable.pipe(ra(t=>t));break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${n.registrationStrategy}`)}}r.pipe(xa(1)).subscribe(()=>navigator.serviceWorker.register(e,{scope:n.scope}))}}function rv(t,e){return new K_(Hl(e)&&!1!==t.enabled?navigator.serviceWorker:void 0)}const iv=(()=>{class t{static register(e,n={}){return{ngModule:t,providers:[{provide:nv,useValue:e},{provide:ev,useValue:n},{provide:K_,useFactory:rv,deps:[ev,Mr]},{provide:Tr,useFactory:sv,deps:[Dt,nv,ev,Mr],multi:!0}]}}}return t})(),ov="Google Analytics";function lv(t,e,n,s="debug",r){if(window.debug){const i=["color: #0288D1",`color:${r||"#009688"}`,"color:rgba(0,0,0,0.87)"];n?av()?console[s](`%c[${ov}]%c[${t}] %c${e}`,...i,n):console[s](`[${ov}][${t}] ${e}`,n):av()?console[s](`%c[${ov}]%c[${t}] %c${e}`,...i):console[s](`[${ov}][${t}] ${e}`)}}function av(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}const cv=(()=>{class t{constructor(t){var e,n,s,r,i;this.title=t,this.enabled=!0,this.app_name="GA_APP",this.timers={},e=window,n=document,s="script",e.GoogleAnalyticsObject="ga",e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,r=n.createElement(s),i=n.getElementsByTagName(s)[0],r.async=1,r.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(r,i),lv("Service","Injected Google Analytics into page"),this.service=window.ga}load(t){if(!this.enabled)throw new Error("Google Analytics needs to be enabled before being initialised");if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.service("create",t,"auto"),this.service("send","pageview")}setUser(t){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`user|${t}`,()=>{lv("Service",`Set user ID: ${t}`),this.service("set","userId",t),this.event("authentication","user-id available")},100)}event(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`event|${t}|${e}|${n}|${s}`,()=>{lv("Service",`Event: ${t}, ${e}${n?", "+n:""}${s?", "+s:""}`),this.service("send","event",`${this.app_prefix?this.app_prefix+"_":""}${t}`,e,n,s)},100)}screen(t,e){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");t&&this.enabled&&this.timeout(`event|${t}|${e||this.app_name}`,()=>{lv("Service",`Screen: ${t}${e?", "+e:""}`),this.service("send","screenview",{appName:e||this.app_name,screenName:t})},100)}page(t,e=!1){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&(this.last_route=t||"/",this.timeout(`page|${t}`,()=>{lv("Service",`Page: ${t}`),this.service("send","pageview",`${e?location.origin:""}${t}`)},100))}timing(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`page|${t}|${e}|${n}|${s}`,()=>{lv("Service",`Timing: ${t}, ${e}, ${n}${s?", "+s:""}`),this.service("send","timing",t,e,n,s)},100)}timeout(t,e,n=300){this.timers[t]&&(clearTimeout(this.timers[t]),this.timers[t]=null),this.timers[t]=setTimeout(()=>{e instanceof Function&&e(),this.timers[t]=null},n)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Kc))},token:t,providedIn:"root"}),t})(),uv=(()=>{class t extends o_{constructor(t,e,n,s,r,i,o,l,a){super(),this._title=t,this._router=e,this._version=n,this._settings=s,this._overlay=r,this._analytics=i,this._hotkeys=o,this._build=l,this._test=a,this._route_trail=[],this._subjects={},this._observers={},this.set("system",null),this._build.parent=this._test.parent=this,this.init(),this.registerOverlays()}get Overlay(){return this._overlay}get Analytics(){return this._analytics}get Hotkeys(){return this._hotkeys}get Build(){return this._build}get Test(){return this._test}setting(t){return this._settings.get(t)}get name(){return this._settings.app_name}set title(t){const e=this.setting("app.title");this._title.setTitle(`${t?t+" | ":""}${e}`)}get title(){return this._title.getTitle()}get endpoint(){return`${location.origin}`}get engine_endpoint(){return"/control/api/"}get is_ready(){return this._settings.setup}notify(t,e,n,s){this._overlay.notify(`
${e}
`,n,s,t)}notifySuccess(t,e,n){this.notify("success",t,e,n)}notifyError(t,e,n){this.notify("error",t,e,n)}notifyInfo(t,e,n){this.notify("info",t,e,n)}log(t,e,n,s="debug",r=!1){this._settings.log(t,e,n,s,r)}navigate(t,e){const n=t instanceof Array?[...t]:[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})}navigateBack(){if(this._route_trail&&this._route_trail.length>0){const t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])}get(t){return this._subjects[t]&&this._subjects[t]instanceof Ql?this._subjects[t].getValue():null}listen(t,e){return this._observers[t]?this._observers[t].subscribe(e):null}set(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new Ql(e),this._observers[t]=this._subjects[t].asObservable())}init(){if(!this._settings.setup)return this.timeout("init",()=>this.init());this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(t=>{this.log("CACHE",`Update available: ${`current version is ${t.current.hash}`} ${`available version is ${t.available.hash}`}`),this.notifyInfo("Newer version of the app is available","Refresh",()=>location.reload())}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],()=>{this.navigate("bootstrap",{clear:!0})})}registerOverlays(){if(B_)for(const t of B_)this._overlay.register(t.id,t.config)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Kc),Ot(vd),Ot(tv),Ot(z_),Ot(qf),Ot(cv),Ot(H_),Ot(G_),Ot(W_))},token:t,providedIn:"root"}),t})();class hv extends l_{constructor(t,e){super(),this.service=t,this.route=e,this.commit_list=[],this.spec_list=[],this.spec_commit_list=[]}ngOnInit(){this.subscription("route.params",this.route.paramMap.subscribe(t=>{t.has("repo")&&(this.repo=t.get("repo"),this.timeout("repo_update",()=>this.service.set("TEST.repository",this.repo))),t.has("driver")?(this.driver=t.get("driver"),this.timeout("driver_update",()=>this.service.set("TEST.driver",this.driver)),this.test_results="",this.spec=null,this.show=!1,this.updateSpecs()):this.timeout("driver_update",()=>this.service.set("TEST.driver",""))})),this.updateCommits(),this.updateSpecs(),this.updateSpecCommits(),this.interval("update",()=>{this.updateCommits(),this.updateSpecs(),this.updateSpecCommits()},6e4)}updateCommits(){this.driver&&(this.loading_commits=!0,this.service.Build.driverCommits(this.driver,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:cl(t.date).format("DD MMM YYYY h:mm A")})),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecs(){this.driver&&(this.loading_commits=!0,this.service.Test.query({repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_list=(t||[]).map(t=>({id:t,name:t})),this.spec||(this.spec=this.spec_list.reduce((t,e)=>t&&this.driver.localeCompare(t.id)>this.driver.localeCompare(e.id)?t:e,null)),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecCommits(){this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:cl(t.date).format("DD MMM YYYY h:mm A")})),this.loading_commits=!1},t=>this.loading_commits=!1))}test(){if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";const t=t=>{t instanceof Object&&(t=t.error),this.test_results=this.styleResults(t||"");const e=this.service.get("TEST.results")||{},n=t.indexOf("exited with 0")>=0;e[`${this.repo}|${this.driver}`]=n?"passed":"failed",this.service.set("TEST.results",e),this.testing=!1,this.timeout("scroll",()=>this.body.nativeElement.scrollTo(0,this.body.nativeElement.scrollHeight),10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(t,t)}}styleResults(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')}}var dv=Qn({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function pv(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Spec Commit:"])),(t()(),Vi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.spec_commit=n)&&s),s},Dm,Im)),lr(5,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(7,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(9,16384,null,0,$g,[[4,Vg]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,qs(e,9).ngClassUntouched,qs(e,9).ngClassTouched,qs(e,9).ngClassPristine,qs(e,9).ngClassDirty,qs(e,9).ngClassValid,qs(e,9).ngClassInvalid,qs(e,9).ngClassPending)})}function fv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),qi(128,1,new Array(3))],null,function(t,e){var n=e.component,s=function(t,e,n,s){if(ze.isWrapped(s)){s=ze.unwrap(s);const e=t.def.nodes[0].bindingIndex+0,n=ze.unwrap(t.oldValues[e]);t.oldValues[e]=new ze(n)}return s}(e,0,0,t(e,1,0,qs(e.parent.parent,0),n.test_results,"html"));t(e,0,0,s)})}function gv(t){return Ki(0,[(t()(),Vi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,54,"div",[["class","header"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Repository:"])),(t()(),Vi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Zi(6,null,["",""])),(t()(),Vi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Driver:"])),(t()(),Vi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Zi(11,null,["",""])),(t()(),Vi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Commit:"])),(t()(),Vi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.commit=n)&&s),s},Dm,Im)),lr(17,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(19,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(21,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Spec:"])),(t()(),Vi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,r=t.component;return"ngModelChange"===e&&(s=!1!==(r.spec=n)&&s),"ngModelChange"===e&&(s=!1!==r.updateSpecCommits()&&s),s},Dm,Im)),lr(27,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(29,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(31,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Di(16777216,null,null,1,null,pv)),lr(33,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(34,0,null,null,21,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Vi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Vi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Vi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.force=n)&&s),s},Zm,Ym)),lr(38,49152,null,0,$m,[],{klass:[0,"klass"],label:[1,"label"]},null),ar(1024,null,Ig,function(t){return[t]},[$m]),lr(40,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(42,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Vi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.debug=n)&&s),s},Zm,Ym)),lr(45,49152,null,0,$m,[],{klass:[0,"klass"],label:[1,"label"]},null),ar(1024,null,Ig,function(t){return[t]},[$m]),lr(47,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(49,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(50,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Vi(51,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.test()&&s),s},e_,t_)),ar(5120,null,Ig,function(t){return[t]},[Xm]),lr(53,4767744,null,0,Xm,[sn,cn],null,{tapped:"tapped"}),lr(54,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Zi(-1,0,["Run!"])),(t()(),Vi(56,0,[[1,0],["body",1]],null,10,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(57,0,null,null,4,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Vi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),Zi(59,null,[" "," "])),(t()(),Di(16777216,null,null,1,null,fv)),lr(61,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,63).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,63).handleTouch(n)&&s),"tapped"===e&&(s=0!=(r.show=!r.show)&&s),s},Wm,Gm)),lr(63,4440064,null,0,Um,[sn,cn],{klass:[0,"klass"],center:[1,"center"]},null),lr(64,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,qs(e,21).ngClassUntouched,qs(e,21).ngClassTouched,qs(e,21).ngClassPristine,qs(e,21).ngClassDirty,qs(e,21).ngClassValid,qs(e,21).ngClassInvalid,qs(e,21).ngClassPending),t(e,26,0,qs(e,31).ngClassUntouched,qs(e,31).ngClassTouched,qs(e,31).ngClassPristine,qs(e,31).ngClassDirty,qs(e,31).ngClassValid,qs(e,31).ngClassInvalid,qs(e,31).ngClassPending),t(e,37,0,qs(e,42).ngClassUntouched,qs(e,42).ngClassTouched,qs(e,42).ngClassPristine,qs(e,42).ngClassDirty,qs(e,42).ngClassValid,qs(e,42).ngClassInvalid,qs(e,42).ngClassPending),t(e,44,0,qs(e,49).ngClassUntouched,qs(e,49).ngClassTouched,qs(e,49).ngClassPristine,qs(e,49).ngClassDirty,qs(e,49).ngClassValid,qs(e,49).ngClassInvalid,qs(e,49).ngClassPending),t(e,51,0,!n.spec||n.testing),t(e,56,0,n.show),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_up":"keyboard_arrow_down")})}function mv(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(-1,null,["arrow_back"])),(t()(),Vi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(-1,null,["Select a driver from the sidebar"]))],null,null)}function _v(t){return Ki(0,[(e=0,n=n_,s=[Uc],cr(-1,e|=16,null,0,n,n,s)),zi(671088640,1,{body:0}),(t()(),Vi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,gv)),lr(4,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Di(0,[["select",2]],null,0,null,mv))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,qs(e,5))},null);var e,n,s}function vv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"app-workspace",[],null,null,null,_v,dv)),lr(1,245760,null,0,hv,[uv,lh],null,null)],function(t,e){t(e,1,0)},null)}var yv=$s("app-workspace",hv,vv,{},{},[]);class wv{constructor(){this.menu=!0,this.menuChange=new Sr}toggleMenu(){this.menu=!this.menu,this.menuChange.emit(this.menu)}}var bv=Qn({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function Cv(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,2).handleTouch(n)&&s),"tapped"===e&&(s=!1!==r.toggleMenu()&&s),s},Wm,Gm)),lr(2,4440064,null,0,Um,[sn,cn],{klass:[0,"klass"]},null),lr(3,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(-1,null,["menu"])),(t()(),Vi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Vi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Vi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),Zi(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}class xv extends l_{constructor(t){super(),this.service=t,this.repository_list=[],this.status={}}ngOnInit(){this.service.set("TEST.repository",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",()=>this.updateRepositoryList(),6e4),this.subscription("test_results",this.service.listen("TEST.results",t=>{this.status=t||{}})),this.subscription("repository",this.service.listen("TEST.repository",t=>{t&&(this.repo={id:t,name:t},this.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",t=>{this.driver=t}))}setRepository(t){this.service.navigate([t]),this.updateDriverList()}setDriver(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t])}updateDriverList(){this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(t=>{this.driver_list=t||[],this.loading=!1},t=>this.loading=!1)}updateRepositoryList(){this.service.Build.repositories().then(t=>{this.repository_list=(t||[]).map(t=>({id:t,name:t})),this.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),this.updateDriverList()})}}var Sv=Qn({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function Ev(t){return Ki(0,[(t()(),Vi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.setDriver(t.context.$implicit)&&s),s},null,null)),lr(1,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Vi(3,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(4,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]),t(e,4,0,e.context.$implicit)})}function kv(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(5,null,["",""]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?"No drivers in the selected repository":"Select a repository from above")})}function Tv(t){return Ki(0,[(t()(),Vi(0,0,null,null,12,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,r=t.component;return"ngModelChange"===e&&(s=!1!==(r.repo=n)&&s),"ngModelChange"===e&&(s=!1!==r.setRepository(n.id)&&s),s},Dm,Im)),lr(3,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(5,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(7,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(8,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,Ev)),lr(10,278528,null,0,Rl,[An,Rn,xn],{ngForOf:[0,"ngForOf"]},null),(t()(),Di(16777216,null,null,1,null,kv)),lr(12,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,3,0,"simple",n.repository_list||xs,"ACA Drivers"),t(e,5,0,n.repo),t(e,10,0,n.driver_list),t(e,12,0,!n.driver_list||0===n.driver_list.length)},function(t,e){t(e,2,0,qs(e,7).ngClassUntouched,qs(e,7).ngClassTouched,qs(e,7).ngClassPristine,qs(e,7).ngClassDirty,qs(e,7).ngClassValid,qs(e,7).ngClassInvalid,qs(e,7).ngClassPending)})}var Ov=Qn({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:16em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:16em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Iv(t){return Ki(0,[(t()(),Vi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var s=!0;return"menuChange"===e&&(s=!1!==(t.component.show_menu=n)&&s),s},Cv,bv)),lr(3,49152,null,0,wv,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Vi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Vi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(6,0,null,null,1,"sidebar",[],null,null,null,Tv,Sv)),lr(7,245760,null,0,xv,[uv],null,null),(t()(),Vi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Vi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),lr(10,212992,null,0,bd,[wd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function Rv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"app-root",[],null,null,null,Iv,Ov)),lr(1,49152,null,0,hl,[],null,null)],null,null)}var Pv=$s("app-root",hl,Rv,{},{},[]);class Av{}class Mv{}var Nv=rl(ul,[hl],function(t){return function(t){const e={},n=[];let s=!1;for(let r=0;r(t[e.name]=e.token,t),{}))),()=>ic),Ud(e),sv(n,s,r,i)];var o},[[2,hi],jd,Dt,nv,ev,Mr]),Os(512,Or,Or,[[2,Tr]]),Os(131584,mi,mi,[Xr,Dr,Dt,re,Xe,Or]),Os(1073742336,Ni,Ni,[mi]),Os(1073742336,Qc,Qc,[[3,Qc]]),Os(1024,Id,Dd,[[3,vd]]),Os(512,ju,Uu,[]),Os(512,wd,wd,[]),Os(256,Od,{useHash:!0},[]),Os(1024,fl,Nd,[dl,[2,gl],Od]),Os(512,ml,ml,[fl,dl]),Os(512,zr,zr,[]),Os(512,kr,wi,[zr,[2,vi]]),Os(1024,hd,function(){return[[{path:"",component:hv},{path:":repo",component:hv},{path:":repo/:driver",component:hv}]]},[]),Os(1024,vd,$d,[mi,ju,wd,ml,Dt,kr,zr,hd,Od,[2,pd],[2,cd]]),Os(1073742336,Ad,Ad,[[2,Id],[2,vd]]),Os(1073742336,Av,Av,[]),Os(1073742336,iv,iv,[]),Os(1073742336,xm,xm,[]),Os(1073742336,Em,Em,[]),Os(1073742336,km,km,[]),Os(1073742336,Bm,Bm,[]),Os(1073742336,Jm,Jm,[]),Os(1073742336,jm,jm,[]),Os(1073742336,eg,eg,[]),Os(1073742336,pf,pf,[]),Os(1073742336,Up,Up,[]),Os(1073742336,sf,sf,[]),Os(1073742336,zf,zf,[]),Os(1073742336,Kf,Kf,[]),Os(1073742336,i_,i_,[]),Os(1073742336,Qd,Qd,[]),Os(1073742336,Mv,Mv,[]),Os(1073742336,j_,j_,[]),Os(1073742336,U_,U_,[]),Os(1073742336,ul,ul,[]),Os(256,Ge,!0,[]),Os(256,M_,"XSRF-TOKEN",[]),Os(256,N_,"X-XSRF-TOKEN",[])])});(function(){if(oe)throw new Error("Cannot enable prod mode after platform setup.");ie=!1})(),qc().bootstrapModuleFactory(Nv).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",s="hour",r="day",i="week",o="month",l="quarter",a="year",c=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,u=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var s=String(t);return!s||s.length>=e?t:""+Array(e+1-s.length).join(n)+t},d={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),s=Math.floor(n/60),r=n%60;return(e<=0?"+":"-")+h(s,2,"0")+":"+h(r,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,o),r=e-s<0,i=t.clone().add(n+(r?-1:1),o);return Number(-(n+(e-s)/(r?s-i:i-s))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(c){return{M:o,y:a,w:i,d:r,h:s,m:n,s:e,ms:t,Q:l}[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},p={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=p;var m=function(t){return t instanceof w},_=function(t,e,n){var s;if(!t)return null;if("string"==typeof t)g[t]&&(s=t),e&&(g[t]=e,s=t);else{var r=t.name;g[r]=t,s=r}return n||(f=s),s},v=function(t,e,n){if(m(t))return t.clone();var s=e?"string"==typeof e?{format:e,pl:n}:e:{};return s.date=t,new w(s)},y=d;y.l=_,y.i=m,y.w=function(t,e){return v(t,{locale:e.$L,utc:e.$u})};var w=function(){function h(t){this.$L=this.$L||_(t.locale,null,!0)||f,this.parse(t)}var d=h.prototype;return d.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(y.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var s=e.match(c);if(s)return n?new Date(Date.UTC(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)):new Date(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)}return new Date(e)}(t),this.init()},d.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},d.$utils=function(){return y},d.isValid=function(){return!("Invalid Date"===this.$d.toString())},d.isSame=function(t,e){var n=v(t);return this.startOf(e)<=n&&n<=this.endOf(e)},d.isAfter=function(t,e){return v(t){throw t})}const l={closed:!0,next(t){},error(t){if(i.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},a=Array.isArray||(t=>t&&"number"==typeof t.length);function c(t){return null!==t&&"object"==typeof t}function u(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}u.prototype=Object.create(Error.prototype);const h=u,d=(()=>{class t{constructor(t){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let t,e=!1;if(this.closed)return;let{_parent:n,_parents:r,_unsubscribe:i,_subscriptions:o}=this;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;let l=-1,u=r?r.length:0;for(;n;)n.remove(this),n=++lt.concat(e instanceof h?e.errors:e),[])}const f="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class g extends d{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof g?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[f](){return this}static create(t,e,n){const s=new g(t,e,n);return s.syncErrorThrowable=!1,s}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parent:t,_parents:e}=this;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=t,this._parents=e,this}}class m extends g{constructor(t,e,n,r){let i;super(),this._parentSubscriber=t;let o=this;s(e)?i=e:e&&(i=e.next,n=e.error,r=e.complete,e!==l&&(s((o=Object.create(e)).unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=i,this._error=n,this._complete=r}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;i.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=i;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):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);i.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),i.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!i.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(s){return i.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=s,t.syncErrorThrown=!0,!0):(o(s),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const _="function"==typeof Symbol&&Symbol.observable||"@@observable";function v(){}function y(...t){return w(t)}function w(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:v}const b=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:s}=this,r=function(t,e,n){if(t){if(t instanceof g)return t;if(t[f])return t[f]()}return t||e||n?new g(t,e,n):new g(l)}(t,e,n);if(r.add(s?s.call(r,this.source):this.source||i.useDeprecatedSynchronousErrorHandling&&!r.syncErrorThrowable?this._subscribe(r):this._trySubscribe(r)),i.useDeprecatedSynchronousErrorHandling&&r.syncErrorThrowable&&(r.syncErrorThrowable=!1,r.syncErrorThrown))throw r.syncErrorValue;return r}_trySubscribe(t){try{return this._subscribe(t)}catch(e){i.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:s}=t;if(e||s)return!1;t=n&&n instanceof g?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=C(e))((e,n)=>{let s;s=this.subscribe(e=>{try{t(e)}catch(r){n(r),s&&s.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[_](){return this}pipe(...t){return 0===t.length?this:w(t)(this)}toPromise(t){return new(t=C(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=(e=>new t(e)),t})();function C(t){if(t||(t=i.Promise||Promise),!t)throw new Error("no Promise impl found");return t}function x(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}x.prototype=Object.create(Error.prototype);const S=x;class E extends d{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class k extends g{constructor(t){super(t),this.destination=t}}const T=(()=>{class t extends b{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new k(this)}lift(t){const e=new O(this,this);return e.operator=t,e}next(t){if(this.closed)throw new S;if(!this.isStopped){const{observers:e}=this,n=e.length,s=e.slice();for(let r=0;rnew O(t,e)),t})();class O extends T{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):d.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}class R extends g{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const P=t=>e=>{for(let n=0,s=t.length;ne=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,o),e);function M(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}const N=M(),D=t=>e=>{const n=t[N]();for(;;){const t=n.next();if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e},V=t=>e=>{const n=t[_]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)},$=t=>t&&"number"==typeof t.length&&"function"!=typeof t;function L(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const j=t=>{if(t instanceof b)return e=>t._isScalar?(e.next(t.value),void e.complete()):t.subscribe(e);if(t&&"function"==typeof t[_])return V(t);if($(t))return P(t);if(L(t))return A(t);if(t&&"function"==typeof t[N])return D(t);{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};function U(t,e,n,s,r=new R(t,n,s)){if(!r.closed)return j(e)(r)}class z extends g{notifyNext(t,e,n,s,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(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 H(t,e))}}class H{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new B(t,this.project,this.thisArg))}}class B extends g{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function G(t,e){return new b(e?n=>{const s=new d;let r=0;return s.add(e.schedule(function(){r!==t.length?(n.next(t[r++]),n.closed||s.add(this.schedule())):n.complete()})),s}:P(t))}function W(t,e){if(!e)return t instanceof b?t:new b(j(t));if(null!=t){if(function(t){return t&&"function"==typeof t[_]}(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>{const r=t[_]();s.add(r.subscribe({next(t){s.add(e.schedule(()=>n.next(t)))},error(t){s.add(e.schedule(()=>n.error(t)))},complete(){s.add(e.schedule(()=>n.complete()))}}))})),s}:V(t))}(t,e);if(L(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>t.then(t=>{s.add(e.schedule(()=>{n.next(t),s.add(e.schedule(()=>n.complete()))}))},t=>{s.add(e.schedule(()=>n.error(t)))}))),s}:A(t))}(t,e);if($(t))return G(t,e);if(function(t){return t&&"function"==typeof t[N]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new b(e?n=>{const s=new d;let r;return s.add(()=>{r&&"function"==typeof r.return&&r.return()}),s.add(e.schedule(()=>{r=t[N](),s.add(e.schedule(function(){if(n.closed)return;let t,e;try{const i=r.next();t=i.value,e=i.done}catch(s){return void n.error(s)}e?n.complete():(n.next(t),this.schedule())}))})),s}:D(t))}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}function Y(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?s=>s.pipe(Y((n,s)=>W(t(n,s)).pipe(F((t,r)=>e(n,t,s,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new Z(t,this.project,this.concurrent))}}class Z extends z{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Q(t){return t}function X(t=Number.POSITIVE_INFINITY){return Y(Q,t)}function K(...t){let e=Number.POSITIVE_INFINITY,n=null,s=t[t.length-1];return I(s)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof s&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof b?t[0]:X(e)(G(t,n))}function J(){return function(t){return t.lift(new tt(t))}}class tt{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const s=new et(t,n),r=e.subscribe(s);return s.closed||(s.connection=n.connect()),r}}class et extends g{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,s=t._connection;this.connection=null,!s||n&&s!==n||s.unsubscribe()}}const nt=class extends b{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new d).add(this.source.subscribe(new rt(this.getSubject(),this))),t.closed?(this._connection=null,t=d.EMPTY):this._connection=t),t}refCount(){return J()(this)}}.prototype,st={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:nt._subscribe},_isComplete:{value:nt._isComplete,writable:!0},getSubject:{value:nt.getSubject},connect:{value:nt.connect},refCount:{value:nt.refCount}};class rt extends k{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function it(t,e){return function(n){let s;if(s="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new ot(s,e));const r=Object.create(n,st);return r.source=n,r.subjectFactory=s,r}}class ot{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,s=this.subjectFactory(),r=n(s).subscribe(t);return r.add(e.subscribe(s)),r}}function lt(){return new T}const at="__parameters__";function ct(t,e,n){const s=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function r(...t){if(this instanceof r)return s.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,s){const r=t.hasOwnProperty(at)?t[at]:Object.defineProperty(t,at,{value:[]})[at];for(;r.length<=s;)r.push(null);return(r[s]=r[s]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r}const ut=ct("Inject",t=>({token:t})),ht=ct("Optional"),dt=ct("Self"),pt=ct("SkipSelf");var ft=function(t){return 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",t}({});function gt(t){for(let e in t)if(t[e]===gt)return e;throw Error("Could not find renamed property on target object.")}function mt(t){return{providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function _t(t){return t&&t.hasOwnProperty(vt)?t[vt]:null}const vt=gt({ngInjectableDef:gt});function yt(t){if("string"==typeof t)return t;if(t instanceof Array)return"["+t.map(yt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}const wt=gt({__forward_ref__:gt});function bt(t){return t.__forward_ref__=bt,t.toString=function(){return yt(this())},t}function Ct(t){const e=t;return"function"==typeof e&&e.hasOwnProperty(wt)&&e.__forward_ref__===bt?e():t}function xt(){const t="undefined"!=typeof globalThis&&globalThis,e="undefined"!=typeof window&&window,n="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,s="undefined"!=typeof global&&global;return t||s||e||n}const St=xt();let Et,kt=void 0;function Tt(t){const e=kt;return kt=t,e}function Ot(t,e=ft.Default){return(Et||function(t,e=ft.Default){if(void 0===kt)throw new Error("inject() must be called from an injection context");return null===kt?function(t,e,n){const s=_t(t);if(s&&"root"==s.providedIn)return void 0===s.value?s.value=s.factory():s.value;if(n&ft.Optional)return null;throw new Error(`Injector: NOT_FOUND [${yt(t)}]`)}(t,0,e):kt.get(t,e&ft.Optional?null:void 0,e)})(t,e)}const It=Ot;class Rt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ngInjectableDef=mt({providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Pt="__source",At=new Object,Mt=new Rt("INJECTOR",-1);class Nt{get(t,e=At){if(e===At){const e=new Error(`NullInjectorError: No provider for ${yt(t)}!`);throw e.name="NullInjectorError",e}return e}}const Dt=(()=>{class t{static create(t,e){return Array.isArray(t)?new Gt(t,e):new Gt(t.providers,t.parent,t.name||null)}}return t.THROW_IF_NOT_FOUND=At,t.NULL=new Nt,t.ngInjectableDef=mt({providedIn:"any",factory:()=>Ot(Mt)}),t.__NG_ELEMENT_ID__=-1,t})(),Vt=function(t){return t},$t=[],Lt=Vt,jt=function(){return Array.prototype.slice.call(arguments)},Ut=gt({provide:String,useValue:gt}),zt="ngTokenPath",Ft="ngTempTokenPath",Ht=/\n/gm,Bt="\u0275";class Gt{constructor(t,e=Dt.NULL,n=null){this.parent=e,this.source=n;const s=this._records=new Map;s.set(Dt,{token:Dt,fn:Vt,deps:$t,value:this,useNew:!1}),s.set(Mt,{token:Mt,fn:Vt,deps:$t,value:this,useNew:!1}),function t(e,n){if(n)if((n=Ct(n))instanceof Array)for(let s=0;st.push(yt(n))),`StaticInjector[${t.join(", ")}]`}}function Wt(t){return qt("Cannot mix multi providers and regular providers",t)}function Yt(t,e,n,s=null){t=t&&"\n"===t.charAt(0)&&t.charAt(1)==Bt?t.substr(2):t;let r=yt(e);if(e instanceof Array)r=e.map(yt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let s=e[n];t.push(n+":"+("string"==typeof s?JSON.stringify(s):yt(s)))}r=`{${t.join(", ")}}`}return`${n}${s?"("+s+")":""}[${r}]: ${t.replace(Ht,"\n ")}`}function qt(t,e){return new Error(Yt(t,e,"StaticInjectorError"))}const Zt="ngDebugContext",Qt="ngOriginalError",Xt="ngErrorLogger",Kt=new Rt("AnalyzeForEntryComponents"),Jt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}(),te=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(St))();function ee(t){return t[Zt]}function ne(t){return t[Qt]}function se(t,...e){t.error(...e)}class re{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),s=function(t){return t[Xt]||se}(t);s(this._console,"ERROR",t),e&&s(this._console,"ORIGINAL ERROR",e),n&&s(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?ee(t)?ee(t):this._findContext(ne(t)):null}_findOriginalError(t){let e=ne(t);for(;e&&ne(e);)e=ne(e);return e}}let ie=!0,oe=!1;function le(){return oe=!0,ie}class ae{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),this.inertBodyElement=this.inertDocument.createElement("body"),t.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t=""+t+"";try{t=encodeURI(t)}catch(s){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t=""+t+"";try{const n=(new window.DOMParser).parseFromString(t,"text/html").body;return n.removeChild(n.firstChild),n}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(t){const e=t.attributes;for(let s=e.length-1;0he(t.trim())).join(", ")),this.buf.push(" ",e,'="',ke(o),'"')}var s;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();ve.hasOwnProperty(e)&&!fe.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(ke(t))}checkClobberedElement(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}}const Se=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ee=/([^\#-~ |!])/g;function ke(t){return t.replace(/&/g,"&").replace(Se,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ee,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let Te;function Oe(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const Ie=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}();class Re{}const Pe=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ae=/^url\(([^)]+)\)$/,Me=/([A-Z])/g;function Ne(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function De(t){return!!t&&"function"==typeof t.then}function Ve(t){return!!t&&"function"==typeof t.subscribe}let $e=null;function Le(){if(!$e){const t=St.Symbol;if(t&&t.iterator)$e=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e{class t{}return t.NULL=new Qe,t})();class Ke{constructor(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(let s=0;s{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=(()=>rn(t)),t})(),rn=nn;class on{}class ln{}const an=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}(),cn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>un()),t})(),un=nn;class hn{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const dn=new hn("8.0.0");class pn{constructor(){}supports(t){return Fe(t)}create(t){return new gn(t)}}const fn=(t,e)=>e;class gn{constructor(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||fn}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,s=0,r=null;for(;e||n;){const i=!n||e&&e.currentIndex{s=this._trackByFn(e,t),null!==r&&je(r.trackById,s)?(i&&(r=this._verifyReinsertion(r,t,s,e)),je(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,s,e),i=!0),r=r._next,e++}),this.length=e;return this._truncate(r),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;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}}_mismatch(t,e,n,s){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,s))?(je(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,s)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(je(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,s)):t=this._addAfter(new mn(e,n),r,s),t}_verifyReinsertion(t,e,n,s){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,t._prev,s):t.currentIndex!=s&&(t.currentIndex=s,this._addToMoves(t,s)),t}_truncate(t){for(;null!==t;){const 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)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const s=t._prevRemoved,r=t._nextRemoved;return null===s?this._removalsHead=r:s._nextRemoved=r,null===r?this._removalsTail=s:r._prevRemoved=s,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const s=null===e?this._itHead:e._next;return t._next=s,t._prev=e,null===s?this._itTail=t:s._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new vn),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e?t:(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t,t)}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new vn),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}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class mn{constructor(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}}class _n{constructor(){this._head=null,this._tail=null}add(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)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&je(n.trackById,t))return n;return null}remove(t){const 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}}class vn{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _n,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function yn(t,e,n){const s=t.previousIndex;if(null===s)return s;let r=0;return n&&s{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const s=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,s)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const 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}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const s=n._prev,r=n._next;return s&&(s._next=r),r&&(r._prev=s),n._next=null,n._prev=null,n}const n=new Cn(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;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}}_maybeAddToChanges(t,e){je(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Cn{constructor(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}}const xn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new pn])}),t})(),Sn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new wn])}),t})(),En=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>kn()),t})(),kn=(...t)=>{},Tn=[new wn],On=new xn([new pn]),In=new Sn(Tn),Rn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Pn(t,sn)),t})(),Pn=nn,An=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Mn(t,sn)),t})(),Mn=nn;function Nn(t,e,n,s){let r=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${e}'. Current value: '${n}'.`;return s&&(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){const n=new Error(t);return Dn(n,e),n}(r,t)}function Dn(t,e){t[Zt]=e,t[Xt]=e.logError.bind(e)}function Vn(t){return new Error(`ViewDestroyedError: Attempt to use a destroyed view: ${t}`)}function $n(t,e,n){const s=t.state,r=1792&s;return r===e?(t.state=-1793&s|n,t.initIndex=-1,!0):r===n}function Ln(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function jn(t,e){return t.nodes[e]}function Un(t,e){return t.nodes[e]}function zn(t,e){return t.nodes[e]}function Fn(t,e){return t.nodes[e]}function Hn(t,e){return t.nodes[e]}const Bn={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},Gn=()=>{},Wn=new Map;function Yn(t){let e=Wn.get(t);return e||(e=yt(t)+"_"+Wn.size,Wn.set(t,e)),e}const qn="$$undefined",Zn="$$empty";function Qn(t){return{id:qn,styles:t.styles,encapsulation:t.encapsulation,data:t.data}}let Xn=0;function Kn(t,e,n,s){return!(!(2&t.state)&&je(t.oldValues[e.bindingIndex+n],s))}function Jn(t,e,n,s){return!!Kn(t,e,n,s)&&(t.oldValues[e.bindingIndex+n]=s,!0)}function ts(t,e,n,s){const r=t.oldValues[e.bindingIndex+n];if(1&t.state||!Ue(r,s)){const i=e.bindings[n].name;throw Nn(Bn.createDebugContext(t,e.nodeIndex),`${i}: ${r}`,`${i}: ${s}`,0!=(1&t.state))}}function es(t){let e=t;for(;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function ns(t,e){let n=t;for(;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function ss(t,e,n,s){try{return es(33554432&t.def.nodes[e].flags?Un(t,e).componentView:t),Bn.handleEvent(t,e,n,s)}catch(r){t.root.errorHandler.handleError(r)}}function rs(t){return t.parent?Un(t.parent,t.parentNodeDef.nodeIndex):null}function is(t){return t.parent?t.parentNodeDef.parent:null}function os(t,e){switch(201347067&e.flags){case 1:return Un(t,e.nodeIndex).renderElement;case 2:return jn(t,e.nodeIndex).renderText}}function ls(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function as(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function cs(t){return 1<{"number"==typeof t?(e[t]=r,n|=cs(t)):s[t]=r}),{matchedQueries:e,references:s,matchedQueryIds:n}}function hs(t,e){return t.map(t=>{let n,s;return Array.isArray(t)?[s,n]=t:(s=0,n=t),n&&("function"==typeof n||"object"==typeof n)&&e&&Object.defineProperty(n,Pt,{value:e,configurable:!0}),{flags:s,token:n,tokenKey:Yn(n)}})}function ds(t,e,n){let s=n.renderParent;return s?0==(1&s.flags)||0==(33554432&s.flags)||s.element.componentRendererType&&s.element.componentRendererType.encapsulation===Jt.Native?Un(t,n.renderParent.nodeIndex).renderElement:void 0:e}const ps=new WeakMap;function fs(t){let e=ps.get(t);return e||((e=t(()=>Gn)).factory=t,ps.set(t,e)),e}function gs(t,e,n,s,r){3===e&&(n=t.renderer.parentNode(os(t,t.def.lastRenderRootNode))),ms(t,e,0,t.def.nodes.length-1,n,s,r)}function ms(t,e,n,s,r,i,o){for(let l=n;l<=s;l++){const n=t.def.nodes[l];11&n.flags&&vs(t,n,e,r,i,o),l+=n.childCount}}function _s(t,e,n,s,r,i){let o=t;for(;o&&!ls(o);)o=o.parent;const l=o.parent,a=is(o),c=a.nodeIndex+a.childCount;for(let u=a.nodeIndex+1;u<=c;u++){const t=l.def.nodes[u];t.ngContentIndex===e&&vs(l,t,n,s,r,i),u+=t.childCount}if(!l.parent){const o=t.root.projectableNodes[e];if(o)for(let e=0;e-1}(r)||"root"===i.providedIn&&r._def.isRoot))){const n=t._providers.length;return t._def.providers[n]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:n,token:e.token},t._providers[n]=Ss,t._providers[n]=Rs(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Tt(s)}var r,i}function Rs(t,e){let n;switch(201347067&e.flags){case 512:n=function(t,e,n){const s=n.length;switch(s){case 0:return new e;case 1:return new e(Is(t,n[0]));case 2:return new e(Is(t,n[0]),Is(t,n[1]));case 3:return new e(Is(t,n[0]),Is(t,n[1]),Is(t,n[2]));default:const r=new Array(s);for(let e=0;e=n.length)&&(e=n.length-1),e<0)return null;const s=n[e];return s.viewContainerParent=null,Ds(n,e),Bn.dirtyParentQueries(s),Ms(s),s}function As(t,e,n){const s=e?os(e,e.def.lastRenderRootNode):t.renderElement,r=n.renderer.parentNode(s),i=n.renderer.nextSibling(s);gs(n,2,r,i,void 0)}function Ms(t){gs(t,3,null,null,void 0)}function Ns(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Ds(t,e){e>=t.length-1?t.pop():t.splice(e,1)}const Vs=new Object;function $s(t,e,n,s,r,i){return new Ls(t,e,n,s,r,i)}class Ls extends Ye{constructor(t,e,n,s,r,i){super(),this.selector=t,this.componentType=e,this._inputs=s,this._outputs=r,this.ngContentSelectors=i,this.viewDefFactory=n}get inputs(){const t=[],e=this._inputs;for(let n in e)t.push({propName:n,templateName:e[n]});return t}get outputs(){const t=[];for(let e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t}create(t,e,n,s){if(!s)throw new Error("ngModule should be provided");const r=fs(this.viewDefFactory),i=r.nodes[0].element.componentProvider.nodeIndex,o=Bn.createRootView(t,e||[],n,r,s,Vs),l=zn(o,i).instance;return n&&o.renderer.setAttribute(Un(o,0).renderElement,"ng-version",dn.full),new js(o,new Hs(o),l)}}class js extends We{constructor(t,e,n){super(),this._view=t,this._viewRef=e,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=e,this.changeDetectorRef=e,this.instance=n}get location(){return new sn(Un(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new Ys(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(t){this._viewRef.onDestroy(t)}}function Us(t,e,n){return new zs(t,e,n)}class zs{constructor(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}get element(){return new sn(this._data.renderElement)}get injector(){return new Ys(this._view,this._elDef)}get parentInjector(){let t=this._view,e=this._elDef.parent;for(;!e&&t;)e=is(t),t=t.parent;return t?new Ys(t,e):new Ys(this._view,null)}clear(){for(let t=this._embeddedViews.length-1;t>=0;t--){const e=Ps(this._data,t);Bn.destroyView(e)}}get(t){const e=this._embeddedViews[t];if(e){const t=new Hs(e);return t.attachToViewContainerRef(this),t}return null}get length(){return this._embeddedViews.length}createEmbeddedView(t,e,n){const s=t.createEmbeddedView(e||{});return this.insert(s,n),s}createComponent(t,e,n,s,r){const i=n||this.parentInjector;r||t instanceof Je||(r=i.get(tn));const o=t.create(i,s,void 0,r);return this.insert(o.hostView,e),o}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=t;return function(t,e,n,s){let r=e.viewContainer._embeddedViews;null==n&&(n=r.length),s.viewContainerParent=t,Ns(r,n,s),function(t,e){const n=rs(e);if(!n||n===t||16&e.state)return;e.state|=16;let s=n.template._projectedViews;s||(s=n.template._projectedViews=[]),s.push(e),function(t,n){if(4&n.flags)return;e.parent.def.nodeFlags|=4,n.flags|=4;let s=n.parent;for(;s;)s.childFlags|=4,s=s.parent}(0,e.parentNodeDef)}(e,s),Bn.dirtyParentQueries(s),As(e,n>0?r[n-1]:null,s)}(this._view,this._data,e,n._view),n.attachToViewContainerRef(this),t}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(t._view);return function(t,e,s){const r=t.viewContainer._embeddedViews,i=r[n];Ds(r,n),null==s&&(s=r.length),Ns(r,s,i),Bn.dirtyParentQueries(i),Ms(i),As(t,s>0?r[s-1]:null,i)}(this._data,0,e),t}indexOf(t){return this._embeddedViews.indexOf(t._view)}remove(t){const e=Ps(this._data,t);e&&Bn.destroyView(e)}detach(t){const e=Ps(this._data,t);return e?new Hs(e):null}}function Fs(t){return new Hs(t)}class Hs{constructor(t){this._view=t,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(t){const e=[];return gs(t,0,void 0,void 0,e),e}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){es(this._view)}detach(){this._view.state&=-5}detectChanges(){const t=this._view.root.rendererFactory;t.begin&&t.begin();try{Bn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}}checkNoChanges(){Bn.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Bn.destroyView(this._view)}detachFromAppRef(){this._appRef=null,Ms(this._view),Bn.dirtyParentQueries(this._view)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}}function Bs(t,e){return new Gs(t,e)}class Gs extends Rn{constructor(t,e){super(),this._parentView=t,this._def=e}createEmbeddedView(t){return new Hs(Bn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))}get elementRef(){return new sn(Un(this._parentView,this._def.nodeIndex).renderElement)}}function Ws(t,e){return new Ys(t,e)}class Ys{constructor(t,e){this.view=t,this.elDef=e}get(t,e=Dt.THROW_IF_NOT_FOUND){return Bn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:Yn(t)},e)}}function qs(t,e){const n=t.def.nodes[e];if(1&n.flags){const e=Un(t,n.nodeIndex);return n.element.template?e.template:e.renderElement}if(2&n.flags)return jn(t,n.nodeIndex).renderText;if(20240&n.flags)return zn(t,n.nodeIndex).instance;throw new Error(`Illegal state: read nodeValue for node index ${e}`)}function Zs(t){return new Qs(t.renderer)}class Qs{constructor(t){this.delegate=t}selectRootElement(t){return this.delegate.selectRootElement(t)}createElement(t,e){const[n,s]=bs(e),r=this.delegate.createElement(s,n);return t&&this.delegate.appendChild(t,r),r}createViewRoot(t){return t}createTemplateAnchor(t){const e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e}createText(t,e){const n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n}projectNodes(t,e){for(let n=0;nt())}onDestroy(t){this._destroyListeners.push(t)}}const Js=Yn(on),tr=Yn(cn),er=Yn(sn),nr=Yn(An),sr=Yn(Rn),rr=Yn(En),ir=Yn(Dt),or=Yn(Mt);function lr(t,e,n,s,r,i,o,l){const a=[];if(o)for(let u in o){const[t,e]=o[u];a[t]={flags:8,name:u,nonMinifiedName:e,ns:null,securityContext:null,suffix:null}}const c=[];if(l)for(let u in l)c.push({type:1,propName:u,target:null,eventName:l[u]});return cr(t,e|=16384,n,s,r,r,i,a,c)}function ar(t,e,n,s,r){return cr(-1,t,e,0,n,s,r)}function cr(t,e,n,s,r,i,o,l,a){const{matchedQueries:c,references:u,matchedQueryIds:h}=us(n);a||(a=[]),l||(l=[]),i=Ct(i);const d=hs(o,yt(r));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:h,references:u,ngContentIndex:-1,childCount:s,bindings:l,bindingFlags:Cs(l),outputs:a,element:null,provider:{token:r,value:i,deps:d},text:null,query:null,ngContent:null}}function ur(t,e){return fr(t,e)}function hr(t,e){let n=t;for(;n.parent&&!ls(n);)n=n.parent;return gr(n.parent,is(n),!0,e.provider.value,e.provider.deps)}function dr(t,e){const n=gr(t,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(let s=0;sss(t,e,n,s)}function fr(t,e){const n=(8192&e.flags)>0,s=e.provider;switch(201347067&e.flags){case 512:return gr(t,e.parent,n,s.value,s.deps);case 1024:return function(t,e,n,s,r){const i=r.length;switch(i){case 0:return s();case 1:return s(_r(t,e,n,r[0]));case 2:return s(_r(t,e,n,r[0]),_r(t,e,n,r[1]));case 3:return s(_r(t,e,n,r[0]),_r(t,e,n,r[1]),_r(t,e,n,r[2]));default:const o=Array(i);for(let s=0;ste});class Sr extends T{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let s,r=t=>null,i=()=>null;t&&"object"==typeof t?(s=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(r=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(i=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(i=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(s,r,i);return t instanceof d&&t.add(o),o}}class Er{constructor(){this.dirty=!0,this._results=[],this.changes=new Sr,this.length=0}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}[Le()](){return this._results[Le()]()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let s=0;s(class{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}))(),Ir=new Rt("AppId");function Rr(){return`${Pr()}${Pr()}${Pr()}`}function Pr(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const Ar=new Rt("Platform Initializer"),Mr=new Rt("Platform ID"),Nr=new Rt("appBootstrapListener"),Dr=(()=>(class{log(t){console.log(t)}warn(t){console.warn(t)}}))();function Vr(){throw new Error("Runtime compiler is not loaded")}const $r=Vr,Lr=Vr,jr=Vr,Ur=Vr,zr=(()=>(class{constructor(){this.compileModuleSync=$r,this.compileModuleAsync=Lr,this.compileModuleAndAllComponentsSync=jr,this.compileModuleAndAllComponentsAsync=Ur}clearCache(){}clearCacheFor(t){}getModuleId(t){}}))();class Fr{}let Hr,Br;function Gr(){const t=St.wtf;return!(!t||!(Hr=t.trace)||(Br=Hr.events,0))}const Wr=Gr(),Yr=Wr?function(t,e=null){return Br.createScope(t,e)}:(t,e)=>(function(t,e){return null}),qr=Wr?function(t,e){return Hr.leaveScope(t,e),e}:(t,e)=>e,Zr=(()=>Promise.resolve(0))();function Qr(t){"undefined"==typeof Zone?Zr.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Xr{constructor({enableLongStackTrace:t=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Sr(!1),this.onMicrotaskEmpty=new Sr(!1),this.onStable=new Sr(!1),this.onError=new Sr(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var e;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)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,n,s,r,i,o)=>{try{return ei(e),t.invokeTask(s,r,i,o)}finally{ni(e)}},onInvoke:(t,n,s,r,i,o,l)=>{try{return ei(e),t.invoke(s,r,i,o,l)}finally{ni(e)}},onHasTask:(t,n,s,r)=>{t.hasTask(s,r),n===s&&("microTask"==r.change?(e.hasPendingMicrotasks=r.microTask,ti(e)):"macroTask"==r.change&&(e.hasPendingMacrotasks=r.macroTask))},onHandleError:(t,n,s,r)=>(t.handleError(s,r),e.runOutsideAngular(()=>e.onError.emit(r)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Xr.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Xr.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,s){const r=this._inner,i=r.scheduleEventTask("NgZoneEvent: "+s,t,Jr,Kr,Kr);try{return r.runTask(i,e,n)}finally{r.cancelTask(i)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function Kr(){}const Jr={};function ti(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(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function ei(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ni(t){t._nesting--,ti(t)}class si{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Sr,this.onMicrotaskEmpty=new Sr,this.onStable=new Sr,this.onError=new Sr}run(t){return t()}runGuarded(t){return t()}runOutsideAngular(t){return t()}runTask(t){return t()}}const ri=(()=>(class{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Xr.assertNotInAngularZone(),Qr(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Qr(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let s=-1;e&&e>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==s),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:s,updateCb:n})}whenStable(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()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}))(),ii=(()=>{class t{constructor(){this._applications=new Map,ai.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return ai.findTestabilityInTree(this,t,e)}}return t.ctorParameters=(()=>[]),t})();class oi{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let li,ai=new oi,ci=function(t){return t instanceof Je};const ui=new Rt("AllowMultipleToken");class hi{constructor(t,e){this.name=t,this.token=e}}function di(t,e,n=[]){const s=`Platform: ${e}`,r=new Rt(s);return(e=[])=>{let i=pi();if(!i||i.injector.get(ui,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0});!function(t){if(li&&!li.destroyed&&!li.injector.get(ui,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");li=t.get(fi);const e=t.get(Ar,null);e&&e.forEach(t=>t())}(Dt.create({providers:t,name:s}))}return function(t){const e=pi();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}(r)}}function pi(){return li&&!li.destroyed?li:null}const fi=(()=>(class{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n="noop"===(r=e?e.ngZone:void 0)?new si:("zone.js"===r?void 0:r)||new Xr({enableLongStackTrace:le()}),s=[{provide:Xr,useValue:n}];var r;return n.run(()=>{const e=Dt.create({providers:s,parent:this.injector,name:t.moduleType.name}),r=t.create(e),i=r.injector.get(re,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return r.onDestroy(()=>_i(this._modules,r)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{i.handleError(t)}})),function(t,e,n){try{const r=n();return De(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(s){throw e.runOutsideAngular(()=>t.handleError(s)),s}}(i,n,()=>{const t=r.injector.get(Or);return t.runInitializers(),t.donePromise.then(()=>(this._moduleDoBootstrap(r),r))})})}bootstrapModule(t,e=[]){const n=gi({},e);return function(t,e,n){return t.get(Fr).createCompiler([e]).compileModuleAsync(n)}(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(mi);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${yt(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)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}))();function gi(t,e){return Array.isArray(e)?e.reduce(gi,t):Object.assign({},t,e)}const mi=(()=>{class t{constructor(t,e,n,s,r,i){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=s,this._componentFactoryResolver=r,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=le(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new b(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new b(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Xr.assertNotInAngularZone(),Qr(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Xr.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=K(o,l.pipe(t=>J()(it(lt)(t))))}bootstrap(t,e){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.");let n;n=t instanceof Ye?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const s=ci(n)?null:this._injector.get(tn),r=n.create(Dt.NULL,[],e||n.selector,s);r.onDestroy(()=>{this._unloadComponent(r)});const i=r.injector.get(ri,null);return i&&r.injector.get(ii).registerApplication(r.location.nativeElement,i),this._loadComponent(r),le()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const e=t._tickScope();try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,qr(e)}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;_i(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Nr,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),_i(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t._tickScope=Yr("ApplicationRef#tick()"),t})();function _i(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class vi{}const yi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},wi=(()=>(class{constructor(t,e){this._compiler=t,this._config=e||yi}load(t){return this._compiler instanceof zr?this.loadFactory(t):this.loadAndCompile(t)}loadAndCompile(t){let[e,s]=t.split("#");return void 0===s&&(s="default"),n("zn8P")(e).then(t=>t[s]).then(t=>bi(t,e,s)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,s]=t.split("#"),r="NgFactory";return void 0===s&&(s="default",r=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[s+r]).then(t=>bi(t,e,s))}}))();function bi(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}class Ci{constructor(t,e){this.name=t,this.callback=e}}class xi{constructor(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Si&&e.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class Si extends xi{constructor(t,e,n){super(t,e,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=t}addChild(t){t&&(this.childNodes.push(t),t.parent=this)}removeChild(t){const e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))}insertChildrenAfter(t,e){const n=this.childNodes.indexOf(t);-1!==n&&(this.childNodes.splice(n+1,0,...e),e.forEach(e=>{e.parent&&e.parent.removeChild(e),t.parent=this}))}insertBefore(t,e){const 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))}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return function t(e,n,s){e.childNodes.forEach(e=>{e instanceof Si&&(n(e)&&s.push(e),t(e,n,s))})}(this,t,e),e}queryAllNodes(t){const e=[];return function t(e,n,s){e instanceof Si&&e.childNodes.forEach(e=>{n(e)&&s.push(e),e instanceof Si&&t(e,n,s)})}(this,t,e),e}get children(){return this.childNodes.filter(t=>t instanceof Si)}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name==t&&n.callback(e)})}}const Ei=new Map,ki=function(t){return Ei.get(t)||null};function Ti(t){Ei.set(t.nativeNode,t)}const Oi=di(null,"core",[{provide:Mr,useValue:"unknown"},{provide:fi,deps:[Dt]},{provide:ii,deps:[]},{provide:Dr,deps:[]}]),Ii=new Rt("LocaleId");function Ri(){return On}function Pi(){return In}function Ai(t){return t||"en-US"}function Mi(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}const Ni=(()=>(class{constructor(t){}}))();function Di(t,e,n,s,r,i){t|=1;const{matchedQueries:o,references:l,matchedQueryIds:a}=us(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:o,matchedQueryIds:a,references:l,ngContentIndex:n,childCount:s,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?fs(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:r||Gn},provider:null,text:null,query:null,ngContent:null}}function Vi(t,e,n,s,r,i,o=[],l,a,c,u,h){c||(c=Gn);const{matchedQueries:d,references:p,matchedQueryIds:f}=us(n);let g=null,m=null;i&&([g,m]=bs(i)),l=l||[];const _=new Array(l.length);for(let w=0;w{const[n,s]=bs(t);return[n,s,e]});return h=function(t){if(t&&t.id===qn){const e=null!=t.encapsulation&&t.encapsulation!==Jt.None||t.styles.length||Object.keys(t.data).length;t.id=e?`c${Xn++}`:Zn}return t&&t.id===Zn&&(t=null),t||null}(h),u&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:d,matchedQueryIds:f,references:p,ngContentIndex:s,childCount:r,bindings:_,bindingFlags:Cs(_),outputs:v,element:{ns:g,name:m,attrs:y,template:null,componentProvider:null,componentView:u||null,componentRendererType:h,publicProviders:null,allProviders:null,handleEvent:c||Gn},provider:null,text:null,query:null,ngContent:null}}function $i(t,e,n){const s=n.element,r=t.root.selectorOrNode,i=t.renderer;let o;if(t.parent||!r){o=s.name?i.createElement(s.name,s.ns):i.createComment("");const r=ds(t,e,n);r&&i.appendChild(r,o)}else o=i.selectRootElement(r,!!s.componentRendererType&&s.componentRendererType.encapsulation===Jt.ShadowDom);if(s.attrs)for(let l=0;lss(t,e,n,s)}function Ui(t,e,n,s){if(!Jn(t,e,n,s))return!1;const r=e.bindings[n],i=Un(t,e.nodeIndex),o=i.renderElement,l=r.name;switch(15&r.flags){case 1:!function(t,e,n,s,r,i){const o=e.securityContext;let l=o?t.root.sanitizer.sanitize(o,i):i;l=null!=l?l.toString():null;const a=t.renderer;null!=i?a.setAttribute(n,r,l,s):a.removeAttribute(n,r,s)}(t,r,o,r.ns,l,s);break;case 2:!function(t,e,n,s){const r=t.renderer;s?r.addClass(e,n):r.removeClass(e,n)}(t,o,l,s);break;case 4:!function(t,e,n,s,r){let i=t.root.sanitizer.sanitize(Ie.STYLE,r);if(null!=i){i=i.toString();const t=e.suffix;null!=t&&(i+=t)}else i=null;const o=t.renderer;null!=i?o.setStyle(n,s,i):o.removeStyle(n,s)}(t,r,o,l,s);break;case 8:!function(t,e,n,s,r){const i=e.securityContext;let o=i?t.root.sanitizer.sanitize(i,r):r;t.renderer.setProperty(n,s,o)}(33554432&e.flags&&32&r.flags?i.componentView:t,r,o,l,s)}return!0}function zi(t,e,n){let s=[];for(let r in n)s.push({propName:r,bindingType:n[r]});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:cs(e),bindings:s},ngContent:null}}function Fi(t){const e=t.def.nodeMatchedQueries;for(;t.parent&&as(t);){let n=t.parentNodeDef;t=t.parent;const s=n.nodeIndex+n.childCount;for(let r=0;r<=s;r++){const s=t.def.nodes[r];67108864&s.flags&&536870912&s.flags&&(s.query.filterId&e)===s.query.filterId&&Hn(t,r).setDirty(),!(1&s.flags&&r+s.childCount0)c=t,Ji(t)||(u=t);else for(;c&&f===c.nodeIndex+c.childCount;){const t=c.parent;t&&(t.childFlags|=c.childFlags,t.childMatchedQueries|=c.childMatchedQueries),u=(c=t)&&Ji(c)?c.renderParent:c}}return{factory:null,nodeFlags:o,rootNodeFlags:l,nodeMatchedQueries:a,flags:t,nodes:e,updateDirectives:n||Gn,updateRenderer:s||Gn,handleEvent:(t,n,s,r)=>e[n].element.handleEvent(t,s,r),bindingCount:r,outputCount:i,lastRenderRootNode:p}}function Ji(t){return 0!=(1&t.flags)&&null===t.element.name}function to(t,e,n){const s=e.element&&e.element.template;if(s){if(!s.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(s.lastRenderRootNode&&16777216&s.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){const s=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=s&&e.nodeIndex+e.childCount>s)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${e.nodeIndex}!`)}}function eo(t,e,n,s){const r=ro(t.root,t.renderer,t,e,n);return io(r,t.component,s),oo(r),r}function no(t,e,n){const s=ro(t,t.renderer,null,null,e);return io(s,n,n),oo(s),s}function so(t,e,n,s){const r=e.element.componentRendererType;let i;return i=r?t.root.rendererFactory.createRenderer(s,r):t.root.renderer,ro(t.root,i,t,e.element.componentProvider,n)}function ro(t,e,n,s,r){const i=new Array(r.nodes.length),o=r.outputCount?new Array(r.outputCount):null;return{def:r,parent:n,viewContainerParent:null,parentNodeDef:s,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(r.bindingCount),disposables:o,initIndex:-1}}function io(t,e,n){t.component=e,t.context=n}function oo(t){let e;ls(t)&&(e=Un(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);const n=t.def,s=t.nodes;for(let r=0;r0&&Ui(t,e,0,n)&&(p=!0),d>1&&Ui(t,e,1,s)&&(p=!0),d>2&&Ui(t,e,2,r)&&(p=!0),d>3&&Ui(t,e,3,i)&&(p=!0),d>4&&Ui(t,e,4,o)&&(p=!0),d>5&&Ui(t,e,5,l)&&(p=!0),d>6&&Ui(t,e,6,a)&&(p=!0),d>7&&Ui(t,e,7,c)&&(p=!0),d>8&&Ui(t,e,8,u)&&(p=!0),d>9&&Ui(t,e,9,h)&&(p=!0),p}(t,e,n,s,r,i,o,l,a,c,u,h);case 2:return function(t,e,n,s,r,i,o,l,a,c,u,h){let d=!1;const p=e.bindings,f=p.length;if(f>0&&Jn(t,e,0,n)&&(d=!0),f>1&&Jn(t,e,1,s)&&(d=!0),f>2&&Jn(t,e,2,r)&&(d=!0),f>3&&Jn(t,e,3,i)&&(d=!0),f>4&&Jn(t,e,4,o)&&(d=!0),f>5&&Jn(t,e,5,l)&&(d=!0),f>6&&Jn(t,e,6,a)&&(d=!0),f>7&&Jn(t,e,7,c)&&(d=!0),f>8&&Jn(t,e,8,u)&&(d=!0),f>9&&Jn(t,e,9,h)&&(d=!0),d){let d=e.text.prefix;f>0&&(d+=Xi(n,p[0])),f>1&&(d+=Xi(s,p[1])),f>2&&(d+=Xi(r,p[2])),f>3&&(d+=Xi(i,p[3])),f>4&&(d+=Xi(o,p[4])),f>5&&(d+=Xi(l,p[5])),f>6&&(d+=Xi(a,p[6])),f>7&&(d+=Xi(c,p[7])),f>8&&(d+=Xi(u,p[8])),f>9&&(d+=Xi(h,p[9]));const g=jn(t,e.nodeIndex).renderText;t.renderer.setValue(g,d)}return d}(t,e,n,s,r,i,o,l,a,c,u,h);case 16384:return function(t,e,n,s,r,i,o,l,a,c,u,h){const d=zn(t,e.nodeIndex),p=d.instance;let f=!1,g=void 0;const m=e.bindings.length;return m>0&&Kn(t,e,0,n)&&(f=!0,g=yr(t,d,e,0,n,g)),m>1&&Kn(t,e,1,s)&&(f=!0,g=yr(t,d,e,1,s,g)),m>2&&Kn(t,e,2,r)&&(f=!0,g=yr(t,d,e,2,r,g)),m>3&&Kn(t,e,3,i)&&(f=!0,g=yr(t,d,e,3,i,g)),m>4&&Kn(t,e,4,o)&&(f=!0,g=yr(t,d,e,4,o,g)),m>5&&Kn(t,e,5,l)&&(f=!0,g=yr(t,d,e,5,l,g)),m>6&&Kn(t,e,6,a)&&(f=!0,g=yr(t,d,e,6,a,g)),m>7&&Kn(t,e,7,c)&&(f=!0,g=yr(t,d,e,7,c,g)),m>8&&Kn(t,e,8,u)&&(f=!0,g=yr(t,d,e,8,u,g)),m>9&&Kn(t,e,9,h)&&(f=!0,g=yr(t,d,e,9,h,g)),g&&p.ngOnChanges(g),65536&e.flags&&Ln(t,256,e.nodeIndex)&&p.ngOnInit(),262144&e.flags&&p.ngDoCheck(),f}(t,e,n,s,r,i,o,l,a,c,u,h);case 32:case 64:case 128:return function(t,e,n,s,r,i,o,l,a,c,u,h){const d=e.bindings;let p=!1;const f=d.length;if(f>0&&Jn(t,e,0,n)&&(p=!0),f>1&&Jn(t,e,1,s)&&(p=!0),f>2&&Jn(t,e,2,r)&&(p=!0),f>3&&Jn(t,e,3,i)&&(p=!0),f>4&&Jn(t,e,4,o)&&(p=!0),f>5&&Jn(t,e,5,l)&&(p=!0),f>6&&Jn(t,e,6,a)&&(p=!0),f>7&&Jn(t,e,7,c)&&(p=!0),f>8&&Jn(t,e,8,u)&&(p=!0),f>9&&Jn(t,e,9,h)&&(p=!0),p){const p=Fn(t,e.nodeIndex);let g;switch(201347067&e.flags){case 32:g=new Array(d.length),f>0&&(g[0]=n),f>1&&(g[1]=s),f>2&&(g[2]=r),f>3&&(g[3]=i),f>4&&(g[4]=o),f>5&&(g[5]=l),f>6&&(g[6]=a),f>7&&(g[7]=c),f>8&&(g[8]=u),f>9&&(g[9]=h);break;case 64:g={},f>0&&(g[d[0].name]=n),f>1&&(g[d[1].name]=s),f>2&&(g[d[2].name]=r),f>3&&(g[d[3].name]=i),f>4&&(g[d[4].name]=o),f>5&&(g[d[5].name]=l),f>6&&(g[d[6].name]=a),f>7&&(g[d[7].name]=c),f>8&&(g[d[8].name]=u),f>9&&(g[d[9].name]=h);break;case 128:const t=n;switch(f){case 1:g=t.transform(n);break;case 2:g=t.transform(s);break;case 3:g=t.transform(s,r);break;case 4:g=t.transform(s,r,i);break;case 5:g=t.transform(s,r,i,o);break;case 6:g=t.transform(s,r,i,o,l);break;case 7:g=t.transform(s,r,i,o,l,a);break;case 8:g=t.transform(s,r,i,o,l,a,c);break;case 9:g=t.transform(s,r,i,o,l,a,c,u);break;case 10:g=t.transform(s,r,i,o,l,a,c,u,h)}}p.value=g}return p}(t,e,n,s,r,i,o,l,a,c,u,h);default:throw"unreachable"}}(t,e,s,r,i,o,l,a,c,u,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){let s=!1;for(let r=0;r0&&ts(t,e,0,n),d>1&&ts(t,e,1,s),d>2&&ts(t,e,2,r),d>3&&ts(t,e,3,i),d>4&&ts(t,e,4,o),d>5&&ts(t,e,5,l),d>6&&ts(t,e,6,a),d>7&&ts(t,e,7,c),d>8&&ts(t,e,8,u),d>9&&ts(t,e,9,h)}(t,e,s,r,i,o,l,a,c,u,h,d):function(t,e,n){for(let s=0;s{const s=Oo.get(t.token);3840&t.flags&&s&&(e=!0,n=n||s.deprecatedBehavior)}),t.modules.forEach(t=>{Io.forEach((s,r)=>{_t(r).providedIn===t&&(e=!0,n=n||s.deprecatedBehavior)})}),{hasOverrides:e,hasDeprecatedOverrides:n})}(t);return e?(function(t){for(let e=0;e0){let e=new Set(t.modules);Io.forEach((s,r)=>{if(e.has(_t(r).providedIn)){let e={token:r,flags:s.flags|(n?4096:0),deps:hs(s.deps),value:s.value,index:t.providers.length};t.providers.push(e),t.providersByKey[Yn(r)]=e}})}}(t=t.factory(()=>Gn)),t):t}(s))}const Oo=new Map,Io=new Map,Ro=new Map;function Po(t){let e;Oo.set(t.token,t),"function"==typeof t.token&&(e=_t(t.token))&&"function"==typeof e.providedIn&&Io.set(t.token,t)}function Ao(t,e){const n=fs(e.viewDefFactory),s=fs(n.nodes[0].element.componentView);Ro.set(t,s)}function Mo(){Oo.clear(),Io.clear(),Ro.clear()}function No(t){if(0===Oo.size)return t;const e=function(t){const e=[];let n=null;for(let s=0;sGn);for(let s=0;s"-"+t[1].toLowerCase())}`)]=Ne(l))}const s=e.parent,l=Un(t,s.nodeIndex).renderElement;if(s.element.name)for(let e in n){const s=n[e];null!=s?t.renderer.setAttribute(l,e,s):t.renderer.removeAttribute(l,e)}else t.renderer.setValue(l,`bindings=${JSON.stringify(n,null,2)}`)}}var r,i}function Zo(t,e,n,s){ho(t,e,n,...s)}function Qo(t,e){for(let n=e;n++i===r?t.error.bind(t,...e):Gn),inew Ko(t,e),handleEvent:Go,updateDirectives:Wo,updateRenderer:Yo}:{setCurrentNode:()=>{},createRootView:Co,createEmbeddedView:eo,createComponentView:so,createNgModuleRef:Xs,overrideProvider:Gn,overrideComponentView:Gn,clearOverrides:Gn,checkAndUpdateView:ao,checkNoChangesView:lo,destroyView:fo,createDebugContext:(t,e)=>new Ko(t,e),handleEvent:(t,e,n,s)=>t.def.handleEvent(t,e,n,s),updateDirectives:(t,e)=>t.def.updateDirectives(0===e?Do:Vo,t),updateRenderer:(t,e)=>t.def.updateRenderer(0===e?Do:Vo,t)};Bn.setCurrentNode=t.setCurrentNode,Bn.createRootView=t.createRootView,Bn.createEmbeddedView=t.createEmbeddedView,Bn.createComponentView=t.createComponentView,Bn.createNgModuleRef=t.createNgModuleRef,Bn.overrideProvider=t.overrideProvider,Bn.overrideComponentView=t.overrideComponentView,Bn.clearOverrides=t.clearOverrides,Bn.checkAndUpdateView=t.checkAndUpdateView,Bn.checkNoChangesView=t.checkNoChangesView,Bn.destroyView=t.destroyView,Bn.resolveDep=_r,Bn.createDebugContext=t.createDebugContext,Bn.handleEvent=t.handleEvent,Bn.updateDirectives=t.updateDirectives,Bn.updateRenderer=t.updateRenderer,Bn.dirtyParentQueries=Fi}();const e=function(t){const e=Array.from(t.providers),n=Array.from(t.modules),s={};for(const r in t.providersByKey)s[r]=t.providersByKey[r];return{factory:t.factory,isRoot:t.isRoot,providers:e,modules:n,providersByKey:s}}(fs(this._ngModuleDefFactory));return Bn.createNgModuleRef(this.moduleType,t||Dt.NULL,this._bootstrapComponents,e)}}const ol="Test Runner";function ll(t){let e="";if(t)for(const n in t)t.hasOwnProperty(n)&&null!=t[n]&&(e+=`${e?"&":""}${n}=${t[n]}`);return e}function al(t,e){const n=t.shift();return e[n]?t.length>0?al(t,e[n]):e[n]:null}var cl=n("Wgwc");const ul=(()=>{class t{constructor(){if(this.build=cl(),!t.init){const e=cl();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][APP] ${ol} - ${t} | ${e}`):console[n](`%c[ACA]%c[APP] %c${ol} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0",t.init=!1,t})();class hl{constructor(){this.show_menu=!0}}class dl{}const pl=new Rt("Location Initialized");class fl{}const gl=new Rt("appBaseHref"),ml=(()=>{class t{constructor(e,n){this._subject=new Sr,this._urlChangeListeners=[],this._platformStrategy=e;const s=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=t.stripTrailingSlash(_l(s)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(e,n=""){return this.path()==this.normalize(e+t.normalizeQueryParams(n))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,_l(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(e,n="",s=null){this._platformStrategy.pushState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}replaceState(e,n="",s=null){this._platformStrategy.replaceState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}static normalizeQueryParams(t){return t&&"?"!==t[0]?"?"+t:t}static joinWithSlash(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}static stripTrailingSlash(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}}return t})();function _l(t){return t.replace(/\/index.html$/,"")}const vl=(()=>(class extends fl{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=ml.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,s){let r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,s){let r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),yl=(()=>(class extends fl{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)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.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return ml.joinWithSlash(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+ml.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,s){const r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,s){const r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),wl=void 0;var bl=["en",[["a","p"],["AM","PM"],wl],[["AM","PM"],wl,wl],[["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"]],wl,[["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"]],wl,[["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}",wl,"{1} 'at' {0}",wl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];const Cl={},xl=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),Sl=new Rt("UseV4Plurals");class El{}const kl=(()=>(class extends El{constructor(t,e){super(),this.locale=t,this.deprecatedPluralFn=e}getPluralCategory(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){const e=t.toLowerCase().replace(/_/g,"-");let n=Cl[e];if(n)return n;const s=e.split("-")[0];if(n=Cl[s])return n;if("en"===s)return bl;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[18]}(e||this.locale)(t)){case xl.Zero:return"zero";case xl.One:return"one";case xl.Two:return"two";case xl.Few:return"few";case xl.Many:return"many";default:return"other"}}}))();function Tl(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[s,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(s.trim()===e)return decodeURIComponent(r)}return null}const Ol=(()=>(class{constructor(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}ngOnChanges(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){const e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){const t=e.get(tn);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(t.injector)}else this._moduleRef=null;const n=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(Xe)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(n,this._viewContainerRef.length,e,this.ngComponentOutletContent)}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}))();class Il{constructor(t,e,n,s){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=s}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}const Rl=(()=>(class{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){le()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,s)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Il(null,this._ngForOf,-1,-1),s),r=new Pl(t,n);e.push(r)}else if(null==s)this._viewContainer.remove(n);else{const r=this._viewContainer.get(n);this._viewContainer.move(r,s);const i=new Pl(t,r);e.push(i)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}))();class Pl{constructor(t,e){this.record=t,this.view=e}}const Al=(()=>(class{constructor(t,e){this._viewContainer=t,this._context=new Ml,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){Nl("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Nl("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){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)))}static ngTemplateGuard_ngIf(t,e){return!0}}))();class Ml{constructor(){this.$implicit=null,this.ngIf=null}}function Nl(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${yt(e)}'.`)}class Dl{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}const Vl=(()=>(class{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const 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}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e(class{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new Dl(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}))(),Ll=(()=>(class{constructor(t,e,n){n._addDefault(new Dl(t,e))}}))(),jl=(()=>(class{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){this._shouldRecreateView(t)?(this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))):this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)}_shouldRecreateView(t){const e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)}_hasContextShapeChanged(t){const e=Object.keys(t.previousValue||{}),n=Object.keys(t.currentValue||{});if(e.length===n.length){for(let t of n)if(-1===e.indexOf(t))return!0;return!1}return!0}_updateExistingContext(t){for(let e of Object.keys(t))this._viewRef.context[e]=this.ngTemplateOutletContext[e]}}))(),Ul=(()=>(class{}))(),zl=new Rt("DocumentToken"),Fl="browser";function Hl(t){return t===Fl}const Bl=(()=>{class t{}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new Gl(Ot(zl),window,Ot(re))}),t})();class Gl{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=(()=>[0,0])}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const n=this.document.querySelector(`#${t}`);if(n)return void this.scrollToElement(n);const s=this.document.querySelector(`[name='${t}']`);if(s)return void this.scrollToElement(s)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,s=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(n-r[0],s-r[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}const Wl=new b(t=>t.complete());function Yl(t){return t?function(t){return new b(e=>t.schedule(()=>e.complete()))}(t):Wl}function ql(t){const e=new b(e=>{e.next(t),e.complete()});return e._isScalar=!0,e.value=t,e}function Zl(...t){let e=t[t.length-1];switch(I(e)?t.pop():e=void 0,t.length){case 0:return Yl(e);case 1:return e?G(t,e):ql(t[0]);default:return G(t,e)}}class Ql extends T{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new S;return this._value}next(t){super.next(this._value=t)}}function Xl(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}Xl.prototype=Object.create(Error.prototype);const Kl=Xl,Jl={};class ta{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new ea(t,this.resultSelector))}}class ea extends z{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(Jl),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{let n;try{n=t()}catch(s){return void e.error(s)}return(n?W(n):Yl()).subscribe(e)})}function sa(){return X(1)}function ra(t,e){return function(n){return n.lift(new ia(t,e))}}class ia{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new oa(t,this.predicate,this.thisArg))}}class oa extends g{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}function la(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}la.prototype=Object.create(Error.prototype);const aa=la;function ca(t){return function(e){return 0===t?Yl():e.lift(new ua(t))}}class ua{constructor(t){if(this.total=t,this.total<0)throw new aa}call(t,e){return e.subscribe(new ha(t,this.total))}}class ha extends g{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,s=this.count++;e.length0){const n=this.count>=this.total?this.total:this.count,s=this.ring;for(let r=0;rda({hasValue:!1,next(){this.hasValue=!0},complete(){if(!this.hasValue)throw t()}});function ma(t=null){return e=>e.lift(new _a(t))}class _a{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new va(t,this.defaultValue))}}class va extends g{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}function ya(t,e){const n=arguments.length>=2;return s=>s.pipe(t?ra((e,n)=>t(e,n,s)):Q,ca(1),n?ma(e):ga(()=>new Kl))}function wa(t){return function(e){const n=new ba(t),s=e.lift(n);return n.caught=s}}class ba{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Ca(t,this.selector,this.caught))}}class Ca extends z{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const s=new R(this,void 0,void 0);this.add(s),U(this,n,void 0,void 0,s)}}}function xa(t){return e=>0===t?Yl():e.lift(new Sa(t))}class Sa{constructor(t){if(this.total=t,this.total<0)throw new aa}call(t,e){return e.subscribe(new Ea(t,this.total))}}class Ea extends g{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}function ka(t,e){const n=arguments.length>=2;return s=>s.pipe(t?ra((e,n)=>t(e,n,s)):Q,xa(1),n?ma(e):ga(()=>new Kl))}class Ta{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new Oa(t,this.predicate,this.thisArg,this.source))}}class Oa extends g{constructor(t,e,n,s){super(t),this.predicate=e,this.thisArg=n,this.source=s,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}function Ia(t,e){return"function"==typeof e?n=>n.pipe(Ia((n,s)=>W(t(n,s)).pipe(F((t,r)=>e(n,t,s,r))))):e=>e.lift(new Ra(t))}class Ra{constructor(t){this.project=t}call(t,e){return e.subscribe(new Pa(t,this.project))}}class Pa extends z{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(s){return void this.destination.error(s)}this._innerSub(e,t,n)}_innerSub(t,e,n){const s=this.innerSubscription;s&&s.unsubscribe();const r=new R(this,void 0,void 0);this.destination.add(r),this.innerSubscription=U(this,t,e,n,r)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,s,r){this.destination.next(e)}}function Aa(...t){return sa()(Zl(...t))}function Ma(...t){return e=>{let n=t[t.length-1];I(n)?t.pop():n=null;const s=t.length;return Aa(1!==s||n?s>0?G(t,n):Yl(n):ql(t[0]),e)}}function Na(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(s){return s.lift(new Da(t,e,n))}}class Da{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new Va(t,this.accumulator,this.seed,this.hasSeed))}}class Va extends g{constructor(t,e,n,s){super(t),this.accumulator=e,this._seed=n,this.hasSeed=s,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(s){this.destination.error(s)}this.seed=n,this.destination.next(n)}}function $a(t,e){return Y(t,e,1)}class La{constructor(t){this.callback=t}call(t,e){return e.subscribe(new ja(t,this.callback))}}class ja extends g{constructor(t,e){super(t),this.add(new d(e))}}let Ua=null;function za(){return Ua}class Fa{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(t){this._attrToPropMap=t}}class Ha extends Fa{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const e=this.createElement("div",document);if(null!=this.getStyle(e,"animationName"))this._animationPrefix="";else{const t=["Webkit","Moz","O","ms"];for(let n=0;n{null!=this.getStyle(e,t)&&(this._transitionEnd=n[t])})}catch(t){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(t){return t.getDistributedNodes()}resolveAndSetHref(t,e,n){t.href=null==n?e:e+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}const Ba={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},Ga=3,Wa={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Ya={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},qa=(()=>{if(St.Node)return St.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))}})();class Za extends Ha{parse(t){throw new Error("parse not implemented")}static makeCurrent(){var t;t=new Za,Ua||(Ua=t)}hasProperty(t,e){return e in t}setProperty(t,e,n){t[e]=n}getProperty(t,e){return t[e]}invoke(t,e,n){t[e](...n)}logError(t){window.console&&(console.error?console.error(t):console.log(t))}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return Ba}contains(t,e){return qa.call(t,e)}querySelector(t,e){return t.querySelector(e)}querySelectorAll(t,e){return t.querySelectorAll(e)}on(t,e,n){t.addEventListener(e,n,!1)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}createMouseEvent(t){const e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(t,!0,!0),e}createEvent(t){const e=this.getDefaultDocument().createEvent("Event");return e.initEvent(t,!0,!0),e}preventDefault(t){t.preventDefault(),t.returnValue=!1}isPrevented(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue}getInnerHTML(t){return t.innerHTML}getTemplateContent(t){return"content"in t&&this.isTemplateElement(t)?t.content:null}getOuterHTML(t){return t.outerHTML}nodeName(t){return t.nodeName}nodeValue(t){return t.nodeValue}type(t){return t.type}content(t){return this.hasProperty(t,"content")?t.content:t}firstChild(t){return t.firstChild}nextSibling(t){return t.nextSibling}parentElement(t){return t.parentNode}childNodes(t){return t.childNodes}childNodesAsList(t){const e=t.childNodes,n=new Array(e.length);for(let s=0;st.insertBefore(n,e))}insertAfter(t,e,n){t.insertBefore(n,e.nextSibling)}setInnerHTML(t,e){t.innerHTML=e}getText(t){return t.textContent}setText(t,e){t.textContent=e}getValue(t){return t.value}setValue(t,e){t.value=e}getChecked(t){return t.checked}setChecked(t,e){t.checked=e}createComment(t){return this.getDefaultDocument().createComment(t)}createTemplate(t){const e=this.getDefaultDocument().createElement("template");return e.innerHTML=t,e}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createElementNS(t,e,n){return(n=n||this.getDefaultDocument()).createElementNS(t,e)}createTextNode(t,e){return(e=e||this.getDefaultDocument()).createTextNode(t)}createScriptTag(t,e,n){const s=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return s.setAttribute(t,e),s}createStyleElement(t,e){const n=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(t,e)),n}createShadowRoot(t){return t.createShadowRoot()}getShadowRoot(t){return t.shadowRoot}getHost(t){return t.host}clone(t){return t.cloneNode(!0)}getElementsByClassName(t,e){return t.getElementsByClassName(e)}getElementsByTagName(t,e){return t.getElementsByTagName(e)}classList(t){return Array.prototype.slice.call(t.classList,0)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}hasClass(t,e){return t.classList.contains(e)}setStyle(t,e,n){t.style[e]=n}removeStyle(t,e){t.style[e]=""}getStyle(t,e){return t.style[e]}hasStyle(t,e,n){const s=this.getStyle(t,e)||"";return n?s==n:s.length>0}tagName(t){return t.tagName}attributeMap(t){const e=new Map,n=t.attributes;for(let s=0;s{class t extends dl{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=za().getLocation(),this._history=za().getHistory()}getBaseHrefFromDOM(){return za().getBaseHref(this._doc)}onPopState(t){za().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){za().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){Ka()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){Ka()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return t.ctorParameters=(()=>[{type:void 0,decorators:[{type:ut,args:[zl]}]}]),t})(),tc=new Rt("TRANSITION_ID"),ec=[{provide:Tr,useFactory:function(t,e,n){return()=>{n.get(Or).donePromise.then(()=>{const n=za();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(e=>n.getAttribute(e,"ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[tc,zl,Dt],multi:!0}];class nc{static init(){var t;t=new nc,ai=t}addToWindow(t){St.getAngularTestability=((e,n=!0)=>{const s=t.findTestabilityInTree(e,n);if(null==s)throw new Error("Could not find testability for element.");return s}),St.getAllAngularTestabilities=(()=>t.getAllTestabilities()),St.getAllAngularRootElements=(()=>t.getAllRootElements()),St.frameworkStabilizers||(St.frameworkStabilizers=[]),St.frameworkStabilizers.push(t=>{const e=St.getAllAngularTestabilities();let n=e.length,s=!1;const r=function(e){s=s||e,0==--n&&t(s)};e.forEach(function(t){t.whenStable(r)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const s=t.getTestability(e);return null!=s?s:n?za().isShadowRoot(e)?this.findTestabilityInTree(t,za().getHost(e),!0):this.findTestabilityInTree(t,za().parentElement(e),!0):null}}function sc(t,e){"undefined"!=typeof COMPILED&&COMPILED||((St.ng=St.ng||{})[t]=e)}const rc=(()=>({ApplicationRef:mi,NgZone:Xr}))();function ic(t){return ki(t)}const oc=new Rt("EventManagerPlugins"),lc=(()=>(class{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let s=0;s(class{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}))(),uc=(()=>(class extends cc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>za().remove(t))}}))(),hc={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/"},dc=/%COMP%/g,pc="_nghost-%COMP%",fc="_ngcontent-%COMP%";function gc(t,e,n){for(let s=0;s{!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}const _c=(()=>(class{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new vc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case Jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new bc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case Jt.Native:case Jt.ShadowDom:return new Cc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=gc(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}))();class vc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(hc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let 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}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,s){if(s){e=`${s}:${e}`;const r=hc[s];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const s=hc[n];s?t.removeAttributeNS(s,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&an.DashCase?t.style.setProperty(e,n,s&an.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&an.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){wc(e,"property"),t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return wc(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,mc(n)):this.eventManager.addEventListener(t,e,mc(n))}}const yc=(()=>"@".charCodeAt(0))();function wc(t,e){if(t.charCodeAt(0)===yc)throw new Error(`Found the synthetic ${e} ${t}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class bc extends vc{constructor(t,e,n,s){super(t),this.component=n;const r=gc(s+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr=fc.replace(dc,s+"-"+n.id),this.hostAttr=pc.replace(dc,s+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Cc extends vc{constructor(t,e,n,s){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=s,this.shadowRoot=s.encapsulation===Jt.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const r=gc(s.id,s.styles,[]);for(let i=0;i"undefined"!=typeof Zone&&Zone.__symbol__||function(t){return"__zone_symbol__"+t})(),Sc=xc("addEventListener"),Ec=xc("removeEventListener"),kc={},Tc="__zone_symbol__propagationStopped",Oc=(()=>{const t="undefined"!=typeof Zone&&Zone[xc("BLACK_LISTED_EVENTS")];if(t){const e={};return t.forEach(t=>{e[t]=t}),e}})(),Ic=function(t){return!!Oc&&Oc.hasOwnProperty(t)},Rc=function(t){const e=kc[t.type];if(!e)return;const n=this[e];if(!n)return;const s=[t];if(1===n.length){const t=n[0];return t.zone!==Zone.current?t.zone.run(t.handler,this,s):t.handler.apply(this,s)}{const e=n.slice();for(let n=0;n(class extends ac{constructor(t,e,n){super(t),this.ngZone=e,n&&function(t){return"server"===t}(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const t=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[Tc]=!0),t&&t.apply(this,arguments)}}supports(t){return!0}addEventListener(t,e,n){let s=n;if(!t[Sc]||Xr.isInAngularZone()&&!Ic(e))t.addEventListener(e,s,!1);else{let n=kc[e];n||(n=kc[e]=xc("ANGULAR"+e+"FALSE"));let r=t[n];const i=r&&r.length>0;r||(r=t[n]=[]);const o=Ic(e)?Zone.root:Zone.current;if(0===r.length)r.push({zone:o,handler:s});else{let t=!1;for(let e=0;ethis.removeEventListener(t,e,s)}removeEventListener(t,e,n){let s=t[Ec];if(!s)return t.removeEventListener.apply(t,[e,n,!1]);let r=kc[e],i=r&&t[r];if(!i)return t.removeEventListener.apply(t,[e,n,!1]);let o=!1;for(let l=0;l(class{constructor(){this.events=[],this.overrides={}}buildHammer(t){const e=new Hammer(t,this.options);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(const n in this.overrides)e.get(n).set(this.overrides[n]);return e}}))(),Vc=(()=>(class extends ac{constructor(t,e,n,s){super(t),this._config=e,this.console=n,this.loader=s}supports(t){return!(!Ac.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))}addEventListener(t,e,n){const s=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){let s=!1,r=()=>{s=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(r=(()=>{}));s||(r=this.addEventListener(t,e,n))}).catch(()=>{this.console.warn(`The "${e}" event cannot be bound because the custom `+"Hammer.JS loader failed."),r=(()=>{})}),()=>{r()}}return s.runOutsideAngular(()=>{const r=this._config.buildHammer(t),i=function(t){s.runGuarded(function(){n(t)})};return r.on(e,i),()=>{r.off(e,i),"function"==typeof r.destroy&&r.destroy()}})}isCustomEvent(t){return this._config.events.indexOf(t)>-1}}))(),$c=["alt","control","meta","shift"],Lc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},jc=(()=>{class t extends ac{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,s){const r=t.parseEventName(n),i=t.eventCallback(r.fullKey,s,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>za().onAndCancel(e,r.domEventName,i))}static parseEventName(e){const n=e.toLowerCase().split("."),s=n.shift();if(0===n.length||"keydown"!==s&&"keyup"!==s)return null;const r=t._normalizeKey(n.pop());let i="";if($c.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),i+=t+".")}),i+=r,0!=n.length||0===r.length)return null;const o={};return o.domEventName=s,o.fullKey=i,o}static getEventFullKey(t){let e="",n=za().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),$c.forEach(s=>{s!=n&&(0,Lc[s])(t)&&(e+=s+".")}),e+=n}static eventCallback(e,n,s){return r=>{t.getEventFullKey(r)===e&&s.runGuarded(()=>n(r))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t})();class Uc{}const zc=(()=>(class extends Uc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case Ie.NONE:return e;case Ie.HTML:return e instanceof Hc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){let n=null;try{Te=Te||new ae(t);let s=e?String(e):"";n=Te.getInertBodyElement(s);let r=5,i=s;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,s=i,i=n.innerHTML,n=Te.getInertBodyElement(s)}while(s!==i);const o=new xe,l=o.sanitizeChildren(Oe(n)||n);return le()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),l}finally{if(n){const t=Oe(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e)));case Ie.STYLE:return e instanceof Bc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";const e=t.match(Ae);return e&&he(e[1])===e[1]||t.match(Pe)&&function(t){let e=!0,n=!0;for(let s=0;s{class t{constructor(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.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Ir,useValue:e.appId},{provide:tc,useExisting:Ir},ec]}}}return t})();function Xc(){return new Kc(Ot(zl))}const Kc=(()=>{class t{constructor(t){this._doc=t}getTitle(){return za().getTitle(this._doc)}setTitle(t){za().setTitle(this._doc,t)}}return t.ngInjectableDef=mt({factory:Xc,token:t,providedIn:"root"}),t})();"undefined"!=typeof window&&window;class Jc{constructor(t,e){this.id=t,this.url=e}}class tu extends Jc{constructor(t,e,n="imperative",s=null){super(t,e),this.navigationTrigger=n,this.restoredState=s}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class eu extends Jc{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class nu extends Jc{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class su extends Jc{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ru extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class iu extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class ou extends Jc{constructor(t,e,n,s,r){super(t,e),this.urlAfterRedirects=n,this.state=s,this.shouldActivate=r}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class lu extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class au extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class cu{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class uu{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class hu{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class du{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class pu{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class fu{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class gu{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const mu=(()=>(class{}))(),_u="primary";class vu{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function yu(t){return new vu(t)}const wu="ngNavigationCancelingError";function bu(t){const e=Error("NavigationCancelingError: "+t);return e[wu]=!0,e}function Cu(t,e,n){const s=n.path.split("/");if(s.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||s.length0?t[t.length-1]:null}function Pu(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Au(t){return Ve(t)?t:De(t)?W(Promise.resolve(t)):Zl(t)}function Mu(t,e,n){return n?function(t,e){return Ou(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!$u(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const s in n.children){if(!e.children[s])return!1;if(!t(e.children[s],n.children[s]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>e[n]===t[n])}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,s,r){if(n.segments.length>r.length){return!!$u(n.segments.slice(0,r.length),r)&&!s.hasChildren()}if(n.segments.length===r.length){if(!$u(n.segments,r))return!1;for(const e in s.children){if(!n.children[e])return!1;if(!t(n.children[e],s.children[e]))return!1}return!0}{const t=r.slice(0,n.segments.length),i=r.slice(n.segments.length);return!!$u(n.segments,t)&&!!n.children[_u]&&e(n.children[_u],s,i)}}(e,n,n.segments)}(t.root,e.root)}class Nu{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=yu(this.queryParams)),this._queryParamMap}toString(){return zu.serialize(this)}}class Du{constructor(t,e){this.segments=t,this.children=e,this.parent=null,Pu(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Fu(this)}}class Vu{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=yu(this.parameters)),this._parameterMap}toString(){return qu(this)}}function $u(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Lu(t,e){let n=[];return Pu(t.children,(t,s)=>{s===_u&&(n=n.concat(e(t,s)))}),Pu(t.children,(t,s)=>{s!==_u&&(n=n.concat(e(t,s)))}),n}class ju{}class Uu{parse(t){const e=new Ju(t);return new Nu(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){var e;return`${`/${function t(e,n){if(!e.hasChildren())return Fu(e);if(n){const n=e.children[_u]?t(e.children[_u],!1):"",s=[];return Pu(e.children,(e,n)=>{n!==_u&&s.push(`${n}:${t(e,!1)}`)}),s.length>0?`${n}(${s.join("//")})`:n}{const n=Lu(e,(n,s)=>s===_u?[t(e.children[_u],!1)]:[`${s}:${t(n,!1)}`]);return`${Fu(e)}/(${n.join("//")})`}}(t.root,!0)}`}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Bu(e)}=${Bu(t)}`).join("&"):`${Bu(e)}=${Bu(n)}`});return e.length?`?${e.join("&")}`:""}(t.queryParams)}${"string"==typeof t.fragment?`#${e=t.fragment,encodeURI(e)}`:""}`}}const zu=new Uu;function Fu(t){return t.segments.map(t=>qu(t)).join("/")}function Hu(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Bu(t){return Hu(t).replace(/%3B/gi,";")}function Gu(t){return Hu(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Wu(t){return decodeURIComponent(t)}function Yu(t){return Wu(t.replace(/\+/g,"%20"))}function qu(t){return`${Gu(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Gu(t)}=${Gu(e[t])}`).join("")}`;var e}const Zu=/^[^\/()?;=#]+/;function Qu(t){const e=t.match(Zu);return e?e[0]:""}const Xu=/^[^=?&#]+/,Ku=/^[^?&#]+/;class Ju{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Du([],{}):new Du([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[_u]=new Du(t,e)),n}parseSegment(){const t=Qu(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Vu(Wu(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Qu(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Qu(this.remaining);t&&this.capture(n=t)}t[Wu(e)]=Wu(n)}parseQueryParam(t){const e=function(t){const e=t.match(Xu);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(Ku);return e?e[0]:""}(this.remaining);t&&this.capture(n=t)}const s=Yu(e),r=Yu(n);if(t.hasOwnProperty(s)){let e=t[s];Array.isArray(e)||(t[s]=e=[e]),e.push(r)}else t[s]=r}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Qu(this.remaining),s=this.remaining[n.length];if("/"!==s&&")"!==s&&";"!==s)throw new Error(`Cannot parse url '${this.url}'`);let r=void 0;n.indexOf(":")>-1?(r=n.substr(0,n.indexOf(":")),this.capture(r),this.capture(":")):t&&(r=_u);const i=this.parseChildren();e[r]=1===Object.keys(i).length?i[_u]:new Du([],i),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class th{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=eh(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=eh(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=nh(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return nh(t,this._root).map(t=>t.value)}}function eh(t,e){if(t===e.value)return e;for(const n of e.children){const e=eh(t,n);if(e)return e}return null}function nh(t,e){if(t===e.value)return[e];for(const n of e.children){const s=nh(t,n);if(s.length)return s.unshift(e),s}return[]}class sh{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function rh(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class ih extends th{constructor(t,e){super(t),this.snapshot=e,hh(this,t)}toString(){return this.snapshot.toString()}}function oh(t,e){const n=function(t,e){const n=new ch([],{},{},"",{},_u,e,null,t.root,-1,{});return new uh("",new sh(n,[]))}(t,e),s=new Ql([new Vu("",{})]),r=new Ql({}),i=new Ql({}),o=new Ql({}),l=new Ql(""),a=new lh(s,r,o,l,i,_u,e,n.root);return a.snapshot=n.root,new ih(new sh(a,[]),n)}class lh{constructor(t,e,n,s,r,i,o,l){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=r,this.outlet=i,this.component=o,this._futureSnapshot=l}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(F(t=>yu(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(F(t=>yu(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function ah(t,e="emptyOnly"){const n=t.pathFromRoot;let s=0;if("always"!==e)for(s=n.length-1;s>=1;){const t=n[s],e=n[s-1];if(t.routeConfig&&""===t.routeConfig.path)s--;else{if(e.component)break;s--}}return function(t){return t.reduce((t,e)=>({params:Object.assign({},t.params,e.params),data:Object.assign({},t.data,e.data),resolve:Object.assign({},t.resolve,e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(s))}class ch{constructor(t,e,n,s,r,i,o,l,a,c,u){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=r,this.outlet=i,this.component=o,this.routeConfig=l,this._urlSegment=a,this._lastPathIndex=c,this._resolve=u}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=yu(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=yu(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class uh extends th{constructor(t,e){super(e),this.url=t,hh(this,e)}toString(){return dh(this._root)}}function hh(t,e){e.value._routerState=t,e.children.forEach(e=>hh(t,e))}function dh(t){const e=t.children.length>0?` { ${t.children.map(dh).join(", ")} } `:"";return`${t.value}${e}`}function ph(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Ou(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Ou(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nOu(t.parameters,s[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||fh(t.parent,e.parent))}function gh(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function mh(t,e,n,s,r){let i={};return s&&Pu(s,(t,e)=>{i[e]=Array.isArray(t)?t.map(t=>`${t}`):`${t}`}),new Nu(n.root===t?e:function t(e,n,s){const r={};return Pu(e.children,(e,i)=>{r[i]=e===n?s:t(e,n,s)}),new Du(e.segments,r)}(n.root,t,e),i,r)}class _h{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&gh(n[0]))throw new Error("Root segment cannot have matrix parameters");const s=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(s&&s!==Ru(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class vh{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function yh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[_u]:`${t}`}function wh(t,e,n){if(t||(t=new Du([],{})),0===t.segments.length&&t.hasChildren())return bh(t,e,n);const s=function(t,e,n){let s=0,r=e;const i={match:!1,pathIndex:0,commandIndex:0};for(;r=n.length)return i;const e=t.segments[r],o=yh(n[s]),l=s0&&void 0===o)break;if(o&&l&&"object"==typeof l&&void 0===l.outlets){if(!Eh(o,l,e))return i;s+=2}else{if(!Eh(o,{},e))return i;s++}r++}return{match:!0,pathIndex:r,commandIndex:s}}(t,e,n),r=n.slice(s.commandIndex);if(s.match&&s.pathIndex{null!==n&&(r[s]=wh(t.children[s],e,n))}),Pu(t.children,(t,e)=>{void 0===s[e]&&(r[e]=t)}),new Du(t.segments,r)}}function Ch(t,e,n){const s=t.segments.slice(0,e);let r=0;for(;r{null!==t&&(e[n]=Ch(new Du([],{}),0,t))}),e}function Sh(t){const e={};return Pu(t,(t,n)=>e[n]=`${t}`),e}function Eh(t,e,n){return t==n.path&&Ou(e,n.parameters)}const kh=(t,e,n)=>F(s=>(new Th(e,s.targetRouterState,s.currentRouterState,n).activate(t),s));class Th{constructor(t,e,n,s){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=s}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),ph(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const s=rh(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,s[e],n),delete s[e]}),Pu(s,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const s=t.value,r=e?e.value:null;if(s===r)if(s.component){const r=n.getContext(s.outlet);r&&this.deactivateChildRoutes(t,e,r.children)}else this.deactivateChildRoutes(t,e,n);else r&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),s=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:s})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const s=rh(t),r=t.value.component?n.children:e;Pu(s,(t,e)=>this.deactivateRouteAndItsChildren(t,r)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const s=rh(e);t.children.forEach(t=>{this.activateRoutes(t,s[t.value.outlet],n),this.forwardEvent(new fu(t.value.snapshot))}),t.children.length&&this.forwardEvent(new du(t.value.snapshot))}activateRoutes(t,e,n){const s=t.value,r=e?e.value:null;if(ph(s),s===r)if(s.component){const r=n.getOrCreateContext(s.outlet);this.activateChildRoutes(t,e,r.children)}else this.activateChildRoutes(t,e,n);else if(s.component){const e=n.getOrCreateContext(s.outlet);if(this.routeReuseStrategy.shouldAttach(s.snapshot)){const t=this.routeReuseStrategy.retrieve(s.snapshot);this.routeReuseStrategy.store(s.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),Oh(t.route)}else{const n=function(t){for(let e=s.snapshot.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(),r=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=s,e.resolver=r,e.outlet&&e.outlet.activateWith(s,r),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Oh(t){ph(t.value),t.children.forEach(Oh)}function Ih(t){return"function"==typeof t}function Rh(t){return t instanceof Nu}class Ph{constructor(t){this.segmentGroup=t||null}}class Ah{constructor(t){this.urlTree=t}}function Mh(t){return new b(e=>e.error(new Ph(t)))}function Nh(t){return new b(e=>e.error(new Ah(t)))}function Dh(t){return new b(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class Vh{constructor(t,e,n,s,r){this.configLoader=e,this.urlSerializer=n,this.urlTree=s,this.config=r,this.allowRedirects=!0,this.ngModule=t.get(tn)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,_u).pipe(F(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(wa(t=>{if(t instanceof Ah)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof Ph)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,_u).pipe(F(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(wa(t=>{if(t instanceof Ph)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const s=t.segments.length>0?new Du([],{[_u]:t}):t;return new Nu(s,e,n)}expandSegmentGroup(t,e,n,s){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(F(t=>new Du([],t))):this.expandSegment(t,n,e,n.segments,s,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Zl({});const n=[],s=[],r={};return Pu(t,(t,i)=>{const o=e(i,t).pipe(F(t=>r[i]=t));i===_u?n.push(o):s.push(o)}),Zl.apply(null,n.concat(s)).pipe(sa(),ya(),F(()=>r))}(n.children,(n,s)=>this.expandSegmentGroup(t,e,s,n))}expandSegment(t,e,n,s,r,i){return Zl(...n).pipe(F(o=>this.expandSegmentAgainstRoute(t,e,n,o,s,r,i).pipe(wa(t=>{if(t instanceof Ph)return Zl(null);throw t}))),sa(),ka(t=>!!t),wa((t,n)=>{if(t instanceof Kl||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,s,r))return Zl(new Du([],{}));throw new Ph(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,s,r,i,o){return Uh(s)!==i?Mh(e):void 0===s.redirectTo?this.matchSegmentAgainstRoute(t,e,s,r):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i):Mh(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i){return"**"===s.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,s,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,s){const r=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Nh(r):this.lineralizeSegments(n,r).pipe(Y(n=>{const r=new Du(n,{});return this.expandSegment(t,r,e,n,s,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i){const{matched:o,consumedSegments:l,lastChild:a,positionalParamSegments:c}=$h(e,s,r);if(!o)return Mh(e);const u=this.applyRedirectCommands(l,s.redirectTo,c);return s.redirectTo.startsWith("/")?Nh(u):this.lineralizeSegments(s,u).pipe(Y(s=>this.expandSegment(t,e,n,s.concat(r.slice(a)),i,!1)))}matchSegmentAgainstRoute(t,e,n,s){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(F(t=>(n._loadedConfig=t,new Du(s,{})))):Zl(new Du(s,{}));const{matched:r,consumedSegments:i,lastChild:o}=$h(e,n,s);if(!r)return Mh(e);const l=s.slice(o);return this.getChildConfig(t,n,s).pipe(Y(t=>{const n=t.module,s=t.routes,{segmentGroup:r,slicedSegments:o}=function(t,e,n,s){return n.length>0&&function(t,e,n){return s.some(n=>jh(t,e,n)&&Uh(n)!==_u)}(t,n)?{segmentGroup:Lh(new Du(e,function(t,e){const n={};n[_u]=e;for(const s of t)""===s.path&&Uh(s)!==_u&&(n[Uh(s)]=new Du([],{}));return n}(s,new Du(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return s.some(n=>jh(t,e,n))}(t,n)?{segmentGroup:Lh(new Du(t.segments,function(t,e,n,s){const r={};for(const i of n)jh(t,e,i)&&!s[Uh(i)]&&(r[Uh(i)]=new Du([],{}));return Object.assign({},s,r)}(t,n,s,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,i,l,s);return 0===o.length&&r.hasChildren()?this.expandChildren(n,s,r).pipe(F(t=>new Du(i,t))):0===s.length&&0===o.length?Zl(new Du(i,{})):this.expandSegment(n,r,s,o,_u,!0).pipe(F(t=>new Du(i.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Zl(new xu(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Zl(e._loadedConfig):function(t,e,n){const s=e.canLoad;return s&&0!==s.length?W(s).pipe(F(s=>{const r=t.get(s);let i;if(function(t){return t&&Ih(t.canLoad)}(r))i=r.canLoad(e,n);else{if(!Ih(r))throw new Error("Invalid CanLoad guard");i=r(e,n)}return Au(i)})).pipe(sa(),(r=(t=>!0===t),t=>t.lift(new Ta(r,void 0,t)))):Zl(!0);var r}(t.injector,e,n).pipe(Y(n=>n?this.configLoader.load(t.injector,e).pipe(F(t=>(e._loadedConfig=t,t))):function(t){return new b(e=>e.error(bu(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Zl(new xu([],t))}lineralizeSegments(t,e){let n=[],s=e.root;for(;;){if(n=n.concat(s.segments),0===s.numberOfChildren)return Zl(n);if(s.numberOfChildren>1||!s.children[_u])return Dh(t.redirectTo);s=s.children[_u]}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,s){const r=this.createSegmentGroup(t,e.root,n,s);return new Nu(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return Pu(t,(t,s)=>{if("string"==typeof t&&t.startsWith(":")){const r=t.substring(1);n[s]=e[r]}else n[s]=t}),n}createSegmentGroup(t,e,n,s){const r=this.createSegments(t,e.segments,n,s);let i={};return Pu(e.children,(e,r)=>{i[r]=this.createSegmentGroup(t,e,n,s)}),new Du(r,i)}createSegments(t,e,n,s){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,s):this.findOrReturn(e,n))}findPosParam(t,e,n){const s=n[e.path.substring(1)];if(!s)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return s}findOrReturn(t,e){let n=0;for(const s of e){if(s.path===t.path)return e.splice(n),s;n++}return t}}function $h(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const s=(e.matcher||Cu)(n,t,e);return s?{matched:!0,consumedSegments:s.consumed,lastChild:s.consumed.length,positionalParamSegments:s.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Lh(t){if(1===t.numberOfChildren&&t.children[_u]){const e=t.children[_u];return new Du(t.segments.concat(e.segments),e.children)}return t}function jh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Uh(t){return t.outlet||_u}class zh{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Fh{constructor(t,e){this.component=t,this.route=e}}function Hh(t,e,n){const s=t._root;return function t(e,n,s,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const o=rh(n);return e.children.forEach(e=>{!function(e,n,s,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const o=e.value,l=n?n.value:null,a=s?s.getContext(e.value.outlet):null;if(l&&o.routeConfig===l.routeConfig){const c=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!$u(t.url,e.url);case"pathParamsOrQueryParamsChange":return!$u(t.url,e.url)||!Ou(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!fh(t,e)||!Ou(t.queryParams,e.queryParams);case"paramsChange":default:return!fh(t,e)}}(l,o,o.routeConfig.runGuardsAndResolvers);if(c?i.canActivateChecks.push(new zh(r)):(o.data=l.data,o._resolvedData=l._resolvedData),t(e,n,o.component?a?a.children:null:s,r,i),c){i.canDeactivateChecks.push(new Fh(a&&a.outlet&&a.outlet.component||null,l))}}else l&&Gh(n,a,i),i.canActivateChecks.push(new zh(r)),t(e,null,o.component?a?a.children:null:s,r,i)}(e,o[e.value.outlet],s,r.concat([e.value]),i),delete o[e.value.outlet]}),Pu(o,(t,e)=>Gh(t,s.getContext(e),i)),i}(s,e?e._root:null,n,[s.value])}function Bh(t,e,n){const s=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(s?s.module.injector:n).get(t)}function Gh(t,e,n){const s=rh(t),r=t.value;Pu(s,(t,s)=>{Gh(t,r.component?e?e.children.getContext(s):null:e,n)}),n.canDeactivateChecks.push(new Fh(r.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,r))}const Wh=Symbol("INITIAL_VALUE");function Yh(){return Ia(t=>(function(...t){let e=null,n=null;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&a(t[0])&&(t=t[0]),G(t,n).lift(new ta(e))})(...t.map(t=>t.pipe(xa(1),Ma(Wh)))).pipe(Na((t,e)=>{let n=!1;return e.reduce((t,s,r)=>{if(t!==Wh)return t;if(s===Wh&&(n=!0),!n){if(!1===s)return s;if(r===e.length-1||Rh(s))return s}return t},t)},Wh),ra(t=>t!==Wh),F(t=>Rh(t)?t:!0===t),xa(1)))}function qh(t,e){return null!==t&&e&&e(new pu(t)),Zl(!0)}function Zh(t,e){return null!==t&&e&&e(new hu(t)),Zl(!0)}function Qh(t,e,n){const s=e.routeConfig?e.routeConfig.canActivate:null;return s&&0!==s.length?Zl(s.map(s=>na(()=>{const r=Bh(s,e,n);let i;if(function(t){return t&&Ih(t.canActivate)}(r))i=Au(r.canActivate(e,t));else{if(!Ih(r))throw new Error("Invalid CanActivate guard");i=Au(r(e,t))}return i.pipe(ka())}))).pipe(Yh()):Zl(!0)}function Xh(t,e,n){const s=e[e.length-1],r=e.slice(0,e.length-1).reverse().map(t=>(function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null})(t)).filter(t=>null!==t).map(e=>na(()=>Zl(e.guards.map(r=>{const i=Bh(r,e.node,n);let o;if(function(t){return t&&Ih(t.canActivateChild)}(i))o=Au(i.canActivateChild(s,t));else{if(!Ih(i))throw new Error("Invalid CanActivateChild guard");o=Au(i(s,t))}return o.pipe(ka())})).pipe(Yh())));return Zl(r).pipe(Yh())}class Kh{}class Jh{constructor(t,e,n,s,r,i){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=s,this.paramsInheritanceStrategy=r,this.relativeLinkResolution=i}recognize(){try{const e=nd(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,n=this.processSegmentGroup(this.config,e,_u),s=new ch([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},_u,this.rootComponentType,null,this.urlTree.root,-1,{}),r=new sh(s,n),i=new uh(this.url,r);return this.inheritParamsAndData(i._root),Zl(i)}catch(t){return new b(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=ah(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Lu(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};n.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),s=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${s}'.`)}e[t.value.outlet]=t.value})}(),n.sort((t,e)=>t.value.outlet===_u?-1:e.value.outlet===_u?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,s){for(const i of t)try{return this.processSegmentAgainstRoute(i,e,n,s)}catch(r){if(!(r instanceof Kh))throw r}if(this.noLeftoversInUrl(e,n,s))return[];throw new Kh}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,s){if(t.redirectTo)throw new Kh;if((t.outlet||_u)!==s)throw new Kh;let r,i=[],o=[];if("**"===t.path){const i=n.length>0?Ru(n).parameters:{};r=new ch(n,i,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,id(t),s,t.component,t,td(e),ed(e)+n.length,od(t))}else{const l=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new Kh;return{consumedSegments:[],lastChild:0,parameters:{}}}const s=(e.matcher||Cu)(n,t,e);if(!s)throw new Kh;const r={};Pu(s.posParams,(t,e)=>{r[e]=t.path});const i=s.consumed.length>0?Object.assign({},r,s.consumed[s.consumed.length-1].parameters):r;return{consumedSegments:s.consumed,lastChild:s.consumed.length,parameters:i}}(e,t,n);i=l.consumedSegments,o=n.slice(l.lastChild),r=new ch(i,l.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,id(t),s,t.component,t,td(e),ed(e)+i.length,od(t))}const l=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:a,slicedSegments:c}=nd(e,i,o,l,this.relativeLinkResolution);if(0===c.length&&a.hasChildren()){const t=this.processChildren(l,a);return[new sh(r,t)]}if(0===l.length&&0===c.length)return[new sh(r,[])];const u=this.processSegment(l,a,c,_u);return[new sh(r,u)]}}function td(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function ed(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function nd(t,e,n,s,r){if(n.length>0&&function(t,e,n){return s.some(n=>sd(t,e,n)&&rd(n)!==_u)}(t,n)){const r=new Du(e,function(t,e,n,s){const r={};r[_u]=s,s._sourceSegment=t,s._segmentIndexShift=e.length;for(const i of n)if(""===i.path&&rd(i)!==_u){const n=new Du([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,r[rd(i)]=n}return r}(t,e,s,new Du(n,t.children)));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return s.some(n=>sd(t,e,n))}(t,n)){const i=new Du(t.segments,function(t,e,n,s,r,i){const o={};for(const l of s)if(sd(t,n,l)&&!r[rd(l)]){const n=new Du([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===i?t.segments.length:e.length,o[rd(l)]=n}return Object.assign({},r,o)}(t,e,n,s,t.children,r));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}const i=new Du(t.segments,t.children);return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}function sd(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function rd(t){return t.outlet||_u}function id(t){return t.data||{}}function od(t){return t.resolve||{}}function ld(t,e,n,s){const r=Bh(t,e,s);return Au(r.resolve?r.resolve(e,n):r(e,n))}function ad(t){return function(e){return e.pipe(Ia(e=>{const n=t(e);return n?W(n).pipe(F(()=>e)):W([e])}))}}class cd{}class ud{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const hd=new Rt("ROUTES");class dd{constructor(t,e,n,s){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=s}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(F(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const s=n.create(t);return new xu(Iu(s.injector.get(hd)).map(Tu),s)}))}loadModuleFactory(t){return"string"==typeof t?W(this.loader.load(t)):Au(t()).pipe(Y(t=>t instanceof en?Zl(t):W(this.compiler.compileModuleAsync(t))))}}class pd{}class fd{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function gd(t){throw t}function md(t,e,n){return e.parse("/")}function _d(t,e){return Zl(null)}class vd{constructor(t,e,n,s,r,i,o,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=s,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new T,this.errorHandler=gd,this.malformedUriErrorHandler=md,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:_d,afterPreactivation:_d},this.urlHandlingStrategy=new fd,this.routeReuseStrategy=new ud,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=r.get(tn),this.console=r.get(Dr);const a=r.get(Xr);this.isNgZoneEnabled=a instanceof Xr,this.resetConfig(l),this.currentUrlTree=new Nu(new Du([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new dd(i,o,t=>this.triggerEvent(new cu(t)),t=>this.triggerEvent(new uu(t))),this.routerState=oh(this.currentUrlTree,this.rootComponentType),this.transitions=new Ql({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(ra(t=>0!==t.id),F(t=>Object.assign({},t,{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Ia(t=>{let n=!1,s=!1;return Zl(t).pipe(da(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign({},this.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Ia(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Zl(t).pipe(Ia(t=>{const n=this.transitions.getValue();return e.next(new tu(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?Wl:[t]}),Ia(t=>Promise.resolve(t)),function(t,e,n,s){return function(r){return r.pipe(Ia(r=>(function(t,e,n,s,i){return new Vh(t,e,n,r.extractedUrl,i).apply()})(t,e,n,0,s).pipe(F(t=>Object.assign({},r,{urlAfterRedirects:t})))))}}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),da(t=>{this.currentNavigation=Object.assign({},this.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,e,n,s,r){return function(i){return i.pipe(Y(i=>(function(t,e,n,s,r="emptyOnly",i="legacy"){return new Jh(t,e,n,s,r,i).recognize()})(t,e,i.urlAfterRedirects,n(i.urlAfterRedirects),s,r).pipe(F(t=>Object.assign({},i,{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),da(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),da(t=>{const n=new ru(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:s,source:r,restoredState:i,extras:o}=t,l=new tu(n,this.serializeUrl(s),r,i);e.next(l);const a=oh(s,this.rootComponentType).snapshot;return Zl(Object.assign({},t,{targetSnapshot:a,urlAfterRedirects:s,extras:Object.assign({},o,{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),Wl}),ad(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!o})}),da(t=>{const e=new iu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),F(t=>Object.assign({},t,{guards:Hh(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,currentSnapshot:r,guards:{canActivateChecks:i,canDeactivateChecks:o}}=n;return 0===o.length&&0===i.length?Zl(Object.assign({},n,{guardsResult:!0})):function(t,e,n,s){return W(o).pipe(Y(t=>(function(t,e,n,s,r){const i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?Zl(i.map(i=>{const o=Bh(i,e,r);let l;if(function(t){return t&&Ih(t.canDeactivate)}(o))l=Au(o.canDeactivate(t,e,n,s));else{if(!Ih(o))throw new Error("Invalid CanDeactivate guard");l=Au(o(t,e,n,s))}return l.pipe(ka())})).pipe(Yh()):Zl(!0)})(t.component,t.route,n,e,s)),ka(t=>!0!==t,!0))}(0,s,r,t).pipe(Y(n=>n&&function(t){return"boolean"==typeof n}()?function(t,e,n,s){return W(i).pipe($a(e=>W([Zh(e.route.parent,s),qh(e.route,s),Xh(t,e.path,n),Qh(t,e.route,n)]).pipe(sa(),ka(t=>!0!==t,!0))),ka(t=>!0!==t,!0))}(s,0,t,e):Zl(n)),F(t=>Object.assign({},n,{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),da(t=>{if(Rh(t.guardsResult)){const e=bu(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),da(t=>{const e=new ou(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),ra(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new nu(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),ad(t=>{if(t.guards.canActivateChecks.length)return Zl(t).pipe(da(t=>{const e=new lu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,guards:{canActivateChecks:r}}=n;return r.length?W(r).pipe($a(n=>(function(t,e,n,r){return function(t,e,n,s){const r=Object.keys(t);if(0===r.length)return Zl({});if(1===r.length){const i=r[0];return ld(t[i],e,n,s).pipe(F(t=>({[i]:t})))}const i={};return W(r).pipe(Y(r=>ld(t[r],e,n,s).pipe(F(t=>(i[r]=t,t))))).pipe(ya(),F(()=>i))}(t._resolve,t,s,r).pipe(F(e=>(t._resolvedData=e,t.data=Object.assign({},t.data,ah(t,n).resolve),null)))})(n.route,0,t,e)),function(t,e){return arguments.length>=2?function(e){return y(Na(t,void 0),ca(1),ma(void 0))(e)}:function(e){return y(Na((e,n,s)=>t(e)),ca(1))(e)}}((t,e)=>t),F(t=>n)):Zl(n)}))}}(this.paramsInheritanceStrategy,this.ngModule.injector),da(t=>{const e=new au(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}))}),ad(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!o})}),F(t=>{const e=function(t,e,n){const s=function t(e,n,s){if(s&&e.shouldReuseRoute(n.value,s.value.snapshot)){const r=s.value;r._futureSnapshot=n.value;const i=function(e,n,s){return n.children.map(n=>{for(const r of s.children)if(e.shouldReuseRoute(r.value.snapshot,n.value))return t(e,n,r);return t(e,n)})}(e,n,s);return new sh(r,i)}{const s=e.retrieve(n.value);if(s){const t=s.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let s=0;st(e,n));return new sh(s,i)}}var r}(t,e._root,n?n._root:void 0);return new ih(s,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign({},t,{targetRouterState:e})}),da(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),kh(this.rootContexts,this.routeReuseStrategy,t=>this.triggerEvent(t)),da({next(){n=!0},complete(){n=!0}}),function(t){return e=>e.lift(new La(t))}(()=>{if(!n&&!s){this.resetUrlToCurrentUrlTree();const n=new nu(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null}),wa(n=>{if(s=!0,function(t){return n&&n[wu]}()){const s=Rh(n.url);s||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const r=new nu(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(r),t.resolve(!1),s&&this.navigateByUrl(n.url)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const s=new su(t.id,this.serializeUrl(t.extractedUrl),n);e.next(s);try{t.resolve(this.errorHandler(n))}catch(r){t.reject(r)}}return Wl}))}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign({},this.getTransition(),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",s=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,s,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){Su(t),this.config=t.map(Tu),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:s,fragment:r,preserveQueryParams:i,queryParamsHandling:o,preserveFragment:l}=e;le()&&i&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const a=n||this.routerState.root,c=l?this.currentUrlTree.fragment:r;let u=null;if(o)switch(o){case"merge":u=Object.assign({},this.currentUrlTree.queryParams,s);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=s||null}else u=i?this.currentUrlTree.queryParams:s||null;return null!==u&&(u=this.removeEmptyProps(u)),function(t,e,n,s,r){if(0===n.length)return mh(e.root,e.root,e,s,r);const i=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new _h(!0,0,t);let e=0,n=!1;const s=t.reduce((t,s,r)=>{if("object"==typeof s&&null!=s){if(s.outlets){const e={};return Pu(s.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(s.segmentPath)return[...t,s.segmentPath]}return"string"!=typeof s?[...t,s]:0===r?(s.split("/").forEach((s,r)=>{0==r&&"."===s||(0==r&&""===s?n=!0:".."===s?e++:""!=s&&t.push(s))}),t):[...t,s]},[]);return new _h(n,e,s)}(n);if(i.toRoot())return mh(e.root,new Du([],{}),e,s,r);const o=function(t,n,s){if(t.isAbsolute)return new vh(e.root,!0,0);if(-1===s.snapshot._lastPathIndex)return new vh(s.snapshot._urlSegment,!0,0);const r=gh(t.commands[0])?0:1;return function(e,n,i){let o=s.snapshot._urlSegment,l=s.snapshot._lastPathIndex+r,a=t.numberOfDoubleDots;for(;a>l;){if(a-=l,!(o=o.parent))throw new Error("Invalid number of '../'");l=o.segments.length}return new vh(o,!1,l-a)}()}(i,0,t),l=o.processChildren?bh(o.segmentGroup,o.index,i.commands):wh(o.segmentGroup,o.index,i.commands);return mh(o.segmentGroup,l,e,s,r)}(a,this.currentUrlTree,t,u,c)}navigateByUrl(t,e={skipLocationChange:!1}){le()&&this.isNgZoneEnabled&&!Xr.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=Rh(t)?t:this.parseUrl(t),s=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(s,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const s=t[n];return null!=s&&(e[n]=s),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new eu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,s){const r=this.getTransition();if(r&&"imperative"!==e&&"imperative"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"hashchange"==e&&"popstate"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"popstate"==e&&"hashchange"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);let i=null,o=null;const l=new Promise((t,e)=>{i=t,o=e}),a=++this.navigationId;return this.setTransition({id:a,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:s,resolve:i,reject:o,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,s){const r=this.urlSerializer.serialize(t);s=s||{},this.location.isCurrentPathEqualTo(r)||e?this.location.replaceState(r,"",Object.assign({},s,{navigationId:n})):this.location.go(r,"",Object.assign({},s,{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}class yd{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new wd,this.attachRef=null}}class wd{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new yd,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}const bd=(()=>(class{constructor(t,e,n,s,r){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=r,this.activated=null,this._activatedRoute=null,this.activateEvents=new Sr,this.deactivateEvents=new Sr,this.name=s||_u,t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),s=this.parentContexts.getOrCreateContext(this.name).children,r=new Cd(t,s,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,r),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}))();class Cd{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===lh?this.route:t===wd?this.childContexts:this.parent.get(t,e)}}class xd{}class Sd{preload(t,e){return e().pipe(wa(()=>Zl(null)))}}class Ed{preload(t,e){return Zl(null)}}const kd=(()=>(class{constructor(t,e,n,s,r){this.router=t,this.injector=s,this.preloadingStrategy=r,this.loader=new dd(e,n,e=>t.triggerEvent(new cu(e)),e=>t.triggerEvent(new uu(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(ra(t=>t instanceof eu),$a(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(tn);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const s of e)if(s.loadChildren&&!s.canLoad&&s._loadedConfig){const t=s._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else s.loadChildren&&!s.canLoad?n.push(this.preloadConfig(t,s)):s.children&&n.push(this.processRoutes(t,s.children));return W(n).pipe(X(),F(t=>void 0))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Y(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}))();class Td{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof tu?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof eu&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof gu&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new gu(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}const Od=new Rt("ROUTER_CONFIGURATION"),Id=new Rt("ROUTER_FORROOT_GUARD"),Rd=[ml,{provide:ju,useClass:Uu},{provide:vd,useFactory:$d,deps:[mi,ju,wd,ml,Dt,kr,zr,hd,Od,[pd,new ht],[cd,new ht]]},wd,{provide:lh,useFactory:Ld,deps:[vd]},{provide:kr,useClass:wi},kd,Ed,Sd,{provide:Od,useValue:{enableTracing:!1}}];function Pd(){return new hi("Router",vd)}const Ad=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[Rd,Vd(e),{provide:Id,useFactory:Dd,deps:[[vd,new ht,new pt]]},{provide:Od,useValue:n||{}},{provide:fl,useFactory:Nd,deps:[dl,[new ut(gl),new ht],Od]},{provide:Td,useFactory:Md,deps:[vd,Bl,Od]},{provide:xd,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:Ed},{provide:hi,multi:!0,useFactory:Pd},[jd,{provide:Tr,multi:!0,useFactory:Ud,deps:[jd]},{provide:Fd,useFactory:zd,deps:[jd]},{provide:Nr,multi:!0,useExisting:Fd}]]}}static forChild(e){return{ngModule:t,providers:[Vd(e)]}}}return t})();function Md(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Td(t,e,n)}function Nd(t,e,n={}){return n.useHash?new vl(t,e):new yl(t,e)}function Dd(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function Vd(t){return[{provide:Kt,multi:!0,useValue:t},{provide:hd,multi:!0,useValue:t}]}function $d(t,e,n,s,r,i,o,l,a={},c,u){const h=new vd(null,e,n,s,r,i,o,Iu(l));if(c&&(h.urlHandlingStrategy=c),u&&(h.routeReuseStrategy=u),a.errorHandler&&(h.errorHandler=a.errorHandler),a.malformedUriErrorHandler&&(h.malformedUriErrorHandler=a.malformedUriErrorHandler),a.enableTracing){const t=za();h.events.subscribe(e=>{t.logGroup(`Router Event: ${e.constructor.name}`),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return a.onSameUrlNavigation&&(h.onSameUrlNavigation=a.onSameUrlNavigation),a.paramsInheritanceStrategy&&(h.paramsInheritanceStrategy=a.paramsInheritanceStrategy),a.urlUpdateStrategy&&(h.urlUpdateStrategy=a.urlUpdateStrategy),a.relativeLinkResolution&&(h.relativeLinkResolution=a.relativeLinkResolution),h}function Ld(t){return t.routerState.root}const jd=(()=>(class{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new T}appInitializer(){return this.injector.get(pl,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(vd),s=this.injector.get(Od);if(this.isLegacyDisabled(s)||this.isLegacyEnabled(s))t(!0);else if("disabled"===s.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==s.initialNavigation)throw new Error(`Invalid initialNavigation options: '${s.initialNavigation}'`);n.hooks.afterPreactivation=(()=>this.initNavigation?Zl(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone)),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(Od),n=this.injector.get(kd),s=this.injector.get(Td),r=this.injector.get(vd),i=this.injector.get(mi);t===i.components[0]&&(this.isLegacyEnabled(e)?r.initialNavigation():this.isLegacyDisabled(e)&&r.setUpLocationChangeListener(),n.setUpPreloading(),s.init(),r.resetRootComponentType(i.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}))();function Ud(t){return t.appInitializer.bind(t)}function zd(t){return t.bootstrapListener.bind(t)}const Fd=new Rt("Router Initializer");var Hd=Qn({encapsulation:2,styles:[],data:{}});function Bd(t){return Ki(0,[(t()(),Vi(0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),lr(1,212992,null,0,bd,[wd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,1,0)},null)}function Gd(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"ng-component",[],null,null,null,Bd,Hd)),lr(1,49152,null,0,mu,[],null,null)],null,null)}var Wd=$s("ng-component",mu,Gd,{},{},[]);const Yd="Dropdowns",qd=(()=>(class{constructor(){this.klass="default",this.items=[],this.placeholder="Select item",this.searchChange=new Sr,this.font_size=16,this.width=128,this.filtered_items=[]}ngOnChanges(t){t.items&&(this.list=this.items.map(t=>t instanceof Object?t:{id:t,name:t}),this.longest=this.list.reduce((t,e)=>e.name.length>t.name.length?e:t,{id:"",name:""}),this.filter())}ngAfterViewInit(){this.resize()}trackByFn(t,e){return e?"string"==typeof e?e:e.id:t}resize(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)}filter(){if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(t=>("string"==typeof t?t:t.name).toLowerCase().indexOf(this.search.toLowerCase())>=0)),this.options&&this.options.hide_active&&this.selected)){const t="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(e=>("string"==typeof e?e:e.id).indexOf(t)<0)}}toggleShow(){this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(()=>{this.input&&this.input.nativeElement.focus()},100)}updateScroll(){if(!this.viewport||!this.scroll_el)return setTimeout(()=>this.updateScroll(),50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;const t="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(e=>("string"==typeof e?e:e.id)===t))}select(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)}change(t){const e="string"==typeof this.selected?this.selected:this.selected.id,n=this.filtered_items.findIndex(t=>("string"==typeof t?t:t.id)==e)+t;n>=0&&nthis.updateScroll(),100))}close(){this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null),this.close_timer=setTimeout(()=>this.show=!1,100)}cancelClose(){setTimeout(()=>{this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null)},50)}writeValue(t){this.selected=t,this.show=!1}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Zd=cl,Qd=(()=>{class t{constructor(){if(this.build=Zd(),!t.init){const e=Zd();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Yd} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Yd} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();function Xd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function Kd(t){return Array.isArray(t)?t:[t]}function Jd(t){return null==t?"":"string"==typeof t?t:`${t}px`}function tp(t,e,n,r){return s(n)&&(r=n,n=void 0),r?tp(t,e,n).pipe(F(t=>a(t)?r(...t):r(t))):new b(s=>{!function t(e,n,s,r,i){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,s,i),o=(()=>t.removeEventListener(n,s,i))}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,s),o=(()=>t.off(n,s))}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,s),o=(()=>t.removeListener(n,s))}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,l=e.length;o1?Array.prototype.slice.call(arguments):t)},s,n)})}class ep extends d{constructor(t,e){super()}schedule(t,e=0){return this}}class np extends ep{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,s=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(s,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(s,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,s=void 0;try{this.work(t)}catch(r){n=!0,s=!!r&&r||new Error(r)}if(n)return this.unsubscribe(),s}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,s=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==s&&n.splice(s,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}class sp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}const rp=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=(()=>Date.now()),t})();class ip extends rp{constructor(t,e=rp.now){super(t,()=>ip.delegate&&ip.delegate!==this?ip.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return ip.delegate&&ip.delegate!==this?ip.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let 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}}}class op extends ip{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s(function(t){const e=cp[t];e&&e()})(e)),e},clearImmediate(t){delete cp[t]}};class hp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=up.setImmediate(t.flush.bind(t,null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(up.clearImmediate(e),t.scheduled=void 0)}}class dp extends ip{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s=0}function wp(t){const{index:e,period:n,subscriber:s}=t;if(s.next(e),!s.closed){if(-1===n)return s.complete();t.index=e+1,this.schedule(t,n)}}function bp(t,e=mp){return n=(()=>(function(t=0,e,n){let s=-1;return yp(e)?s=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=mp),new b(e=>{const r=yp(t)?t:+t-n.now();return n.schedule(wp,r,{index:0,period:s,subscriber:e})})})(t,e)),function(t){return t.lift(new _p(n))};var n}function Cp(t){return e=>e.lift(new xp(t))}class xp{constructor(t){this.notifier=t}call(t,e){const n=new Sp(t),s=U(n,this.notifier);return s&&!n.seenValue?(n.add(s),e.subscribe(n)):n}}class Sp extends z{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,s,r){this.seenValue=!0,this.complete()}notifyComplete(){}}class Ep{call(t,e){return e.subscribe(new kp(t))}}class kp extends g{constructor(t){super(t),this.hasPrev=!1}_next(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t}}class Tp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}class Op extends ip{}const Ip=new Op(Tp);function Rp(t,e){return new b(e?n=>e.schedule(Pp,0,{error:t,subscriber:n}):e=>e.error(t))}function Pp({error:t,subscriber:e}){e.error(t)}var Ap;!function(t){t.NEXT="N",t.ERROR="E",t.COMPLETE="C"}(Ap||(Ap={}));const Mp=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(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()}}do(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()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Zl(this.value);case"E":return Rp(this.error);case"C":return Yl()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})();class Np extends g{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(Np.dispatch,this.delay,new Dp(t,this.destination)))}_next(t){this.scheduleMessage(Mp.createNext(t))}_error(t){this.scheduleMessage(Mp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(Mp.createComplete()),this.unsubscribe()}}class Dp{constructor(t,e){this.notification=t,this.destination=e}}class Vp extends T{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift(),super.next(t)}nextTimeWindow(t){this._events.push(new $p(this._getNow(),t)),this._trimBufferThenGetEvents(),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),s=this.scheduler,r=n.length;let i;if(this.closed)throw new S;if(this.isStopped||this.hasError?i=d.EMPTY:(this.observers.push(t),i=new E(this,t)),s&&t.add(t=new Np(t,s)),e)for(let o=0;oe&&(i=Math.max(i,r-e)),i>0&&s.splice(0,i),s}}class $p{constructor(t,e){this.time=t,this.value=e}}let Lp;try{Lp="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Dv){Lp=!1}const jp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Hl(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&&!Lp)&&"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.ngInjectableDef=mt({factory:function(){return new t(Ot(Mr,8))},token:t,providedIn:"root"}),t})(),Up=(()=>(class{}))(),zp=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();let Fp;function Hp(){if("object"!=typeof document||!document)return zp.NORMAL;if(!Fp){const 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";const n=document.createElement("div"),s=n.style;s.width="2px",s.height="1px",t.appendChild(n),document.body.appendChild(t),Fp=zp.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Fp=0===t.scrollLeft?zp.NEGATED:zp.INVERTED),t.parentNode.removeChild(t)}return Fp}class Bp{}class Gp extends Bp{constructor(t){super(),this._data=t}connect(){return this._data instanceof b?this._data:Zl(this._data)}disconnect(){}}const Wp=new Rt("VIRTUAL_SCROLL_STRATEGY");class Yp{constructor(t,e,n){this._scrolledIndexChange=new T,this.scrolledIndexChange=this._scrolledIndexChange.pipe(t=>t.lift(new fp(void 0,void 0))),this._viewport=null,this._itemSize=t,this._minBufferPx=e,this._maxBufferPx=n}attach(t){this._viewport=t,this._updateTotalContentSize(),this._updateRenderedRange()}detach(){this._scrolledIndexChange.complete(),this._viewport=null}updateItemAndBufferSize(t,e,n){if(n0&&(s.end=Math.min(i,s.end+t),s.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(s),this._viewport.setRenderedContentOffset(this._itemSize*s.start),this._scrolledIndexChange.next(Math.floor(e))}}function qp(t){return t._scrollStrategy}const Zp=(()=>(class{constructor(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Yp(this.itemSize,this.minBufferPx,this.maxBufferPx)}get itemSize(){return this._itemSize}set itemSize(t){this._itemSize=Xd(t)}get minBufferPx(){return this._minBufferPx}set minBufferPx(t){this._minBufferPx=Xd(t)}get maxBufferPx(){return this._maxBufferPx}set maxBufferPx(t){this._maxBufferPx=Xd(t)}ngOnChanges(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}}))(),Qp=20,Xp=(()=>{class t{constructor(t,e){this._ngZone=t,this._platform=e,this._scrolled=new T,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=Qp){return this._platform.isBrowser?new b(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(bp(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Zl()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(ra(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,s)=>{this._scrollableContainsElement(s,t)&&e.push(s)}),e}_scrollableContainsElement(t,e){let n=e.nativeElement,s=t.getElementRef().nativeElement;do{if(n==s)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>tp(window.document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Xr),Ot(jp))},token:t,providedIn:"root"}),t})(),Kp=(()=>(class{constructor(t,e,n,s){this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=s,this._destroyed=new T,this._elementScrolled=new b(t=>this.ngZone.runOutsideAngular(()=>tp(this.elementRef.nativeElement,"scroll").pipe(Cp(this._destroyed)).subscribe(t)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(t){const e=this.elementRef.nativeElement,n=this.dir&&"rtl"==this.dir.value;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Hp()!=zp.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Hp()==zp.INVERTED?t.left=t.right:Hp()==zp.NEGATED&&(t.left=t.right?-t.right:t.right)):null!=t.right&&(t.left=e.scrollWidth-e.clientWidth-t.right),this._applyScrollToOptions(t)}_applyScrollToOptions(t){const e=this.elementRef.nativeElement;"object"==typeof document&&"scrollBehavior"in document.documentElement.style?e.scrollTo(t):(null!=t.top&&(e.scrollTop=t.top),null!=t.left&&(e.scrollLeft=t.left))}measureScrollOffset(t){const e=this.elementRef.nativeElement;if("top"==t)return e.scrollTop;if("bottom"==t)return e.scrollHeight-e.clientHeight-e.scrollTop;const n=this.dir&&"rtl"==this.dir.value;return"start"==t?t=n?"right":"left":"end"==t&&(t=n?"left":"right"),n&&Hp()==zp.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Hp()==zp.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft}}))(),Jp="undefined"!=typeof requestAnimationFrame?lp:pp,tf=(()=>(class extends Kp{constructor(t,e,n,s,r,i){if(super(t,i,n,r),this.elementRef=t,this._changeDetectorRef=e,this._scrollStrategy=s,this._detachedSubject=new T,this._renderedRangeSubject=new T,this.orientation="vertical",this.scrolledIndexChange=new b(t=>this._scrollStrategy.scrolledIndexChange.subscribe(e=>Promise.resolve().then(()=>this.ngZone.run(()=>t.next(e))))),this.renderedRangeStream=this._renderedRangeSubject.asObservable(),this._totalContentSizeTransform="",this._totalContentSize=0,this._renderedRange={start:0,end:0},this._dataLength=0,this._viewportSize=0,this._renderedContentOffset=0,this._renderedContentOffsetNeedsRewrite=!1,this._isChangeDetectionPending=!1,this._runAfterChangeDetection=[],!s)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.')}ngOnInit(){super.ngOnInit(),this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._measureViewportSize(),this._scrollStrategy.attach(this),this.elementScrolled().pipe(Ma(null),bp(0,Jp)).subscribe(()=>this._scrollStrategy.onContentScrolled()),this._markChangeDetectionNeeded()}))}ngOnDestroy(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),super.ngOnDestroy()}attach(t){if(this._forOf)throw Error("CdkVirtualScrollViewport is already attached.");this.ngZone.runOutsideAngular(()=>{this._forOf=t,this._forOf.dataStream.pipe(Cp(this._detachedSubject)).subscribe(t=>{const e=t.length;e!==this._dataLength&&(this._dataLength=e,this._scrollStrategy.onDataLengthChanged()),this._doChangeDetection()})})}detach(){this._forOf=null,this._detachedSubject.next()}getDataLength(){return this._dataLength}getViewportSize(){return this._viewportSize}getRenderedRange(){return this._renderedRange}setTotalContentSize(t){this._totalContentSize!==t&&(this._totalContentSize=t,this._totalContentSizeTransform=`scale${"horizontal"==this.orientation?"X":"Y"}(${this._totalContentSize})`,this._markChangeDetectionNeeded())}setRenderedRange(t){var e,n;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(()=>this._scrollStrategy.onContentRendered()))}getOffsetToRenderedContentStart(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}setRenderedContentOffset(t,e="to-start"){const n="horizontal"==this.orientation,s=n?"X":"Y";let r=`translate${s}(${Number((n&&this.dir&&"rtl"==this.dir.value?-1:1)*t)}px)`;this._renderedContentOffset=t,"to-end"===e&&(r+=` translate${s}(-100%)`,this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=r&&(this._renderedContentTransform=r,this._markChangeDetectionNeeded(()=>{this._renderedContentOffsetNeedsRewrite?(this._renderedContentOffset-=this.measureRenderedContentSize(),this._renderedContentOffsetNeedsRewrite=!1,this.setRenderedContentOffset(this._renderedContentOffset)):this._scrollStrategy.onRenderedOffsetChanged()}))}scrollToOffset(t,e="auto"){const n={behavior:e};"horizontal"===this.orientation?n.start=t:n.top=t,this.scrollTo(n)}scrollToIndex(t,e="auto"){this._scrollStrategy.scrollToIndex(t,e)}measureScrollOffset(t){return super.measureScrollOffset(t||("horizontal"===this.orientation?"start":"top"))}measureRenderedContentSize(){const t=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?t.offsetWidth:t.offsetHeight}measureRangeSize(t){return this._forOf?this._forOf.measureRangeSize(t,this.orientation):0}checkViewportSize(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}_measureViewportSize(){const t=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?t.clientWidth:t.clientHeight}_markChangeDetectionNeeded(t){t&&this._runAfterChangeDetection.push(t),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._doChangeDetection()})))}_doChangeDetection(){this._isChangeDetectionPending=!1,this.ngZone.run(()=>this._changeDetectorRef.markForCheck()),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;const t=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(const e of t)e()}}))();function ef(t,e){if(!e.getBoundingClientRect)return 0;const n=e.getBoundingClientRect();return"horizontal"==t?n.width:n.height}const nf=(()=>(class{constructor(t,e,n,s,r){this._viewContainerRef=t,this._template=e,this._differs=n,this._viewport=s,this.viewChange=new T,this._dataSourceChanges=new T,this.cdkVirtualForTemplateCacheSize=20,this.dataStream=this._dataSourceChanges.pipe(Ma(null),t=>t.lift(new Ep),Ia(([t,e])=>this._changeDataSource(t,e)),function(t,e,n){let s;return s={bufferSize:1,windowTime:void 0,refCount:!1,scheduler:void 0},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:s}){let r,i,o=0,l=!1,a=!1;return function(c){o++,r&&!l||(l=!1,r=new Vp(t,e,s),i=c.subscribe({next(t){r.next(t)},error(t){l=!0,r.error(t)},complete(){a=!0,r.complete()}}));const u=r.subscribe(this);this.add(()=>{o--,u.unsubscribe(),i&&!a&&n&&0===o&&(i.unsubscribe(),i=void 0,r=void 0)})}}(s))}()),this._differ=null,this._templateCache=[],this._needsUpdate=!1,this._destroyed=new T,this.dataStream.subscribe(t=>{this._data=t,this._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe(Cp(this._destroyed)).subscribe(t=>{this._renderedRange=t,r.run(()=>this.viewChange.next(this._renderedRange)),this._onRenderedDataChange()}),this._viewport.attach(this)}get cdkVirtualForOf(){return this._cdkVirtualForOf}set cdkVirtualForOf(t){this._cdkVirtualForOf=t;const e=function(t){return t&&"function"==typeof t.connect}(t)?t:new Gp(t instanceof b?t:Array.prototype.slice.call(t||[]));this._dataSourceChanges.next(e)}get cdkVirtualForTrackBy(){return this._cdkVirtualForTrackBy}set cdkVirtualForTrackBy(t){this._needsUpdate=!0,this._cdkVirtualForTrackBy=t?(e,n)=>t(e+(this._renderedRange?this._renderedRange.start:0),n):void 0}set cdkVirtualForTemplate(t){t&&(this._needsUpdate=!0,this._template=t)}measureRangeSize(t,e){if(t.start>=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");const n=t.start-this._renderedRange.start;let s=0,r=t.end-t.start;for(;r--;){const t=this._viewContainerRef.get(r+n);let i=t?t.rootNodes.length:0;for(;i--;)s+=ef(e,t.rootNodes[i])}return s}ngDoCheck(){if(this._differ&&this._needsUpdate){const t=this._differ.diff(this._renderedItems);t?this._applyChanges(t):this._updateContext(),this._needsUpdate=!1}}ngOnDestroy(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(let t of this._templateCache)t.destroy()}_onRenderedDataChange(){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)}_changeDataSource(t,e){return t&&t.disconnect(this),this._needsUpdate=!0,e?e.connect(this):Zl()}_updateContext(){const t=this._data.length;let e=this._viewContainerRef.length;for(;e--;){let n=this._viewContainerRef.get(e);n.context.index=this._renderedRange.start+e,n.context.count=t,this._updateComputedContextProperties(n.context),n.detectChanges()}}_applyChanges(t){t.forEachOperation((t,e,n)=>{if(null==t.previousIndex)this._insertViewForNewItem(n).context.$implicit=t.item;else if(null==n)this._cacheView(this._detachView(e));else{const s=this._viewContainerRef.get(e);this._viewContainerRef.move(s,n),s.context.$implicit=t.item}}),t.forEachIdentityChange(t=>{this._viewContainerRef.get(t.currentIndex).context.$implicit=t.item});const e=this._data.length;let n=this._viewContainerRef.length;for(;n--;){const t=this._viewContainerRef.get(n);t.context.index=this._renderedRange.start+n,t.context.count=e,this._updateComputedContextProperties(t.context)}}_cacheView(t){if(this._templateCache.length(class{}))(),rf=20,of=(()=>{class t{constructor(t,e){this._platform=t,e.runOutsideAngular(()=>{this._change=t.isBrowser?K(tp(window,"resize"),tp(window,"orientationchange")):Zl(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=document.documentElement,e=t.getBoundingClientRect();return{top:-e.top||document.body.scrollTop||window.scrollY||t.scrollTop||0,left:-e.left||document.body.scrollLeft||window.scrollX||t.scrollLeft||0}}change(t=rf){return t>0?this._change.pipe(bp(t)):this._change}_updateViewportSize(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(jp),Ot(Xr))},token:t,providedIn:"root"}),t})();function lf(){throw Error("Host already has a portal attached")}class af{attach(t){return null==t&&function(){throw Error("Attempting to attach a portal to a null PortalOutlet")}(),t.hasAttached()&&lf(),this._attachedHost=t,t.attach(this)}detach(){let 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())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class cf extends af{constructor(t,e,n,s){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=s}}class uf extends af{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class hf{constructor(){this._isDisposed=!1}hasAttached(){return!!this._attachedPortal}attach(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&lf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof cf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof uf?(this._attachedPortal=t,this.attachTemplatePortal(t)):void function(){throw Error("Attempting to attach an unknown Portal type. BasePortalOutlet accepts either a ComponentPortal or a TemplatePortal.")}()}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class df extends hf{constructor(t,e,n,s){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=s}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.detectChanges(),n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}const pf=(()=>(class{}))();class ff{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=Jd(-this._previousScrollPosition.left),t.style.top=Jd(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,s=e.scrollBehavior||"",r=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=s,n.scrollBehavior=r}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}function gf(){return Error("Scroll strategy has already been attached.")}class mf{constructor(t,e,n,s){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=s,this._scrollSubscription=null,this._detach=(()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())})}attach(t){if(this._overlayRef)throw gf();this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class _f{enable(){}disable(){}attach(){}}function vf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function yf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class wf{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=s,this._scrollSubscription=null}attach(t){if(this._overlayRef)throw gf();this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();vf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}const bf=(()=>{class t{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=(()=>new _f),this.close=(t=>new mf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t)),this.block=(()=>new ff(this._viewportRuler,this._document)),this.reposition=(t=>new wf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t)),this._document=s}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Xp),Ot(of),Ot(Xr),Ot(zl))},token:t,providedIn:"root"}),t})();class Cf{constructor(t){this.scrollStrategy=new _f,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(e=>{void 0!==t[e]&&(this[e]=t[e])})}}class xf{constructor(t,e,n,s,r){this.offsetX=n,this.offsetY=s,this.panelClass=r,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}const Sf=(()=>(class{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}))();function Ef(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "top", "bottom" or "center".')}function kf(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "start", "end" or "center".')}const Tf=(()=>{class t{constructor(t){this._attachedOverlays=[],this._keydownListener=(t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEventSubscriptions>0){e[n]._keydownEvents.next(t);break}}),this._document=t}ngOnDestroy(){this._detach()}add(t){this.remove(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this._detach()}_detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zl))},token:t,providedIn:"root"}),t})(),Of=(()=>{class t{constructor(t){this._document=t}ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zl))},token:t,providedIn:"root"}),t})();class If{constructor(t,e,n,s,r,i,o,l){this._portalOutlet=t,this._host=e,this._pane=n,this._config=s,this._ngZone=r,this._keyboardDispatcher=i,this._document=o,this._location=l,this._backdropElement=null,this._backdropClick=new T,this._attachments=new T,this._detachments=new T,this._locationChanges=d.EMPTY,this._keydownEventsObservable=new b(t=>{const e=this._keydownEvents.subscribe(t);return this._keydownEventSubscriptions++,()=>{e.unsubscribe(),this._keydownEventSubscriptions--}}),this._keydownEvents=new T,this._keydownEventSubscriptions=0,s.scrollStrategy&&(this._scrollStrategy=s.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=s.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return this._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(xa(1)).subscribe(()=>{this.hasAttached()&&this.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(()=>this.dispose())),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),t}dispose(){const 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()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick.asObservable()}attachments(){return this._attachments.asObservable()}detachments(){return this._detachments.asObservable()}keydownEvents(){return this._keydownEventsObservable}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign({},this._config,t),this._updateElementSize()}setDirection(t){this._config=Object.assign({},this._config,{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){const t=this._pane.style;t.width=Jd(this._config.width),t.height=Jd(this._config.height),t.minWidth=Jd(this._config.minWidth),t.minHeight=Jd(this._config.minHeight),t.maxWidth=Jd(this._config.maxWidth),t.maxHeight=Jd(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"auto":"none"}_attachBackdrop(){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",t=>this._backdropClick.next(t)),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add("cdk-overlay-backdrop-showing")})}):this._backdropElement.classList.add("cdk-overlay-backdrop-showing")}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t,e=this._backdropElement;if(!e)return;let n=()=>{e&&e.parentNode&&e.parentNode.removeChild(e),this._backdropElement==e&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(e,this._config.backdropClass,!1),clearTimeout(t)};e.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{e.addEventListener("transitionend",n)}),e.style.pointerEvents="none",t=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const s=t.classList;Kd(e).forEach(t=>{n?s.add(t):s.remove(t)})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.asObservable().pipe(Cp(K(this._attachments,this._detachments))).subscribe(()=>{this._pane&&this._host&&0!==this._pane.children.length||(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const Rf="cdk-overlay-connected-position-bounding-box";class Pf{constructor(t,e,n,s,r){this._viewportRuler=e,this._document=n,this._platform=s,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 T,this._resizeSubscription=d.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges.asObservable(),this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){if(this._overlayRef&&t!==this._overlayRef)throw Error("This position strategy is already attached to an overlay");this._validatePositions(),t.hostElement.classList.add(Rf),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(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,s=[];let r;for(let i of this._preferredPositions){let o=this._getOriginPoint(t,i),l=this._getOverlayPoint(o,e,i),a=this._getOverlayFit(l,e,n,i);if(a.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(i,o);this._canFitWithFlexibleDimensions(a,l,n)?s.push({position:i,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,i)}):(!r||r.overlayFit.visibleAreae&&(e=s,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(r.position,r.originPoint);this._applyPosition(r.position,r.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&Af(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Rf),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,s;if("center"==e.originX)n=t.left+t.width/2;else{const s=this._isRtl()?t.right:t.left,r=this._isRtl()?t.left:t.right;n="start"==e.originX?s:r}return{x:n,y:s="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom}}_getOverlayPoint(t,e,n){let s,r;return s="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+s,y:t.y+(r="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}}_getOverlayFit(t,e,n,s){let{x:r,y:i}=t,o=this._getOffset(s,"x"),l=this._getOffset(s,"y");o&&(r+=o),l&&(i+=l);let a=0-i,c=i+e.height-n.height,u=this._subtractOverflows(e.width,0-r,r+e.width-n.width),h=this._subtractOverflows(e.height,a,c),d=u*h;return{visibleArea:d,isCompletelyWithinViewport:e.width*e.height===d,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:u==e.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const s=n.bottom-e.y,r=n.right-e.x,i=this._overlayRef.getConfig().minHeight,o=this._overlayRef.getConfig().minWidth,l=t.fitsInViewportHorizontally||null!=o&&o<=r;return(t.fitsInViewportVertically||null!=i&&i<=s)&&l}}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const s=this._viewportRect,r=Math.max(t.x+e.width-s.right,0),i=Math.max(t.y+e.height-s.bottom,0),o=Math.max(s.top-n.top-t.y,0),l=Math.max(s.left-n.left-t.x,0);let a=0,c=0;return this._previousPushAmount={x:a=e.width<=s.width?l||-r:t.xs&&!this._isInitialRender&&!this._growAfterOpen&&(i=t.y-s/2)}if("end"===e.overlayX&&!s||"start"===e.overlayX&&s)c=n.right-t.x+this._viewportMargin,l=t.x-n.left;else if("start"===e.overlayX&&!s||"end"===e.overlayX&&s)a=t.x,l=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),s=this._lastBoundingBoxSize.width;a=t.x-e,(l=2*e)>s&&!this._isInitialRender&&!this._growAfterOpen&&(a=t.x-s/2)}return{top:i,left:a,bottom:o,right:c,width:l,height:r}}_setBoundingBoxStyles(t,e){const 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));const s={};if(this._hasExactPosition())s.top=s.left="0",s.bottom=s.right="",s.width=s.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,r=this._overlayRef.getConfig().maxWidth;s.height=Jd(n.height),s.top=Jd(n.top),s.bottom=Jd(n.bottom),s.width=Jd(n.width),s.left=Jd(n.left),s.right=Jd(n.right),s.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",s.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(s.maxHeight=Jd(t)),r&&(s.maxWidth=Jd(r))}this._lastBoundingBoxSize=n,Af(this._boundingBox.style,s)}_resetBoundingBoxStyles(){Af(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){Af(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={};if(this._hasExactPosition()){const s=this._viewportRuler.getViewportScrollPosition();Af(n,this._getExactOverlayY(e,t,s)),Af(n,this._getExactOverlayX(e,t,s))}else n.position="static";let s="",r=this._getOffset(e,"x"),i=this._getOffset(e,"y");r&&(s+=`translateX(${r}px) `),i&&(s+=`translateY(${i}px)`),n.transform=s.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Af(this._pane.style,n)}_getExactOverlayY(t,e,n){let s={top:null,bottom:null},r=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));let i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=i,"bottom"===t.overlayY?s.bottom=`${this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)}px`:s.top=Jd(r.y),s}_getExactOverlayX(t,e,n){let s,r={left:null,right:null},i=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(i=this._pushOverlayOnScreen(i,this._overlayRect,n)),"right"==(s=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=`${this._document.documentElement.clientWidth-(i.x+this._overlayRect.width)}px`:r.left=Jd(i.x),r}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:yf(t,n),isOriginOutsideView:vf(t,n),isOverlayClipped:yf(e,n),isOverlayOutsideView:vf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const 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}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){if(!this._preferredPositions.length)throw Error("FlexibleConnectedPositionStrategy: At least one position is required.");this._preferredPositions.forEach(t=>{kf("originX",t.originX),Ef("originY",t.originY),kf("overlayX",t.overlayX),Ef("overlayY",t.overlayY)})}_addPanelClasses(t){this._pane&&Kd(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;return t instanceof sn?t.nativeElement.getBoundingClientRect():t instanceof HTMLElement?t.getBoundingClientRect():{top:t.y,bottom:t.y,left:t.x,right:t.x,height:0,width:0}}}function Af(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}class Mf{constructor(t,e,n,s,r,i,o){this._preferredPositions=[],this._positionStrategy=new Pf(n,s,r,i,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e)}get _isRtl(){return"rtl"===this._overlayRef.getDirection()}get onPositionChange(){return this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,s){const r=new xf(t,e,n,s);return this._preferredPositions.push(r),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Nf="cdk-global-overlay-wrapper";class Df{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const 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(Nf),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig();t.position=this._cssPosition,t.marginLeft="100%"===n.width?"0":this._leftOffset,t.marginTop="100%"===n.height?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,"100%"===n.width?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="100%"===n.height?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Nf),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}const Vf=(()=>{class t{constructor(t,e,n,s){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=s}global(){return new Df}connectedTo(t,e,n){return new Mf(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new Pf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(of),Ot(zl),Ot(jp),Ot(Of))},token:t,providedIn:"root"}),t})();let $f=0;const Lf=(()=>(class{constructor(t,e,n,s,r,i,o,l,a,c){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=s,this._keyboardDispatcher=r,this._injector=i,this._ngZone=o,this._document=l,this._directionality=a,this._location=c}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),s=this._createPortalOutlet(n),r=new Cf(t);return r.direction=r.direction||this._directionality.value,new If(s,e,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id=`cdk-overlay-${$f++}`,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(mi)),new df(t,this._componentFactoryResolver,this._appRef,this._injector)}}))(),jf=new Rt("cdk-connected-overlay-scroll-strategy");function Uf(t){return()=>t.scrollStrategies.reposition()}const zf=(()=>(class{}))(),Ff="Pipes";function Hf(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}class Bf{constructor(t,e){this._parentInjector=t,this._customTokens=e}get(t,e){const n=this._customTokens.get(t);return void 0!==n?n:this._parentInjector.get(t,e)}}const Gf=(()=>(class{constructor(t){this.injector=t,this.klass="default",this._overlay=t.get(Wf)}ngOnInit(){setTimeout(()=>{this.offset=this._overlay.details.offset,this.setMethod()},1)}setMethod(){this.method="component",this.content=this._overlay.content,this.klass=this._overlay.details.klass||"default","string"==typeof this.content?this.method="text":this.content instanceof Rn&&(this.method="template",this.context=Object.assign({},this._overlay.details.data||{},{event:this._overlay.post.bind(this._overlay),close:this._overlay.close.bind(this._overlay)}),Object.defineProperty(this.context,"position",{get:()=>this._overlay.position}))}}))();class Wf{constructor(t,e,n,s,r){this.id=t,this.service=e,this.injector=n,this.overlay=s,this.details=r,this.onClose=new T,this.event=new T,this.position_subject=new Ql(null),this.subs=[],this._overlay=this.overlay.create(this.details.config),this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null))}open(t,e){this._overlay&&this._close("reopen",null),e&&(delete this._overlay,this._overlay=this.overlay.create(e),this.details.config=e,this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null)));const n=this._createInjector(this,this.injector);this.onClose=new T,this.event=new T,this._overlay.attach(new cf(Gf,null,n)),this.set(t)}set(t,e=!0){this._data=t,e&&setTimeout(()=>this.updatePosition(),100)}get data(){return this._data||this.details.data||null}get content(){return this.details.content}get ID(){return this.id}listen(t){const e=this.event.subscribe(t);return this.subs.push(e),e}post(t,e){this.event.next({type:t,data:e})}get position(){return this.position_subject?this.position_subject.getValue():null}close(t){this._close("close",t)}_close(t,e){this._overlay&&this._overlay.dispose(),"reopen"!==t&&this.onClose.next({type:t,data:e}),this.onClose.complete(),this.event.complete(),this.subs=[]}_createInjector(t,e){const n=new WeakMap([[Wf,t]]);return new Bf(e,n)}updatePosition(){const t=this.details.config;this._overlay.updatePosition();const e=t.positionStrategy;e instanceof Pf&&setTimeout(()=>{e._lastPosition&&this.position_subject.next({x:e._lastPosition.originX,y:e._lastPosition.originY})},1)}}const Yf=(()=>(class{constructor(t,e){this.overlay=t,this.renderer=e,this.events=[],this.displayed_events=[],this.subs={},this.delay=5e3,this.offset=0}ngOnInit(){this.context=this.overlay.details.data,this.subs.add=this.context.add.subscribe(t=>this.add(t)),this.subs.remove=this.context.remove.subscribe(t=>this.remove(t)),this.subs.delay=this.context.delay.subscribe(t=>this.delay=t)}ngOnDestroy(){for(const t in this.subs)this.subs[t]&&this.subs[t]instanceof d&&this.subs[t].unsubscribe()}add(t){this.events.findIndex(e=>e.id===t.id)<0&&(t.method="component","string"==typeof t.content?t.method="text":t.content instanceof Rn&&(t.method="template",t.context={close:()=>this.remove(t.id)}),this.events=this.events&&this.events.length>0?[...this.events,t]:[t],this.displayed_events=this.events.slice(-8),t.close=(()=>this.remove(t.id)),0!==t.delay&&setTimeout(()=>this.remove(t.id),t.delay||this.delay||5e3))}remove(t){this.events=this.events.filter(e=>e.id!==t),this.displayed_events=this.events.slice(-8)}action(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)}grab(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=n,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",e=>this.pull(t,e)),touchmove:this.renderer.listen("window","touchmove",e=>this.pull(t,e)),mouseup:this.renderer.listen("window","mouseup",e=>this.release(t)),touchend:this.renderer.listen("window","touchend",e=>this.release(t))}}pull(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)}release(t){t.offset>128&&this.remove(t.id);for(const e in t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0}trackByFn(t,e){return(t?t.id:null)||e}}))(),qf=(()=>{class t{constructor(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new T,this._notify.remove=new T,this._notify.delay=new T,this.registerPreset("default",new Cf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new Cf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}register(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Wf(t,this,this.injector,this.overlay,e),this._refs[t]}open(t,e,n,s){if(e.config?e.config instanceof Cf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error(`No content set for the overlay ${t}`);const r=this._refs[t],i=r.details.config instanceof Cf?r.details.config:this.preset(r.details.config);r.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),s&&this._refs[t].onClose.subscribe(s))}update(t,e){this._refs[t]&&this._refs[t].set(e)}close(t){this._refs[t]&&this._refs[t].close(null)}remove(t){this._refs[t]&&(this._refs[t]=null)}registerPreset(t,e){this._presets[t]=e}preset(t="default"){return this._presets[t]||this._presets.default}loadNotificationsOutlet(){this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(()=>{this.registerPreset("ACA_NOTIFICATIONS_OUTLET",new Cf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:this.overlay.position().global().bottom("0").right("0"),scrollStrategy:this.overlay.scrollStrategies.noop()})),this.open("ACA_NOTIFICATIONS_OUTLET",{content:Yf,data:this._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)}notify(t,e,n,s,r){let i=null;return this._notify.add&&(i=`notification-${Math.floor(999999*Math.random())}`,this._notify.add.next({id:i,content:t,action:e,on_action:n,type:s,delay:r,event:t=>n?n(t):null})),i}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Lf),Ot(Mt))},token:t,providedIn:"root"}),t})(),Zf=(()=>(class{constructor(t,e,n,s){this.el=t,this.service=e,this.overlay=n,this.renderer=s,this.id=`tooltip-${Math.floor(9999999*Math.random())}`,this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new Sr,this.event=new Sr,this.close=new Sr,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}ngOnInit(){this.updateConfig(),this.el&&this.listenForScroll()}ngOnDestroy(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()}ngOnChanges(t){if(t.config&&this.updateConfig(),t.reposition){const t=this.overlay.scrollStrategies;this.strategy=this.reposition?t.reposition():t.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(()=>this.open(),10):this.closeTooltip(t.show.previousValue))}open(){this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},t=>this.event.emit(t),t=>{this.show=!1,this.showChange.emit(!1),this.close.emit(t),this.clearListeners()})}getOverlayPosition(t){const e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)}getPositions(){const t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}}updateConfig(){this.service.registerPreset(this.id,new Cf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))}listenForScroll(){if(this.show){let t=this.el.nativeElement.parentElement;for(;t;t=t.parentElement)this.listeners.push(this.renderer.listen(t,"scroll",()=>this.update()))}}clearListeners(){for(const t of this.listeners)t();this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)}update(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))}listenForHover(){this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",t=>{this.show=!0,this.showChange.emit(this.show),this._leave_listener=this.renderer.listen(this.el.nativeElement,"mouseleave",t=>{this.show=!1,this.showChange.emit(this.show),this.closeTooltip(this.show)}),this.open()})}closeTooltip(t){!this.content&&this.el?function(t,e,n,s="debug",r){if(window.debug){const t=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Hf()?console[s](`%c[${Ff}]%c[Tooltip] %c${e}`,...t,n):console[s](`[${Ff}][Tooltip] ${e}`,n):Hf()?console[s](`%c[${Ff}]%c[Tooltip] %c${e}`,...t):console[s](`[${Ff}][Tooltip] ${e}`)}}(0,"No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()}}))(),Qf=(()=>(class{constructor(t,e){this.item=t,this.service=e}ngOnInit(){setTimeout(()=>{this.text=this.item.details.data.text,this.center=this.item.details.data.center},10),setTimeout(()=>this.service.close(this.item.ID),1e3)}}))(),Xf=cl,Kf=(()=>{class t{constructor(){if(this.build=Xf(),!t.init){const e=Xf();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){Hf()?console[n](`%c[ACA]%c[LIB] %c${Ff} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"):console[n](`[ACA][LIB] ${Ff} - ${t} | ${e}`)}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Jf=new Rt("cdk-dir-doc",{providedIn:"root",factory:function(){return It(zl)}}),tg=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Sr,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Jf,8))},token:t,providedIn:"root"}),t})(),eg=(()=>(class{}))();var ng=Qn({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function sg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function rg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function ig(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,rg)),lr(2,540672,null,0,jl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function og(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function lg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,og)),lr(2,671744,null,0,Ol,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ag(t){return Ki(0,[(t()(),Vi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Vi(1,0,null,null,7,null,null,null,null,null,null,null)),lr(2,16384,null,0,Vl,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Di(16777216,null,null,1,null,sg)),lr(4,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,ig)),lr(6,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,lg)),lr(8,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function cg(t){return Ki(0,[(t()(),Di(16777216,null,null,1,null,ag)),lr(1,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function ug(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"overlay-outlet",[],null,null,null,cg,ng)),lr(1,114688,null,0,Gf,[Dt],null,null)],function(t,e){t(e,1,0)},null)}var hg=$s("overlay-outlet",Gf,ug,{},{},[]),dg=Qn({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function pg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Zi(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function fg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"a-floating-text",[],null,null,null,pg,dg)),lr(1,114688,null,0,Qf,[Wf,qf],null,null)],function(t,e){t(e,1,0)},null)}var gg=$s("a-floating-text",Qf,fg,{},{},[]),mg=Qn({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function _g(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function vg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,_g)),lr(2,540672,null,0,jl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function yg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function wg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,yg)),lr(2,671744,null,0,Ol,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function bg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function Cg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Zi(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function xg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function Sg(t){return Ki(0,[(t()(),Vi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Vi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==r.grab(t.context.$implicit,n)&&s),"touchstart"===e&&(s=!1!==r.grab(t.context.$implicit,n)&&s),s},null,null)),(t()(),Vi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Vi(4,0,null,null,7,null,null,null,null,null,null,null)),lr(5,16384,null,0,Vl,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Di(16777216,null,null,1,null,vg)),lr(7,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,wg)),lr(9,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,bg)),lr(11,16384,null,0,Ll,[An,Rn,Vl],null,null),(t()(),Vi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var s=!0,r=t.component;return"click"===e&&(r.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),"touchend"===e&&(r.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),s},null,null)),(t()(),Di(16777216,null,null,1,null,Cg)),lr(14,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Di(16777216,null,null,1,null,xg)),lr(16,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function Eg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,Sg)),lr(2,278528,null,0,Rl,[An,Rn,xn],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function kg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"notification-outlet",[],null,null,null,Eg,mg)),lr(1,245760,null,0,Yf,[Wf,cn],null,null)],function(t,e){t(e,1,0)},null)}var Tg=$s("notification-outlet",Yf,kg,{},{},[]);class Og extends z{constructor(t,e){super(t),this.sources=e,this.completed=0,this.haveValues=0;const n=e.length;this.values=new Array(n);for(let s=0;s(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Pg=new Rt("CompositionEventMode"),Ag=(()=>(class{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=za()?za().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}))();class Mg{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class Ng extends Mg{get formDirective(){return null}get path(){return null}}function Dg(){throw new Error("unimplemented")}class Vg extends Mg{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return Dg()}get asyncValidator(){return Dg()}}const $g=(()=>(class extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}))();function Lg(t){return null==t||0===t.length}const jg=/^(?=.{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])?)*$/;class Ug{static min(t){return e=>{if(Lg(e.value)||Lg(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(Lg(e.value)||Lg(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return Lg(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return Lg(t.value)?null:jg.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(Lg(e.value))return null;const n=e.value?e.value.length:0;return n{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return Ug.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(Lg(t.value))return null;const s=t.value;return e.test(s)?null:{pattern:{requiredPattern:n,actualValue:s}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(zg);return 0==e.length?null:function(t){return Hg(function(t,n){return e.map(e=>e(t))}(t))}}static composeAsync(t){if(!t)return null;const e=t.filter(zg);return 0==e.length?null:function(t){return function t(...e){let n;return"function"==typeof e[e.length-1]&&(n=e.pop()),1===e.length&&a(e[0])&&(e=e[0]),0===e.length?Wl:n?t(e).pipe(F(t=>n(...t))):new b(t=>new Og(t,e))}(function(t,n){return e.map(e=>e(t))}(t).map(Fg)).pipe(F(Hg))}}}function zg(t){return null!=t}function Fg(t){const e=De(t)?W(t):t;if(!Ve(e))throw new Error("Expected validator to return Promise or Observable.");return e}function Hg(t){const e=t.reduce((t,e)=>null!=e?Object.assign({},t,e):t,{});return 0===Object.keys(e).length?null:e}function Bg(t){return t.validate?e=>t.validate(e):t}function Gg(t){return t.validate?e=>t.validate(e):t}const Wg=(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Yg=(()=>(class{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}))(),qg=(()=>(class{constructor(t,e,n,s){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=s,this.onChange=(()=>{}),this.onTouched=(()=>{})}ngOnInit(){this._control=this._injector.get(Vg),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=(()=>{t(this.value),this._registry.select(this)})}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}))(),Zg={formControlName:'\n

\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',formGroupName:'\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',formArrayName:'\n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });',ngModelGroup:'\n
\n
\n \n
\n
',ngModelWithFormGroup:'\n
\n \n \n
\n '};function Qg(t,e){return[...e.path,t]}function Xg(t,e){t||Jg(e,"Cannot find control with"),e.valueAccessor||Jg(e,"No value accessor for form control with"),t.validator=Ug.compose([t.validator,e.validator]),t.asyncValidator=Ug.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&Kg(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&Kg(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function Kg(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Jg(t,e){let 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 tm(t){return null!=t?Ug.compose(t.map(Bg)):null}function em(t){return null!=t?Ug.composeAsync(t.map(Gg)):null}const nm=[Rg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Wg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?`${e}`:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=(e=>{this.value=this._getOptionValue(e),t(this.value)})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}))(),(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=((t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)})}else e=((t,e)=>{t._setSelected(!1)});this._optionMap.forEach(e)}registerOnChange(t){this.onChange=(e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e{}),this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return this.status===sm}get invalid(){return this.status===rm}get pending(){return this.status==im}get disabled(){return this.status===om}get enabled(){return this.status!==om}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=lm(t)}setAsyncValidators(t){this.asyncValidator=am(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=im,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=om,this.errors=null,this._forEachChild(e=>{e.disable(Object.assign({},t,{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=sm,this._forEachChild(e=>{e.enable(Object.assign({},t,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==sm&&this.status!==im||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)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?om:sm}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=im;const e=Fg(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(".")),e instanceof Array&&0===e.length?null:e.reduce((t,e)=>t instanceof dm?t.controls.hasOwnProperty(e)?t.controls[e]:null:t instanceof pm&&t.at(e)||null,t))}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Sr,this.statusChanges=new Sr}_calculateStatus(){return this._allControlsDisabled()?om:this.errors?rm:this._anyControlsHaveStatus(im)?im:this._anyControlsHaveStatus(rm)?rm:sm}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){cm(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class hm extends um{constructor(t=null,e,n){super(lm(e),am(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=(()=>{})}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(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}}class dm extends um{constructor(t,e,n){super(lm(e),am(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof hm?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,s)=>{e=e||this.contains(s)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,s)=>{n=e(n,t,s)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class pm extends um{constructor(t,e,n){super(lm(e),am(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof hm?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}`)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const fm=(()=>Promise.resolve(null))(),gm=(()=>(class extends Ng{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Sr,this.form=new dm({},tm(t),em(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){fm.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Xg(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){fm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),function(e,n){const s=e.indexOf(t);s>-1&&e.splice(s,1)}(this._directives)})}addFormGroup(t){fm.then(()=>{const e=this._findContainer(t.path),n=new dm({});(function(t,e){null==t&&Jg(e,"Cannot find control with"),t.validator=Ug.compose([t.validator,e.validator]),t.asyncValidator=Ug.composeAsync([t.asyncValidator,e.asyncValidator])})(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){fm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){fm.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,e=this._directives,this.form._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}))();class mm{static modelParentException(){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 ${Zg.formControlName}\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 ${Zg.ngModelWithFormGroup}`)}static formGroupNameException(){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 ${Zg.formGroupName}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Zg.ngModelGroup}`)}static missingNameException(){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: \n Example 2: ')}static modelGroupParentException(){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 ${Zg.formGroupName}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Zg.ngModelGroup}`)}static ngFormWarning(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")}}const _m=new Rt("NgFormSelectorWarning");class vm extends Ng{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Qg(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return tm(this._validators)}get asyncValidator(){return em(this._asyncValidators)}_checkParentType(){}}const ym=(()=>{class t extends vm{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof gm||mm.modelGroupParentException()}}return t})(),wm=(()=>Promise.resolve(null))(),bm=(()=>(class extends Vg{constructor(t,e,n,s){super(),this.control=new hm,this._registered=!1,this.update=new Sr,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Jg(t,"Value accessor was not provided as an array for form control with");let n=void 0,s=void 0,r=void 0;return e.forEach(e=>{e.constructor===Ag?n=e:function(t){return nm.some(e=>t.constructor===e)}(e)?(s&&Jg(t,"More than one built-in value accessor matches form control with"),s=e):(r&&Jg(t,"More than one custom value accessor matches form control with"),r=e)}),r||s||n||(Jg(t,"No valid value accessor for form control with"),null)}(this,s)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!je(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Qg(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return tm(this._rawValidators)}get asyncValidator(){return em(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Xg(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof ym)&&this._parent instanceof vm?mm.formGroupNameException():this._parent instanceof ym||this._parent instanceof gm||mm.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||mm.missingNameException()}_updateValue(t){wm.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;wm.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}))(),Cm=new Rt("NgModelWithFormControlWarning"),xm=(()=>(class{}))(),Sm=(()=>(class{group(t,e=null){const n=this._reduceControls(t);let s=null,r=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(s=null!=e.validators?e.validators:null,r=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(s=null!=e.validator?e.validator:null,r=null!=e.asyncValidator?e.asyncValidator:null)),new dm(n,{asyncValidators:r,updateOn:i,validators:s})}control(t,e,n){return new hm(t,e,n)}array(t,e,n){const s=t.map(t=>this._createControl(t));return new pm(s,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof hm||t instanceof dm||t instanceof pm?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}))(),Em=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:_m,useValue:e.warnOnDeprecatedNgFormSelector}]}}}return t})(),km=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Cm,useValue:e.warnOnNgModelWithFormControl}]}}}return t})();var Tm=Qn({encapsulation:2,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:0}.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:0}.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}"],data:{}});function Om(t){return Ki(2,[zi(402653184,1,{_contentWrapper:0}),(t()(),Vi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),Wi(null,0),(t()(),Vi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Im=Qn({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function Rm(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Vi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,r=t.component;return"input"===e&&(s=!1!==qs(t,5)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==qs(t,5).onTouched()&&s),"compositionstart"===e&&(s=!1!==qs(t,5)._compositionStart()&&s),"compositionend"===e&&(s=!1!==qs(t,5)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(r.search=n)&&s),"ngModelChange"===e&&(r.searchChange.emit(n),s=!1!==r.filter()&&s),s},null,null)),lr(5,16384,null,0,Ag,[cn,sn,[2,Pg]],null,null),ar(1024,null,Ig,function(t){return[t]},[Ag]),lr(7,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(9,16384,null,0,$g,[[4,Vg]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,qs(e,9).ngClassUntouched,qs(e,9).ngClassTouched,qs(e,9).ngClassPristine,qs(e,9).ngClassDirty,qs(e,9).ngClassValid,qs(e,9).ngClassInvalid,qs(e,9).ngClassPending)})}function Pm(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.select(t.context.$implicit)&&s),s},null,null)),(t()(),Vi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Am(t){return Ki(0,[(t()(),Vi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,Om,Tm)),ar(6144,null,Kp,null,[tf]),lr(3,540672,null,0,Zp,[],{itemSize:[0,"itemSize"]},null),ar(1024,null,Wp,qp,[Zp]),lr(5,245760,[[4,4],[5,4],["viewport",4]],0,tf,[sn,En,Xr,[2,Wp],[2,tg],Xp],null,null),(t()(),Di(16777216,[[2,2]],0,1,null,Pm)),lr(7,409600,null,0,nf,[An,Rn,xn,[1,tf],Xr],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===qs(e,5).orientation,"horizontal"!==qs(e,5).orientation)})}function Mm(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Nm(t){return Ki(0,[(t()(),Vi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.cancelClose()&&s),s},null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var s=!0,r=t.component;return"click"===e&&(s=0!=(r.show=!r.show)&&s),s},null,null)),(t()(),Vi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Di(16777216,[[2,2]],null,1,null,Rm)),lr(7,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Di(16777216,[[2,2]],null,1,null,Am)),lr(10,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Di(0,[[2,2],["noItems",2]],null,0,null,Mm))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,qs(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Dm(t){return Ki(0,[zi(402653184,1,{reference:0}),zi(402653184,2,{dropdown_tooltip:0}),zi(402653184,3,{input:0}),zi(402653184,4,{viewport:0}),zi(402653184,5,{scroll_el:0}),(t()(),Vi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var s=!0,r=t.component;return"keyup.enter"===e&&(s=!1!==r.toggleShow()&&s),"keydown.arrowup"===e&&(s=!1!==n.preventDefault()&&s),"keydown.arrowdown"===e&&(s=!1!==n.preventDefault()&&s),"keyup.arrowup"===e&&(s=!1!==(r.focus?r.change(-1):"")&&s),"keyup.arrowdown"===e&&(s=!1!==(r.focus?r.change(1):"")&&s),"focus"===e&&(s=0!=(r.focus=!0)&&s),"blur"===e&&(s=0!=(r.focus=!1)&&s),"window:resize"===e&&(s=!1!==r.resize()&&s),"window:click"===e&&(s=!1!==(r.show?r.close():"")&&s),s},null,null)),(t()(),Vi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Vi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var s=!0,r=t.component;return"showChange"===e&&(s=!1!==(r.show=n)&&s),"showChange"===e&&(s=!1!==r.updateScroll()&&s),"click"===e&&(s=!1!==r.toggleShow()&&s),s},null,null)),lr(8,737280,null,0,Zf,[sn,qf,Lf,cn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Vi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),Zi(10,null,["",""])),(t()(),Vi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Vi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Vi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(15,null,["",""])),(t()(),Vi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Di(0,[[2,2],["dropdown",2]],null,0,null,Nm))],function(t,e){t(e,8,0,e.component.show,qs(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}const Vm="Checkbox",$m=(()=>(class{constructor(){this.klass="default"}toggle(){this.state=!this.state,this.onChange&&this.onChange(this.state)}writeValue(t){this.state=t}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouch=t}}))(),Lm=cl,jm=(()=>{class t{constructor(){if(this.build=Lm(),!t.init){const e=Lm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Vm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Vm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Um=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}handleMouse(t){this.handleEvent(t)}handleTouch(t){this.handleEvent(t)}ngOnInit(){}ngAfterViewInit(){setTimeout(()=>{this.element&&this.element.nativeElement&&(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width)))})}ngOnDestroy(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}handleEvent(t){this.cancelled=!1;const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,n=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:`${n-this.cached_box.top}px`,left:`${e-this.cached_box.left}px`},this.mouse_release_cancel=this.renderer.listen("window","mouseup",t=>this.handleRelease(t)),this.touch_release_cancel=this.renderer.listen("window","touchend",t=>this.handleRelease(t)),this.transitioning=!0,setTimeout(()=>{this.transitioning=!1,this.cancelled&&(this.show=!1)},350)}handleRelease(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}}))(),zm=(()=>(class{constructor(t,e){this.el=t,this.renderer=e,this.tapped=new Sr,this.touchrelease=new Sr,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}ngAfterViewInit(){this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",t=>this.handleHold(t)),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",t=>this.handleHold(t)))}ngOnDestroy(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}}remove(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)}handleHold(t){const e={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=e,this.mouse_listener=this.renderer.listen(window,"mouseup",t=>this.handleRelease(t)),this.touch_listener=this.renderer.listen(window,"touchend",t=>this.handleRelease(t)),this.timer=setTimeout(()=>this.remove(),this.max_delay)}handleRelease(t){this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(()=>{const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(e-this.start.x,2)+2){this.tapped.emit(t),this.touchrelease.emit(t)},100)),this.start={x:-999,y:-999}},50)}}))(),Fm="Custom Events",Hm=cl,Bm=(()=>{class t{constructor(){if(this.build=Hm(),!t.init){const e=Hm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Fm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Fm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var Gm=Qn({encapsulation:0,styles:["[_nghost-%COMP%]{position:relative;overflow:hidden}.event-feedback[_ngcontent-%COMP%]{position:absolute;border-radius:100%;background-color:rgba(0,0,0,.1);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;pointer-events:none}.event-feedback.show[_ngcontent-%COMP%]{-webkit-animation:.5s feedback;animation:.5s feedback;opacity:1}.event-feedback.hide[_ngcontent-%COMP%]{-webkit-animation:.5s fadeout;animation:.5s fadeout}.event-feedback.light[_ngcontent-%COMP%]{background-color:rgba(255,255,255,.1)}@-webkit-keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@-webkit-keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}@keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}"],data:{}});function Wm(t){return Ki(0,[Wi(null,0),(t()(),Vi(1,0,null,null,0,"div",[],[[8,"className",0],[4,"top",null],[4,"left",null],[4,"height",null],[4,"width",null],[2,"show",null],[2,"hide",null]],null,null,null,null))],null,function(t,e){var n=e.component;t(e,1,0,"event-feedback"+(n.klass?" "+n.klass:""),n.position.top,n.position.left,n.size+"px",n.size+"px",n.show,!1===n.show)})}var Ym=Qn({encapsulation:0,styles:[".checkbox[_ngcontent-%COMP%]{display:flex;align-items:center}.box[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;margin:.25em;font-size:.8em;height:1.5em;width:1.5em;border-radius:4px;padding:0;border:2px solid #ccc;cursor:pointer;outline:0;transition:background-color .2s,border-color .2s}.box[_ngcontent-%COMP%]:hover{background-color:#ccc}.box[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function qm(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.toggle()&&s),s},null,null)),lr(1,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Zi(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Zm(t){return Ki(0,[(t()(),Vi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Vi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,2).handleTouch(n)&&s),"keyup.enter"===e&&(s=!1!==r.toggle()&&s),"tapped"===e&&(s=!1!==r.toggle()&&s),s},Wm,Gm)),lr(2,4440064,null,0,Um,[sn,cn],{center:[0,"center"]},null),lr(3,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,qm)),lr(6,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}const Qm="Buttons",Xm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new Sr,this.id=`button-${Math.floor(999999*Math.random())}`}ngOnChanges(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()}ngAfterViewInit(){this.setClass(this.klass)}setClass(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))}setGroup(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")}setState(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")}tap(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))}writeValue(t){this.state=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Km=cl,Jm=(()=>{class t{constructor(){if(this.build=Km(),!t.init){const e=Km();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Qm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Qm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var t_=Qn({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function e_(t){return Ki(0,[(t()(),Vi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,1).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,1).handleTouch(n)&&s),"tapped"===e&&(s=!1!==r.tap()&&s),s},Wm,Gm)),lr(1,4440064,null,0,Um,[sn,cn],null,null),lr(2,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),Wi(0,0)],function(t,e){t(e,1,0)},null)}const n_=(()=>(class{constructor(t){this.sanitizer=t}transform(t,e="html"){switch(e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}}}))(),s_="Pipes",r_=cl,i_=(()=>{class t{constructor(){if(this.build=r_(),!t.init){const e=r_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${s_} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${s_} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();class o_{constructor(){this._timers={},this._intervals={},this._subscriptions={}}timeout(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(()=>{e(),this._timers[t]=null},n)}clearTimeout(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)}interval(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(()=>e(),n)}clearInterval(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)}subscription(t,e){this.unsub(t),this._subscriptions[t]=e}unsub(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof d?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)}}class l_ extends o_{ngOnDestroy(){for(const t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(const t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(const t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)}}function a_(t,e,n,s){return new(n||(n=Promise))(function(r,i){function o(t){try{a(s.next(t))}catch(e){i(e)}}function l(t){try{a(s.throw(t))}catch(e){i(e)}}function a(t){t.done?r(t.value):new n(function(e){e(t.value)}).then(o,l)}a((s=s.apply(t,e||[])).next())})}class c_{}class u_{}class h_{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),s=n.toLowerCase(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,s),this.headers.has(s)?this.headers.get(s).push(r):this.headers.set(s,[r])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const s=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(s,n),this.maybeSetNormalizedName(e,s))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof h_?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new h_;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof h_?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const s=("a"===t.op?this.headers.get(e):void 0)||[];s.push(...n),this.headers.set(e,s);break;case"d":const r=t.value;if(r){let t=this.headers.get(e);if(!t)return;0===(t=t.filter(t=>-1===r.indexOf(t))).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class d_{encodeKey(t){return p_(t)}encodeValue(t){return p_(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function p_(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class f_{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new d_,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const s=t.indexOf("="),[r,i]=-1==s?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,s)),e.decodeValue(t.slice(s+1))],o=n.get(r)||[];o.push(i),n.set(r,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).join("&")}clone(t){const e=new f_({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function g_(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function m_(t){return"undefined"!=typeof Blob&&t instanceof Blob}function __(t){return"undefined"!=typeof FormData&&t instanceof FormData}class v_{constructor(t,e,n,s){let r;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||s?(this.body=void 0!==n?n:null,r=s):r=n,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.params&&(this.params=r.params)),this.headers||(this.headers=new h_),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),l)),t.setParams&&(a=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),a)),new v_(e,n,r,{params:a,headers:l,reportProgress:o,responseType:s,withCredentials:i})}}const y_=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class w_{constructor(t,e=200,n="OK"){this.headers=t.headers||new h_,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class b_ extends w_{constructor(t={}){super(t),this.type=y_.ResponseHeader}clone(t={}){return new b_({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class C_ extends w_{constructor(t={}){super(t),this.type=y_.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new C_({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class x_ extends w_{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function S_(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}const E_=(()=>(class{constructor(t){this.handler=t}request(t,e,n={}){let s;if(t instanceof v_)s=t;else{let r=void 0;r=n.headers instanceof h_?n.headers:new h_(n.headers);let i=void 0;n.params&&(i=n.params instanceof f_?n.params:new f_({fromObject:n.params})),s=new v_(t,e,void 0!==n.body?n.body:null,{headers:r,params:i,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const r=Zl(s).pipe($a(t=>this.handler.handle(t)));if(t instanceof v_||"events"===n.observe)return r;const i=r.pipe(ra(t=>t instanceof C_));switch(n.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return i.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return i.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return i.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return i.pipe(F(t=>t.body))}case"response":return i;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new f_).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,S_(n,e))}post(t,e,n={}){return this.request("POST",t,S_(n,e))}put(t,e,n={}){return this.request("PUT",t,S_(n,e))}}))();class k_{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const T_=new Rt("HTTP_INTERCEPTORS"),O_=(()=>(class{intercept(t,e){return e.handle(t)}}))(),I_=/^\)\]\}',?\n/;class R_{}const P_=(()=>(class{constructor(){}build(){return new XMLHttpRequest}}))(),A_=(()=>(class{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new b(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const s=t.serializeBody();let r=null;const i=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,s=n.statusText||"OK",i=new h_(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return r=new b_({headers:i,status:e,statusText:s,url:o})},o=()=>{let{headers:s,status:r,statusText:o,url:l}=i(),a=null;204!==r&&(a=void 0===n.response?n.responseText:n.response),0===r&&(r=a?200:0);let c=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof a){const t=a;a=a.replace(I_,"");try{a=""!==a?JSON.parse(a):null}catch(u){a=t,c&&(c=!1,a={error:u,text:a})}}c?(e.next(new C_({body:a,headers:s,status:r,statusText:o,url:l||void 0})),e.complete()):e.error(new x_({error:a,headers:s,status:r,statusText:o,url:l||void 0}))},l=t=>{const{url:s}=i(),r=new x_({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:s||void 0});e.error(r)};let a=!1;const c=s=>{a||(e.next(i()),a=!0);let r={type:y_.DownloadProgress,loaded:s.loaded};s.lengthComputable&&(r.total=s.total),"text"===t.responseType&&n.responseText&&(r.partialText=n.responseText),e.next(r)},u=t=>{let n={type:y_.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",l),t.reportProgress&&(n.addEventListener("progress",c),null!==s&&n.upload&&n.upload.addEventListener("progress",u)),n.send(s),e.next({type:y_.Sent}),()=>{n.removeEventListener("error",l),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",c),null!==s&&n.upload&&n.upload.removeEventListener("progress",u)),n.abort()}})}}))(),M_=new Rt("XSRF_COOKIE_NAME"),N_=new Rt("XSRF_HEADER_NAME");class D_{}const V_=(()=>(class{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Tl(t,this.cookieName),this.lastCookieString=t),this.lastToken}}))(),$_=(()=>(class{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const s=this.tokenService.getToken();return null===s||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,s)})),e.handle(t)}}))(),L_=(()=>(class{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(T_,[]);this.chain=t.reduceRight((t,e)=>new k_(t,e),this.backend)}return this.chain.handle(t)}}))(),j_=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:$_,useClass:O_}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:M_,useValue:e.cookieName}:[],e.headerName?{provide:N_,useValue:e.headerName}:[]]}}}return t})(),U_=(()=>(class{}))(),z_=(()=>{class t{constructor(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new Ql(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}init(){return a_(this,void 0,void 0,function*(){yield this.loadFromFile("api"),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete()})}get setup(){return this._setup}get app_name(){return this._app_name}isSetup(t){return this._is_setup_observer.subscribe(t)}log(t,e,n,s="debug",r=!1){if(window.debug||r){const r=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...r,n):console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...r)}}get(t){const e=t.split(".");let n=null;return"session"===e[0]?(e.shift(),n=al(e,this._settings.session)):"local"===e[0]?(e.shift(),n=al(e,this._settings.local)):n=al(e,this._settings.api)||al(e,this._settings.session)||al(e,this._settings.local),n}loadStore(t,e){if(e)for(let n=0;n5)return Promise.resolve();const s=`load|${t}|${e}`;return this._promises[s]||(this._promises[s]=new Promise((r,i)=>{this.http.get(e).subscribe(e=>{this._settings[t]=Object.assign({},this._settings[t]||{},e||{})},i=>{this.log("Settings",`Failed to load settings from "${e}"`),this._promises[s]=null,this.loadFromFile(t,e,++n).then(()=>r())},()=>r())})),this._promises[s]})}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),F_=["control","shift","alt","meta","os"],H_=(()=>{class t{constructor(){this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.last_down!==e&&(this.keydown_states[e]||(this.keydown_states[e]=new Ql(null),this.keydown_observers[e]=this.keydown_states[e].asObservable()),this.keydown_states[e].next(this.counter++),this.combo_end.indexOf(e)>=0&&t.preventDefault(),this.last_down=e)}),window.addEventListener("keyup",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.keydown_states[e].next(null),this.last_down===e&&(this.last_down=null)})}listen(t,e){const n=(t=t instanceof Array?t:t.split("+")).map(t=>this.mapKey(t.toLowerCase()));if(n.length>0&&this.validCombination(n)){this.registered_combos.push(n);const t=n[n.length-1];return this.keydown_states[t]||(this.keydown_states[t]=new Ql(null),this.keydown_observers[t]=this.keydown_states[t].asObservable()),this.updateCombinationEndList(),this.keydown_observers[t].subscribe(t=>{if(t){const t=[];if(n.length>1){for(const e of n){const n=this.keydown_states[e];t.push(n&&n.getValue()||-1)}for(let e=0;et[e+1])return}e()}})}return null}mapKey(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t}updateCombinationEndList(){for(const t of this.registered_combos)this.combo_end.push(t[t.length-1]);this.combo_end=function(t,e=""){return[].filter((t,n,s)=>s.indexOf(s.find(e?n=>n[e]===t[e]:e=>e===t))===n)}()}validCombination(t){let e=0;for(const n of t)F_.indexOf(n)<0&&e++;return e>0}}return t.ngInjectableDef=mt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),B_=[],G_=(()=>{class t extends o_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=ll(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let r;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>r=t,t=>{s(t),delete this._promises[n]},()=>{t(r),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}repositories(){const t="repositories";return this._promises[t]||(this._promises[t]=new Promise((e,n)=>{let s;this.http.get(`${this.api_route}/repositories`).subscribe(t=>s=t,e=>{n(e),delete this._promises[t]},()=>{e(s),this.timeout(t,()=>delete this._promises[t],1e3)})})),this._promises[t]}commits(t){const e=`commits|${ll(t)}`;return this._promises[e]||(this._promises[e]=new Promise((t,n)=>{let s;this.http.get(`${this.api_route}/repositories_commits`).subscribe(t=>s=t,t=>{n(t),delete this._promises[e]},()=>{t(s),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}versions(t){const e=`versions|${t}`;return this._promises[e]||(this._promises[e]=new Promise((n,s)=>{const r=`${this.api_route}/${encodeURIComponent(t)}`;let i;this.http.get(r).subscribe(t=>i=t,t=>{s(t),delete this._promises[e]},()=>{n(i),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}driverCommits(t,e){const n=ll(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const r=`${this.api_route}/${encodeURIComponent(t)}/commits`;let i;this.http.get(r).subscribe(t=>i=t,t=>{n(t),delete this._promises[s]},()=>{e(i),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}build(t){const e=ll(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{this.http.post(`${this.api_route}`,e).subscribe(t=>null,t=>{s(t),delete this._promises[n]},()=>{t(),delete this._promises[n]})})),this._promises[n]}clean(t,e){const n=ll(e),s=`clean|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((t,e)=>{this.http.delete(`${this.api_route}${n?"?"+n:""}`).subscribe(t=>null,t=>{e(t),delete this._promises[s]},()=>{t(),delete this._promises[s]})})),this._promises[s]}get api_route(){return this.parent?`${this.parent.endpoint}/build`:"/build"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),W_=(()=>{class t extends o_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=ll(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let r;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>r=t,t=>{s(t),delete this._promises[n]},()=>{t(r),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}specCommits(t,e){const n=ll(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const r=`${this.api_route}/${encodeURIComponent(t)}/commits`;let i;this.http.get(r).subscribe(t=>i=t,t=>{n(t),delete this._promises[s]},()=>{e(i),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}run(t){for(const s in t)null==t[s]&&delete t[s];const e=ll(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((s,r)=>{let i;this.http.post(`${this.api_route}${e?"?"+e:""}`,t,{responseType:"text"}).subscribe(t=>i=t,t=>{r(t),delete this._promises[n]},()=>{s(i),delete this._promises[n]})})),this._promises[n]}get api_route(){return this.parent?`${this.parent.endpoint}/test`:"/test"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),Y_=new b(v);class q_{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new Z_(t,this.delay,this.scheduler))}}class Z_ extends g{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,s=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-s.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-s.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(Z_.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new Q_(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Mp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Mp.createComplete()),this.unsubscribe()}}class Q_{constructor(t,e){this.time=t,this.notification=e}}const X_="Service workers are disabled or not supported by this browser";class K_{constructor(t){if(this.serviceWorker=t,t){const e=tp(t,"controllerchange").pipe(F(()=>t.controller)),n=Aa(na(()=>Zl(t.controller)),e);this.worker=n.pipe(ra(t=>!!t)),this.registration=this.worker.pipe(Ia(()=>t.getRegistration()));const s=tp(t,"message").pipe(F(t=>t.data)).pipe(ra(t=>t&&t.type)).pipe(it(new T));s.connect(),this.events=s}else this.worker=this.events=this.registration=(e=X_,na(()=>Rp(new Error(e))));var e}postMessage(t,e){return this.worker.pipe(xa(1),da(n=>{n.postMessage(Object.assign({action:t},e))})).toPromise().then(()=>void 0)}postMessageWithStatus(t,e,n){const s=this.waitForStatus(n),r=this.postMessage(t,e);return Promise.all([s,r]).then(()=>void 0)}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(t){return this.events.pipe(ra(e=>e.type===t))}nextEventOfType(t){return this.eventsOfType(t).pipe(xa(1))}waitForStatus(t){return this.eventsOfType("STATUS").pipe(ra(e=>e.nonce===t),xa(1),F(t=>{if(!t.status)throw new Error(t.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}const J_=(()=>(class{constructor(t){if(this.sw=t,this.subscriptionChanges=new T,!t.isEnabled)return this.messages=Y_,this.notificationClicks=Y_,void(this.subscription=Y_);this.messages=this.sw.eventsOfType("PUSH").pipe(F(t=>t.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(F(t=>t.data)),this.pushManager=this.sw.registration.pipe(F(t=>t.pushManager));const e=this.pushManager.pipe(Ia(t=>t.getSubscription()));this.subscription=K(e,this.subscriptionChanges)}get isEnabled(){return this.sw.isEnabled}requestSubscription(t){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const e={userVisibleOnly:!0};let n=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),s=new Uint8Array(new ArrayBuffer(n.length));for(let r=0;rt.subscribe(e)),xa(1)).toPromise().then(t=>(this.subscriptionChanges.next(t),t))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe(xa(1),Ia(t=>{if(null===t)throw new Error("Not subscribed to push notifications.");return t.unsubscribe().then(t=>{if(!t)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(X_))}decodeBase64(t){return atob(t)}}))(),tv=(()=>(class{constructor(t){if(this.sw=t,!t.isEnabled)return this.available=Y_,void(this.activated=Y_);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED")}get isEnabled(){return this.sw.isEnabled}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:t},t)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:t},t)}}))();class ev{}const nv=new Rt("NGSW_REGISTER_SCRIPT");function sv(t,e,n,s){return()=>{if(!(Hl(s)&&"serviceWorker"in navigator&&!1!==n.enabled))return;let r;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof n.registrationStrategy)r=n.registrationStrategy();else{const[e,...s]=(n.registrationStrategy||"registerWhenStable").split(":");switch(e){case"registerImmediately":r=Zl(null);break;case"registerWithDelay":r=Zl(null).pipe(function(t,e=mp){var n;const s=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new q_(s,e))}(+s[0]||0));break;case"registerWhenStable":r=t.get(mi).isStable.pipe(ra(t=>t));break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${n.registrationStrategy}`)}}r.pipe(xa(1)).subscribe(()=>navigator.serviceWorker.register(e,{scope:n.scope}))}}function rv(t,e){return new K_(Hl(e)&&!1!==t.enabled?navigator.serviceWorker:void 0)}const iv=(()=>{class t{static register(e,n={}){return{ngModule:t,providers:[{provide:nv,useValue:e},{provide:ev,useValue:n},{provide:K_,useFactory:rv,deps:[ev,Mr]},{provide:Tr,useFactory:sv,deps:[Dt,nv,ev,Mr],multi:!0}]}}}return t})(),ov="Google Analytics";function lv(t,e,n,s="debug",r){if(window.debug){const i=["color: #0288D1",`color:${r||"#009688"}`,"color:rgba(0,0,0,0.87)"];n?av()?console[s](`%c[${ov}]%c[${t}] %c${e}`,...i,n):console[s](`[${ov}][${t}] ${e}`,n):av()?console[s](`%c[${ov}]%c[${t}] %c${e}`,...i):console[s](`[${ov}][${t}] ${e}`)}}function av(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}const cv=(()=>{class t{constructor(t){var e,n,s,r,i;this.title=t,this.enabled=!0,this.app_name="GA_APP",this.timers={},e=window,n=document,s="script",e.GoogleAnalyticsObject="ga",e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,r=n.createElement(s),i=n.getElementsByTagName(s)[0],r.async=1,r.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(r,i),lv("Service","Injected Google Analytics into page"),this.service=window.ga}load(t){if(!this.enabled)throw new Error("Google Analytics needs to be enabled before being initialised");if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.service("create",t,"auto"),this.service("send","pageview")}setUser(t){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`user|${t}`,()=>{lv("Service",`Set user ID: ${t}`),this.service("set","userId",t),this.event("authentication","user-id available")},100)}event(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`event|${t}|${e}|${n}|${s}`,()=>{lv("Service",`Event: ${t}, ${e}${n?", "+n:""}${s?", "+s:""}`),this.service("send","event",`${this.app_prefix?this.app_prefix+"_":""}${t}`,e,n,s)},100)}screen(t,e){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");t&&this.enabled&&this.timeout(`event|${t}|${e||this.app_name}`,()=>{lv("Service",`Screen: ${t}${e?", "+e:""}`),this.service("send","screenview",{appName:e||this.app_name,screenName:t})},100)}page(t,e=!1){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&(this.last_route=t||"/",this.timeout(`page|${t}`,()=>{lv("Service",`Page: ${t}`),this.service("send","pageview",`${e?location.origin:""}${t}`)},100))}timing(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`page|${t}|${e}|${n}|${s}`,()=>{lv("Service",`Timing: ${t}, ${e}, ${n}${s?", "+s:""}`),this.service("send","timing",t,e,n,s)},100)}timeout(t,e,n=300){this.timers[t]&&(clearTimeout(this.timers[t]),this.timers[t]=null),this.timers[t]=setTimeout(()=>{e instanceof Function&&e(),this.timers[t]=null},n)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Kc))},token:t,providedIn:"root"}),t})(),uv=(()=>{class t extends o_{constructor(t,e,n,s,r,i,o,l,a){super(),this._title=t,this._router=e,this._version=n,this._settings=s,this._overlay=r,this._analytics=i,this._hotkeys=o,this._build=l,this._test=a,this._route_trail=[],this._subjects={},this._observers={},this.set("system",null),this._build.parent=this._test.parent=this,this.init(),this.registerOverlays()}get Overlay(){return this._overlay}get Analytics(){return this._analytics}get Hotkeys(){return this._hotkeys}get Build(){return this._build}get Test(){return this._test}setting(t){return this._settings.get(t)}get name(){return this._settings.app_name}set title(t){const e=this.setting("app.title");this._title.setTitle(`${t?t+" | ":""}${e}`)}get title(){return this._title.getTitle()}get endpoint(){return`${location.origin}`}get engine_endpoint(){return"/control/api/"}get is_ready(){return this._settings.setup}notify(t,e,n,s){this._overlay.notify(`
${e}
`,n,s,t)}notifySuccess(t,e,n){this.notify("success",t,e,n)}notifyError(t,e,n){this.notify("error",t,e,n)}notifyInfo(t,e,n){this.notify("info",t,e,n)}log(t,e,n,s="debug",r=!1){this._settings.log(t,e,n,s,r)}navigate(t,e){const n=t instanceof Array?[...t]:[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})}navigateBack(){if(this._route_trail&&this._route_trail.length>0){const t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])}get(t){return this._subjects[t]&&this._subjects[t]instanceof Ql?this._subjects[t].getValue():null}listen(t,e){return this._observers[t]?this._observers[t].subscribe(e):null}set(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new Ql(e),this._observers[t]=this._subjects[t].asObservable())}init(){if(!this._settings.setup)return this.timeout("init",()=>this.init());this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(t=>{this.log("CACHE",`Update available: ${`current version is ${t.current.hash}`} ${`available version is ${t.available.hash}`}`),this.notifyInfo("Newer version of the app is available","Refresh",()=>location.reload())}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],()=>{this.navigate("bootstrap",{clear:!0})})}registerOverlays(){if(B_)for(const t of B_)this._overlay.register(t.id,t.config)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Kc),Ot(vd),Ot(tv),Ot(z_),Ot(qf),Ot(cv),Ot(H_),Ot(G_),Ot(W_))},token:t,providedIn:"root"}),t})();class hv extends l_{constructor(t,e){super(),this.service=t,this.route=e,this.commit_list=[],this.spec_list=[],this.spec_commit_list=[]}ngOnInit(){this.subscription("route.params",this.route.paramMap.subscribe(t=>{t.has("repo")&&(this.repo=t.get("repo"),this.timeout("repo_update",()=>this.service.set("TEST.repository",this.repo))),t.has("driver")?(this.driver=t.get("driver"),this.timeout("driver_update",()=>this.service.set("TEST.driver",this.driver)),this.test_results="",this.commit=null,this.updateCommits(),this.spec=null,this.spec_commit=null,this.updateSpecs(),this.show=!1):this.timeout("driver_update",()=>this.service.set("TEST.driver",""))})),this.updateCommits(),this.updateSpecs(),this.updateSpecCommits(),this.interval("update",()=>{this.updateCommits(),this.updateSpecs(),this.updateSpecCommits()},6e4)}updateCommits(){this.driver&&(this.loading_commits=!0,this.service.Build.driverCommits(this.driver,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:cl(t.date).format("DD MMM YYYY h:mm A")})),this.commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecs(){this.driver&&(this.loading_commits=!0,this.service.Test.query({repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_list=(t||[]).map(t=>({id:t,name:t})),this.spec||(this.spec=this.spec_list.reduce((t,e)=>t&&this.driver.localeCompare(t.id)>this.driver.localeCompare(e.id)?t:e,null),this.updateSpecCommits()),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecCommits(){this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:cl(t.date).format("DD MMM YYYY h:mm A")})),this.spec_commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}test(){if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";const t=t=>{t instanceof Object&&(t=t.error),this.test_results=this.styleResults(t||"");const e=this.service.get("TEST.results")||{},n=t.indexOf("exited with 0")>=0;e[`${this.repo}|${this.driver}`]=n?"passed":"failed",this.service.set("TEST.results",e),this.testing=!1,this.timeout("scroll",()=>this.body.nativeElement.scrollTo(0,this.body.nativeElement.scrollHeight),10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(t,t)}}styleResults(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')}}var dv=Qn({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function pv(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Spec Commit:"])),(t()(),Vi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.spec_commit=n)&&s),s},Dm,Im)),lr(5,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(7,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(9,16384,null,0,$g,[[4,Vg]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,qs(e,9).ngClassUntouched,qs(e,9).ngClassTouched,qs(e,9).ngClassPristine,qs(e,9).ngClassDirty,qs(e,9).ngClassValid,qs(e,9).ngClassInvalid,qs(e,9).ngClassPending)})}function fv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),qi(128,1,new Array(3))],null,function(t,e){var n=e.component,s=function(t,e,n,s){if(ze.isWrapped(s)){s=ze.unwrap(s);const e=t.def.nodes[0].bindingIndex+0,n=ze.unwrap(t.oldValues[e]);t.oldValues[e]=new ze(n)}return s}(e,0,0,t(e,1,0,qs(e.parent.parent,0),n.test_results,"html"));t(e,0,0,s)})}function gv(t){return Ki(0,[(t()(),Vi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Repository:"])),(t()(),Vi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Zi(6,null,["",""])),(t()(),Vi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Driver:"])),(t()(),Vi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Zi(11,null,["",""])),(t()(),Vi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Commit:"])),(t()(),Vi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.commit=n)&&s),s},Dm,Im)),lr(17,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(19,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(21,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Spec:"])),(t()(),Vi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,r=t.component;return"ngModelChange"===e&&(s=!1!==(r.spec=n)&&s),"ngModelChange"===e&&(s=!1!==r.updateSpecCommits()&&s),s},Dm,Im)),lr(27,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(29,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(31,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Di(16777216,null,null,1,null,pv)),lr(33,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Vi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Vi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Vi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.force=n)&&s),s},Zm,Ym)),lr(38,49152,null,0,$m,[],{klass:[0,"klass"],label:[1,"label"]},null),ar(1024,null,Ig,function(t){return[t]},[$m]),lr(40,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(42,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Vi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.debug=n)&&s),s},Zm,Ym)),lr(45,49152,null,0,$m,[],{klass:[0,"klass"],label:[1,"label"]},null),ar(1024,null,Ig,function(t){return[t]},[$m]),lr(47,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(49,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Vi(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Vi(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.test()&&s),s},e_,t_)),ar(5120,null,Ig,function(t){return[t]},[Xm]),lr(55,4767744,null,0,Xm,[sn,cn],null,{tapped:"tapped"}),lr(56,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Zi(-1,0,["Run!"])),(t()(),Vi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),Zi(59,null,[" "," "])),(t()(),Di(16777216,null,null,1,null,fv)),lr(61,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,63).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,63).handleTouch(n)&&s),"tapped"===e&&(s=0!=(r.show=!r.show)&&s),s},Wm,Gm)),lr(63,4440064,null,0,Um,[sn,cn],{klass:[0,"klass"],center:[1,"center"]},null),lr(64,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,qs(e,21).ngClassUntouched,qs(e,21).ngClassTouched,qs(e,21).ngClassPristine,qs(e,21).ngClassDirty,qs(e,21).ngClassValid,qs(e,21).ngClassInvalid,qs(e,21).ngClassPending),t(e,26,0,qs(e,31).ngClassUntouched,qs(e,31).ngClassTouched,qs(e,31).ngClassPristine,qs(e,31).ngClassDirty,qs(e,31).ngClassValid,qs(e,31).ngClassInvalid,qs(e,31).ngClassPending),t(e,37,0,qs(e,42).ngClassUntouched,qs(e,42).ngClassTouched,qs(e,42).ngClassPristine,qs(e,42).ngClassDirty,qs(e,42).ngClassValid,qs(e,42).ngClassInvalid,qs(e,42).ngClassPending),t(e,44,0,qs(e,49).ngClassUntouched,qs(e,49).ngClassTouched,qs(e,49).ngClassPristine,qs(e,49).ngClassDirty,qs(e,49).ngClassValid,qs(e,49).ngClassInvalid,qs(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_up":"keyboard_arrow_down")})}function mv(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(-1,null,["arrow_back"])),(t()(),Vi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(-1,null,["Select a driver from the sidebar"]))],null,null)}function _v(t){return Ki(0,[(e=0,n=n_,s=[Uc],cr(-1,e|=16,null,0,n,n,s)),zi(671088640,1,{body:0}),(t()(),Vi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,gv)),lr(4,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Di(0,[["select",2]],null,0,null,mv))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,qs(e,5))},null);var e,n,s}function vv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"app-workspace",[],null,null,null,_v,dv)),lr(1,245760,null,0,hv,[uv,lh],null,null)],function(t,e){t(e,1,0)},null)}var yv=$s("app-workspace",hv,vv,{},{},[]);class wv{constructor(){this.menu=!0,this.menuChange=new Sr}toggleMenu(){this.menu=!this.menu,this.menuChange.emit(this.menu)}}var bv=Qn({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function Cv(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,2).handleTouch(n)&&s),"tapped"===e&&(s=!1!==r.toggleMenu()&&s),s},Wm,Gm)),lr(2,4440064,null,0,Um,[sn,cn],{klass:[0,"klass"]},null),lr(3,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(-1,null,["menu"])),(t()(),Vi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Vi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Vi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),Zi(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}class xv extends l_{constructor(t){super(),this.service=t,this.repository_list=[],this.status={}}ngOnInit(){this.service.set("TEST.repository",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",()=>this.updateRepositoryList(),6e4),this.subscription("test_results",this.service.listen("TEST.results",t=>{this.status=t||{}})),this.subscription("repository",this.service.listen("TEST.repository",t=>{t&&(this.repo={id:t,name:t},this.search_str="",this.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",t=>{this.driver=t}))}setRepository(t){this.service.navigate([t]),this.search_str="",this.updateDriverList()}setDriver(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t])}filter(t){this.filtered_list=this.driver_list.filter(e=>e.toLowerCase().indexOf(t.toLowerCase())>=0)}updateDriverList(){this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(t=>{this.driver_list=t||[],this.filter(""),this.loading=!1},t=>this.loading=!1)}updateRepositoryList(){this.service.Build.repositories().then(t=>{this.repository_list=(t||[]).map(t=>({id:t,name:t})),this.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),this.updateDriverList()})}}var Sv=Qn({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function Ev(t){return Ki(0,[(t()(),Vi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.setDriver(t.context.$implicit)&&s),s},null,null)),lr(1,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Vi(3,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(4,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]),t(e,4,0,e.context.$implicit)})}function kv(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function Tv(t){return Ki(0,[(t()(),Vi(0,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,r=t.component;return"ngModelChange"===e&&(s=!1!==(r.repo=n)&&s),"ngModelChange"===e&&(s=!1!==r.setRepository(n.id)&&s),s},Dm,Im)),lr(3,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(5,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(7,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(8,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Vi(9,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(10,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(-1,null,["search"])),(t()(),Vi(12,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,r=t.component;return"input"===e&&(s=!1!==qs(t,13)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==qs(t,13).onTouched()&&s),"compositionstart"===e&&(s=!1!==qs(t,13)._compositionStart()&&s),"compositionend"===e&&(s=!1!==qs(t,13)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(r.search_str=n)&&s),"ngModelChange"===e&&(s=!1!==r.filter(n)&&s),s},null,null)),lr(13,16384,null,0,Ag,[cn,sn,[2,Pg]],null,null),ar(1024,null,Ig,function(t){return[t]},[Ag]),lr(15,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(17,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(18,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,Ev)),lr(20,278528,null,0,Rl,[An,Rn,xn],{ngForOf:[0,"ngForOf"]},null),(t()(),Di(16777216,null,null,1,null,kv)),lr(22,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,3,0,"simple",n.repository_list||xs,"ACA Drivers"),t(e,5,0,n.repo),t(e,15,0,n.search_str),t(e,20,0,n.filtered_list),t(e,22,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,2,0,qs(e,7).ngClassUntouched,qs(e,7).ngClassTouched,qs(e,7).ngClassPristine,qs(e,7).ngClassDirty,qs(e,7).ngClassValid,qs(e,7).ngClassInvalid,qs(e,7).ngClassPending),t(e,12,0,qs(e,17).ngClassUntouched,qs(e,17).ngClassTouched,qs(e,17).ngClassPristine,qs(e,17).ngClassDirty,qs(e,17).ngClassValid,qs(e,17).ngClassInvalid,qs(e,17).ngClassPending)})}var Ov=Qn({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:16em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:16em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Iv(t){return Ki(0,[(t()(),Vi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var s=!0;return"menuChange"===e&&(s=!1!==(t.component.show_menu=n)&&s),s},Cv,bv)),lr(3,49152,null,0,wv,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Vi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Vi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(6,0,null,null,1,"sidebar",[],null,null,null,Tv,Sv)),lr(7,245760,null,0,xv,[uv],null,null),(t()(),Vi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Vi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),lr(10,212992,null,0,bd,[wd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function Rv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"app-root",[],null,null,null,Iv,Ov)),lr(1,49152,null,0,hl,[],null,null)],null,null)}var Pv=$s("app-root",hl,Rv,{},{},[]);class Av{}class Mv{}var Nv=rl(ul,[hl],function(t){return function(t){const e={},n=[];let s=!1;for(let r=0;r(t[e.name]=e.token,t),{}))),()=>ic),Ud(e),sv(n,s,r,i)];var o},[[2,hi],jd,Dt,nv,ev,Mr]),Os(512,Or,Or,[[2,Tr]]),Os(131584,mi,mi,[Xr,Dr,Dt,re,Xe,Or]),Os(1073742336,Ni,Ni,[mi]),Os(1073742336,Qc,Qc,[[3,Qc]]),Os(1024,Id,Dd,[[3,vd]]),Os(512,ju,Uu,[]),Os(512,wd,wd,[]),Os(256,Od,{useHash:!0},[]),Os(1024,fl,Nd,[dl,[2,gl],Od]),Os(512,ml,ml,[fl,dl]),Os(512,zr,zr,[]),Os(512,kr,wi,[zr,[2,vi]]),Os(1024,hd,function(){return[[{path:"",component:hv},{path:":repo",component:hv},{path:":repo/:driver",component:hv}]]},[]),Os(1024,vd,$d,[mi,ju,wd,ml,Dt,kr,zr,hd,Od,[2,pd],[2,cd]]),Os(1073742336,Ad,Ad,[[2,Id],[2,vd]]),Os(1073742336,Av,Av,[]),Os(1073742336,iv,iv,[]),Os(1073742336,xm,xm,[]),Os(1073742336,Em,Em,[]),Os(1073742336,km,km,[]),Os(1073742336,Bm,Bm,[]),Os(1073742336,Jm,Jm,[]),Os(1073742336,jm,jm,[]),Os(1073742336,eg,eg,[]),Os(1073742336,pf,pf,[]),Os(1073742336,Up,Up,[]),Os(1073742336,sf,sf,[]),Os(1073742336,zf,zf,[]),Os(1073742336,Kf,Kf,[]),Os(1073742336,i_,i_,[]),Os(1073742336,Qd,Qd,[]),Os(1073742336,Mv,Mv,[]),Os(1073742336,j_,j_,[]),Os(1073742336,U_,U_,[]),Os(1073742336,ul,ul,[]),Os(256,Ge,!0,[]),Os(256,M_,"XSRF-TOKEN",[]),Os(256,N_,"X-XSRF-TOKEN",[])])});(function(){if(oe)throw new Error("Cannot enable prod mode after platform setup.");ie=!1})(),qc().bootstrapModuleFactory(Nv).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file diff --git a/www/main-es5.886d7c57388081782c99.js b/www/main-es5.33cf6bf03f100d29adae.js similarity index 88% rename from www/main-es5.886d7c57388081782c99.js rename to www/main-es5.33cf6bf03f100d29adae.js index 95d0585f69c..c7187d06c31 100644 --- a/www/main-es5.886d7c57388081782c99.js +++ b/www/main-es5.33cf6bf03f100d29adae.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",r="hour",o="day",i="week",s="month",a="quarter",l="year",u=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,c=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},p={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+h(r,2,"0")+":"+h(o,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,s),o=e-r<0,i=t.clone().add(n+(o?-1:1),s);return Number(-(n+(e-r)/(o?r-i:i-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(u){return{M:s,y:l,w:i,d:o,h:r,m:n,s:e,ms:t,Q:a}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},f={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},d="en",g={};g[d]=f;var v=function(t){return t instanceof b},y=function(t,e,n){var r;if(!t)return null;if("string"==typeof t)g[t]&&(r=t),e&&(g[t]=e,r=t);else{var o=t.name;g[o]=t,r=o}return n||(d=r),r},m=function(t,e,n){if(v(t))return t.clone();var r=e?"string"==typeof e?{format:e,pl:n}:e:{};return r.date=t,new b(r)},_=p;_.l=y,_.i=v,_.w=function(t,e){return m(t,{locale:e.$L,utc:e.$u})};var b=function(){function h(t){this.$L=this.$L||y(t.locale,null,!0)||d,this.parse(t)}var p=h.prototype;return p.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(_.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(u);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},p.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},p.$utils=function(){return _},p.isValid=function(){return!("Invalid Date"===this.$d.toString())},p.isSame=function(t,e){var n=m(t);return this.startOf(e)<=n&&n<=this.endOf(e)},p.isAfter=function(t,e){return m(t)=0;a--)(o=t[a])&&(s=(i<3?o(s):i>3?o(e,n,s):o(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}function a(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function l(t,e,n,r){return new(n||(n=Promise))(function(o,i){function s(t){try{l(r.next(t))}catch(e){i(e)}}function a(t){try{l(r.throw(t))}catch(e){i(e)}}function l(t){t.done?o(t.value):new n(function(e){e(t.value)}).then(s,a)}l((r=r.apply(t,e||[])).next())})}function u(t,e){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,r=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function h(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(a){o={error:a}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function p(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(X);function st(t){return t}function at(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),rt(st,t)}function lt(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof o&&(n=t.pop()),null===r&&1===t.length&&t[0]instanceof R?t[0]:at(n)(et(t,r))}function ut(){return function(t){return t.lift(new ct(t))}}var ct=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var r=new ht(t,n),o=e.subscribe(r);return r.closed||(r.connection=n.connect()),o},t}(),ht=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},e}(E),pt=function(t){function e(e,n){var r=t.call(this)||this;return r.source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return o(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 m).add(this.source.subscribe(new dt(this.getSubject(),this))),t.closed?(this._connection=null,t=m.EMPTY):this._connection=t),t},e.prototype.refCount=function(){return ut()(this)},e}(R).prototype,ft={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:pt._subscribe},_isComplete:{value:pt._isComplete,writable:!0},getSubject:{value:pt.getSubject},connect:{value:pt.connect},refCount:{value:pt.refCount}},dt=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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}(j);function gt(t,e){return function(n){var r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new vt(r,e));var o=Object.create(n,ft);return o.source=n,o.subjectFactory=r,o}}var vt=function(){function t(t,e){this.subjectFactory=t,this.selector=e}return t.prototype.call=function(t,e){var n=this.selector,r=this.subjectFactory(),o=n(r).subscribe(t);return o.add(e.subscribe(r)),o},t}();function yt(){return new V}var mt="__parameters__";function _t(t,e,n){var r=function(t){return function(){for(var e=[],n=0;n ");else if("object"==typeof e){var i=[];for(var s in e)if(e.hasOwnProperty(s)){var a=e[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):Tt(a)))}o="{"+i.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+o+"]: "+t.replace(Xt,"\n ")}function ne(t,e){return new Error(ee(t,e,"StaticInjectorError"))}var re="ngDebugContext",oe="ngOriginalError",ie="ngErrorLogger",se=new Ut("AnalyzeForEntryComponents"),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({}),le=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt)}();function ue(t){return t[re]}function ce(t){return t[oe]}function he(t){for(var e=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return t.prototype.getInertBodyElement_XHR=function(t){t=""+t+"";try{t=encodeURI(t)}catch(r){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=""+t+"";try{var e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(n){return null}},t.prototype.getInertBodyElement_InertDocument=function(t){var e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},t.prototype.stripCustomNsAttrs=function(t){for(var e=t.attributes,n=e.length-1;0"),!0},t.prototype.endElement=function(t){var e=t.nodeName.toLowerCase();ke.hasOwnProperty(e)&&!xe.hasOwnProperty(e)&&(this.buf.push(""))},t.prototype.chars=function(t){this.buf.push(De(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}(),Me=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ne=/([^\#-~ |!])/g;function De(t){return t.replace(/&/g,"&").replace(Me,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ne,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}function je(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Ve=function(t){return 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",t}({}),Le=function(){return function(){}}(),ze=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ue=/^url\(([^)]+)\)$/,Fe=/([A-Z])/g;function He(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function Be(t){return!!t&&"function"==typeof t.then}function We(t){return!!t&&"function"==typeof t.subscribe}var Ge=null;function Ye(){if(!Ge){var t=Dt.Symbol;if(t&&t.iterator)Ge=t.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),n=0;n-1}(r)||"root"===o.providedIn&&r._def.isRoot))){var c=t._providers.length;return t._def.providers[c]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:c,token:e.token},t._providers[c]=Rr,t._providers[c]=Vr(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Vt(i)}}function Vr(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(jr(t,n[0]));case 2:return new e(jr(t,n[0]),jr(t,n[1]));case 3:return new e(jr(t,n[0]),jr(t,n[1]),jr(t,n[2]));default:for(var o=new Array(r),i=0;i=n.length)&&(e=n.length-1),e<0)return null;var r=n[e];return r.viewContainerParent=null,Hr(n,e),Xn.dirtyParentQueries(r),Ur(r),r}function zr(t,e,n){var r=e?fr(e,e.def.lastRenderRootNode):t.renderElement,o=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);Cr(n,2,o,i,void 0)}function Ur(t){Cr(t,3,null,null,void 0)}function Fr(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Hr(t,e){e>=t.length-1?t.pop():t.splice(e,1)}var Br=new Object;function Wr(t,e,n,r,o,i){return new Gr(t,e,n,r,o,i)}var Gr=function(t){function e(e,n,r,o,i,s){var a=t.call(this)||this;return a.selector=e,a.componentType=n,a._inputs=o,a._outputs=i,a.ngContentSelectors=s,a.viewDefFactory=r,a}return o(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){var t=[],e=this._inputs;for(var n in e)t.push({propName:n,templateName:e[n]});return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var t=[];for(var e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,r){if(!r)throw new Error("ngModule should be provided");var o=wr(this.viewDefFactory),i=o.nodes[0].element.componentProvider.nodeIndex,s=Xn.createRootView(t,e||[],n,o,r,Br),a=Zn(s,i).instance;return n&&s.renderer.setAttribute(qn(s,0).renderElement,"ng-version",_n.full),new Yr(s,new Qr(s),a)},e}(en),Yr=function(t){function e(e,n,r){var o=t.call(this)||this;return o._view=e,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o.hostView=n,o.changeDetectorRef=n,o.instance=r,o}return o(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return new pn(qn(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new to(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}(tn);function qr(t,e,n){return new Zr(t,e,n)}var Zr=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 pn(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new to(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=pr(t),t=t.parent;return t?new to(t,e):new to(this._view,null)},enumerable:!0,configurable:!0}),t.prototype.clear=function(){for(var t=this._embeddedViews.length-1;t>=0;t--){var e=Lr(this._data,t);Xn.destroyView(e)}},t.prototype.get=function(t){var e=this._embeddedViews[t];if(e){var n=new Qr(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 r=t.createEmbeddedView(e||{});return this.insert(r,n),r},t.prototype.createComponent=function(t,e,n,r,o){var i=n||this.parentInjector;o||t instanceof ln||(o=i.get(un));var s=t.create(i,r,void 0,o);return this.insert(s.hostView,e),s},t.prototype.insert=function(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n,r,o,i,s=t;return i=(n=this._data).viewContainer._embeddedViews,null==(r=e)&&(r=i.length),(o=s._view).viewContainerParent=this._view,Fr(i,r,o),function(t,e){var n=hr(e);if(n&&n!==t&&!(16&e.state)){e.state|=16;var r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(e),function(t,n){if(!(4&n.flags)){e.parent.def.nodeFlags|=4,n.flags|=4;for(var r=n.parent;r;)r.childFlags|=4,r=r.parent}}(0,e.parentNodeDef)}}(n,o),Xn.dirtyParentQueries(o),zr(n,r>0?i[r-1]:null,o),s.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,r,o,i,s,a=this._embeddedViews.indexOf(t._view);return o=e,s=(i=(n=this._data).viewContainer._embeddedViews)[r=a],Hr(i,r),null==o&&(o=i.length),Fr(i,o,s),Xn.dirtyParentQueries(s),Ur(s),zr(n,o>0?i[o-1]:null,s),t},t.prototype.indexOf=function(t){return this._embeddedViews.indexOf(t._view)},t.prototype.remove=function(t){var e=Lr(this._data,t);e&&Xn.destroyView(e)},t.prototype.detach=function(t){var e=Lr(this._data,t);return e?new Qr(e):null},t}();function $r(t){return new Qr(t)}var Qr=function(){function t(t){this._view=t,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){return Cr(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(){lr(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{Xn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}},t.prototype.checkNoChanges=function(){Xn.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)),Xn.destroyView(this._view)},t.prototype.detachFromAppRef=function(){this._appRef=null,Ur(this._view),Xn.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 Xr(t,e){return new Kr(t,e)}var Kr=function(t){function e(e,n){var r=t.call(this)||this;return r._parentView=e,r._def=n,r}return o(e,t),e.prototype.createEmbeddedView=function(t){return new Qr(Xn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new pn(qn(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),e}(Vn);function Jr(t,e){return new to(t,e)}var to=function(){function t(t,e){this.view=t,this.elDef=e}return t.prototype.get=function(t,e){return void 0===e&&(e=Gt.THROW_IF_NOT_FOUND),Xn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:tr(t)},e)},t}();function eo(t,e){var n=t.def.nodes[e];if(1&n.flags){var r=qn(t,n.nodeIndex);return n.element.template?r.template:r.renderElement}if(2&n.flags)return Yn(t,n.nodeIndex).renderText;if(20240&n.flags)return Zn(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function no(t){return new ro(t.renderer)}var ro=function(){function t(t){this.delegate=t}return t.prototype.selectRootElement=function(t){return this.delegate.selectRootElement(t)},t.prototype.createElement=function(t,e){var n=h(Pr(e),2),r=this.delegate.createElement(n[1],n[0]);return t&&this.delegate.appendChild(t,r),r},t.prototype.createViewRoot=function(t){return t},t.prototype.createTemplateAnchor=function(t){var e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e},t.prototype.createText=function(t,e){var n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n},t.prototype.projectNodes=function(t,e){for(var n=0;n0,e.provider.value,e.provider.deps);if(e.outputs.length)for(var r=0;r0,r=e.provider;switch(201347067&e.flags){case 512:return xo(t,e.parent,n,r.value,r.deps);case 1024:return function(t,e,n,r,o){var i=o.length;switch(i){case 0:return r();case 1:return r(Eo(t,e,n,o[0]));case 2:return r(Eo(t,e,n,o[0]),Eo(t,e,n,o[1]));case 3:return r(Eo(t,e,n,o[0]),Eo(t,e,n,o[1]),Eo(t,e,n,o[2]));default:for(var s=Array(i),a=0;a0&&(o=setTimeout(function(){r._callbacks=r._callbacks.filter(function(t){return t.timeoutId!==o}),t(r._didWork,r.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:o,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}(),gi=function(){function t(){this._applications=new Map,vi.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),vi.findTestabilityInTree(this,t,e)},s([a("design:paramtypes",[])],t)}(),vi=new(function(){function t(){}return t.prototype.addToWindow=function(t){},t.prototype.findTestabilityInTree=function(t,e,n){return null},t}()),yi=new Ut("AllowMultipleToken"),mi=function(){return function(t,e){this.name=t,this.token=e}}();function _i(t,e,n){void 0===n&&(n=[]);var r="Platform: "+e,o=new Ut(r);return function(e){void 0===e&&(e=[]);var i=bi();if(!i||i.injector.get(yi,!1))if(t)t(n.concat(e).concat({provide:o,useValue:!0}));else{var s=n.concat(e).concat({provide:o,useValue:!0});!function(t){if(pi&&!pi.destroyed&&!pi.injector.get(yi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");pi=t.get(wi);var e=t.get(Uo,null);e&&e.forEach(function(t){return t()})}(Gt.create({providers:s,name:r}))}return function(t){var e=bi();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}(o)}}function bi(){return pi&&!pi.destroyed?pi:null}var wi=function(){function t(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return t.prototype.bootstrapModuleFactory=function(t,e){var n,r=this,o="noop"===(n=e?e.ngZone:void 0)?new fi:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ge()}),i=[{provide:si,useValue:o}];return o.run(function(){var e=Gt.create({providers:i,parent:r.injector,name:t.moduleType.name}),n=t.create(e),s=n.injector.get(pe,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy(function(){return Si(r._modules,n)}),o.runOutsideAngular(function(){return o.onError.subscribe({next:function(t){s.handleError(t)}})}),function(t,e,o){try{var i=((s=n.injector.get(jo)).runInitializers(),s.donePromise.then(function(){return r._moduleDoBootstrap(n),n}));return Be(i)?i.catch(function(n){throw e.runOutsideAngular(function(){return t.handleError(n)}),n}):i}catch(a){throw e.runOutsideAngular(function(){return t.handleError(a)}),a}var s}(s,o)})},t.prototype.bootstrapModule=function(t,e){var n=this;void 0===e&&(e=[]);var r=Ci({},e);return function(t,e,n){return t.get(Ko).createCompiler([e]).compileModuleAsync(n)}(this.injector,r,t).then(function(t){return n.bootstrapModuleFactory(t,r)})},t.prototype._moduleDoBootstrap=function(t){var e=t.injector.get(xi);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(function(t){return e.bootstrap(t)});else{if(!t.instance.ngDoBootstrap)throw new Error("The module "+Tt(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}();function Ci(t,e){return Array.isArray(e)?e.reduce(Ci,t):i({},t,e)}var xi=function(){function t(t,e,n,r,o,i){var s=this;this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ge(),this._zone.onMicrotaskEmpty.subscribe({next:function(){s._zone.run(function(){s.tick()})}});var a=new R(function(t){s._stable=s._zone.isStable&&!s._zone.hasPendingMacrotasks&&!s._zone.hasPendingMicrotasks,s._zone.runOutsideAngular(function(){t.next(s._stable),t.complete()})}),l=new R(function(t){var e;s._zone.runOutsideAngular(function(){e=s._zone.onStable.subscribe(function(){si.assertNotInAngularZone(),ii(function(){s._stable||s._zone.hasPendingMacrotasks||s._zone.hasPendingMicrotasks||(s._stable=!0,t.next(!0))})})});var n=s._zone.onUnstable.subscribe(function(){si.assertInAngularZone(),s._stable&&(s._stable=!1,s._zone.runOutsideAngular(function(){t.next(!1)}))});return function(){e.unsubscribe(),n.unsubscribe()}});this.isStable=lt(a,l.pipe(function(t){return ut()(gt(yt)(t))}))}var e;return e=t,t.prototype.bootstrap=function(t,e){var n,r=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 en?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);var o=n instanceof ln?null:this._injector.get(un),i=n.create(Gt.NULL,[],e||n.selector,o);i.onDestroy(function(){r._unloadComponent(i)});var s=i.injector.get(di,null);return s&&i.injector.get(gi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ge()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i},t.prototype.tick=function(){var t,n,r,o,i=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var s=e._tickScope();try{this._runningTick=!0;try{for(var a=c(this._views),l=a.next();!l.done;l=a.next())l.value.detectChanges()}catch(p){t={error:p}}finally{try{l&&!l.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}if(this._enforceNoNewChanges)try{for(var u=c(this._views),h=u.next();!h.done;h=u.next())h.value.checkNoChanges()}catch(f){r={error:f}}finally{try{h&&!h.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}catch(d){this._zone.runOutsideAngular(function(){return i._exceptionHandler.handleError(d)})}finally{this._runningTick=!1,ri(s)}},t.prototype.attachView=function(t){var e=t;this._views.push(e),e.attachToAppRef(this)},t.prototype.detachView=function(t){var e=t;Si(this._views,e),e.detachFromAppRef()},t.prototype._loadComponent=function(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Ho,[]).concat(this._bootstrapListeners).forEach(function(e){return e(t)})},t.prototype._unloadComponent=function(t){this.detachView(t.hostView),Si(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._tickScope=ni("ApplicationRef#tick()"),t}();function Si(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}var Ei=function(){return function(){}}(),Oi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},ki=function(){function t(t,e){this._compiler=t,this._config=e||Oi}return t.prototype.load=function(t){return this._compiler instanceof Xo?this.loadFactory(t):this.loadAndCompile(t)},t.prototype.loadAndCompile=function(t){var e=this,r=h(t.split("#"),2),o=r[0],i=r[1];return void 0===i&&(i="default"),n("zn8P")(o).then(function(t){return t[i]}).then(function(t){return Pi(t,o,i)}).then(function(t){return e._compiler.compileModuleAsync(t)})},t.prototype.loadFactory=function(t){var e=h(t.split("#"),2),r=e[0],o=e[1],i="NgFactory";return void 0===o&&(o="default",i=""),n("zn8P")(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(t){return t[o+i]}).then(function(t){return Pi(t,r,o)})},t}();function Pi(t,e,n){if(!t)throw new Error("Cannot find '"+n+"' in '"+e+"'");return t}var Ti=function(){return function(t,e){this.name=t,this.callback=e}}(),Ii=function(){function t(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Ri&&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}(),Ri=function(t){function e(e,n,r){var o=t.call(this,e,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=e,o}return o(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,p([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,r){e.childNodes.forEach(function(e){e instanceof Ri&&(n(e)&&r.push(e),t(e,n,r))})}(this,t,e),e},e.prototype.queryAllNodes=function(t){var e=[];return function t(e,n,r){e instanceof Ri&&e.childNodes.forEach(function(e){n(e)&&r.push(e),e instanceof Ri&&t(e,n,r)})}(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}(Ii),Ai=new Map,Mi=function(t){return Ai.get(t)||null};function Ni(t){Ai.set(t.nativeNode,t)}var Di=_i(null,"core",[{provide:Fo,useValue:"unknown"},{provide:wi,deps:[Gt]},{provide:gi,deps:[]},{provide:Bo,deps:[]}]),ji=new Ut("LocaleId");function Vi(){return Dn}function Li(){return jn}function zi(t){return t||"en-US"}function Ui(t){var e=[];return t.onStable.subscribe(function(){for(;e.length;)e.pop()()}),function(t){e.push(t)}}var Fi=function(){return function(t){}}();function Hi(t,e,n,r,o,i){t|=1;var s=yr(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s.matchedQueries,matchedQueryIds:s.matchedQueryIds,references:s.references,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?wr(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Kn},provider:null,text:null,query:null,ngContent:null}}function Bi(t,e,n,r,o,i,s,a,l,u,c,p){var f;void 0===s&&(s=[]),u||(u=Kn);var d=yr(n),g=d.matchedQueries,v=d.references,y=d.matchedQueryIds,m=null,_=null;i&&(m=(f=h(Pr(i),2))[0],_=f[1]),a=a||[];for(var b=new Array(a.length),w=0;w0)u=g,ss(g)||(c=g);else for(;u&&d===u.nodeIndex+u.childCount;){var m=u.parent;m&&(m.childFlags|=u.childFlags,m.childMatchedQueries|=u.childMatchedQueries),c=(u=m)&&ss(u)?u.renderParent:u}}return{factory:null,nodeFlags:s,rootNodeFlags:a,nodeMatchedQueries:l,flags:t,nodes:e,updateDirectives:n||Kn,updateRenderer:r||Kn,handleEvent:function(t,n,r,o){return e[n].element.handleEvent(t,r,o)},bindingCount:o,outputCount:i,lastRenderRootNode:f}}function ss(t){return 0!=(1&t.flags)&&null===t.element.name}function as(t,e,n){var r=e.element&&e.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.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 o=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=o&&e.nodeIndex+e.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.nodeIndex+"!")}}function ls(t,e,n,r){var o=hs(t.root,t.renderer,t,e,n);return ps(o,t.component,r),fs(o),o}function us(t,e,n){var r=hs(t,t.renderer,null,null,e);return ps(r,n,n),fs(r),r}function cs(t,e,n,r){var o,i=e.element.componentRendererType;return o=i?t.root.rendererFactory.createRenderer(r,i):t.root.renderer,hs(t.root,o,t,e.element.componentProvider,n)}function hs(t,e,n,r,o){var i=new Array(o.nodes.length),s=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(o.bindingCount),disposables:s,initIndex:-1}}function ps(t,e,n){t.component=e,t.context=n}function fs(t){var e;dr(t)&&(e=qn(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);for(var n=t.def,r=t.nodes,o=0;o0&&qi(t,e,0,n)&&(f=!0),p>1&&qi(t,e,1,r)&&(f=!0),p>2&&qi(t,e,2,o)&&(f=!0),p>3&&qi(t,e,3,i)&&(f=!0),p>4&&qi(t,e,4,s)&&(f=!0),p>5&&qi(t,e,5,a)&&(f=!0),p>6&&qi(t,e,6,l)&&(f=!0),p>7&&qi(t,e,7,u)&&(f=!0),p>8&&qi(t,e,8,c)&&(f=!0),p>9&&qi(t,e,9,h)&&(f=!0),f}(t,e,n,r,o,i,s,a,l,u,c,h);case 2:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=!1,f=e.bindings,d=f.length;if(d>0&&sr(t,e,0,n)&&(p=!0),d>1&&sr(t,e,1,r)&&(p=!0),d>2&&sr(t,e,2,o)&&(p=!0),d>3&&sr(t,e,3,i)&&(p=!0),d>4&&sr(t,e,4,s)&&(p=!0),d>5&&sr(t,e,5,a)&&(p=!0),d>6&&sr(t,e,6,l)&&(p=!0),d>7&&sr(t,e,7,u)&&(p=!0),d>8&&sr(t,e,8,c)&&(p=!0),d>9&&sr(t,e,9,h)&&(p=!0),p){var g=e.text.prefix;d>0&&(g+=os(n,f[0])),d>1&&(g+=os(r,f[1])),d>2&&(g+=os(o,f[2])),d>3&&(g+=os(i,f[3])),d>4&&(g+=os(s,f[4])),d>5&&(g+=os(a,f[5])),d>6&&(g+=os(l,f[6])),d>7&&(g+=os(u,f[7])),d>8&&(g+=os(c,f[8])),d>9&&(g+=os(h,f[9]));var v=Yn(t,e.nodeIndex).renderText;t.renderer.setValue(v,g)}return p}(t,e,n,r,o,i,s,a,l,u,c,h);case 16384:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=Zn(t,e.nodeIndex),f=p.instance,d=!1,g=void 0,v=e.bindings.length;return v>0&&ir(t,e,0,n)&&(d=!0,g=ko(t,p,e,0,n,g)),v>1&&ir(t,e,1,r)&&(d=!0,g=ko(t,p,e,1,r,g)),v>2&&ir(t,e,2,o)&&(d=!0,g=ko(t,p,e,2,o,g)),v>3&&ir(t,e,3,i)&&(d=!0,g=ko(t,p,e,3,i,g)),v>4&&ir(t,e,4,s)&&(d=!0,g=ko(t,p,e,4,s,g)),v>5&&ir(t,e,5,a)&&(d=!0,g=ko(t,p,e,5,a,g)),v>6&&ir(t,e,6,l)&&(d=!0,g=ko(t,p,e,6,l,g)),v>7&&ir(t,e,7,u)&&(d=!0,g=ko(t,p,e,7,u,g)),v>8&&ir(t,e,8,c)&&(d=!0,g=ko(t,p,e,8,c,g)),v>9&&ir(t,e,9,h)&&(d=!0,g=ko(t,p,e,9,h,g)),g&&f.ngOnChanges(g),65536&e.flags&&Gn(t,256,e.nodeIndex)&&f.ngOnInit(),262144&e.flags&&f.ngDoCheck(),d}(t,e,n,r,o,i,s,a,l,u,c,h);case 32:case 64:case 128:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=e.bindings,f=!1,d=p.length;if(d>0&&sr(t,e,0,n)&&(f=!0),d>1&&sr(t,e,1,r)&&(f=!0),d>2&&sr(t,e,2,o)&&(f=!0),d>3&&sr(t,e,3,i)&&(f=!0),d>4&&sr(t,e,4,s)&&(f=!0),d>5&&sr(t,e,5,a)&&(f=!0),d>6&&sr(t,e,6,l)&&(f=!0),d>7&&sr(t,e,7,u)&&(f=!0),d>8&&sr(t,e,8,c)&&(f=!0),d>9&&sr(t,e,9,h)&&(f=!0),f){var g=$n(t,e.nodeIndex),v=void 0;switch(201347067&e.flags){case 32:v=new Array(p.length),d>0&&(v[0]=n),d>1&&(v[1]=r),d>2&&(v[2]=o),d>3&&(v[3]=i),d>4&&(v[4]=s),d>5&&(v[5]=a),d>6&&(v[6]=l),d>7&&(v[7]=u),d>8&&(v[8]=c),d>9&&(v[9]=h);break;case 64:v={},d>0&&(v[p[0].name]=n),d>1&&(v[p[1].name]=r),d>2&&(v[p[2].name]=o),d>3&&(v[p[3].name]=i),d>4&&(v[p[4].name]=s),d>5&&(v[p[5].name]=a),d>6&&(v[p[6].name]=l),d>7&&(v[p[7].name]=u),d>8&&(v[p[8].name]=c),d>9&&(v[p[9].name]=h);break;case 128:var y=n;switch(d){case 1:v=y.transform(n);break;case 2:v=y.transform(r);break;case 3:v=y.transform(r,o);break;case 4:v=y.transform(r,o,i);break;case 5:v=y.transform(r,o,i,s);break;case 6:v=y.transform(r,o,i,s,a);break;case 7:v=y.transform(r,o,i,s,a,l);break;case 8:v=y.transform(r,o,i,s,a,l,u);break;case 9:v=y.transform(r,o,i,s,a,l,u,c);break;case 10:v=y.transform(r,o,i,s,a,l,u,c,h)}}g.value=v}return f}(t,e,n,r,o,i,s,a,l,u,c,h);default:throw"unreachable"}}(t,e,r,o,i,s,a,l,u,c,h,f):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){for(var r=!1,o=0;o0&&ar(t,e,0,n),p>1&&ar(t,e,1,r),p>2&&ar(t,e,2,o),p>3&&ar(t,e,3,i),p>4&&ar(t,e,4,s),p>5&&ar(t,e,5,a),p>6&&ar(t,e,6,l),p>7&&ar(t,e,7,u),p>8&&ar(t,e,8,c),p>9&&ar(t,e,9,h)}(t,e,r,o,i,s,a,l,u,c,h,p):function(t,e,n){for(var r=0;r0){var i=new Set(t.modules);Ds.forEach(function(e,r){if(i.has(kt(r).providedIn)){var o={token:r,flags:e.flags|(n?4096:0),deps:mr(e.deps),value:e.value,index:t.providers.length};t.providers.push(o),t.providersByKey[tr(r)]=o}})}}(t=t.factory(function(){return Kn})),t):t}(r))}var Ns=new Map,Ds=new Map,js=new Map;function Vs(t){var e;Ns.set(t.token,t),"function"==typeof t.token&&(e=kt(t.token))&&"function"==typeof e.providedIn&&Ds.set(t.token,t)}function Ls(t,e){var n=wr(e.viewDefFactory),r=wr(n.nodes[0].element.componentView);js.set(t,r)}function zs(){Ns.clear(),Ds.clear(),js.clear()}function Us(t){if(0===Ns.size)return t;var e=function(t){for(var e=[],n=null,r=0;r0?da(t,e[n]):e[n]:null}var ga=n("Wgwc"),va=function(){function t(){if(this.build=ga(),!t.init){var e=ga();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][APP] "+pa+" - "+t+" | "+e):console[n].apply(console,["%c[ACA]%c[APP] %c"+pa+" - "+t+" | "+e].concat(["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0",t.init=!1,t}(),ya=function(){return function(){this.show_menu=!0}}(),ma=function(){return function(){}}(),_a=new Ut("Location Initialized"),ba=function(){return function(){}}(),wa=new Ut("appBaseHref"),Ca=function(){function t(t,n){var r=this;this._subject=new Ao,this._urlChangeListeners=[],this._platformStrategy=t;var o=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=e.stripTrailingSlash(xa(o)),this._platformStrategy.onPopState(function(t){r._subject.emit({url:r.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,n){return void 0===n&&(n=""),this.path()==this.normalize(t+e.normalizeQueryParams(n))},t.prototype.normalize=function(t){return e.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,xa(t)))},t.prototype.prepareExternalUrl=function(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)},t.prototype.go=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.pushState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},t.prototype.replaceState=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.replaceState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},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=function(t){return t&&"?"!==t[0]?"?"+t:t},t.joinWithSlash=function(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},t.stripTrailingSlash=function(t){var e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)},t}();function xa(t){return t.replace(/\/index.html$/,"")}var Sa=function(t){function e(e,n){var r=t.call(this)||this;return r._platformLocation=e,r._baseHref="",null!=n&&(r._baseHref=n),r}return o(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=Ca.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(ba),Ea=function(t){function e(e,n){var r=t.call(this)||this;if(r._platformLocation=e,null==n&&(n=r._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 r._baseHref=n,r}return o(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 Ca.joinWithSlash(this._baseHref,t)},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.pathname+Ca.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?""+e+n:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(ba),Oa=void 0,ka=["en",[["a","p"],["AM","PM"],Oa],[["AM","PM"],Oa,Oa],[["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"]],Oa,[["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"]],Oa,[["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}",Oa,"{1} 'at' {0}",Oa],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}],Pa={},Ta=function(t){return 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",t}({}),Ia=new Ut("UseV4Plurals"),Ra=function(){return function(){}}(),Aa=function(t){function e(e,n){var r=t.call(this)||this;return r.locale=e,r.deprecatedPluralFn=n,r}return o(e,t),e.prototype.getPluralCategory=function(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){var e=t.toLowerCase().replace(/_/g,"-"),n=Pa[e];if(n)return n;var r=e.split("-")[0];if(n=Pa[r])return n;if("en"===r)return ka;throw new Error('Missing locale data for the locale "'+t+'".')}(t)[18]}(e||this.locale)(t)){case Ta.Zero:return"zero";case Ta.One:return"one";case Ta.Two:return"two";case Ta.Few:return"few";case Ta.Many:return"many";default:return"other"}},e}(Ra);function Ma(t,e){var n,r;e=encodeURIComponent(e);try{for(var o=c(t.split(";")),i=o.next();!i.done;i=o.next()){var s=i.value,a=s.indexOf("="),l=h(-1==a?[s,""]:[s.slice(0,a),s.slice(a+1)],2),u=l[1];if(l[0].trim()===e)return decodeURIComponent(u)}}catch(p){n={error:p}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}var Na=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(un);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(n.injector)}else this._moduleRef=null;var r=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(sn)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(r,this._viewContainerRef.length,e,this.ngComponentOutletContent)}},t.prototype.ngOnDestroy=function(){this._moduleRef&&this._moduleRef.destroy()},t}(),Da=function(){function t(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}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}(),ja=function(){function t(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,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){ge()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(t)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#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(r){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;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,r,o){if(null==t.previousIndex){var i=e._viewContainer.createEmbeddedView(e._template,new Da(null,e._ngForOf,-1,-1),o),s=new Va(t,i);n.push(s)}else null==o?e._viewContainer.remove(r):(i=e._viewContainer.get(r),e._viewContainer.move(i,o),s=new Va(t,i),n.push(s))});for(var r=0;r0)for(var n=this.count>=this.total?this.total:this.count,r=this.ring,o=0;o=2;return function(r){return r.pipe(t?hl(function(e,n){return t(e,n,r)}):st,vl(1),n?Sl(e):Cl(function(){return new il}))}}function Pl(t){return function(e){var n=new Tl(t),r=e.lift(n);return n.caught=r}}var Tl=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new Il(t,this.selector,this.caught))},t}(),Il=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.selector=n,o.caught=r,o}return o(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(o){return void t.prototype.error.call(this,o)}this._unsubscribeAndRecycle();var r=new U(this,void 0,void 0);this.add(r),Q(this,n,void 0,void 0,r)}},e}(X);function Rl(t){return function(e){return 0===t?tl():e.lift(new Al(t))}}var Al=function(){function t(t){if(this.total=t,this.total<0)throw new gl}return t.prototype.call=function(t,e){return e.subscribe(new Ml(t,this.total))},t}(),Ml=function(t){function e(e,n){var r=t.call(this,e)||this;return r.total=n,r.count=0,r}return o(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}(E);function Nl(t,e){var n=arguments.length>=2;return function(r){return r.pipe(t?hl(function(e,n){return t(e,n,r)}):st,Rl(1),n?Sl(e):Cl(function(){return new il}))}}var Dl=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new jl(t,this.predicate,this.thisArg,this.source))},t}(),jl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.predicate=n,i.thisArg=r,i.source=o,i.index=0,i.thisArg=r||i,i}return o(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(E);function Vl(t,e){return"function"==typeof e?function(n){return n.pipe(Vl(function(n,r){return nt(t(n,r)).pipe(K(function(t,o){return e(n,t,r,o)}))}))}:function(e){return e.lift(new Ll(t))}}var Ll=function(){function t(t){this.project=t}return t.prototype.call=function(t,e){return e.subscribe(new zl(t,this.project))},t}(),zl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.project=n,r.index=0,r}return o(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(r){return void this.destination.error(r)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var r=this.innerSubscription;r&&r.unsubscribe();var o=new U(this,void 0,void 0);this.destination.add(o),this.innerSubscription=Q(this,t,e,n,o)},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,r,o){this.destination.next(e)},e}(X);function Ul(){for(var t=[],e=0;e0?et(t,n):tl(n):el(t[0]),e)}}function Hl(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new Bl(t,e,n))}}var Bl=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new Wl(t,this.accumulator,this.seed,this.hasSeed))},t}(),Wl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.accumulator=n,i._seed=r,i.hasSeed=o,i.index=0,i}return o(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(r){this.destination.error(r)}this.seed=e,this.destination.next(e)},e}(E);function Gl(t,e){return rt(t,e,1)}var Yl=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new ql(t,this.callback))},t}(),ql=function(t){function e(e,n){var r=t.call(this,e)||this;return r.add(new m(n)),r}return o(e,t),e}(E),Zl=null;function $l(){return Zl}var Ql,Xl=function(t){function e(){var e=t.call(this)||this;e._animationPrefix=null,e._transitionEnd=null;try{var n=e.createElement("div",document);if(null!=e.getStyle(n,"animationName"))e._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o0},e.prototype.tagName=function(t){return t.tagName},e.prototype.attributeMap=function(t){for(var e=new Map,n=t.attributes,r=0;r0;s||(s=t[i]=[]);var l=Du(e)?Zone.root:Zone.current;if(0===s.length)s.push({zone:l,handler:o});else{for(var u=!1,c=0;c-1},e}(du),Bu=["alt","control","meta","shift"],Wu={alt:function(t){return t.altKey},control:function(t){return t.ctrlKey},meta:function(t){return t.metaKey},shift:function(t){return t.shiftKey}},Gu=function(t){function e(e){return t.call(this,e)||this}var n;return o(e,t),n=e,e.prototype.supports=function(t){return null!=n.parseEventName(t)},e.prototype.addEventListener=function(t,e,r){var o=n.parseEventName(e),i=n.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return $l().onAndCancel(t,o.domEventName,i)})},e.parseEventName=function(t){var e=t.toLowerCase().split("."),r=e.shift();if(0===e.length||"keydown"!==r&&"keyup"!==r)return null;var o=n._normalizeKey(e.pop()),i="";if(Bu.forEach(function(t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),i+=t+".")}),i+=o,0!=e.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s},e.getEventFullKey=function(t){var e="",n=$l().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),Bu.forEach(function(r){r!=n&&(0,Wu[r])(t)&&(e+=r+".")}),e+=n},e.eventCallback=function(t,e,r){return function(o){n.getEventFullKey(o)===t&&r.runGuarded(function(){return e(o)})}},e._normalizeKey=function(t){switch(t){case"esc":return"escape";default:return t}},e}(du),Yu=function(){return function(){}}(),qu=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n}return o(e,t),e.prototype.sanitize=function(t,e){if(null==e)return null;switch(t){case Ve.NONE:return e;case Ve.HTML:return e instanceof $u?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){var n=null;try{Ce=Ce||new ve(t);var r=e?String(e):"";n=Ce.getInertBodyElement(r);var o=5,i=r;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=Ce.getInertBodyElement(r)}while(r!==i);var s=new Ae,a=s.sanitizeChildren(je(n)||n);return ge()&&s.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n)for(var l=je(n)||n;l.firstChild;)l.removeChild(l.firstChild)}}(this._doc,String(e)));case Ve.STYLE:return e instanceof Qu?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";var e=t.match(Ue);return e&&_e(e[1])===e[1]||t.match(ze)&&function(t){for(var e=!0,n=!0,r=0;rt.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||r.length0?t[t.length-1]:null}function Vc(t,e){for(var n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Lc(t){return We(t)?t:Be(t)?nt(Promise.resolve(t)):nl(t)}function zc(t,e,n){return n?function(t,e){return Nc(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!Bc(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(var r in n.children){if(!e.children[r])return!1;if(!t(e.children[r],n.children[r]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(function(n){return e[n]===t[n]})}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,r,o){if(n.segments.length>o.length)return!!Bc(s=n.segments.slice(0,o.length),o)&&!r.hasChildren();if(n.segments.length===o.length){if(!Bc(n.segments,o))return!1;for(var i in r.children){if(!n.children[i])return!1;if(!t(n.children[i],r.children[i]))return!1}return!0}var s=o.slice(0,n.segments.length),a=o.slice(n.segments.length);return!!Bc(n.segments,s)&&!!n.children[xc]&&e(n.children[xc],r,a)}(e,n,n.segments)}(t.root,e.root)}var Uc=function(){function t(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}return Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=Ec(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return qc.serialize(this)},t}(),Fc=function(){function t(t,e){var n=this;this.segments=t,this.children=e,this.parent=null,Vc(e,function(t,e){return t.parent=n})}return t.prototype.hasChildren=function(){return this.numberOfChildren>0},Object.defineProperty(t.prototype,"numberOfChildren",{get:function(){return Object.keys(this.children).length},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return Zc(this)},t}(),Hc=function(){function t(t,e){this.path=t,this.parameters=e}return Object.defineProperty(t.prototype,"parameterMap",{get:function(){return this._parameterMap||(this._parameterMap=Ec(this.parameters)),this._parameterMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return th(this)},t}();function Bc(t,e){return t.length===e.length&&t.every(function(t,n){return t.path===e[n].path})}function Wc(t,e){var n=[];return Vc(t.children,function(t,r){r===xc&&(n=n.concat(e(t,r)))}),Vc(t.children,function(t,r){r!==xc&&(n=n.concat(e(t,r)))}),n}var Gc=function(){return function(){}}(),Yc=function(){function t(){}return t.prototype.parse=function(t){var e=new ih(t);return new Uc(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())},t.prototype.serialize=function(t){var e,n;return"/"+function t(e,n){if(!e.hasChildren())return Zc(e);if(n){var r=e.children[xc]?t(e.children[xc],!1):"",o=[];return Vc(e.children,function(e,n){n!==xc&&o.push(n+":"+t(e,!1))}),o.length>0?r+"("+o.join("//")+")":r}var i=Wc(e,function(n,r){return r===xc?[t(e.children[xc],!1)]:[r+":"+t(n,!1)]});return Zc(e)+"/("+i.join("//")+")"}(t.root,!0)+(e=t.queryParams,(n=Object.keys(e).map(function(t){var n=e[t];return Array.isArray(n)?n.map(function(e){return Qc(t)+"="+Qc(e)}).join("&"):Qc(t)+"="+Qc(n)})).length?"?"+n.join("&"):"")+("string"==typeof t.fragment?"#"+encodeURI(t.fragment):"")},t}(),qc=new Yc;function Zc(t){return t.segments.map(function(t){return th(t)}).join("/")}function $c(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Qc(t){return $c(t).replace(/%3B/gi,";")}function Xc(t){return $c(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Kc(t){return decodeURIComponent(t)}function Jc(t){return Kc(t.replace(/\+/g,"%20"))}function th(t){return""+Xc(t.path)+(e=t.parameters,Object.keys(e).map(function(t){return";"+Xc(t)+"="+Xc(e[t])}).join(""));var e}var eh=/^[^\/()?;=#]+/;function nh(t){var e=t.match(eh);return e?e[0]:""}var rh=/^[^=?&#]+/,oh=/^[^?&#]+/,ih=function(){function t(t){this.url=t,this.remaining=t}return t.prototype.parseRootSegment=function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Fc([],{}):new Fc([],this.parseChildren())},t.prototype.parseQueryParams=function(){var t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t},t.prototype.parseFragment=function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null},t.prototype.parseChildren=function(){if(""===this.remaining)return{};this.consumeOptional("/");var t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());var e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));var n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[xc]=new Fc(t,e)),n},t.prototype.parseSegment=function(){var t=nh(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '"+this.remaining+"'.");return this.capture(t),new Hc(Kc(t),this.parseMatrixParams())},t.prototype.parseMatrixParams=function(){for(var t={};this.consumeOptional(";");)this.parseParam(t);return t},t.prototype.parseParam=function(t){var e=nh(this.remaining);if(e){this.capture(e);var n="";if(this.consumeOptional("=")){var r=nh(this.remaining);r&&this.capture(n=r)}t[Kc(e)]=Kc(n)}},t.prototype.parseQueryParam=function(t){var e,n=(e=this.remaining.match(rh))?e[0]:"";if(n){this.capture(n);var r="";if(this.consumeOptional("=")){var o=function(t){var e=t.match(oh);return e?e[0]:""}(this.remaining);o&&this.capture(r=o)}var i=Jc(n),s=Jc(r);if(t.hasOwnProperty(i)){var a=t[i];Array.isArray(a)||(t[i]=a=[a]),a.push(s)}else t[i]=s}},t.prototype.parseParens=function(t){var e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var n=nh(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error("Cannot parse url '"+this.url+"'");var o=void 0;n.indexOf(":")>-1?(o=n.substr(0,n.indexOf(":")),this.capture(o),this.capture(":")):t&&(o=xc);var i=this.parseChildren();e[o]=1===Object.keys(i).length?i[xc]:new Fc([],i),this.consumeOptional("//")}return e},t.prototype.peekStartsWith=function(t){return this.remaining.startsWith(t)},t.prototype.consumeOptional=function(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)},t.prototype.capture=function(t){if(!this.consumeOptional(t))throw new Error('Expected "'+t+'".')},t}(),sh=function(){function t(t){this._root=t}return Object.defineProperty(t.prototype,"root",{get:function(){return this._root.value},enumerable:!0,configurable:!0}),t.prototype.parent=function(t){var e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null},t.prototype.children=function(t){var e=ah(t,this._root);return e?e.children.map(function(t){return t.value}):[]},t.prototype.firstChild=function(t){var e=ah(t,this._root);return e&&e.children.length>0?e.children[0].value:null},t.prototype.siblings=function(t){var e=lh(t,this._root);return e.length<2?[]:e[e.length-2].children.map(function(t){return t.value}).filter(function(e){return e!==t})},t.prototype.pathFromRoot=function(t){return lh(t,this._root).map(function(t){return t.value})},t}();function ah(t,e){var n,r;if(t===e.value)return e;try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=ah(t,i.value);if(s)return s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}function lh(t,e){var n,r;if(t===e.value)return[e];try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=lh(t,i.value);if(s.length)return s.unshift(e),s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return[]}var uh=function(){function t(t,e){this.value=t,this.children=e}return t.prototype.toString=function(){return"TreeNode("+this.value+")"},t}();function ch(t){var e={};return t&&t.children.forEach(function(t){return e[t.value.outlet]=t}),e}var hh=function(t){function e(e,n){var r=t.call(this,e)||this;return r.snapshot=n,yh(r,e),r}return o(e,t),e.prototype.toString=function(){return this.snapshot.toString()},e}(sh);function ph(t,e){var n=function(t,e){var n=new gh([],{},{},"",{},xc,e,null,t.root,-1,{});return new vh("",new uh(n,[]))}(t,e),r=new rl([new Hc("",{})]),o=new rl({}),i=new rl({}),s=new rl({}),a=new rl(""),l=new fh(r,o,s,a,i,xc,e,n.root);return l.snapshot=n.root,new hh(new uh(l,[]),n)}var fh=function(){function t(t,e,n,r,o,i,s,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this._futureSnapshot=a}return Object.defineProperty(t.prototype,"routeConfig",{get:function(){return this._futureSnapshot.routeConfig},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=this.params.pipe(K(function(t){return Ec(t)}))),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(function(t){return Ec(t)}))),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return this.snapshot?this.snapshot.toString():"Future("+this._futureSnapshot+")"},t}();function dh(t,e){void 0===e&&(e="emptyOnly");var n=t.pathFromRoot,r=0;if("always"!==e)for(r=n.length-1;r>=1;){var o=n[r],s=n[r-1];if(o.routeConfig&&""===o.routeConfig.path)r--;else{if(s.component)break;r--}}return function(t){return t.reduce(function(t,e){return{params:i({},t.params,e.params),data:i({},t.data,e.data),resolve:i({},t.resolve,e._resolvedData)}},{params:{},data:{},resolve:{}})}(n.slice(r))}var gh=function(){function t(t,e,n,r,o,i,s,a,l,u,c){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this.routeConfig=a,this._urlSegment=l,this._lastPathIndex=u,this._resolve=c}return Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=Ec(this.params)),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=Ec(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return"Route(url:'"+this.url.map(function(t){return t.toString()}).join("/")+"', path:'"+(this.routeConfig?this.routeConfig.path:"")+"')"},t}(),vh=function(t){function e(e,n){var r=t.call(this,n)||this;return r.url=e,yh(r,n),r}return o(e,t),e.prototype.toString=function(){return mh(this._root)},e}(sh);function yh(t,e){e.value._routerState=t,e.children.forEach(function(e){return yh(t,e)})}function mh(t){var e=t.children.length>0?" { "+t.children.map(mh).join(", ")+" } ":"";return""+t.value+e}function _h(t){if(t.snapshot){var e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Nc(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Nc(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(var n=0;n0&&wh(n[0]))throw new Error("Root segment cannot have matrix parameters");var r=n.find(function(t){return"object"==typeof t&&null!=t&&t.outlets});if(r&&r!==jc(n))throw new Error("{outlets:{}} has to be the last command")}return t.prototype.toRoot=function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]},t}(),Sh=function(){return function(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}();function Eh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[xc]:""+t}function Oh(t,e,n){if(t||(t=new Fc([],{})),0===t.segments.length&&t.hasChildren())return kh(t,e,n);var r=function(t,e,n){for(var r=0,o=e,i={match:!1,pathIndex:0,commandIndex:0};o=n.length)return i;var s=t.segments[o],a=Eh(n[r]),l=r0&&void 0===a)break;if(a&&l&&"object"==typeof l&&void 0===l.outlets){if(!Rh(a,l,s))return i;r+=2}else{if(!Rh(a,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(t,e,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndex0?new Fc([],((r={})[xc]=t,r)):t;return new Uc(o,e,n)},t.prototype.expandSegmentGroup=function(t,e,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(K(function(t){return new Fc([],t)})):this.expandSegment(t,n,e,n.segments,r,!0)},t.prototype.expandChildren=function(t,e,n){var r=this;return function(n,o){if(0===Object.keys(n).length)return nl({});var i=[],s=[],a={};return Vc(n,function(n,o){var l,u,c=(l=o,u=n,r.expandSegmentGroup(t,e,u,l)).pipe(K(function(t){return a[o]=t}));o===xc?i.push(c):s.push(c)}),nl.apply(null,i.concat(s)).pipe(cl(),kl(),K(function(){return a}))}(n.children)},t.prototype.expandSegment=function(t,e,n,r,o,i){var s=this;return nl.apply(void 0,p(n)).pipe(K(function(a){return s.expandSegmentAgainstRoute(t,e,n,a,r,o,i).pipe(Pl(function(t){if(t instanceof jh)return nl(null);throw t}))}),cl(),Nl(function(t){return!!t}),Pl(function(t,n){if(t instanceof il||"EmptyError"===t.name){if(s.noLeftoversInUrl(e,r,o))return nl(new Fc([],{}));throw new jh(e)}throw t}))},t.prototype.noLeftoversInUrl=function(t,e,n){return 0===e.length&&!t.children[n]},t.prototype.expandSegmentAgainstRoute=function(t,e,n,r,o,i,s){return Gh(r)!==i?Lh(e):void 0===r.redirectTo?this.matchSegmentAgainstRoute(t,e,r,o):s&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i):Lh(e)},t.prototype.expandSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,r,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i)},t.prototype.expandWildCardWithParamsAgainstRouteUsingRedirect=function(t,e,n,r){var o=this,i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?zh(i):this.lineralizeSegments(n,i).pipe(rt(function(n){var i=new Fc(n,{});return o.expandSegment(t,i,e,n,r,!1)}))},t.prototype.expandRegularSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){var s=this,a=Hh(e,r,o),l=a.consumedSegments,u=a.lastChild,c=a.positionalParamSegments;if(!a.matched)return Lh(e);var h=this.applyRedirectCommands(l,r.redirectTo,c);return r.redirectTo.startsWith("/")?zh(h):this.lineralizeSegments(r,h).pipe(rt(function(r){return s.expandSegment(t,e,n,r.concat(o.slice(u)),i,!1)}))},t.prototype.matchSegmentAgainstRoute=function(t,e,n,r){var o=this;if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(K(function(t){return n._loadedConfig=t,new Fc(r,{})})):nl(new Fc(r,{}));var s=Hh(e,n,r),a=s.consumedSegments,l=s.lastChild;if(!s.matched)return Lh(e);var u=r.slice(l);return this.getChildConfig(t,n,r).pipe(rt(function(t){var n=t.module,r=t.routes,s=function(t,e,n,r){return n.length>0&&function(t,e,n){return r.some(function(n){return Wh(t,e,n)&&Gh(n)!==xc})}(t,n)?{segmentGroup:Bh(new Fc(e,function(t,e){var n,r,o={};o[xc]=e;try{for(var i=c(t),s=i.next();!s.done;s=i.next()){var a=s.value;""===a.path&&Gh(a)!==xc&&(o[Gh(a)]=new Fc([],{}))}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o}(r,new Fc(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return r.some(function(n){return Wh(t,e,n)})}(t,n)?{segmentGroup:Bh(new Fc(t.segments,function(t,e,n,r){var o,s,a={};try{for(var l=c(n),u=l.next();!u.done;u=l.next()){var h=u.value;Wh(t,e,h)&&!r[Gh(h)]&&(a[Gh(h)]=new Fc([],{}))}}catch(p){o={error:p}}finally{try{u&&!u.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}return i({},r,a)}(t,n,r,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,a,u,r),l=s.segmentGroup,h=s.slicedSegments;return 0===h.length&&l.hasChildren()?o.expandChildren(n,r,l).pipe(K(function(t){return new Fc(a,t)})):0===r.length&&0===h.length?nl(new Fc(a,{})):o.expandSegment(n,l,r,h,xc,!0).pipe(K(function(t){return new Fc(a.concat(t.segments),t.children)}))}))},t.prototype.getChildConfig=function(t,e,n){var r=this;return e.children?nl(new Tc(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?nl(e._loadedConfig):function(t,e,n){var r,o=e.canLoad;return o&&0!==o.length?nt(o).pipe(K(function(r){var o,i=t.get(r);if(function(t){return t&&Nh(t.canLoad)}(i))o=i.canLoad(e,n);else{if(!Nh(i))throw new Error("Invalid CanLoad guard");o=i(e,n)}return Lc(o)})).pipe(cl(),(r=function(t){return!0===t},function(t){return t.lift(new Dl(r,void 0,t))})):nl(!0)}(t.injector,e,n).pipe(rt(function(n){return n?r.configLoader.load(t.injector,e).pipe(K(function(t){return e._loadedConfig=t,t})):function(t){return new R(function(e){return e.error(kc("Cannot load children because the guard of the route \"path: '"+t.path+"'\" returned false"))})}(e)})):nl(new Tc([],t))},t.prototype.lineralizeSegments=function(t,e){for(var n=[],r=e.root;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return nl(n);if(r.numberOfChildren>1||!r.children[xc])return Uh(t.redirectTo);r=r.children[xc]}},t.prototype.applyRedirectCommands=function(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)},t.prototype.applyRedirectCreatreUrlTree=function(t,e,n,r){var o=this.createSegmentGroup(t,e.root,n,r);return new Uc(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)},t.prototype.createQueryParams=function(t,e){var n={};return Vc(t,function(t,r){if("string"==typeof t&&t.startsWith(":")){var o=t.substring(1);n[r]=e[o]}else n[r]=t}),n},t.prototype.createSegmentGroup=function(t,e,n,r){var o=this,i=this.createSegments(t,e.segments,n,r),s={};return Vc(e.children,function(e,i){s[i]=o.createSegmentGroup(t,e,n,r)}),new Fc(i,s)},t.prototype.createSegments=function(t,e,n,r){var o=this;return e.map(function(e){return e.path.startsWith(":")?o.findPosParam(t,e,r):o.findOrReturn(e,n)})},t.prototype.findPosParam=function(t,e,n){var r=n[e.path.substring(1)];if(!r)throw new Error("Cannot redirect to '"+t+"'. Cannot find '"+e.path+"'.");return r},t.prototype.findOrReturn=function(t,e){var n,r,o=0;try{for(var i=c(e),s=i.next();!s.done;s=i.next()){var a=s.value;if(a.path===t.path)return e.splice(o),a;o++}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return t},t}();function Hh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};var r=(e.matcher||Pc)(n,t,e);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Bh(t){if(1===t.numberOfChildren&&t.children[xc]){var e=t.children[xc];return new Fc(t.segments.concat(e.segments),e.children)}return t}function Wh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Gh(t){return t.outlet||xc}var Yh=function(){return function(t){this.path=t,this.route=this.path[this.path.length-1]}}(),qh=function(){return function(t,e){this.component=t,this.route=e}}();function Zh(t,e,n){var r=function(t){if(!t)return null;for(var e=t.parent;e;e=e.parent){var n=e.routeConfig;if(n&&n._loadedConfig)return n._loadedConfig}return null}(e);return(r?r.module.injector:n).get(t)}function $h(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=ch(e);return t.children.forEach(function(t){!function(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=t.value,s=e?e.value:null,a=n?n.getContext(t.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){var l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!Bc(t.url,e.url);case"pathParamsOrQueryParamsChange":return!Bc(t.url,e.url)||!Nc(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!bh(t,e)||!Nc(t.queryParams,e.queryParams);case"paramsChange":default:return!bh(t,e)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Yh(r)):(i.data=s.data,i._resolvedData=s._resolvedData),$h(t,e,i.component?a?a.children:null:n,r,o),l&&o.canDeactivateChecks.push(new qh(a&&a.outlet&&a.outlet.component||null,s))}else s&&Qh(e,a,o),o.canActivateChecks.push(new Yh(r)),$h(t,null,i.component?a?a.children:null:n,r,o)}(t,i[t.value.outlet],n,r.concat([t.value]),o),delete i[t.value.outlet]}),Vc(i,function(t,e){return Qh(t,n.getContext(e),o)}),o}function Qh(t,e,n){var r=ch(t),o=t.value;Vc(r,function(t,r){Qh(t,o.component?e?e.children.getContext(r):null:e,n)}),n.canDeactivateChecks.push(new qh(o.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,o))}var Xh=Symbol("INITIAL_VALUE");function Kh(){return Vl(function(t){return(function(){for(var t=[],e=0;e0?jc(n).parameters:{};o=new gh(n,l,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,cp(t),r,t.component,t,ip(e),sp(e)+n.length,hp(t))}else{var u=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new rp;return{consumedSegments:[],lastChild:0,parameters:{}}}var r=(e.matcher||Pc)(n,t,e);if(!r)throw new rp;var o={};Vc(r.posParams,function(t,e){o[e]=t.path});var s=r.consumed.length>0?i({},o,r.consumed[r.consumed.length-1].parameters):o;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:s}}(e,t,n);s=u.consumedSegments,a=n.slice(u.lastChild),o=new gh(s,u.parameters,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,cp(t),r,t.component,t,ip(e),sp(e)+s.length,hp(t))}var c=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),h=ap(e,s,a,c,this.relativeLinkResolution),p=h.segmentGroup,f=h.slicedSegments;if(0===f.length&&p.hasChildren()){var d=this.processChildren(c,p);return[new uh(o,d)]}if(0===c.length&&0===f.length)return[new uh(o,[])];var g=this.processSegment(c,p,f,xc);return[new uh(o,g)]},t}();function ip(t){for(var e=t;e._sourceSegment;)e=e._sourceSegment;return e}function sp(t){for(var e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function ap(t,e,n,r,o){if(n.length>0&&function(t,e,n){return r.some(function(n){return lp(t,e,n)&&up(n)!==xc})}(t,n)){var s=new Fc(e,function(t,e,n,r){var o,i,s={};s[xc]=r,r._sourceSegment=t,r._segmentIndexShift=e.length;try{for(var a=c(n),l=a.next();!l.done;l=a.next()){var u=l.value;if(""===u.path&&up(u)!==xc){var h=new Fc([],{});h._sourceSegment=t,h._segmentIndexShift=e.length,s[up(u)]=h}}}catch(p){o={error:p}}finally{try{l&&!l.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return s}(t,e,r,new Fc(n,t.children)));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return r.some(function(n){return lp(t,e,n)})}(t,n)){var a=new Fc(t.segments,function(t,e,n,r,o,s){var a,l,u={};try{for(var h=c(r),p=h.next();!p.done;p=h.next()){var f=p.value;if(lp(t,n,f)&&!o[up(f)]){var d=new Fc([],{});d._sourceSegment=t,d._segmentIndexShift="legacy"===s?t.segments.length:e.length,u[up(f)]=d}}}catch(g){a={error:g}}finally{try{p&&!p.done&&(l=h.return)&&l.call(h)}finally{if(a)throw a.error}}return i({},o,u)}(t,e,n,r,t.children,o));return a._sourceSegment=t,a._segmentIndexShift=e.length,{segmentGroup:a,slicedSegments:n}}var l=new Fc(t.segments,t.children);return l._sourceSegment=t,l._segmentIndexShift=e.length,{segmentGroup:l,slicedSegments:n}}function lp(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function up(t){return t.outlet||xc}function cp(t){return t.data||{}}function hp(t){return t.resolve||{}}function pp(t,e,n,r){var o=Zh(t,e,r);return Lc(o.resolve?o.resolve(e,n):o(e,n))}function fp(t){return function(e){return e.pipe(Vl(function(e){var n=t(e);return n?nt(n).pipe(K(function(){return e})):nt([e])}))}}var dp=function(){return function(){}}(),gp=function(){function t(){}return t.prototype.shouldDetach=function(t){return!1},t.prototype.store=function(t,e){},t.prototype.shouldAttach=function(t){return!1},t.prototype.retrieve=function(t){return null},t.prototype.shouldReuseRoute=function(t,e){return t.routeConfig===e.routeConfig},t}(),vp=new Ut("ROUTES"),yp=function(){function t(t,e,n,r){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=r}return t.prototype.load=function(t,e){var n=this;return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(K(function(r){n.onLoadEndListener&&n.onLoadEndListener(e);var o=r.create(t);return new Tc(Dc(o.injector.get(vp)).map(Mc),o)}))},t.prototype.loadModuleFactory=function(t){var e=this;return"string"==typeof t?nt(this.loader.load(t)):Lc(t()).pipe(rt(function(t){return t instanceof cn?nl(t):nt(e.compiler.compileModuleAsync(t))}))},t}(),mp=function(){return function(){}}(),_p=function(){function t(){}return t.prototype.shouldProcessUrl=function(t){return!0},t.prototype.extract=function(t){return t},t.prototype.merge=function(t,e){return t},t}();function bp(t){throw t}function wp(t,e,n){return e.parse("/")}function Cp(t,e){return nl(null)}var xp=function(){function t(t,e,n,r,o,i,s,a){var l=this;this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=r,this.config=a,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new V,this.errorHandler=bp,this.malformedUriErrorHandler=wp,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Cp,afterPreactivation:Cp},this.urlHandlingStrategy=new _p,this.routeReuseStrategy=new gp,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=o.get(un),this.console=o.get(Bo);var u=o.get(si);this.isNgZoneEnabled=u instanceof si,this.resetConfig(a),this.currentUrlTree=new Uc(new Fc([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new yp(i,s,function(t){return l.triggerEvent(new gc(t))},function(t){return l.triggerEvent(new vc(t))}),this.routerState=ph(this.currentUrlTree,this.rootComponentType),this.transitions=new rl({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return t.prototype.setupNavigations=function(t){var e=this,n=this.events;return t.pipe(hl(function(t){return 0!==t.id}),K(function(t){return i({},t,{extractedUrl:e.urlHandlingStrategy.extract(t.rawUrl)})}),Vl(function(t){var r,o,s,a,l=!1,u=!1;return nl(t).pipe(_l(function(t){e.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:e.lastSuccessfulNavigation?i({},e.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Vl(function(t){var r,o,s,a,l=!e.navigated||t.extractedUrl.toString()!==e.browserUrlTree.toString();if(("reload"===e.onSameUrlNavigation||l)&&e.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return nl(t).pipe(Vl(function(t){var r=e.transitions.getValue();return n.next(new sc(t.id,e.serializeUrl(t.extractedUrl),t.source,t.restoredState)),r!==e.transitions.getValue()?Ja:[t]}),Vl(function(t){return Promise.resolve(t)}),(r=e.ngModule.injector,o=e.configLoader,s=e.urlSerializer,a=e.config,function(t){return t.pipe(Vl(function(t){return function(e,n,r,o,i){return new Fh(e,n,r,t.extractedUrl,i).apply()}(r,o,s,0,a).pipe(K(function(e){return i({},t,{urlAfterRedirects:e})}))}))}),_l(function(t){e.currentNavigation=i({},e.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,n,r,o,s){return function(r){return r.pipe(rt(function(r){return function(t,e,n,r,o,i){return void 0===o&&(o="emptyOnly"),void 0===i&&(i="legacy"),new op(t,e,n,r,o,i).recognize()}(t,n,r.urlAfterRedirects,(a=r.urlAfterRedirects,e.serializeUrl(a)),o,s).pipe(K(function(t){return i({},r,{targetSnapshot:t})}));var a}))}}(e.rootComponentType,e.config,0,e.paramsInheritanceStrategy,e.relativeLinkResolution),_l(function(t){"eager"===e.urlUpdateStrategy&&(t.extras.skipLocationChange||e.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),e.browserUrlTree=t.urlAfterRedirects)}),_l(function(t){var r=new cc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);n.next(r)}));if(l&&e.rawUrlTree&&e.urlHandlingStrategy.shouldProcessUrl(e.rawUrlTree)){var u=t.extractedUrl,c=t.source,h=t.restoredState,p=t.extras,f=new sc(t.id,e.serializeUrl(u),c,h);n.next(f);var d=ph(u,e.rootComponentType).snapshot;return nl(i({},t,{targetSnapshot:d,urlAfterRedirects:u,extras:i({},p,{skipLocationChange:!1,replaceUrl:!1})}))}return e.rawUrlTree=t.rawUrl,e.browserUrlTree=t.urlAfterRedirects,t.resolve(null),Ja}),fp(function(t){var n=t.extras;return e.hooks.beforePreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),_l(function(t){var n=new hc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),K(function(t){return i({},t,{guards:(n=t.targetSnapshot,r=t.currentSnapshot,o=e.rootContexts,s=n._root,$h(s,r?r._root:null,o,[s.value]))});var n,r,o,s}),function(t,e){return function(n){return n.pipe(rt(function(n){var r=n.targetSnapshot,o=n.currentSnapshot,s=n.guards,a=s.canActivateChecks,l=s.canDeactivateChecks;return 0===l.length&&0===a.length?nl(i({},n,{guardsResult:!0})):function(t,e,n,r){return nt(l).pipe(rt(function(t){return function(t,e,n,r,o){var i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?nl(i.map(function(i){var s,a=Zh(i,e,o);if(function(t){return t&&Nh(t.canDeactivate)}(a))s=Lc(a.canDeactivate(t,e,n,r));else{if(!Nh(a))throw new Error("Invalid CanDeactivate guard");s=Lc(a(t,e,n,r))}return s.pipe(Nl())})).pipe(Kh()):nl(!0)}(t.component,t.route,n,e,r)}),Nl(function(t){return!0!==t},!0))}(0,r,o,t).pipe(rt(function(n){return n&&"boolean"==typeof n?function(t,e,n,r){return nt(a).pipe(Gl(function(e){return nt([tp(e.route.parent,r),Jh(e.route,r),np(t,e.path,n),ep(t,e.route,n)]).pipe(cl(),Nl(function(t){return!0!==t},!0))}),Nl(function(t){return!0!==t},!0))}(r,0,t,e):nl(n)}),K(function(t){return i({},n,{guardsResult:t})}))}))}}(e.ngModule.injector,function(t){return e.triggerEvent(t)}),_l(function(t){if(Dh(t.guardsResult)){var n=kc('Redirecting to "'+e.serializeUrl(t.guardsResult)+'"');throw n.url=t.guardsResult,n}}),_l(function(t){var n=new pc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);e.triggerEvent(n)}),hl(function(t){if(!t.guardsResult){e.resetUrlToCurrentUrlTree();var r=new lc(t.id,e.serializeUrl(t.extractedUrl),"");return n.next(r),t.resolve(!1),!1}return!0}),fp(function(t){if(t.guards.canActivateChecks.length)return nl(t).pipe(_l(function(t){var n=new fc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),(n=e.paramsInheritanceStrategy,r=e.ngModule.injector,function(t){return t.pipe(rt(function(t){var e=t.targetSnapshot,o=t.guards.canActivateChecks;return o.length?nt(o).pipe(Gl(function(t){return function(t,n,r,o){return function(t,e,n,r){var o=Object.keys(t);if(0===o.length)return nl({});if(1===o.length){var i=o[0];return pp(t[i],e,n,r).pipe(K(function(t){var e;return(e={})[i]=t,e}))}var s={};return nt(o).pipe(rt(function(o){return pp(t[o],e,n,r).pipe(K(function(t){return s[o]=t,t}))})).pipe(kl(),K(function(){return s}))}(t._resolve,t,e,o).pipe(K(function(e){return t._resolvedData=e,t.data=i({},t.data,dh(t,r).resolve),null}))}(t.route,0,n,r)}),function(t,e){return arguments.length>=2?function(e){return T(Hl(t,void 0),vl(1),Sl(void 0))(e)}:function(e){return T(Hl(function(e,n,r){return t(e)}),vl(1))(e)}}(function(t,e){return t}),K(function(e){return t})):nl(t)}))}),_l(function(t){var n=new dc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}));var n,r}),fp(function(t){var n=t.extras;return e.hooks.afterPreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),K(function(t){var n,r,o,s=(o=function t(e,n,r){if(r&&e.shouldReuseRoute(n.value,r.value.snapshot)){(l=r.value)._futureSnapshot=n.value;var o=function(e,n,r){return n.children.map(function(n){var o,i;try{for(var s=c(r.children),a=s.next();!a.done;a=s.next()){var l=a.value;if(e.shouldReuseRoute(l.value.snapshot,n.value))return t(e,n,l)}}catch(u){o={error:u}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(o)throw o.error}}return t(e,n)})}(e,n,r);return new uh(l,o)}var i=e.retrieve(n.value);if(i){var s=i.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(var r=0;ra;){if(l-=a,!(s=s.parent))throw new Error("Invalid number of '../'");a=s.segments.length}return new Sh(s,!1,a-l)}()}(i,0,t),a=s.processChildren?kh(s.segmentGroup,s.index,i.commands):Oh(s.segmentGroup,s.index,i.commands);return Ch(s.segmentGroup,a,e,r,o)}(u,this.currentUrlTree,t,h,c)},t.prototype.navigateByUrl=function(t,e){void 0===e&&(e={skipLocationChange:!1}),ge()&&this.isNgZoneEnabled&&!si.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");var n=Dh(t)?t:this.parseUrl(t),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,e)},t.prototype.navigate=function(t,e){return void 0===e&&(e={skipLocationChange:!1}),function(t){for(var e=0;et.name.length?e:t},{id:"",name:""}),this.filter())},t.prototype.ngAfterViewInit=function(){this.resize()},t.prototype.trackByFn=function(t,e){return e?"string"==typeof e?e:e.id:t},t.prototype.resize=function(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)},t.prototype.filter=function(){var t=this;if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(function(e){return("string"==typeof e?e:e.name).toLowerCase().indexOf(t.search.toLowerCase())>=0})),this.options&&this.options.hide_active&&this.selected)){var e="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(function(t){return("string"==typeof t?t:t.id).indexOf(e)<0})}},t.prototype.toggleShow=function(){var t=this;this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(function(){t.input&&t.input.nativeElement.focus()},100)},t.prototype.updateScroll=function(){var t=this;if(!this.viewport||!this.scroll_el)return setTimeout(function(){return t.updateScroll()},50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;var e="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)===e}))},t.prototype.select=function(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)},t.prototype.change=function(t){var e=this,n="string"==typeof this.selected?this.selected:this.selected.id,r=this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)==n})+t;r>=0&&r1?Array.prototype.slice.call(arguments):t)},r,n)})}var af=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r.pending=!1,r}return o(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,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(r,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,r=void 0;try{this.work(t)}catch(o){n=!0,r=!!o&&o||new Error(o)}if(n)return this.unsubscribe(),r},e.prototype._unsubscribe=function(){var t=this.id,e=this.scheduler,n=e.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,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 o(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(m)),lf=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(e,t),e.prototype.requestAsyncId=function(e,n,r){return void 0===r&&(r=0),null!==r&&r>0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame(function(){return e.flush(null)})))},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(cancelAnimationFrame(n),e.scheduled=void 0)},e}(af),uf=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}(),cf=function(t){function e(n,r){void 0===r&&(r=uf.now);var o=t.call(this,n,function(){return e.delegate&&e.delegate!==o?e.delegate.now():r()})||this;return o.actions=[],o.active=!1,o.scheduled=void 0,o}return o(e,t),e.prototype.schedule=function(n,r,o){return void 0===r&&(r=0),e.delegate&&e.delegate!==this?e.delegate.schedule(n,r,o):t.prototype.schedule.call(this,n,r,o)},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}(uf),hf=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=(o=e.flush.bind(e,null),i=pf++,ff[i]=o,Promise.resolve().then(function(){return function(t){var e=ff[t];e&&e()}(i)}),i)));var o,i},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(delete ff[n],e.scheduled=void 0)},e}(af),gf=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r=0}function Cf(t){var e=t.index,n=t.period,r=t.subscriber;if(r.next(e),!r.closed){if(-1===n)return r.complete();t.index=e+1,this.schedule(t,n)}}function xf(t,e){return void 0===e&&(e=mf),n=function(){return function(t,e,n){void 0===t&&(t=0);var r=-1;return wf(e)?r=Number(e)<1?1:Number(e):z(e)&&(n=e),z(n)||(n=mf),new R(function(e){var o=wf(t)?t:+t-n.now();return n.schedule(Cf,o,{index:0,period:r,subscriber:e})})}(t,e)},function(t){return t.lift(new _f(n))};var n}function Sf(t){return function(e){return e.lift(new Of(t))}}var Ef,Of=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new kf(t),r=Q(n,this.notifier);return r&&!n.seenValue?(n.add(r),e.subscribe(n)):n},t}(),kf=function(t){function e(e){var n=t.call(this,e)||this;return n.seenValue=!1,n}return o(e,t),e.prototype.notifyNext=function(t,e,n,r,o){this.seenValue=!0,this.complete()},e.prototype.notifyComplete=function(){},e}(X),Pf=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new Tf(t))},t}(),Tf=function(t){function e(e){var n=t.call(this,e)||this;return n.hasPrev=!1,n}return o(e,t),e.prototype._next=function(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t},e}(E),If=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(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,r){return void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,r):e.flush(this)},e}(af),Rf=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e}(cf))(If);function Af(t,e){return new R(e?function(n){return e.schedule(Mf,0,{error:t,subscriber:n})}:function(e){return e.error(t)})}function Mf(t){t.subscriber.error(t.error)}Ef||(Ef={});var Nf,Df=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 nl(this.value);case"E":return Af(this.error);case"C":return tl()}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}(),jf=function(t){function e(e,n,r){void 0===r&&(r=0);var o=t.call(this,e)||this;return o.scheduler=n,o.delay=r,o}return o(e,t),e.dispatch=function(t){t.notification.observe(t.destination),this.unsubscribe()},e.prototype.scheduleMessage=function(t){this.destination.add(this.scheduler.schedule(e.dispatch,this.delay,new Vf(t,this.destination)))},e.prototype._next=function(t){this.scheduleMessage(Df.createNext(t))},e.prototype._error=function(t){this.scheduleMessage(Df.createError(t)),this.unsubscribe()},e.prototype._complete=function(){this.scheduleMessage(Df.createComplete()),this.unsubscribe()},e}(E),Vf=function(){return function(t,e){this.notification=t,this.destination=e}}(),Lf=function(t){function e(e,n,r){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=Number.POSITIVE_INFINITY);var o=t.call(this)||this;return o.scheduler=r,o._events=[],o._infiniteTimeWindow=!1,o._bufferSize=e<1?1:e,o._windowTime=n<1?1:n,n===Number.POSITIVE_INFINITY?(o._infiniteTimeWindow=!0,o.next=o.nextInfiniteTimeWindow):o.next=o.nextTimeWindow,o}return o(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 zf(this._getNow(),e)),this._trimBufferThenGetEvents(),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,n=this._infiniteTimeWindow,r=n?this._events:this._trimBufferThenGetEvents(),o=this.scheduler,i=r.length;if(this.closed)throw new N;if(this.isStopped||this.hasError?e=m.EMPTY:(this.observers.push(t),e=new D(this,t)),o&&t.add(t=new jf(t,o)),n)for(var s=0;se&&(i=Math.max(i,o-e)),i>0&&r.splice(0,i),r},e}(V),zf=function(){return function(t,e){this.time=t,this.value=e}}();try{Nf="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Em){Nf=!1}var Uf,Ff=function(){function t(t){this._platformId=t,this.isBrowser=this._platformId?Qa(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&&!Nf)&&"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.ngInjectableDef=Ot({factory:function(){return new t(Lt(Fo,8))},token:t,providedIn:"root"}),t}(),Hf=function(){return function(){}}(),Bf=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();function Wf(){if("object"!=typeof document||!document)return Bf.NORMAL;if(!Uf){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"),r=n.style;r.width="2px",r.height="1px",t.appendChild(n),document.body.appendChild(t),Uf=Bf.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Uf=0===t.scrollLeft?Bf.NEGATED:Bf.INVERTED),t.parentNode.removeChild(t)}return Uf}var Gf=function(t){function e(e){var n=t.call(this)||this;return n._data=e,n}return o(e,t),e.prototype.connect=function(){return this._data instanceof R?this._data:nl(this._data)},e.prototype.disconnect=function(){},e}(function(){return function(){}}()),Yf=new Ut("VIRTUAL_SCROLL_STRATEGY"),qf=function(){function t(t,e,n){this._scrolledIndexChange=new V,this.scrolledIndexChange=this._scrolledIndexChange.pipe(function(t){return t.lift(new vf(void 0,void 0))}),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(n0&&(r.end=Math.min(i,r.end+u),r.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(r),this._viewport.setRenderedContentOffset(this._itemSize*r.start),this._scrolledIndexChange.next(Math.floor(e))}},t}();function Zf(t){return t._scrollStrategy}var $f=function(){function t(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new qf(this.itemSize,this.minBufferPx,this.maxBufferPx)}return Object.defineProperty(t.prototype,"itemSize",{get:function(){return this._itemSize},set:function(t){this._itemSize=nf(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minBufferPx",{get:function(){return this._minBufferPx},set:function(t){this._minBufferPx=nf(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxBufferPx",{get:function(){return this._maxBufferPx},set:function(t){this._maxBufferPx=nf(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)},t}(),Qf=function(){function t(t,e){this._ngZone=t,this._platform=e,this._scrolled=new V,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}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 R(function(n){e._globalSubscription||e._addGlobalListener();var r=t>0?e._scrolled.pipe(xf(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){r.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):nl()},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(hl(function(t){return!t||n.indexOf(t)>-1}))},t.prototype.getAncestorScrollContainers=function(t){var e=this,n=[];return this.scrollContainers.forEach(function(r,o){e._scrollableContainsElement(o,t)&&n.push(o)}),n},t.prototype._scrollableContainsElement=function(t,e){var n=e.nativeElement,r=t.getElementRef().nativeElement;do{if(n==r)return!0}while(n=n.parentElement);return!1},t.prototype._addGlobalListener=function(){var t=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){return sf(window.document,"scroll").subscribe(function(){return t._scrolled.next()})})},t.prototype._removeGlobalListener=function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(si),Lt(Ff))},token:t,providedIn:"root"}),t}(),Xf=function(){function t(t,e,n,r){var o=this;this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=r,this._destroyed=new V,this._elementScrolled=new R(function(t){return o.ngZone.runOutsideAngular(function(){return sf(o.elementRef.nativeElement,"scroll").pipe(Sf(o._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;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Wf()!=Bf.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Wf()==Bf.INVERTED?t.left=t.right:Wf()==Bf.NEGATED&&(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"==typeof document&&"scrollBehavior"in document.documentElement.style?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&&Wf()==Bf.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Wf()==Bf.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft},t}(),Kf="undefined"!=typeof requestAnimationFrame?hf:gf,Jf=function(t){function e(e,n,r,o,i,s){var a=t.call(this,e,s,r,i)||this;if(a.elementRef=e,a._changeDetectorRef=n,a._scrollStrategy=o,a._detachedSubject=new V,a._renderedRangeSubject=new V,a.orientation="vertical",a.scrolledIndexChange=new R(function(t){return a._scrollStrategy.scrolledIndexChange.subscribe(function(e){return Promise.resolve().then(function(){return a.ngZone.run(function(){return t.next(e)})})})}),a.renderedRangeStream=a._renderedRangeSubject.asObservable(),a._totalContentSizeTransform="",a._totalContentSize=0,a._renderedRange={start:0,end:0},a._dataLength=0,a._viewportSize=0,a._renderedContentOffset=0,a._renderedContentOffsetNeedsRewrite=!1,a._isChangeDetectionPending=!1,a._runAfterChangeDetection=[],!o)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.');return a}return o(e,t),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(Fl(null),xf(0,Kf)).subscribe(function(){return e._scrollStrategy.onContentScrolled()}),e._markChangeDetectionNeeded()})})},e.prototype.ngOnDestroy=function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),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(Sf(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._totalContentSizeTransform="scale"+("horizontal"==this.orientation?"X":"Y")+"("+this._totalContentSize+")",this._markChangeDetectionNeeded())},e.prototype.setRenderedRange=function(t){var e,n,r=this;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(function(){return r._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 r="horizontal"==this.orientation,o=r?"X":"Y",i="translate"+o+"("+Number((r&&this.dir&&"rtl"==this.dir.value?-1:1)*t)+"px)";this._renderedContentOffset=t,"to-end"===e&&(i+=" translate"+o+"(-100%)",this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,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 t.prototype.measureScrollOffset.call(this,e||("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=this;this._isChangeDetectionPending=!1,this.ngZone.run(function(){return t._changeDetectorRef.markForCheck()}),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;var e=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(var n=0,r=e;n=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");for(var n=t.start-this._renderedRange.start,r=0,o=t.end-t.start;o--;)for(var i=this._viewContainerRef.get(o+n),s=i?i.rootNodes.length:0;s--;)r+=td(e,i.rootNodes[s]);return r},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(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(var t=0,e=this._templateCache;t0?this._change.pipe(xf(t)):this._change},t.prototype._updateViewportSize=function(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Ff),Lt(si))},token:t,providedIn:"root"}),t}();function od(){throw Error("Host already has a portal attached")}var id=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()&&od(),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}(),sd=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.component=e,i.viewContainerRef=n,i.injector=r,i.componentFactoryResolver=o,i}return o(e,t),e}(id),ad=function(t){function e(e,n,r){var o=t.call(this)||this;return o.templateRef=e,o.viewContainerRef=n,o.context=r,o}return o(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}(id),ld=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.outletElement=e,i._componentFactoryResolver=n,i._appRef=r,i._defaultInjector=o,i}return o(e,t),e.prototype.attachComponentPortal=function(t){var e,n=this,r=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);return t.viewContainerRef?(e=t.viewContainerRef.createComponent(r,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(function(){return e.destroy()})):(e=r.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,r=n.createEmbeddedView(t.templateRef,t.context);return r.detectChanges(),r.rootNodes.forEach(function(t){return e.outletElement.appendChild(t)}),this.setDisposeFn(function(){var t=n.indexOf(r);-1!==t&&n.remove(t)}),r},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}(function(){function t(){this._isDisposed=!1}return t.prototype.hasAttached=function(){return!!this._attachedPortal},t.prototype.attach=function(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&od(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof sd?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof ad?(this._attachedPortal=t,this.attachTemplatePortal(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}()),ud=function(){return function(){}}(),cd=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=of(-this._previousScrollPosition.left),t.style.top=of(-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=t.style,n=this._document.body.style,r=e.scrollBehavior||"",o=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=r,n.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}();function hd(){return Error("Scroll strategy has already been attached.")}var pd=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return t.prototype.attach=function(t){if(this._overlayRef)throw hd();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}(),fd=function(){function t(){}return t.prototype.enable=function(){},t.prototype.disable=function(){},t.prototype.attach=function(){},t}();function dd(t,e){return e.some(function(e){return t.bottome.bottom||t.righte.right})}function gd(t,e){return e.some(function(e){return t.tope.bottom||t.lefte.right})}var vd=function(){function t(t,e,n,r){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=r,this._scrollSubscription=null}return t.prototype.attach=function(t){if(this._overlayRef)throw hd();this._overlayRef=t},t.prototype.enable=function(){var t=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(t._overlayRef.updatePosition(),t._config&&t._config.autoClose){var e=t._overlayRef.overlayElement.getBoundingClientRect(),n=t._viewportRuler.getViewportSize(),r=n.width,o=n.height;dd(e,[{width:r,height:o,bottom:o,right:r,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}(),yd=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=function(){return new fd},this.close=function(t){return new pd(o._scrollDispatcher,o._ngZone,o._viewportRuler,t)},this.block=function(){return new cd(o._viewportRuler,o._document)},this.reposition=function(t){return new vd(o._scrollDispatcher,o._viewportRuler,o._ngZone,t)},this._document=r}return t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Qf),Lt(rd),Lt(si),Lt(qa))},token:t,providedIn:"root"}),t}(),md=function(){return function(t){var e=this;this.scrollStrategy=new fd,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(function(n){void 0!==t[n]&&(e[n]=t[n])})}}(),_d=function(){return function(t,e,n,r,o){this.offsetX=n,this.offsetY=r,this.panelClass=o,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}(),bd=function(){return function(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}();function wd(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "top", "bottom" or "center".')}function Cd(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "start", "end" or "center".')}var xd=function(){function t(t){var e=this;this._attachedOverlays=[],this._keydownListener=function(t){for(var n=e._attachedOverlays,r=n.length-1;r>-1;r--)if(n[r]._keydownEventSubscriptions>0){n[r]._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.ngInjectableDef=Ot({factory:function(){return new t(Lt(qa))},token:t,providedIn:"root"}),t}(),Sd=function(){function t(t){this._document=t}return t.prototype.ngOnDestroy=function(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)},t.prototype.getContainerElement=function(){return this._containerElement||this._createContainer(),this._containerElement},t.prototype._createContainer=function(){var t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(qa))},token:t,providedIn:"root"}),t}(),Ed=function(){function t(t,e,n,r,o,i,s,a){var l=this;this._portalOutlet=t,this._host=e,this._pane=n,this._config=r,this._ngZone=o,this._keyboardDispatcher=i,this._document=s,this._location=a,this._backdropElement=null,this._backdropClick=new V,this._attachments=new V,this._detachments=new V,this._locationChanges=m.EMPTY,this._keydownEventsObservable=new R(function(t){var e=l._keydownEvents.subscribe(t);return l._keydownEventSubscriptions++,function(){e.unsubscribe(),l._keydownEventSubscriptions--}}),this._keydownEvents=new V,this._keydownEventSubscriptions=0,r.scrollStrategy&&(this._scrollStrategy=r.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=r.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._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Rl(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=i({},this._config,t),this._updateElementSize()},t.prototype.setDirection=function(t){this._config=i({},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(){var t=this._pane.style;t.width=of(this._config.width),t.height=of(this._config.height),t.minWidth=of(this._config.minWidth),t.minHeight=of(this._config.minHeight),t.maxWidth=of(this._config.maxWidth),t.maxHeight=of(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",function(e){return t._backdropClick.next(e)}),"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,r=function(){e&&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",r)}),e.style.pointerEvents="none",n=this._ngZone.runOutsideAngular(function(){return setTimeout(r,500)})}},t.prototype._toggleClasses=function(t,e,n){var r=t.classList;rf(e).forEach(function(t){n?r.add(t):r.remove(t)})},t.prototype._detachContentWhenStable=function(){var t=this;this._ngZone.runOutsideAngular(function(){var e=t._ngZone.onStable.asObservable().pipe(Sf(lt(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}(),Od=function(){function t(t,e,n,r,o){this._viewportRuler=e,this._document=n,this._platform=r,this._overlayContainer=o,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 V,this._resizeSubscription=m.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(){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();for(var t,e=this._originRect,n=this._overlayRect,r=this._viewportRect,o=[],i=0,s=this._preferredPositions;ip&&(p=v,h=g)}return this._isPushed=!1,void this._applyPosition(h.position,h.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(t.position,t.originPoint);this._applyPosition(t.position,t.originPoint)}},t.prototype.detach=function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()},t.prototype.dispose=function(){this._isDisposed||(this._boundingBox&&kd(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 r=this._isRtl()?t.right:t.left,o=this._isRtl()?t.left:t.right;n="start"==e.originX?r:o}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 r;return r="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+r,y:t.y+("center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}},t.prototype._getOverlayFit=function(t,e,n,r){var o=t.x,i=t.y,s=this._getOffset(r,"x"),a=this._getOffset(r,"y");s&&(o+=s),a&&(i+=a);var l=0-i,u=i+e.height-n.height,c=this._subtractOverflows(e.width,0-o,o+e.width-n.width),h=this._subtractOverflows(e.height,l,u),p=c*h;return{visibleArea:p,isCompletelyWithinViewport:e.width*e.height===p,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:c==e.width}},t.prototype._canFitWithFlexibleDimensions=function(t,e,n){if(this._hasFlexibleDimensions){var r=n.bottom-e.y,o=n.right-e.x,i=this._overlayRef.getConfig().minHeight,s=this._overlayRef.getConfig().minWidth;return(t.fitsInViewportVertically||null!=i&&i<=r)&&(t.fitsInViewportHorizontally||null!=s&&s<=o)}},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 r,o,i=this._viewportRect,s=Math.max(t.x+e.width-i.right,0),a=Math.max(t.y+e.height-i.bottom,0),l=Math.max(i.top-n.top-t.y,0),u=Math.max(i.left-n.left-t.x,0);return this._previousPushAmount={x:r=e.width<=i.width?u||-s:t.xh&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-h/2)}if("end"===e.overlayX&&!u||"start"===e.overlayX&&u)a=l.right-t.x+this._viewportMargin,i=t.x-l.left;else if("start"===e.overlayX&&!u||"end"===e.overlayX&&u)s=t.x,i=l.right-t.x;else{c=Math.min(l.right-t.x+l.left,t.x);var p=this._lastBoundingBoxSize.width;s=t.x-c,(i=2*c)>p&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.x-p/2)}return{top:r,left:s,bottom:o,right:a,width:i,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 r={};if(this._hasExactPosition())r.top=r.left="0",r.bottom=r.right="",r.width=r.height="100%";else{var o=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;r.height=of(n.height),r.top=of(n.top),r.bottom=of(n.bottom),r.width=of(n.width),r.left=of(n.left),r.right=of(n.right),r.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",r.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",o&&(r.maxHeight=of(o)),i&&(r.maxWidth=of(i))}this._lastBoundingBoxSize=n,kd(this._boundingBox.style,r)},t.prototype._resetBoundingBoxStyles=function(){kd(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})},t.prototype._resetOverlayElementStyles=function(){kd(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})},t.prototype._setOverlayElementStyles=function(t,e){var n={};if(this._hasExactPosition()){var r=this._viewportRuler.getViewportScrollPosition();kd(n,this._getExactOverlayY(e,t,r)),kd(n,this._getExactOverlayX(e,t,r))}else n.position="static";var o="",i=this._getOffset(e,"x"),s=this._getOffset(e,"y");i&&(o+="translateX("+i+"px) "),s&&(o+="translateY("+s+"px)"),n.transform=o.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),kd(this._pane.style,n)},t.prototype._getExactOverlayY=function(t,e,n){var r={top:null,bottom:null},o=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n));var i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return o.y-=i,"bottom"===t.overlayY?r.bottom=this._document.documentElement.clientHeight-(o.y+this._overlayRect.height)+"px":r.top=of(o.y),r},t.prototype._getExactOverlayX=function(t,e,n){var r={left:null,right:null},o=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n)),"right"==(this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=this._document.documentElement.clientWidth-(o.x+this._overlayRect.width)+"px":r.left=of(o.x),r},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:gd(t,n),isOriginOutsideView:dd(t,n),isOverlayClipped:gd(e,n),isOverlayOutsideView:dd(e,n)}},t.prototype._subtractOverflows=function(t){for(var e=[],n=1;n0?p(this.events,[t]):[t],this.displayed_events=this.events.slice(-8),t.close=function(){return e.remove(t.id)},0!==t.delay&&setTimeout(function(){return e.remove(t.id)},t.delay||this.delay||5e3))},t.prototype.remove=function(t){this.events=this.events.filter(function(e){return e.id!==t}),this.displayed_events=this.events.slice(-8)},t.prototype.action=function(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)},t.prototype.grab=function(t,e){var n=this,r=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=r,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",function(e){return n.pull(t,e)}),touchmove:this.renderer.listen("window","touchmove",function(e){return n.pull(t,e)}),mouseup:this.renderer.listen("window","mouseup",function(e){return n.release(t)}),touchend:this.renderer.listen("window","touchend",function(e){return n.release(t)})}},t.prototype.pull=function(t,e){var n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)},t.prototype.release=function(t){for(var e in t.offset>128&&this.remove(t.id),t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0},t.prototype.trackByFn=function(t,e){return(t?t.id:null)||e},t}(),Hd=function(){function t(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new V,this._notify.remove=new V,this._notify.delay=new V,this.registerPreset("default",new md({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new md({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}return t.prototype.register=function(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Ud(t,this,this.injector,this.overlay,e),this._refs[t]},t.prototype.open=function(t,e,n,r){if(e.config?e.config instanceof md||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error("No content set for the overlay "+t);var o=this._refs[t],i=o.details.config instanceof md?o.details.config:this.preset(o.details.config);o.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),r&&this._refs[t].onClose.subscribe(r))},t.prototype.update=function(t,e){this._refs[t]&&this._refs[t].set(e)},t.prototype.close=function(t){this._refs[t]&&this._refs[t].close(null)},t.prototype.remove=function(t){this._refs[t]&&(this._refs[t]=null)},t.prototype.registerPreset=function(t,e){this._presets[t]=e},t.prototype.preset=function(t){return void 0===t&&(t="default"),this._presets[t]||this._presets.default},t.prototype.loadNotificationsOutlet=function(){var t=this;this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(function(){t.registerPreset("ACA_NOTIFICATIONS_OUTLET",new md({width:"0",height:"0",hasBackdrop:!1,positionStrategy:t.overlay.position().global().bottom("0").right("0"),scrollStrategy:t.overlay.scrollStrategies.noop()})),t.open("ACA_NOTIFICATIONS_OUTLET",{content:Fd,data:t._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)},t.prototype.notify=function(t,e,n,r,o){var i=null;return this._notify.add&&(i="notification-"+Math.floor(999999*Math.random()),this._notify.add.next({id:i,content:t,action:e,on_action:n,type:r,delay:o,event:function(t){return n?n(t):null}})),i},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Ad),Lt(Bt))},token:t,providedIn:"root"}),t}(),Bd=function(){function t(t,e,n,r){this.el=t,this.service=e,this.overlay=n,this.renderer=r,this.id="tooltip-"+Math.floor(9999999*Math.random()),this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new Ao,this.event=new Ao,this.close=new Ao,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}return t.prototype.ngOnInit=function(){this.updateConfig(),this.el&&this.listenForScroll()},t.prototype.ngOnDestroy=function(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()},t.prototype.ngOnChanges=function(t){var e=this;if(t.config&&this.updateConfig(),t.reposition){var n=this.overlay.scrollStrategies;this.strategy=this.reposition?n.reposition():n.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(function(){return e.open()},10):this.closeTooltip(t.show.previousValue))},t.prototype.open=function(){var t=this;this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},function(e){return t.event.emit(e)},function(e){t.show=!1,t.showChange.emit(!1),t.close.emit(e),t.clearListeners()})},t.prototype.getOverlayPosition=function(t){var e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)},t.prototype.getPositions=function(){var t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}},t.prototype.updateConfig=function(){this.service.registerPreset(this.id,new md({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))},t.prototype.listenForScroll=function(){var t=this;if(this.show)for(var e=this.el.nativeElement.parentElement;e;e=e.parentElement)this.listeners.push(this.renderer.listen(e,"scroll",function(){return t.update()}))},t.prototype.clearListeners=function(){var t,e;try{for(var n=c(this.listeners),r=n.next();!r.done;r=n.next())(0,r.value)()}catch(o){t={error:o}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)},t.prototype.update=function(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))},t.prototype.listenForHover=function(){var t=this;this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",function(e){t.show=!0,t.showChange.emit(t.show),t._leave_listener=t.renderer.listen(t.el.nativeElement,"mouseleave",function(e){t.show=!1,t.showChange.emit(t.show),t.closeTooltip(t.show)}),t.open()})},t.prototype.closeTooltip=function(t){!this.content&&this.el?function(t,e,n,r,o){if(void 0===r&&(r="debug"),window.debug){var i=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Vd()?console[r].apply(console,p(["%c["+jd+"]%c["+t+"] %c"+e],i,[n])):console[r]("["+jd+"]["+t+"] "+e,n):Vd()?console[r].apply(console,p(["%c["+jd+"]%c["+t+"] %c"+e],i)):console[r]("["+jd+"]["+t+"] "+e)}}("Tooltip","No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()},t}(),Wd=function(){function t(t,e){this.item=t,this.service=e}return t.prototype.ngOnInit=function(){var t=this;setTimeout(function(){t.text=t.item.details.data.text,t.center=t.item.details.data.center},10),setTimeout(function(){return t.service.close(t.item.ID)},1e3)},t}(),Gd=ga,Yd=function(){function t(){if(this.build=Gd(),!t.init){var e=Gd();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),Vd()?console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+jd+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"])):console[n]("[ACA][LIB] "+jd+" - "+t+" | "+e)}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),qd=new Ut("cdk-dir-doc",{providedIn:"root",factory:function(){return zt(qa)}}),Zd=function(){function t(t){if(this.value="ltr",this.change=new Ao,t){var e=(t.body?t.body.dir:null)||(t.documentElement?t.documentElement.dir:null);this.value="ltr"===e||"rtl"===e?e:"ltr"}}return t.prototype.ngOnDestroy=function(){this.change.complete()},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(qd,8))},token:t,providedIn:"root"}),t}(),$d=function(){return function(){}}(),Qd=rr({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function Xd(t){return is(0,[(t()(),Bi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function Kd(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Jd(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,Kd)),go(2,540672,null,0,Ga,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function tg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function eg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,tg)),go(2,671744,null,0,Na,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ng(t){return is(0,[(t()(),Bi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Bi(1,0,null,null,7,null,null,null,null,null,null,null)),go(2,16384,null,0,Ha,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Hi(16777216,null,null,1,null,Xd)),go(4,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,Jd)),go(6,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,eg)),go(8,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function rg(t){return is(0,[(t()(),Hi(16777216,null,null,1,null,ng)),go(1,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function og(t){return is(0,[(t()(),Bi(0,0,null,null,1,"overlay-outlet",[],null,null,null,rg,Qd)),go(1,114688,null,0,zd,[Gt],null,null)],function(t,e){t(e,1,0)},null)}var ig=Wr("overlay-outlet",zd,og,{},{},[]),sg=rr({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function ag(t){return is(0,[(t()(),Bi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),ns(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function lg(t){return is(0,[(t()(),Bi(0,0,null,null,1,"a-floating-text",[],null,null,null,ag,sg)),go(1,114688,null,0,Wd,[Ud,Hd],null,null)],function(t,e){t(e,1,0)},null)}var ug=Wr("a-floating-text",Wd,lg,{},{},[]),cg=rr({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function hg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function pg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,hg)),go(2,540672,null,0,Ga,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function fg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function dg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,fg)),go(2,671744,null,0,Na,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function gg(t){return is(0,[(t()(),Bi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function vg(t){return is(0,[(t()(),Bi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),ns(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function yg(t){return is(0,[(t()(),Bi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function mg(t){return is(0,[(t()(),Bi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Bi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),"touchstart"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),r},null,null)),(t()(),Bi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Bi(4,0,null,null,7,null,null,null,null,null,null,null)),go(5,16384,null,0,Ha,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Hi(16777216,null,null,1,null,pg)),go(7,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,dg)),go(9,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,gg)),go(11,16384,null,0,Wa,[zn,Vn,Ha],null,null),(t()(),Bi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),"touchend"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),r},null,null)),(t()(),Hi(16777216,null,null,1,null,vg)),go(14,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Hi(16777216,null,null,1,null,yg)),go(16,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function _g(t){return is(0,[(t()(),Bi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,mg)),go(2,278528,null,0,ja,[zn,Vn,In],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function bg(t){return is(0,[(t()(),Bi(0,0,null,null,1,"notification-outlet",[],null,null,null,_g,cg)),go(1,245760,null,0,Fd,[Ud,yn],null,null)],function(t,e){t(e,1,0)},null)}var wg=Wr("notification-outlet",Fd,bg,{},{},[]),Cg=function(t){function e(e,n){var r=t.call(this,e)||this;r.sources=n,r.completed=0,r.haveValues=0;var o=n.length;r.values=new Array(o);for(var i=0;it?{max:{max:t,actual:e.value}}:null}},t.required=function(t){return Ag(t.value)?{required:!0}:null},t.requiredTrue=function(t){return!0===t.value?null:{required:!0}},t.email=function(t){return Ag(t.value)?null:Mg.test(t.value)?null:{email:!0}},t.minLength=function(t){return function(e){if(Ag(e.value))return null;var n=e.value?e.value.length:0;return nt?{maxlength:{requiredLength:t,actualLength:n}}:null}},t.pattern=function(e){return e?("string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),n=new RegExp(r)):(r=e.toString(),n=e),function(t){if(Ag(t.value))return null;var e=t.value;return n.test(e)?null:{pattern:{requiredPattern:r,actualValue:e}}}):t.nullValidator;var n,r},t.nullValidator=function(t){return null},t.compose=function(t){if(!t)return null;var e=t.filter(Dg);return 0==e.length?null:function(t){return Vg(function(t,n){return e.map(function(e){return e(t)})}(t))}},t.composeAsync=function(t){if(!t)return null;var e=t.filter(Dg);return 0==e.length?null:function(t){return function t(){for(var e,n=[],r=0;r=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}(),Hg=function(){function t(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return t.prototype.ngOnInit=function(){this._control=this._injector.get(Ig),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: \n ')},t}(),Bg='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Wg='\n
\n
\n \n
\n
';function Gg(t,e){return p(e.path,[t])}function Yg(t,e){t||Zg(e,"Cannot find control with"),e.valueAccessor||Zg(e,"No value accessor for form control with"),t.validator=Ng.compose([t.validator,e.validator]),t.asyncValidator=Ng.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&&qg(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&&qg(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 qg(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Zg(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 $g(t){return null!=t?Ng.compose(t.map(Lg)):null}function Qg(t){return null!=t?Ng.composeAsync(t.map(zg)):null}var Xg=[Sg,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}(),Ug,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=qe}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=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}(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=c(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var i=o.value;if(this._compareWith(this._optionMap.get(i),t))return i}}catch(s){e={error:s}}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},t}(),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=qe}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 r=t.map(function(t){return n._getOptionId(t)});e=function(t,e){t._setSelected(r.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 r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i0||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}(ev),ov=function(t){function e(e,n,r){var o=t.call(this,Kg(n),Jg(r,n))||this;return o.controls=e,o._initObservables(),o._setUpdateStrategy(n),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return o(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,r){n._throwIfControlMissing(r),n.at(r).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,r){n.at(r)&&n.at(r).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,r){n.reset(t[r],{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 nv?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=c(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(o){t={error:o}}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}(ev),iv=function(){return Promise.resolve(null)}(),sv=function(t){function e(e,n){var r=t.call(this)||this;return r.submitted=!1,r._directives=[],r.ngSubmit=new Ao,r.form=new rv({},$g(e),Qg(n)),r}return o(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;iv.then(function(){var n=e._findContainer(t.path);t.control=n.registerControl(t.name,t.control),Yg(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;iv.then(function(){var n,r,o=e._findContainer(t.path);o&&o.removeControl(t.name),(r=(n=e._directives).indexOf(t))>-1&&n.splice(r,1)})},e.prototype.addFormGroup=function(t){var e=this;iv.then(function(){var n=e._findContainer(t.path),r=new rv({});(function(t,e){null==t&&Zg(e,"Cannot find control with"),t.validator=Ng.compose([t.validator,e.validator]),t.asyncValidator=Ng.composeAsync([t.asyncValidator,e.asyncValidator])})(r,t),n.registerControl(t.name,r),r.updateValueAndValidity({emitEvent:!1})})},e.prototype.removeFormGroup=function(t){var e=this;iv.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;iv.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,e=this._directives,this.form._syncPendingControls(),e.forEach(function(t){var e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e},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},e}(Pg),av=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 \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\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
\n \n \n
\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 "+Bg+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+Wg)},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: \n Example 2: ')},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 "+Bg+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+Wg)},t.ngFormWarning=function(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")},t}(),lv=new Ut("NgFormSelectorWarning"),uv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(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 Gg(this.name,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 $g(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Qg(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){},e}(Pg),cv=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}var n;return o(e,t),n=e,e.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof sv||av.modelGroupParentException()},e}(uv),hv=function(){return Promise.resolve(null)}(),pv=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.control=new nv,i._registered=!1,i.update=new Ao,i._parent=e,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Zg(t,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,o=void 0;return e.forEach(function(e){var i;e.constructor===Og?n=e:(i=e,Xg.some(function(t){return i.constructor===t})?(r&&Zg(t,"More than one built-in value accessor matches form control with"),r=e):(o&&Zg(t,"More than one custom value accessor matches form control with"),o=e))}),o||r||n||(Zg(t,"No valid value accessor for form control with"),null)}(i,o),i}return o(e,t),e.prototype.ngOnChanges=function(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;var n=t.model;return!!n.isFirstChange()||!qe(e,n.currentValue)}(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?Gg(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 $g(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Qg(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(){Yg(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 cv)&&this._parent instanceof uv?av.formGroupNameException():this._parent instanceof cv||this._parent instanceof sv||av.modelParentException()},e.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||av.missingNameException()},e.prototype._updateValue=function(t){var e=this;hv.then(function(){e.control.setValue(t,{emitViewToModelChange:!1})})},e.prototype._updateDisabled=function(t){var e=this,n=t.isDisabled.currentValue,r=""===n||n&&"false"!==n;hv.then(function(){r&&!e.control.disabled?e.control.disable():!r&&e.control.disabled&&e.control.enable()})},e}(Ig),fv=new Ut("NgModelWithFormControlWarning"),dv=function(){return function(){}}(),gv=function(){function t(){}return t.prototype.group=function(t,e){void 0===e&&(e=null);var n=this._reduceControls(t),r=null,o=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(r=null!=e.validators?e.validators:null,o=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(r=null!=e.validator?e.validator:null,o=null!=e.asyncValidator?e.asyncValidator:null)),new rv(n,{asyncValidators:o,updateOn:i,validators:r})},t.prototype.control=function(t,e,n){return new nv(t,e,n)},t.prototype.array=function(t,e,n){var r=this,o=t.map(function(t){return r._createControl(t)});return new ov(o,e,n)},t.prototype._reduceControls=function(t){var e=this,n={};return Object.keys(t).forEach(function(r){n[r]=e._createControl(t[r])}),n},t.prototype._createControl=function(t){return t instanceof nv||t instanceof rv||t instanceof ov?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)},t}(),vv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:lv,useValue:t.warnOnDeprecatedNgFormSelector}]}},t}(),yv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:fv,useValue:t.warnOnNgModelWithFormControl}]}},t}(),mv=rr({encapsulation:2,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:0}.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:0}.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}"],data:{}});function _v(t){return is(2,[Zi(402653184,1,{_contentWrapper:0}),(t()(),Bi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),Ji(null,0),(t()(),Bi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var bv=rr({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function wv(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Bi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==eo(t,5)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==eo(t,5).onTouched()&&r),"compositionstart"===e&&(r=!1!==eo(t,5)._compositionStart()&&r),"compositionend"===e&&(r=!1!==eo(t,5)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search=n)&&r),"ngModelChange"===e&&(o.searchChange.emit(n),r=!1!==o.filter()&&r),r},null,null)),go(5,16384,null,0,Og,[yn,pn,[2,Eg]],null,null),vo(1024,null,xg,function(t){return[t]},[Og]),go(7,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(9,16384,null,0,Rg,[[4,Ig]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,eo(e,9).ngClassUntouched,eo(e,9).ngClassTouched,eo(e,9).ngClassPristine,eo(e,9).ngClassDirty,eo(e,9).ngClassValid,eo(e,9).ngClassInvalid,eo(e,9).ngClassPending)})}function Cv(t){return is(0,[(t()(),Bi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.select(t.context.$implicit)&&r),r},null,null)),(t()(),Bi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function xv(t){return is(0,[(t()(),Bi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,_v,mv)),vo(6144,null,Xf,null,[Jf]),go(3,540672,null,0,$f,[],{itemSize:[0,"itemSize"]},null),vo(1024,null,Yf,Zf,[$f]),go(5,245760,[[4,4],[5,4],["viewport",4]],0,Jf,[pn,An,si,[2,Yf],[2,Zd],Qf],null,null),(t()(),Hi(16777216,[[2,2]],0,1,null,Cv)),go(7,409600,null,0,ed,[zn,Vn,In,[1,Jf],si],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===eo(e,5).orientation,"horizontal"!==eo(e,5).orientation)})}function Sv(t){return is(0,[(t()(),Bi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Ev(t){return is(0,[(t()(),Bi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.cancelClose()&&r),r},null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(r=0!=(o.show=!o.show)&&r),r},null,null)),(t()(),Bi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Hi(16777216,[[2,2]],null,1,null,wv)),go(7,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Hi(16777216,[[2,2]],null,1,null,xv)),go(10,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Hi(0,[[2,2],["noItems",2]],null,0,null,Sv))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,eo(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Ov(t){return is(0,[Zi(402653184,1,{reference:0}),Zi(402653184,2,{dropdown_tooltip:0}),Zi(402653184,3,{input:0}),Zi(402653184,4,{viewport:0}),Zi(402653184,5,{scroll_el:0}),(t()(),Bi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var r=!0,o=t.component;return"keyup.enter"===e&&(r=!1!==o.toggleShow()&&r),"keydown.arrowup"===e&&(r=!1!==n.preventDefault()&&r),"keydown.arrowdown"===e&&(r=!1!==n.preventDefault()&&r),"keyup.arrowup"===e&&(r=!1!==(o.focus?o.change(-1):"")&&r),"keyup.arrowdown"===e&&(r=!1!==(o.focus?o.change(1):"")&&r),"focus"===e&&(r=0!=(o.focus=!0)&&r),"blur"===e&&(r=0!=(o.focus=!1)&&r),"window:resize"===e&&(r=!1!==o.resize()&&r),"window:click"===e&&(r=!1!==(o.show?o.close():"")&&r),r},null,null)),(t()(),Bi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Bi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"showChange"===e&&(r=!1!==(o.show=n)&&r),"showChange"===e&&(r=!1!==o.updateScroll()&&r),"click"===e&&(r=!1!==o.toggleShow()&&r),r},null,null)),go(8,737280,null,0,Bd,[pn,Hd,Ad,yn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Bi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),ns(10,null,["",""])),(t()(),Bi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Bi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Bi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(15,null,["",""])),(t()(),Bi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Hi(0,[[2,2],["dropdown",2]],null,0,null,Ev))],function(t,e){t(e,8,0,e.component.show,eo(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}var kv="Checkbox",Pv=function(){function t(){this.klass="default"}return t.prototype.toggle=function(){this.state=!this.state,this.onChange&&this.onChange(this.state)},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouch=t},t}(),Tv=ga,Iv=function(){function t(){if(this.build=Tv(),!t.init){var e=Tv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+kv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+kv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Rv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}return t.prototype.handleMouse=function(t){this.handleEvent(t)},t.prototype.handleTouch=function(t){this.handleEvent(t)},t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;setTimeout(function(){t.element&&t.element.nativeElement&&(t.cached_box=t.element.nativeElement.getBoundingClientRect(),t.size=Math.ceil(1.5*Math.max(t.cached_box.height,t.cached_box.width)))})},t.prototype.ngOnDestroy=function(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t.prototype.handleEvent=function(t){var e=this;this.cancelled=!1;var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,r=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:r-this.cached_box.top+"px",left:n-this.cached_box.left+"px"},this.mouse_release_cancel=this.renderer.listen("window","mouseup",function(t){return e.handleRelease(t)}),this.touch_release_cancel=this.renderer.listen("window","touchend",function(t){return e.handleRelease(t)}),this.transitioning=!0,setTimeout(function(){e.transitioning=!1,e.cancelled&&(e.show=!1)},350)},t.prototype.handleRelease=function(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t}(),Av=function(){function t(t,e){this.el=t,this.renderer=e,this.tapped=new Ao,this.touchrelease=new Ao,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}return t.prototype.ngAfterViewInit=function(){var t=this;this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",function(e){return t.handleHold(e)}),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",function(e){return t.handleHold(e)}))},t.prototype.ngOnDestroy=function(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}},t.prototype.remove=function(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)},t.prototype.handleHold=function(t){var e=this,n={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=n,this.mouse_listener=this.renderer.listen(window,"mouseup",function(t){return e.handleRelease(t)}),this.touch_listener=this.renderer.listen(window,"touchend",function(t){return e.handleRelease(t)}),this.timer=setTimeout(function(){return e.remove()},this.max_delay)},t.prototype.handleRelease=function(t){var e=this;this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(function(){var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(n-e.start.x,2)+2) div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function zv(t){return is(0,[(t()(),Bi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.toggle()&&r),r},null,null)),go(1,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),ns(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Uv(t){return is(0,[(t()(),Bi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Bi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,2).handleTouch(n)&&r),"keyup.enter"===e&&(r=!1!==o.toggle()&&r),"tapped"===e&&(r=!1!==o.toggle()&&r),r},Vv,jv)),go(2,4440064,null,0,Rv,[pn,yn],{center:[0,"center"]},null),go(3,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,zv)),go(6,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}var Fv="Buttons",Hv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new Ao,this.id="button-"+Math.floor(999999*Math.random())}return t.prototype.ngOnChanges=function(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()},t.prototype.ngAfterViewInit=function(){this.setClass(this.klass)},t.prototype.setClass=function(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))},t.prototype.setGroup=function(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")},t.prototype.setState=function(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")},t.prototype.tap=function(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this._onChange=t},t.prototype.registerOnTouched=function(t){this._onTouch=t},t}(),Bv=ga,Wv=function(){function t(){if(this.build=Bv(),!t.init){var e=Bv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Fv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Fv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Gv=rr({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function Yv(t){return is(0,[(t()(),Bi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,1).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,1).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.tap()&&r),r},Vv,jv)),go(1,4440064,null,0,Rv,[pn,yn],null,null),go(2,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),Ji(0,0)],function(t,e){t(e,1,0)},null)}var qv=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t,e){switch(void 0===e&&(e="html"),e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}},t}(),Zv="Pipes",$v=ga,Qv=function(){function t(){if(this.build=$v(),!t.init){var e=$v();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Zv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Zv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Xv=function(){function t(){this._timers={},this._intervals={},this._subscriptions={}}return t.prototype.timeout=function(t,e,n){var r=this;if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(function(){e(),r._timers[t]=null},n)},t.prototype.clearTimeout=function(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)},t.prototype.interval=function(t,e,n){if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(function(){return e()},n)},t.prototype.clearInterval=function(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)},t.prototype.subscription=function(t,e){this.unsub(t),this._subscriptions[t]=e},t.prototype.unsub=function(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof m?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)},t}(),Kv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.ngOnDestroy=function(){for(var t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(var t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(var t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)},e}(Xv),Jv=function(){return function(){}}(),ty=function(){return function(){}}(),ey=function(){function t(t){var e=this;this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?function(){e.headers=new Map,t.split("\n").forEach(function(t){var n=t.indexOf(":");if(n>0){var r=t.slice(0,n),o=r.toLowerCase(),i=t.slice(n+1).trim();e.maybeSetNormalizedName(r,o),e.headers.has(o)?e.headers.get(o).push(i):e.headers.set(o,[i])}})}:function(){e.headers=new Map,Object.keys(t).forEach(function(n){var r=t[n],o=n.toLowerCase();"string"==typeof r&&(r=[r]),r.length>0&&(e.headers.set(o,r),e.maybeSetNormalizedName(n,o))})}:this.headers=new Map}return t.prototype.has=function(t){return this.init(),this.headers.has(t.toLowerCase())},t.prototype.get=function(t){this.init();var e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null},t.prototype.keys=function(){return this.init(),Array.from(this.normalizedNames.values())},t.prototype.getAll=function(t){return this.init(),this.headers.get(t.toLowerCase())||null},t.prototype.append=function(t,e){return this.clone({name:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({name:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({name:t,value:e,op:"d"})},t.prototype.maybeSetNormalizedName=function(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)},t.prototype.init=function(){var e=this;this.lazyInit&&(this.lazyInit instanceof t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(t){return e.applyUpdate(t)}),this.lazyUpdate=null))},t.prototype.copyFrom=function(t){var e=this;t.init(),Array.from(t.headers.keys()).forEach(function(n){e.headers.set(n,t.headers.get(n)),e.normalizedNames.set(n,t.normalizedNames.get(n))})},t.prototype.clone=function(e){var n=new t;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([e]),n},t.prototype.applyUpdate=function(t){var e=t.name.toLowerCase();switch(t.op){case"a":case"s":var n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);var r=("a"===t.op?this.headers.get(e):void 0)||[];r.push.apply(r,p(n)),this.headers.set(e,r);break;case"d":var o=t.value;if(o){var i=this.headers.get(e);if(!i)return;0===(i=i.filter(function(t){return-1===o.indexOf(t)})).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,i)}else this.headers.delete(e),this.normalizedNames.delete(e)}},t.prototype.forEach=function(t){var e=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return t(e.normalizedNames.get(n),e.headers.get(n))})},t}(),ny=function(){function t(){}return t.prototype.encodeKey=function(t){return ry(t)},t.prototype.encodeValue=function(t){return ry(t)},t.prototype.decodeKey=function(t){return decodeURIComponent(t)},t.prototype.decodeValue=function(t){return decodeURIComponent(t)},t}();function ry(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}var oy=function(){function t(t){var e,n,r,o=this;if(void 0===t&&(t={}),this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new ny,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=(e=t.fromString,n=this.encoder,r=new Map,e.length>0&&e.split("&").forEach(function(t){var e=t.indexOf("="),o=h(-1==e?[n.decodeKey(t),""]:[n.decodeKey(t.slice(0,e)),n.decodeValue(t.slice(e+1))],2),i=o[0],s=o[1],a=r.get(i)||[];a.push(s),r.set(i,a)}),r)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(function(e){var n=t.fromObject[e];o.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}return t.prototype.has=function(t){return this.init(),this.map.has(t)},t.prototype.get=function(t){this.init();var e=this.map.get(t);return e?e[0]:null},t.prototype.getAll=function(t){return this.init(),this.map.get(t)||null},t.prototype.keys=function(){return this.init(),Array.from(this.map.keys())},t.prototype.append=function(t,e){return this.clone({param:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({param:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({param:t,value:e,op:"d"})},t.prototype.toString=function(){var t=this;return this.init(),this.keys().map(function(e){var n=t.encoder.encodeKey(e);return t.map.get(e).map(function(e){return n+"="+t.encoder.encodeValue(e)}).join("&")}).join("&")},t.prototype.clone=function(e){var n=new t({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat([e]),n},t.prototype.init=function(){var t=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(e){return t.map.set(e,t.cloneFrom.map.get(e))}),this.updates.forEach(function(e){switch(e.op){case"a":case"s":var n=("a"===e.op?t.map.get(e.param):void 0)||[];n.push(e.value),t.map.set(e.param,n);break;case"d":if(void 0===e.value){t.map.delete(e.param);break}var r=t.map.get(e.param)||[],o=r.indexOf(e.value);-1!==o&&r.splice(o,1),r.length>0?t.map.set(e.param,r):t.map.delete(e.param)}}),this.cloneFrom=this.updates=null)},t}();function iy(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function sy(t){return"undefined"!=typeof Blob&&t instanceof Blob}function ay(t){return"undefined"!=typeof FormData&&t instanceof FormData}var ly=function(){function t(t,e,n,r){var o;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,o=r):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.params&&(this.params=o.params)),this.headers||(this.headers=new ey),this.params){var i=this.params.toString();if(0===i.length)this.urlWithParams=e;else{var s=e.indexOf("?");this.urlWithParams=e+(-1===s?"?":s=200&&this.status<300}}(),hy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=uy.ResponseHeader,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(cy),py=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=uy.Response,n.body=void 0!==e.body?e.body:null,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(cy),fy=function(t){function e(e){var n=t.call(this,e,0,"Unknown Error")||this;return n.name="HttpErrorResponse",n.ok=!1,n.message=n.status>=200&&n.status<300?"Http failure during parsing for "+(e.url||"(unknown url)"):"Http failure response for "+(e.url||"(unknown url)")+": "+e.status+" "+e.statusText,n.error=e.error||null,n}return o(e,t),e}(cy);function dy(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}var gy=function(){function t(t){this.handler=t}return t.prototype.request=function(t,e,n){var r,o=this;if(void 0===n&&(n={}),t instanceof ly)r=t;else{var i;i=n.headers instanceof ey?n.headers:new ey(n.headers);var s=void 0;n.params&&(s=n.params instanceof oy?n.params:new oy({fromObject:n.params})),r=new ly(t,e,void 0!==n.body?n.body:null,{headers:i,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}var a=nl(r).pipe(Gl(function(t){return o.handler.handle(t)}));if(t instanceof ly||"events"===n.observe)return a;var l=a.pipe(hl(function(t){return t instanceof py}));switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return l.pipe(K(function(t){if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return l.pipe(K(function(t){return t.body}))}case"response":return l;default:throw new Error("Unreachable: unhandled observe type "+n.observe+"}")}},t.prototype.delete=function(t,e){return void 0===e&&(e={}),this.request("DELETE",t,e)},t.prototype.get=function(t,e){return void 0===e&&(e={}),this.request("GET",t,e)},t.prototype.head=function(t,e){return void 0===e&&(e={}),this.request("HEAD",t,e)},t.prototype.jsonp=function(t,e){return this.request("JSONP",t,{params:(new oy).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})},t.prototype.options=function(t,e){return void 0===e&&(e={}),this.request("OPTIONS",t,e)},t.prototype.patch=function(t,e,n){return void 0===n&&(n={}),this.request("PATCH",t,dy(n,e))},t.prototype.post=function(t,e,n){return void 0===n&&(n={}),this.request("POST",t,dy(n,e))},t.prototype.put=function(t,e,n){return void 0===n&&(n={}),this.request("PUT",t,dy(n,e))},t}(),vy=function(){function t(t,e){this.next=t,this.interceptor=e}return t.prototype.handle=function(t){return this.interceptor.intercept(t,this.next)},t}(),yy=new Ut("HTTP_INTERCEPTORS"),my=function(){function t(){}return t.prototype.intercept=function(t,e){return e.handle(t)},t}(),_y=/^\)\]\}',?\n/,by=function(){return function(){}}(),wy=function(){function t(){}return t.prototype.build=function(){return new XMLHttpRequest},t}(),Cy=function(){function t(t){this.xhrFactory=t}return t.prototype.handle=function(t){var e=this;if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new R(function(n){var r=e.xhrFactory.build();if(r.open(t.method,t.urlWithParams),t.withCredentials&&(r.withCredentials=!0),t.headers.forEach(function(t,e){return r.setRequestHeader(t,e.join(","))}),t.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){var o=t.detectContentTypeHeader();null!==o&&r.setRequestHeader("Content-Type",o)}if(t.responseType){var i=t.responseType.toLowerCase();r.responseType="json"!==i?i:"text"}var s=t.serializeBody(),a=null,l=function(){if(null!==a)return a;var e=1223===r.status?204:r.status,n=r.statusText||"OK",o=new ey(r.getAllResponseHeaders()),i=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(r)||t.url;return a=new hy({headers:o,status:e,statusText:n,url:i})},u=function(){var e=l(),o=e.headers,i=e.status,s=e.statusText,a=e.url,u=null;204!==i&&(u=void 0===r.response?r.responseText:r.response),0===i&&(i=u?200:0);var c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof u){var h=u;u=u.replace(_y,"");try{u=""!==u?JSON.parse(u):null}catch(p){u=h,c&&(c=!1,u={error:p,text:u})}}c?(n.next(new py({body:u,headers:o,status:i,statusText:s,url:a||void 0})),n.complete()):n.error(new fy({error:u,headers:o,status:i,statusText:s,url:a||void 0}))},c=function(t){var e=l().url,o=new fy({error:t,status:r.status||0,statusText:r.statusText||"Unknown Error",url:e||void 0});n.error(o)},h=!1,p=function(e){h||(n.next(l()),h=!0);var o={type:uy.DownloadProgress,loaded:e.loaded};e.lengthComputable&&(o.total=e.total),"text"===t.responseType&&r.responseText&&(o.partialText=r.responseText),n.next(o)},f=function(t){var e={type:uy.UploadProgress,loaded:t.loaded};t.lengthComputable&&(e.total=t.total),n.next(e)};return r.addEventListener("load",u),r.addEventListener("error",c),t.reportProgress&&(r.addEventListener("progress",p),null!==s&&r.upload&&r.upload.addEventListener("progress",f)),r.send(s),n.next({type:uy.Sent}),function(){r.removeEventListener("error",c),r.removeEventListener("load",u),t.reportProgress&&(r.removeEventListener("progress",p),null!==s&&r.upload&&r.upload.removeEventListener("progress",f)),r.abort()}})},t}(),xy=new Ut("XSRF_COOKIE_NAME"),Sy=new Ut("XSRF_HEADER_NAME"),Ey=function(){return function(){}}(),Oy=function(){function t(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return t.prototype.getToken=function(){if("server"===this.platform)return null;var t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Ma(t,this.cookieName),this.lastCookieString=t),this.lastToken},t}(),ky=function(){function t(t,e){this.tokenService=t,this.headerName=e}return t.prototype.intercept=function(t,e){var n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);var r=this.tokenService.getToken();return null===r||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,r)})),e.handle(t)},t}(),Py=function(){function t(t,e){this.backend=t,this.injector=e,this.chain=null}return t.prototype.handle=function(t){if(null===this.chain){var e=this.injector.get(yy,[]);this.chain=e.reduceRight(function(t,e){return new vy(t,e)},this.backend)}return this.chain.handle(t)},t}(),Ty=function(){function t(){}var e;return e=t,t.disable=function(){return{ngModule:e,providers:[{provide:ky,useClass:my}]}},t.withOptions=function(t){return void 0===t&&(t={}),{ngModule:e,providers:[t.cookieName?{provide:xy,useValue:t.cookieName}:[],t.headerName?{provide:Sy,useValue:t.headerName}:[]]}},t}(),Iy=function(){return function(){}}(),Ry=function(){function t(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new rl(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}return t.prototype.init=function(){return l(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.loadFromFile("api")];case 1:return t.sent(),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete(),[2]}})})},Object.defineProperty(t.prototype,"setup",{get:function(){return this._setup},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"app_name",{get:function(){return this._app_name},enumerable:!0,configurable:!0}),t.prototype.isSetup=function(t){return this._is_setup_observer.subscribe(t)},t.prototype.log=function(t,e,n,r,o){if(void 0===r&&(r="debug"),void 0===o&&(o=!1),window.debug||o){var i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i,[n])):console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i))}},t.prototype.get=function(t){var e=t.split("."),n=null;return"session"===e[0]?(e.shift(),n=da(e,this._settings.session)):"local"===e[0]?(e.shift(),n=da(e,this._settings.local)):n=da(e,this._settings.api)||da(e,this._settings.session)||da(e,this._settings.local),n},t.prototype.loadStore=function(t,e){if(e)for(var n=0;n5?[2,Promise.resolve()]:(this._promises[r="load|"+t+"|"+e]||(this._promises[r]=new Promise(function(s,a){o.http.get(e).subscribe(function(e){o._settings[t]=i({},o._settings[t]||{},e||{})},function(i){o.log("Settings",'Failed to load settings from "'+e+'"'),o._promises[r]=null,o.loadFromFile(t,e,++n).then(function(){return s()})},function(){return s()})})),[2,this._promises[r]])})})},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(gy))},token:t,providedIn:"root"}),t}(),Ay=["control","shift","alt","meta","os"],My=function(){function t(){var t=this;this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.last_down!==n&&(t.keydown_states[n]||(t.keydown_states[n]=new rl(null),t.keydown_observers[n]=t.keydown_states[n].asObservable()),t.keydown_states[n].next(t.counter++),t.combo_end.indexOf(n)>=0&&e.preventDefault(),t.last_down=n)}),window.addEventListener("keyup",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.keydown_states[n].next(null),t.last_down===n&&(t.last_down=null)})}return t.prototype.listen=function(t,e){var n=this,r=(t=t instanceof Array?t:t.split("+")).map(function(t){return n.mapKey(t.toLowerCase())});if(r.length>0&&this.validCombination(r)){this.registered_combos.push(r);var o=r[r.length-1];return this.keydown_states[o]||(this.keydown_states[o]=new rl(null),this.keydown_observers[o]=this.keydown_states[o].asObservable()),this.updateCombinationEndList(),this.keydown_observers[o].subscribe(function(t){if(t){var o=[];if(r.length>1){for(var i=0,s=r;io[l+1])return}e()}})}return null},t.prototype.mapKey=function(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t},t.prototype.updateCombinationEndList=function(){for(var t,e=0,n=this.registered_combos;e0},t.ngInjectableDef=Ot({factory:function(){return new t},token:t,providedIn:"root"}),t}(),Ny=[],Dy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=fa(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.repositories=function(){var t=this,e="repositories";return this._promises[e]||(this._promises[e]=new Promise(function(n,r){var o;t.http.get(t.api_route+"/repositories").subscribe(function(t){return o=t},function(n){r(n),delete t._promises[e]},function(){n(o),t.timeout(e,function(){return delete t._promises[e]},1e3)})})),this._promises[e]},e.prototype.commits=function(t){var e=this,n="commits|"+fa(t);return this._promises[n]||(this._promises[n]=new Promise(function(t,r){var o;e.http.get(e.api_route+"/repositories_commits").subscribe(function(t){return o=t},function(t){r(t),delete e._promises[n]},function(){t(o),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.versions=function(t){var e=this,n="versions|"+t;return this._promises[n]||(this._promises[n]=new Promise(function(r,o){var i,s=e.api_route+"/"+encodeURIComponent(t);e.http.get(s).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[n]},function(){r(i),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.driverCommits=function(t,e){var n=this,r=fa(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.build=function(t){var e=this,n=fa(t),r="build|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){e.http.post(""+e.api_route,n).subscribe(function(t){return null},function(t){o(t),delete e._promises[r]},function(){t(),delete e._promises[r]})})),this._promises[r]},e.prototype.clean=function(t,e){var n=this,r=fa(e),o="clean|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(t,e){n.http.delete(n.api_route+(r?"?"+r:"")).subscribe(function(t){return null},function(t){e(t),delete n._promises[o]},function(){t(),delete n._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/build":"/build"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(gy))},token:e,providedIn:"root"}),e}(Xv),jy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=fa(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.specCommits=function(t,e){var n=this,r=fa(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.run=function(t){var e=this;for(var n in t)null==t[n]&&delete t[n];var r=fa(t),o="build|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(n,i){var s;e.http.post(e.api_route+(r?"?"+r:""),t,{responseType:"text"}).subscribe(function(t){return s=t},function(t){i(t),delete e._promises[o]},function(){n(s),delete e._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/test":"/test"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(gy))},token:e,providedIn:"root"}),e}(Xv),Vy=new R(P),Ly=function(){function t(t,e){this.delay=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new zy(t,this.delay,this.scheduler))},t}(),zy=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.delay=n,o.scheduler=r,o.queue=[],o.active=!1,o.errored=!1,o}return o(e,t),e.dispatch=function(t){for(var e=t.source,n=e.queue,r=t.scheduler,o=t.destination;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(o);if(n.length>0){var i=Math.max(0,n[0].time-r.now());this.schedule(t,i)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.destination.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new Uy(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(Df.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.scheduleNotification(Df.createComplete()),this.unsubscribe()},e}(E),Uy=function(){return function(t,e){this.time=t,this.notification=e}}(),Fy="Service workers are disabled or not supported by this browser",Hy=function(){function t(t){if(this.serviceWorker=t,t){var e=sf(t,"controllerchange").pipe(K(function(){return t.controller})),n=Ul(ul(function(){return nl(t.controller)}),e);this.worker=n.pipe(hl(function(t){return!!t})),this.registration=this.worker.pipe(Vl(function(){return t.getRegistration()}));var r=sf(t,"message").pipe(K(function(t){return t.data})).pipe(hl(function(t){return t&&t.type})).pipe(gt(new V));r.connect(),this.events=r}else this.worker=this.events=this.registration=(o=Fy,ul(function(){return Af(new Error(o))}));var o}return t.prototype.postMessage=function(t,e){return this.worker.pipe(Rl(1),_l(function(n){n.postMessage(i({action:t},e))})).toPromise().then(function(){})},t.prototype.postMessageWithStatus=function(t,e,n){var r=this.waitForStatus(n),o=this.postMessage(t,e);return Promise.all([r,o]).then(function(){})},t.prototype.generateNonce=function(){return Math.round(1e7*Math.random())},t.prototype.eventsOfType=function(t){return this.events.pipe(hl(function(e){return e.type===t}))},t.prototype.nextEventOfType=function(t){return this.eventsOfType(t).pipe(Rl(1))},t.prototype.waitForStatus=function(t){return this.eventsOfType("STATUS").pipe(hl(function(e){return e.nonce===t}),Rl(1),K(function(t){if(!t.status)throw new Error(t.error)})).toPromise()},Object.defineProperty(t.prototype,"isEnabled",{get:function(){return!!this.serviceWorker},enumerable:!0,configurable:!0}),t}(),By=function(){function t(t){if(this.sw=t,this.subscriptionChanges=new V,!t.isEnabled)return this.messages=Vy,this.notificationClicks=Vy,void(this.subscription=Vy);this.messages=this.sw.eventsOfType("PUSH").pipe(K(function(t){return t.data})),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(K(function(t){return t.data})),this.pushManager=this.sw.registration.pipe(K(function(t){return t.pushManager}));var e=this.pushManager.pipe(Vl(function(t){return t.getSubscription()}));this.subscription=lt(e,this.subscriptionChanges)}return Object.defineProperty(t.prototype,"isEnabled",{get:function(){return this.sw.isEnabled},enumerable:!0,configurable:!0}),t.prototype.requestSubscription=function(t){var e=this;if(!this.sw.isEnabled)return Promise.reject(new Error(Fy));for(var n={userVisibleOnly:!0},r=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),o=new Uint8Array(new ArrayBuffer(r.length)),i=0;i
'+e+"
",n,r,t)},e.prototype.notifySuccess=function(t,e,n){this.notify("success",t,e,n)},e.prototype.notifyError=function(t,e,n){this.notify("error",t,e,n)},e.prototype.notifyInfo=function(t,e,n){this.notify("info",t,e,n)},e.prototype.log=function(t,e,n,r,o){void 0===r&&(r="debug"),void 0===o&&(o=!1),this._settings.log(t,e,n,r,o)},e.prototype.navigate=function(t,e){var n=t instanceof Array?t.slice():[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})},e.prototype.navigateBack=function(){if(this._route_trail&&this._route_trail.length>0){var t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])},e.prototype.get=function(t){return this._subjects[t]&&this._subjects[t]instanceof rl?this._subjects[t].getValue():null},e.prototype.listen=function(t,e){return this._observers[t]?this._observers[t].subscribe(e):null},e.prototype.set=function(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new rl(e),this._observers[t]=this._subjects[t].asObservable())},e.prototype.init=function(){var t=this;if(!this._settings.setup)return this.timeout("init",function(){return t.init()});this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(function(e){t.log("CACHE","Update available: current version is "+e.current.hash+" available version is "+e.available.hash),t.notifyInfo("Newer version of the app is available","Refresh",function(){return location.reload()})}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],function(){t.navigate("bootstrap",{clear:!0})})},e.prototype.registerOverlays=function(){if(Ny)for(var t=0,e=Ny;tt.driver.localeCompare(n.id)?e:n},null)),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.updateSpecCommits=function(){var t=this;this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(function(e){t.spec_commit_list=(e||[]).map(function(t){return{id:t.commit,name:t.commit,author:t.author,date:ga(t.date).format("DD MMM YYYY h:mm A")}}),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.test=function(){var t=this;if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";var e=function(e){e instanceof Object&&(e=e.error),t.test_results=t.styleResults(e||"");var n=t.service.get("TEST.results")||{},r=e.indexOf("exited with 0")>=0;n[t.repo+"|"+t.driver]=r?"passed":"failed",t.service.set("TEST.results",n),t.testing=!1,t.timeout("scroll",function(){return t.body.nativeElement.scrollTo(0,t.body.nativeElement.scrollHeight)},10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(e,e)}},e.prototype.styleResults=function(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')},e}(Kv),nm=rr({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function rm(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Spec Commit:"])),(t()(),Bi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.spec_commit=n)&&r),r},Ov,bv)),go(5,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(7,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(9,16384,null,0,Rg,[[4,Ig]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,eo(e,9).ngClassUntouched,eo(e,9).ngClassTouched,eo(e,9).ngClassPristine,eo(e,9).ngClassDirty,eo(e,9).ngClassValid,eo(e,9).ngClassInvalid,eo(e,9).ngClassPending)})}function om(t){return is(0,[(t()(),Bi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),es(128,1,new Array(3))],null,function(t,e){var n=e.component,r=function(t,e,n,r){if($e.isWrapped(r)){r=$e.unwrap(r);var o=t.def.nodes[0].bindingIndex+0,i=$e.unwrap(t.oldValues[o]);t.oldValues[o]=new $e(i)}return r}(e,0,0,t(e,1,0,eo(e.parent.parent,0),n.test_results,"html"));t(e,0,0,r)})}function im(t){return is(0,[(t()(),Bi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,54,"div",[["class","header"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Repository:"])),(t()(),Bi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),ns(6,null,["",""])),(t()(),Bi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Driver:"])),(t()(),Bi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),ns(11,null,["",""])),(t()(),Bi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Commit:"])),(t()(),Bi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.commit=n)&&r),r},Ov,bv)),go(17,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(19,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(21,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Spec:"])),(t()(),Bi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.spec=n)&&r),"ngModelChange"===e&&(r=!1!==o.updateSpecCommits()&&r),r},Ov,bv)),go(27,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(29,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(31,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Hi(16777216,null,null,1,null,rm)),go(33,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(34,0,null,null,21,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Bi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Bi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Bi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.force=n)&&r),r},Uv,Lv)),go(38,49152,null,0,Pv,[],{klass:[0,"klass"],label:[1,"label"]},null),vo(1024,null,xg,function(t){return[t]},[Pv]),go(40,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(42,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Bi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.debug=n)&&r),r},Uv,Lv)),go(45,49152,null,0,Pv,[],{klass:[0,"klass"],label:[1,"label"]},null),vo(1024,null,xg,function(t){return[t]},[Pv]),go(47,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(49,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(50,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Bi(51,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.test()&&r),r},Yv,Gv)),vo(5120,null,xg,function(t){return[t]},[Hv]),go(53,4767744,null,0,Hv,[pn,yn],null,{tapped:"tapped"}),go(54,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),ns(-1,0,["Run!"])),(t()(),Bi(56,0,[[1,0],["body",1]],null,10,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(57,0,null,null,4,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Bi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),ns(59,null,[" "," "])),(t()(),Hi(16777216,null,null,1,null,om)),go(61,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,63).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,63).handleTouch(n)&&r),"tapped"===e&&(r=0!=(o.show=!o.show)&&r),r},Vv,jv)),go(63,4440064,null,0,Rv,[pn,yn],{klass:[0,"klass"],center:[1,"center"]},null),go(64,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,eo(e,21).ngClassUntouched,eo(e,21).ngClassTouched,eo(e,21).ngClassPristine,eo(e,21).ngClassDirty,eo(e,21).ngClassValid,eo(e,21).ngClassInvalid,eo(e,21).ngClassPending),t(e,26,0,eo(e,31).ngClassUntouched,eo(e,31).ngClassTouched,eo(e,31).ngClassPristine,eo(e,31).ngClassDirty,eo(e,31).ngClassValid,eo(e,31).ngClassInvalid,eo(e,31).ngClassPending),t(e,37,0,eo(e,42).ngClassUntouched,eo(e,42).ngClassTouched,eo(e,42).ngClassPristine,eo(e,42).ngClassDirty,eo(e,42).ngClassValid,eo(e,42).ngClassInvalid,eo(e,42).ngClassPending),t(e,44,0,eo(e,49).ngClassUntouched,eo(e,49).ngClassTouched,eo(e,49).ngClassPristine,eo(e,49).ngClassDirty,eo(e,49).ngClassValid,eo(e,49).ngClassInvalid,eo(e,49).ngClassPending),t(e,51,0,!n.spec||n.testing),t(e,56,0,n.show),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_up":"keyboard_arrow_down")})}function sm(t){return is(0,[(t()(),Bi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(-1,null,["arrow_back"])),(t()(),Bi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(-1,null,["Select a driver from the sidebar"]))],null,null)}function am(t){return is(0,[(e=0,n=qv,r=[Yu],yo(-1,e|=16,null,0,n,n,r)),Zi(671088640,1,{body:0}),(t()(),Bi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,im)),go(4,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Hi(0,[["select",2]],null,0,null,sm))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,eo(e,5))},null);var e,n,r}function lm(t){return is(0,[(t()(),Bi(0,0,null,null,1,"app-workspace",[],null,null,null,am,nm)),go(1,245760,null,0,em,[tm,fh],null,null)],function(t,e){t(e,1,0)},null)}var um=Wr("app-workspace",em,lm,{},{},[]),cm=function(){function t(){this.menu=!0,this.menuChange=new Ao}return t.prototype.toggleMenu=function(){this.menu=!this.menu,this.menuChange.emit(this.menu)},t}(),hm=rr({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function pm(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,2).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.toggleMenu()&&r),r},Vv,jv)),go(2,4440064,null,0,Rv,[pn,yn],{klass:[0,"klass"]},null),go(3,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(-1,null,["menu"])),(t()(),Bi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Bi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Bi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),ns(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}var fm=function(t){function e(e){var n=t.call(this)||this;return n.service=e,n.repository_list=[],n.status={},n}return o(e,t),e.prototype.ngOnInit=function(){var t=this;this.service.set("TEST.repository",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",function(){return t.updateRepositoryList()},6e4),this.subscription("test_results",this.service.listen("TEST.results",function(e){t.status=e||{}})),this.subscription("repository",this.service.listen("TEST.repository",function(e){e&&(t.repo={id:e,name:e},t.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",function(e){t.driver=e}))},e.prototype.setRepository=function(t){this.service.navigate([t]),this.updateDriverList()},e.prototype.setDriver=function(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t])},e.prototype.updateDriverList=function(){var t=this;this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(function(e){t.driver_list=e||[],t.loading=!1},function(e){return t.loading=!1})},e.prototype.updateRepositoryList=function(){var t=this;this.service.Build.repositories().then(function(e){t.repository_list=(e||[]).map(function(t){return{id:t,name:t}}),t.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),t.updateDriverList()})},e}(Kv),dm=rr({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function gm(t){return is(0,[(t()(),Bi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.setDriver(t.context.$implicit)&&r),r},null,null)),go(1,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Bi(3,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(4,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]),t(e,4,0,e.context.$implicit)})}function vm(t){return is(0,[(t()(),Bi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(5,null,["",""]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?"No drivers in the selected repository":"Select a repository from above")})}function ym(t){return is(0,[(t()(),Bi(0,0,null,null,12,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.repo=n)&&r),"ngModelChange"===e&&(r=!1!==o.setRepository(n.id)&&r),r},Ov,bv)),go(3,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(5,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(7,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(8,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,gm)),go(10,278528,null,0,ja,[zn,Vn,In],{ngForOf:[0,"ngForOf"]},null),(t()(),Hi(16777216,null,null,1,null,vm)),go(12,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,3,0,"simple",n.repository_list||Ir,"ACA Drivers"),t(e,5,0,n.repo),t(e,10,0,n.driver_list),t(e,12,0,!n.driver_list||0===n.driver_list.length)},function(t,e){t(e,2,0,eo(e,7).ngClassUntouched,eo(e,7).ngClassTouched,eo(e,7).ngClassPristine,eo(e,7).ngClassDirty,eo(e,7).ngClassValid,eo(e,7).ngClassInvalid,eo(e,7).ngClassPending)})}var mm=rr({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:16em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:16em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function _m(t){return is(0,[(t()(),Bi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var r=!0;return"menuChange"===e&&(r=!1!==(t.component.show_menu=n)&&r),r},pm,hm)),go(3,49152,null,0,cm,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Bi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Bi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(6,0,null,null,1,"sidebar",[],null,null,null,ym,dm)),go(7,245760,null,0,fm,[tm],null,null),(t()(),Bi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Bi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),go(10,212992,null,0,Op,[Ep,zn,sn,[8,null],An],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function bm(t){return is(0,[(t()(),Bi(0,0,null,null,1,"app-root",[],null,null,null,_m,mm)),go(1,49152,null,0,ya,[],null,null)],null,null)}var wm=Wr("app-root",ya,bm,{},{},[]),Cm=function(){return function(){}}(),xm=function(){return function(){}}(),Sm=ca(va,[ya],function(t){return function(t){for(var e={},n=[],r=!1,o=0;o=e?t:""+Array(e+1-r.length).join(n)+t},p={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+h(r,2,"0")+":"+h(o,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,s),o=e-r<0,i=t.clone().add(n+(o?-1:1),s);return Number(-(n+(e-r)/(o?r-i:i-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(u){return{M:s,y:l,w:i,d:o,h:r,m:n,s:e,ms:t,Q:a}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},d={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=d;var v=function(t){return t instanceof b},y=function(t,e,n){var r;if(!t)return null;if("string"==typeof t)g[t]&&(r=t),e&&(g[t]=e,r=t);else{var o=t.name;g[o]=t,r=o}return n||(f=r),r},m=function(t,e,n){if(v(t))return t.clone();var r=e?"string"==typeof e?{format:e,pl:n}:e:{};return r.date=t,new b(r)},_=p;_.l=y,_.i=v,_.w=function(t,e){return m(t,{locale:e.$L,utc:e.$u})};var b=function(){function h(t){this.$L=this.$L||y(t.locale,null,!0)||f,this.parse(t)}var p=h.prototype;return p.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(_.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(u);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},p.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},p.$utils=function(){return _},p.isValid=function(){return!("Invalid Date"===this.$d.toString())},p.isSame=function(t,e){var n=m(t);return this.startOf(e)<=n&&n<=this.endOf(e)},p.isAfter=function(t,e){return m(t)=0;a--)(o=t[a])&&(s=(i<3?o(s):i>3?o(e,n,s):o(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}function a(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function l(t,e,n,r){return new(n||(n=Promise))(function(o,i){function s(t){try{l(r.next(t))}catch(e){i(e)}}function a(t){try{l(r.throw(t))}catch(e){i(e)}}function l(t){t.done?o(t.value):new n(function(e){e(t.value)}).then(s,a)}l((r=r.apply(t,e||[])).next())})}function u(t,e){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,r=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function h(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(a){o={error:a}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function p(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(X);function st(t){return t}function at(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),rt(st,t)}function lt(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof o&&(n=t.pop()),null===r&&1===t.length&&t[0]instanceof R?t[0]:at(n)(et(t,r))}function ut(){return function(t){return t.lift(new ct(t))}}var ct=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var r=new ht(t,n),o=e.subscribe(r);return r.closed||(r.connection=n.connect()),o},t}(),ht=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},e}(E),pt=function(t){function e(e,n){var r=t.call(this)||this;return r.source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return o(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 m).add(this.source.subscribe(new ft(this.getSubject(),this))),t.closed?(this._connection=null,t=m.EMPTY):this._connection=t),t},e.prototype.refCount=function(){return ut()(this)},e}(R).prototype,dt={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:pt._subscribe},_isComplete:{value:pt._isComplete,writable:!0},getSubject:{value:pt.getSubject},connect:{value:pt.connect},refCount:{value:pt.refCount}},ft=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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}(j);function gt(t,e){return function(n){var r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new vt(r,e));var o=Object.create(n,dt);return o.source=n,o.subjectFactory=r,o}}var vt=function(){function t(t,e){this.subjectFactory=t,this.selector=e}return t.prototype.call=function(t,e){var n=this.selector,r=this.subjectFactory(),o=n(r).subscribe(t);return o.add(e.subscribe(r)),o},t}();function yt(){return new V}var mt="__parameters__";function _t(t,e,n){var r=function(t){return function(){for(var e=[],n=0;n ");else if("object"==typeof e){var i=[];for(var s in e)if(e.hasOwnProperty(s)){var a=e[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):Tt(a)))}o="{"+i.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+o+"]: "+t.replace(Xt,"\n ")}function ne(t,e){return new Error(ee(t,e,"StaticInjectorError"))}var re="ngDebugContext",oe="ngOriginalError",ie="ngErrorLogger",se=new Ut("AnalyzeForEntryComponents"),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({}),le=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt)}();function ue(t){return t[re]}function ce(t){return t[oe]}function he(t){for(var e=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return t.prototype.getInertBodyElement_XHR=function(t){t=""+t+"";try{t=encodeURI(t)}catch(r){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=""+t+"";try{var e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(n){return null}},t.prototype.getInertBodyElement_InertDocument=function(t){var e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},t.prototype.stripCustomNsAttrs=function(t){for(var e=t.attributes,n=e.length-1;0"),!0},t.prototype.endElement=function(t){var e=t.nodeName.toLowerCase();ke.hasOwnProperty(e)&&!xe.hasOwnProperty(e)&&(this.buf.push(""))},t.prototype.chars=function(t){this.buf.push(De(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}(),Me=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ne=/([^\#-~ |!])/g;function De(t){return t.replace(/&/g,"&").replace(Me,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ne,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}function je(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Ve=function(t){return 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",t}({}),Le=function(){return function(){}}(),ze=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ue=/^url\(([^)]+)\)$/,Fe=/([A-Z])/g;function He(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function Be(t){return!!t&&"function"==typeof t.then}function We(t){return!!t&&"function"==typeof t.subscribe}var Ge=null;function Ye(){if(!Ge){var t=Dt.Symbol;if(t&&t.iterator)Ge=t.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),n=0;n-1}(r)||"root"===o.providedIn&&r._def.isRoot))){var c=t._providers.length;return t._def.providers[c]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:c,token:e.token},t._providers[c]=Rr,t._providers[c]=Vr(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Vt(i)}}function Vr(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(jr(t,n[0]));case 2:return new e(jr(t,n[0]),jr(t,n[1]));case 3:return new e(jr(t,n[0]),jr(t,n[1]),jr(t,n[2]));default:for(var o=new Array(r),i=0;i=n.length)&&(e=n.length-1),e<0)return null;var r=n[e];return r.viewContainerParent=null,Hr(n,e),Xn.dirtyParentQueries(r),Ur(r),r}function zr(t,e,n){var r=e?dr(e,e.def.lastRenderRootNode):t.renderElement,o=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);Cr(n,2,o,i,void 0)}function Ur(t){Cr(t,3,null,null,void 0)}function Fr(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Hr(t,e){e>=t.length-1?t.pop():t.splice(e,1)}var Br=new Object;function Wr(t,e,n,r,o,i){return new Gr(t,e,n,r,o,i)}var Gr=function(t){function e(e,n,r,o,i,s){var a=t.call(this)||this;return a.selector=e,a.componentType=n,a._inputs=o,a._outputs=i,a.ngContentSelectors=s,a.viewDefFactory=r,a}return o(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){var t=[],e=this._inputs;for(var n in e)t.push({propName:n,templateName:e[n]});return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var t=[];for(var e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,r){if(!r)throw new Error("ngModule should be provided");var o=wr(this.viewDefFactory),i=o.nodes[0].element.componentProvider.nodeIndex,s=Xn.createRootView(t,e||[],n,o,r,Br),a=Zn(s,i).instance;return n&&s.renderer.setAttribute(qn(s,0).renderElement,"ng-version",_n.full),new Yr(s,new Qr(s),a)},e}(en),Yr=function(t){function e(e,n,r){var o=t.call(this)||this;return o._view=e,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o.hostView=n,o.changeDetectorRef=n,o.instance=r,o}return o(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return new pn(qn(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new to(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}(tn);function qr(t,e,n){return new Zr(t,e,n)}var Zr=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 pn(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new to(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=pr(t),t=t.parent;return t?new to(t,e):new to(this._view,null)},enumerable:!0,configurable:!0}),t.prototype.clear=function(){for(var t=this._embeddedViews.length-1;t>=0;t--){var e=Lr(this._data,t);Xn.destroyView(e)}},t.prototype.get=function(t){var e=this._embeddedViews[t];if(e){var n=new Qr(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 r=t.createEmbeddedView(e||{});return this.insert(r,n),r},t.prototype.createComponent=function(t,e,n,r,o){var i=n||this.parentInjector;o||t instanceof ln||(o=i.get(un));var s=t.create(i,r,void 0,o);return this.insert(s.hostView,e),s},t.prototype.insert=function(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n,r,o,i,s=t;return i=(n=this._data).viewContainer._embeddedViews,null==(r=e)&&(r=i.length),(o=s._view).viewContainerParent=this._view,Fr(i,r,o),function(t,e){var n=hr(e);if(n&&n!==t&&!(16&e.state)){e.state|=16;var r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(e),function(t,n){if(!(4&n.flags)){e.parent.def.nodeFlags|=4,n.flags|=4;for(var r=n.parent;r;)r.childFlags|=4,r=r.parent}}(0,e.parentNodeDef)}}(n,o),Xn.dirtyParentQueries(o),zr(n,r>0?i[r-1]:null,o),s.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,r,o,i,s,a=this._embeddedViews.indexOf(t._view);return o=e,s=(i=(n=this._data).viewContainer._embeddedViews)[r=a],Hr(i,r),null==o&&(o=i.length),Fr(i,o,s),Xn.dirtyParentQueries(s),Ur(s),zr(n,o>0?i[o-1]:null,s),t},t.prototype.indexOf=function(t){return this._embeddedViews.indexOf(t._view)},t.prototype.remove=function(t){var e=Lr(this._data,t);e&&Xn.destroyView(e)},t.prototype.detach=function(t){var e=Lr(this._data,t);return e?new Qr(e):null},t}();function $r(t){return new Qr(t)}var Qr=function(){function t(t){this._view=t,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){return Cr(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(){lr(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{Xn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}},t.prototype.checkNoChanges=function(){Xn.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)),Xn.destroyView(this._view)},t.prototype.detachFromAppRef=function(){this._appRef=null,Ur(this._view),Xn.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 Xr(t,e){return new Kr(t,e)}var Kr=function(t){function e(e,n){var r=t.call(this)||this;return r._parentView=e,r._def=n,r}return o(e,t),e.prototype.createEmbeddedView=function(t){return new Qr(Xn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new pn(qn(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),e}(Vn);function Jr(t,e){return new to(t,e)}var to=function(){function t(t,e){this.view=t,this.elDef=e}return t.prototype.get=function(t,e){return void 0===e&&(e=Gt.THROW_IF_NOT_FOUND),Xn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:tr(t)},e)},t}();function eo(t,e){var n=t.def.nodes[e];if(1&n.flags){var r=qn(t,n.nodeIndex);return n.element.template?r.template:r.renderElement}if(2&n.flags)return Yn(t,n.nodeIndex).renderText;if(20240&n.flags)return Zn(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function no(t){return new ro(t.renderer)}var ro=function(){function t(t){this.delegate=t}return t.prototype.selectRootElement=function(t){return this.delegate.selectRootElement(t)},t.prototype.createElement=function(t,e){var n=h(Pr(e),2),r=this.delegate.createElement(n[1],n[0]);return t&&this.delegate.appendChild(t,r),r},t.prototype.createViewRoot=function(t){return t},t.prototype.createTemplateAnchor=function(t){var e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e},t.prototype.createText=function(t,e){var n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n},t.prototype.projectNodes=function(t,e){for(var n=0;n0,e.provider.value,e.provider.deps);if(e.outputs.length)for(var r=0;r0,r=e.provider;switch(201347067&e.flags){case 512:return xo(t,e.parent,n,r.value,r.deps);case 1024:return function(t,e,n,r,o){var i=o.length;switch(i){case 0:return r();case 1:return r(Eo(t,e,n,o[0]));case 2:return r(Eo(t,e,n,o[0]),Eo(t,e,n,o[1]));case 3:return r(Eo(t,e,n,o[0]),Eo(t,e,n,o[1]),Eo(t,e,n,o[2]));default:for(var s=Array(i),a=0;a0&&(o=setTimeout(function(){r._callbacks=r._callbacks.filter(function(t){return t.timeoutId!==o}),t(r._didWork,r.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:o,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}(),gi=function(){function t(){this._applications=new Map,vi.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),vi.findTestabilityInTree(this,t,e)},s([a("design:paramtypes",[])],t)}(),vi=new(function(){function t(){}return t.prototype.addToWindow=function(t){},t.prototype.findTestabilityInTree=function(t,e,n){return null},t}()),yi=new Ut("AllowMultipleToken"),mi=function(){return function(t,e){this.name=t,this.token=e}}();function _i(t,e,n){void 0===n&&(n=[]);var r="Platform: "+e,o=new Ut(r);return function(e){void 0===e&&(e=[]);var i=bi();if(!i||i.injector.get(yi,!1))if(t)t(n.concat(e).concat({provide:o,useValue:!0}));else{var s=n.concat(e).concat({provide:o,useValue:!0});!function(t){if(pi&&!pi.destroyed&&!pi.injector.get(yi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");pi=t.get(wi);var e=t.get(Uo,null);e&&e.forEach(function(t){return t()})}(Gt.create({providers:s,name:r}))}return function(t){var e=bi();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}(o)}}function bi(){return pi&&!pi.destroyed?pi:null}var wi=function(){function t(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return t.prototype.bootstrapModuleFactory=function(t,e){var n,r=this,o="noop"===(n=e?e.ngZone:void 0)?new di:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ge()}),i=[{provide:si,useValue:o}];return o.run(function(){var e=Gt.create({providers:i,parent:r.injector,name:t.moduleType.name}),n=t.create(e),s=n.injector.get(pe,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy(function(){return Si(r._modules,n)}),o.runOutsideAngular(function(){return o.onError.subscribe({next:function(t){s.handleError(t)}})}),function(t,e,o){try{var i=((s=n.injector.get(jo)).runInitializers(),s.donePromise.then(function(){return r._moduleDoBootstrap(n),n}));return Be(i)?i.catch(function(n){throw e.runOutsideAngular(function(){return t.handleError(n)}),n}):i}catch(a){throw e.runOutsideAngular(function(){return t.handleError(a)}),a}var s}(s,o)})},t.prototype.bootstrapModule=function(t,e){var n=this;void 0===e&&(e=[]);var r=Ci({},e);return function(t,e,n){return t.get(Ko).createCompiler([e]).compileModuleAsync(n)}(this.injector,r,t).then(function(t){return n.bootstrapModuleFactory(t,r)})},t.prototype._moduleDoBootstrap=function(t){var e=t.injector.get(xi);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(function(t){return e.bootstrap(t)});else{if(!t.instance.ngDoBootstrap)throw new Error("The module "+Tt(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}();function Ci(t,e){return Array.isArray(e)?e.reduce(Ci,t):i({},t,e)}var xi=function(){function t(t,e,n,r,o,i){var s=this;this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ge(),this._zone.onMicrotaskEmpty.subscribe({next:function(){s._zone.run(function(){s.tick()})}});var a=new R(function(t){s._stable=s._zone.isStable&&!s._zone.hasPendingMacrotasks&&!s._zone.hasPendingMicrotasks,s._zone.runOutsideAngular(function(){t.next(s._stable),t.complete()})}),l=new R(function(t){var e;s._zone.runOutsideAngular(function(){e=s._zone.onStable.subscribe(function(){si.assertNotInAngularZone(),ii(function(){s._stable||s._zone.hasPendingMacrotasks||s._zone.hasPendingMicrotasks||(s._stable=!0,t.next(!0))})})});var n=s._zone.onUnstable.subscribe(function(){si.assertInAngularZone(),s._stable&&(s._stable=!1,s._zone.runOutsideAngular(function(){t.next(!1)}))});return function(){e.unsubscribe(),n.unsubscribe()}});this.isStable=lt(a,l.pipe(function(t){return ut()(gt(yt)(t))}))}var e;return e=t,t.prototype.bootstrap=function(t,e){var n,r=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 en?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);var o=n instanceof ln?null:this._injector.get(un),i=n.create(Gt.NULL,[],e||n.selector,o);i.onDestroy(function(){r._unloadComponent(i)});var s=i.injector.get(fi,null);return s&&i.injector.get(gi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ge()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i},t.prototype.tick=function(){var t,n,r,o,i=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var s=e._tickScope();try{this._runningTick=!0;try{for(var a=c(this._views),l=a.next();!l.done;l=a.next())l.value.detectChanges()}catch(p){t={error:p}}finally{try{l&&!l.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}if(this._enforceNoNewChanges)try{for(var u=c(this._views),h=u.next();!h.done;h=u.next())h.value.checkNoChanges()}catch(d){r={error:d}}finally{try{h&&!h.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}catch(f){this._zone.runOutsideAngular(function(){return i._exceptionHandler.handleError(f)})}finally{this._runningTick=!1,ri(s)}},t.prototype.attachView=function(t){var e=t;this._views.push(e),e.attachToAppRef(this)},t.prototype.detachView=function(t){var e=t;Si(this._views,e),e.detachFromAppRef()},t.prototype._loadComponent=function(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Ho,[]).concat(this._bootstrapListeners).forEach(function(e){return e(t)})},t.prototype._unloadComponent=function(t){this.detachView(t.hostView),Si(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._tickScope=ni("ApplicationRef#tick()"),t}();function Si(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}var Ei=function(){return function(){}}(),Oi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},ki=function(){function t(t,e){this._compiler=t,this._config=e||Oi}return t.prototype.load=function(t){return this._compiler instanceof Xo?this.loadFactory(t):this.loadAndCompile(t)},t.prototype.loadAndCompile=function(t){var e=this,r=h(t.split("#"),2),o=r[0],i=r[1];return void 0===i&&(i="default"),n("zn8P")(o).then(function(t){return t[i]}).then(function(t){return Pi(t,o,i)}).then(function(t){return e._compiler.compileModuleAsync(t)})},t.prototype.loadFactory=function(t){var e=h(t.split("#"),2),r=e[0],o=e[1],i="NgFactory";return void 0===o&&(o="default",i=""),n("zn8P")(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(t){return t[o+i]}).then(function(t){return Pi(t,r,o)})},t}();function Pi(t,e,n){if(!t)throw new Error("Cannot find '"+n+"' in '"+e+"'");return t}var Ti=function(){return function(t,e){this.name=t,this.callback=e}}(),Ii=function(){function t(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Ri&&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}(),Ri=function(t){function e(e,n,r){var o=t.call(this,e,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=e,o}return o(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,p([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,r){e.childNodes.forEach(function(e){e instanceof Ri&&(n(e)&&r.push(e),t(e,n,r))})}(this,t,e),e},e.prototype.queryAllNodes=function(t){var e=[];return function t(e,n,r){e instanceof Ri&&e.childNodes.forEach(function(e){n(e)&&r.push(e),e instanceof Ri&&t(e,n,r)})}(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}(Ii),Ai=new Map,Mi=function(t){return Ai.get(t)||null};function Ni(t){Ai.set(t.nativeNode,t)}var Di=_i(null,"core",[{provide:Fo,useValue:"unknown"},{provide:wi,deps:[Gt]},{provide:gi,deps:[]},{provide:Bo,deps:[]}]),ji=new Ut("LocaleId");function Vi(){return Dn}function Li(){return jn}function zi(t){return t||"en-US"}function Ui(t){var e=[];return t.onStable.subscribe(function(){for(;e.length;)e.pop()()}),function(t){e.push(t)}}var Fi=function(){return function(t){}}();function Hi(t,e,n,r,o,i){t|=1;var s=yr(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s.matchedQueries,matchedQueryIds:s.matchedQueryIds,references:s.references,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?wr(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Kn},provider:null,text:null,query:null,ngContent:null}}function Bi(t,e,n,r,o,i,s,a,l,u,c,p){var d;void 0===s&&(s=[]),u||(u=Kn);var f=yr(n),g=f.matchedQueries,v=f.references,y=f.matchedQueryIds,m=null,_=null;i&&(m=(d=h(Pr(i),2))[0],_=d[1]),a=a||[];for(var b=new Array(a.length),w=0;w0)u=g,ss(g)||(c=g);else for(;u&&f===u.nodeIndex+u.childCount;){var m=u.parent;m&&(m.childFlags|=u.childFlags,m.childMatchedQueries|=u.childMatchedQueries),c=(u=m)&&ss(u)?u.renderParent:u}}return{factory:null,nodeFlags:s,rootNodeFlags:a,nodeMatchedQueries:l,flags:t,nodes:e,updateDirectives:n||Kn,updateRenderer:r||Kn,handleEvent:function(t,n,r,o){return e[n].element.handleEvent(t,r,o)},bindingCount:o,outputCount:i,lastRenderRootNode:d}}function ss(t){return 0!=(1&t.flags)&&null===t.element.name}function as(t,e,n){var r=e.element&&e.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.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 o=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=o&&e.nodeIndex+e.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.nodeIndex+"!")}}function ls(t,e,n,r){var o=hs(t.root,t.renderer,t,e,n);return ps(o,t.component,r),ds(o),o}function us(t,e,n){var r=hs(t,t.renderer,null,null,e);return ps(r,n,n),ds(r),r}function cs(t,e,n,r){var o,i=e.element.componentRendererType;return o=i?t.root.rendererFactory.createRenderer(r,i):t.root.renderer,hs(t.root,o,t,e.element.componentProvider,n)}function hs(t,e,n,r,o){var i=new Array(o.nodes.length),s=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(o.bindingCount),disposables:s,initIndex:-1}}function ps(t,e,n){t.component=e,t.context=n}function ds(t){var e;fr(t)&&(e=qn(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);for(var n=t.def,r=t.nodes,o=0;o0&&qi(t,e,0,n)&&(d=!0),p>1&&qi(t,e,1,r)&&(d=!0),p>2&&qi(t,e,2,o)&&(d=!0),p>3&&qi(t,e,3,i)&&(d=!0),p>4&&qi(t,e,4,s)&&(d=!0),p>5&&qi(t,e,5,a)&&(d=!0),p>6&&qi(t,e,6,l)&&(d=!0),p>7&&qi(t,e,7,u)&&(d=!0),p>8&&qi(t,e,8,c)&&(d=!0),p>9&&qi(t,e,9,h)&&(d=!0),d}(t,e,n,r,o,i,s,a,l,u,c,h);case 2:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=!1,d=e.bindings,f=d.length;if(f>0&&sr(t,e,0,n)&&(p=!0),f>1&&sr(t,e,1,r)&&(p=!0),f>2&&sr(t,e,2,o)&&(p=!0),f>3&&sr(t,e,3,i)&&(p=!0),f>4&&sr(t,e,4,s)&&(p=!0),f>5&&sr(t,e,5,a)&&(p=!0),f>6&&sr(t,e,6,l)&&(p=!0),f>7&&sr(t,e,7,u)&&(p=!0),f>8&&sr(t,e,8,c)&&(p=!0),f>9&&sr(t,e,9,h)&&(p=!0),p){var g=e.text.prefix;f>0&&(g+=os(n,d[0])),f>1&&(g+=os(r,d[1])),f>2&&(g+=os(o,d[2])),f>3&&(g+=os(i,d[3])),f>4&&(g+=os(s,d[4])),f>5&&(g+=os(a,d[5])),f>6&&(g+=os(l,d[6])),f>7&&(g+=os(u,d[7])),f>8&&(g+=os(c,d[8])),f>9&&(g+=os(h,d[9]));var v=Yn(t,e.nodeIndex).renderText;t.renderer.setValue(v,g)}return p}(t,e,n,r,o,i,s,a,l,u,c,h);case 16384:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=Zn(t,e.nodeIndex),d=p.instance,f=!1,g=void 0,v=e.bindings.length;return v>0&&ir(t,e,0,n)&&(f=!0,g=ko(t,p,e,0,n,g)),v>1&&ir(t,e,1,r)&&(f=!0,g=ko(t,p,e,1,r,g)),v>2&&ir(t,e,2,o)&&(f=!0,g=ko(t,p,e,2,o,g)),v>3&&ir(t,e,3,i)&&(f=!0,g=ko(t,p,e,3,i,g)),v>4&&ir(t,e,4,s)&&(f=!0,g=ko(t,p,e,4,s,g)),v>5&&ir(t,e,5,a)&&(f=!0,g=ko(t,p,e,5,a,g)),v>6&&ir(t,e,6,l)&&(f=!0,g=ko(t,p,e,6,l,g)),v>7&&ir(t,e,7,u)&&(f=!0,g=ko(t,p,e,7,u,g)),v>8&&ir(t,e,8,c)&&(f=!0,g=ko(t,p,e,8,c,g)),v>9&&ir(t,e,9,h)&&(f=!0,g=ko(t,p,e,9,h,g)),g&&d.ngOnChanges(g),65536&e.flags&&Gn(t,256,e.nodeIndex)&&d.ngOnInit(),262144&e.flags&&d.ngDoCheck(),f}(t,e,n,r,o,i,s,a,l,u,c,h);case 32:case 64:case 128:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=e.bindings,d=!1,f=p.length;if(f>0&&sr(t,e,0,n)&&(d=!0),f>1&&sr(t,e,1,r)&&(d=!0),f>2&&sr(t,e,2,o)&&(d=!0),f>3&&sr(t,e,3,i)&&(d=!0),f>4&&sr(t,e,4,s)&&(d=!0),f>5&&sr(t,e,5,a)&&(d=!0),f>6&&sr(t,e,6,l)&&(d=!0),f>7&&sr(t,e,7,u)&&(d=!0),f>8&&sr(t,e,8,c)&&(d=!0),f>9&&sr(t,e,9,h)&&(d=!0),d){var g=$n(t,e.nodeIndex),v=void 0;switch(201347067&e.flags){case 32:v=new Array(p.length),f>0&&(v[0]=n),f>1&&(v[1]=r),f>2&&(v[2]=o),f>3&&(v[3]=i),f>4&&(v[4]=s),f>5&&(v[5]=a),f>6&&(v[6]=l),f>7&&(v[7]=u),f>8&&(v[8]=c),f>9&&(v[9]=h);break;case 64:v={},f>0&&(v[p[0].name]=n),f>1&&(v[p[1].name]=r),f>2&&(v[p[2].name]=o),f>3&&(v[p[3].name]=i),f>4&&(v[p[4].name]=s),f>5&&(v[p[5].name]=a),f>6&&(v[p[6].name]=l),f>7&&(v[p[7].name]=u),f>8&&(v[p[8].name]=c),f>9&&(v[p[9].name]=h);break;case 128:var y=n;switch(f){case 1:v=y.transform(n);break;case 2:v=y.transform(r);break;case 3:v=y.transform(r,o);break;case 4:v=y.transform(r,o,i);break;case 5:v=y.transform(r,o,i,s);break;case 6:v=y.transform(r,o,i,s,a);break;case 7:v=y.transform(r,o,i,s,a,l);break;case 8:v=y.transform(r,o,i,s,a,l,u);break;case 9:v=y.transform(r,o,i,s,a,l,u,c);break;case 10:v=y.transform(r,o,i,s,a,l,u,c,h)}}g.value=v}return d}(t,e,n,r,o,i,s,a,l,u,c,h);default:throw"unreachable"}}(t,e,r,o,i,s,a,l,u,c,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){for(var r=!1,o=0;o0&&ar(t,e,0,n),p>1&&ar(t,e,1,r),p>2&&ar(t,e,2,o),p>3&&ar(t,e,3,i),p>4&&ar(t,e,4,s),p>5&&ar(t,e,5,a),p>6&&ar(t,e,6,l),p>7&&ar(t,e,7,u),p>8&&ar(t,e,8,c),p>9&&ar(t,e,9,h)}(t,e,r,o,i,s,a,l,u,c,h,p):function(t,e,n){for(var r=0;r0){var i=new Set(t.modules);Ds.forEach(function(e,r){if(i.has(kt(r).providedIn)){var o={token:r,flags:e.flags|(n?4096:0),deps:mr(e.deps),value:e.value,index:t.providers.length};t.providers.push(o),t.providersByKey[tr(r)]=o}})}}(t=t.factory(function(){return Kn})),t):t}(r))}var Ns=new Map,Ds=new Map,js=new Map;function Vs(t){var e;Ns.set(t.token,t),"function"==typeof t.token&&(e=kt(t.token))&&"function"==typeof e.providedIn&&Ds.set(t.token,t)}function Ls(t,e){var n=wr(e.viewDefFactory),r=wr(n.nodes[0].element.componentView);js.set(t,r)}function zs(){Ns.clear(),Ds.clear(),js.clear()}function Us(t){if(0===Ns.size)return t;var e=function(t){for(var e=[],n=null,r=0;r0?fa(t,e[n]):e[n]:null}var ga=n("Wgwc"),va=function(){function t(){if(this.build=ga(),!t.init){var e=ga();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][APP] "+pa+" - "+t+" | "+e):console[n].apply(console,["%c[ACA]%c[APP] %c"+pa+" - "+t+" | "+e].concat(["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0",t.init=!1,t}(),ya=function(){return function(){this.show_menu=!0}}(),ma=function(){return function(){}}(),_a=new Ut("Location Initialized"),ba=function(){return function(){}}(),wa=new Ut("appBaseHref"),Ca=function(){function t(t,n){var r=this;this._subject=new Ao,this._urlChangeListeners=[],this._platformStrategy=t;var o=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=e.stripTrailingSlash(xa(o)),this._platformStrategy.onPopState(function(t){r._subject.emit({url:r.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,n){return void 0===n&&(n=""),this.path()==this.normalize(t+e.normalizeQueryParams(n))},t.prototype.normalize=function(t){return e.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,xa(t)))},t.prototype.prepareExternalUrl=function(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)},t.prototype.go=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.pushState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},t.prototype.replaceState=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.replaceState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},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=function(t){return t&&"?"!==t[0]?"?"+t:t},t.joinWithSlash=function(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},t.stripTrailingSlash=function(t){var e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)},t}();function xa(t){return t.replace(/\/index.html$/,"")}var Sa=function(t){function e(e,n){var r=t.call(this)||this;return r._platformLocation=e,r._baseHref="",null!=n&&(r._baseHref=n),r}return o(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=Ca.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(ba),Ea=function(t){function e(e,n){var r=t.call(this)||this;if(r._platformLocation=e,null==n&&(n=r._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 r._baseHref=n,r}return o(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 Ca.joinWithSlash(this._baseHref,t)},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.pathname+Ca.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?""+e+n:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(ba),Oa=void 0,ka=["en",[["a","p"],["AM","PM"],Oa],[["AM","PM"],Oa,Oa],[["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"]],Oa,[["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"]],Oa,[["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}",Oa,"{1} 'at' {0}",Oa],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}],Pa={},Ta=function(t){return 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",t}({}),Ia=new Ut("UseV4Plurals"),Ra=function(){return function(){}}(),Aa=function(t){function e(e,n){var r=t.call(this)||this;return r.locale=e,r.deprecatedPluralFn=n,r}return o(e,t),e.prototype.getPluralCategory=function(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){var e=t.toLowerCase().replace(/_/g,"-"),n=Pa[e];if(n)return n;var r=e.split("-")[0];if(n=Pa[r])return n;if("en"===r)return ka;throw new Error('Missing locale data for the locale "'+t+'".')}(t)[18]}(e||this.locale)(t)){case Ta.Zero:return"zero";case Ta.One:return"one";case Ta.Two:return"two";case Ta.Few:return"few";case Ta.Many:return"many";default:return"other"}},e}(Ra);function Ma(t,e){var n,r;e=encodeURIComponent(e);try{for(var o=c(t.split(";")),i=o.next();!i.done;i=o.next()){var s=i.value,a=s.indexOf("="),l=h(-1==a?[s,""]:[s.slice(0,a),s.slice(a+1)],2),u=l[1];if(l[0].trim()===e)return decodeURIComponent(u)}}catch(p){n={error:p}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}var Na=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(un);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(n.injector)}else this._moduleRef=null;var r=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(sn)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(r,this._viewContainerRef.length,e,this.ngComponentOutletContent)}},t.prototype.ngOnDestroy=function(){this._moduleRef&&this._moduleRef.destroy()},t}(),Da=function(){function t(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}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}(),ja=function(){function t(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,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){ge()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(t)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#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(r){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;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,r,o){if(null==t.previousIndex){var i=e._viewContainer.createEmbeddedView(e._template,new Da(null,e._ngForOf,-1,-1),o),s=new Va(t,i);n.push(s)}else null==o?e._viewContainer.remove(r):(i=e._viewContainer.get(r),e._viewContainer.move(i,o),s=new Va(t,i),n.push(s))});for(var r=0;r0)for(var n=this.count>=this.total?this.total:this.count,r=this.ring,o=0;o=2;return function(r){return r.pipe(t?hl(function(e,n){return t(e,n,r)}):st,vl(1),n?Sl(e):Cl(function(){return new il}))}}function Pl(t){return function(e){var n=new Tl(t),r=e.lift(n);return n.caught=r}}var Tl=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new Il(t,this.selector,this.caught))},t}(),Il=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.selector=n,o.caught=r,o}return o(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(o){return void t.prototype.error.call(this,o)}this._unsubscribeAndRecycle();var r=new U(this,void 0,void 0);this.add(r),Q(this,n,void 0,void 0,r)}},e}(X);function Rl(t){return function(e){return 0===t?tl():e.lift(new Al(t))}}var Al=function(){function t(t){if(this.total=t,this.total<0)throw new gl}return t.prototype.call=function(t,e){return e.subscribe(new Ml(t,this.total))},t}(),Ml=function(t){function e(e,n){var r=t.call(this,e)||this;return r.total=n,r.count=0,r}return o(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}(E);function Nl(t,e){var n=arguments.length>=2;return function(r){return r.pipe(t?hl(function(e,n){return t(e,n,r)}):st,Rl(1),n?Sl(e):Cl(function(){return new il}))}}var Dl=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new jl(t,this.predicate,this.thisArg,this.source))},t}(),jl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.predicate=n,i.thisArg=r,i.source=o,i.index=0,i.thisArg=r||i,i}return o(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(E);function Vl(t,e){return"function"==typeof e?function(n){return n.pipe(Vl(function(n,r){return nt(t(n,r)).pipe(K(function(t,o){return e(n,t,r,o)}))}))}:function(e){return e.lift(new Ll(t))}}var Ll=function(){function t(t){this.project=t}return t.prototype.call=function(t,e){return e.subscribe(new zl(t,this.project))},t}(),zl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.project=n,r.index=0,r}return o(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(r){return void this.destination.error(r)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var r=this.innerSubscription;r&&r.unsubscribe();var o=new U(this,void 0,void 0);this.destination.add(o),this.innerSubscription=Q(this,t,e,n,o)},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,r,o){this.destination.next(e)},e}(X);function Ul(){for(var t=[],e=0;e0?et(t,n):tl(n):el(t[0]),e)}}function Hl(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new Bl(t,e,n))}}var Bl=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new Wl(t,this.accumulator,this.seed,this.hasSeed))},t}(),Wl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.accumulator=n,i._seed=r,i.hasSeed=o,i.index=0,i}return o(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(r){this.destination.error(r)}this.seed=e,this.destination.next(e)},e}(E);function Gl(t,e){return rt(t,e,1)}var Yl=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new ql(t,this.callback))},t}(),ql=function(t){function e(e,n){var r=t.call(this,e)||this;return r.add(new m(n)),r}return o(e,t),e}(E),Zl=null;function $l(){return Zl}var Ql,Xl=function(t){function e(){var e=t.call(this)||this;e._animationPrefix=null,e._transitionEnd=null;try{var n=e.createElement("div",document);if(null!=e.getStyle(n,"animationName"))e._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o0},e.prototype.tagName=function(t){return t.tagName},e.prototype.attributeMap=function(t){for(var e=new Map,n=t.attributes,r=0;r0;s||(s=t[i]=[]);var l=Du(e)?Zone.root:Zone.current;if(0===s.length)s.push({zone:l,handler:o});else{for(var u=!1,c=0;c-1},e}(fu),Bu=["alt","control","meta","shift"],Wu={alt:function(t){return t.altKey},control:function(t){return t.ctrlKey},meta:function(t){return t.metaKey},shift:function(t){return t.shiftKey}},Gu=function(t){function e(e){return t.call(this,e)||this}var n;return o(e,t),n=e,e.prototype.supports=function(t){return null!=n.parseEventName(t)},e.prototype.addEventListener=function(t,e,r){var o=n.parseEventName(e),i=n.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return $l().onAndCancel(t,o.domEventName,i)})},e.parseEventName=function(t){var e=t.toLowerCase().split("."),r=e.shift();if(0===e.length||"keydown"!==r&&"keyup"!==r)return null;var o=n._normalizeKey(e.pop()),i="";if(Bu.forEach(function(t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),i+=t+".")}),i+=o,0!=e.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s},e.getEventFullKey=function(t){var e="",n=$l().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),Bu.forEach(function(r){r!=n&&(0,Wu[r])(t)&&(e+=r+".")}),e+=n},e.eventCallback=function(t,e,r){return function(o){n.getEventFullKey(o)===t&&r.runGuarded(function(){return e(o)})}},e._normalizeKey=function(t){switch(t){case"esc":return"escape";default:return t}},e}(fu),Yu=function(){return function(){}}(),qu=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n}return o(e,t),e.prototype.sanitize=function(t,e){if(null==e)return null;switch(t){case Ve.NONE:return e;case Ve.HTML:return e instanceof $u?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){var n=null;try{Ce=Ce||new ve(t);var r=e?String(e):"";n=Ce.getInertBodyElement(r);var o=5,i=r;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=Ce.getInertBodyElement(r)}while(r!==i);var s=new Ae,a=s.sanitizeChildren(je(n)||n);return ge()&&s.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n)for(var l=je(n)||n;l.firstChild;)l.removeChild(l.firstChild)}}(this._doc,String(e)));case Ve.STYLE:return e instanceof Qu?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";var e=t.match(Ue);return e&&_e(e[1])===e[1]||t.match(ze)&&function(t){for(var e=!0,n=!0,r=0;rt.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||r.length0?t[t.length-1]:null}function Vc(t,e){for(var n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Lc(t){return We(t)?t:Be(t)?nt(Promise.resolve(t)):nl(t)}function zc(t,e,n){return n?function(t,e){return Nc(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!Bc(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(var r in n.children){if(!e.children[r])return!1;if(!t(e.children[r],n.children[r]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(function(n){return e[n]===t[n]})}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,r,o){if(n.segments.length>o.length)return!!Bc(s=n.segments.slice(0,o.length),o)&&!r.hasChildren();if(n.segments.length===o.length){if(!Bc(n.segments,o))return!1;for(var i in r.children){if(!n.children[i])return!1;if(!t(n.children[i],r.children[i]))return!1}return!0}var s=o.slice(0,n.segments.length),a=o.slice(n.segments.length);return!!Bc(n.segments,s)&&!!n.children[xc]&&e(n.children[xc],r,a)}(e,n,n.segments)}(t.root,e.root)}var Uc=function(){function t(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}return Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=Ec(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return qc.serialize(this)},t}(),Fc=function(){function t(t,e){var n=this;this.segments=t,this.children=e,this.parent=null,Vc(e,function(t,e){return t.parent=n})}return t.prototype.hasChildren=function(){return this.numberOfChildren>0},Object.defineProperty(t.prototype,"numberOfChildren",{get:function(){return Object.keys(this.children).length},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return Zc(this)},t}(),Hc=function(){function t(t,e){this.path=t,this.parameters=e}return Object.defineProperty(t.prototype,"parameterMap",{get:function(){return this._parameterMap||(this._parameterMap=Ec(this.parameters)),this._parameterMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return th(this)},t}();function Bc(t,e){return t.length===e.length&&t.every(function(t,n){return t.path===e[n].path})}function Wc(t,e){var n=[];return Vc(t.children,function(t,r){r===xc&&(n=n.concat(e(t,r)))}),Vc(t.children,function(t,r){r!==xc&&(n=n.concat(e(t,r)))}),n}var Gc=function(){return function(){}}(),Yc=function(){function t(){}return t.prototype.parse=function(t){var e=new ih(t);return new Uc(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())},t.prototype.serialize=function(t){var e,n;return"/"+function t(e,n){if(!e.hasChildren())return Zc(e);if(n){var r=e.children[xc]?t(e.children[xc],!1):"",o=[];return Vc(e.children,function(e,n){n!==xc&&o.push(n+":"+t(e,!1))}),o.length>0?r+"("+o.join("//")+")":r}var i=Wc(e,function(n,r){return r===xc?[t(e.children[xc],!1)]:[r+":"+t(n,!1)]});return Zc(e)+"/("+i.join("//")+")"}(t.root,!0)+(e=t.queryParams,(n=Object.keys(e).map(function(t){var n=e[t];return Array.isArray(n)?n.map(function(e){return Qc(t)+"="+Qc(e)}).join("&"):Qc(t)+"="+Qc(n)})).length?"?"+n.join("&"):"")+("string"==typeof t.fragment?"#"+encodeURI(t.fragment):"")},t}(),qc=new Yc;function Zc(t){return t.segments.map(function(t){return th(t)}).join("/")}function $c(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Qc(t){return $c(t).replace(/%3B/gi,";")}function Xc(t){return $c(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Kc(t){return decodeURIComponent(t)}function Jc(t){return Kc(t.replace(/\+/g,"%20"))}function th(t){return""+Xc(t.path)+(e=t.parameters,Object.keys(e).map(function(t){return";"+Xc(t)+"="+Xc(e[t])}).join(""));var e}var eh=/^[^\/()?;=#]+/;function nh(t){var e=t.match(eh);return e?e[0]:""}var rh=/^[^=?&#]+/,oh=/^[^?&#]+/,ih=function(){function t(t){this.url=t,this.remaining=t}return t.prototype.parseRootSegment=function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Fc([],{}):new Fc([],this.parseChildren())},t.prototype.parseQueryParams=function(){var t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t},t.prototype.parseFragment=function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null},t.prototype.parseChildren=function(){if(""===this.remaining)return{};this.consumeOptional("/");var t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());var e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));var n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[xc]=new Fc(t,e)),n},t.prototype.parseSegment=function(){var t=nh(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '"+this.remaining+"'.");return this.capture(t),new Hc(Kc(t),this.parseMatrixParams())},t.prototype.parseMatrixParams=function(){for(var t={};this.consumeOptional(";");)this.parseParam(t);return t},t.prototype.parseParam=function(t){var e=nh(this.remaining);if(e){this.capture(e);var n="";if(this.consumeOptional("=")){var r=nh(this.remaining);r&&this.capture(n=r)}t[Kc(e)]=Kc(n)}},t.prototype.parseQueryParam=function(t){var e,n=(e=this.remaining.match(rh))?e[0]:"";if(n){this.capture(n);var r="";if(this.consumeOptional("=")){var o=function(t){var e=t.match(oh);return e?e[0]:""}(this.remaining);o&&this.capture(r=o)}var i=Jc(n),s=Jc(r);if(t.hasOwnProperty(i)){var a=t[i];Array.isArray(a)||(t[i]=a=[a]),a.push(s)}else t[i]=s}},t.prototype.parseParens=function(t){var e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var n=nh(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error("Cannot parse url '"+this.url+"'");var o=void 0;n.indexOf(":")>-1?(o=n.substr(0,n.indexOf(":")),this.capture(o),this.capture(":")):t&&(o=xc);var i=this.parseChildren();e[o]=1===Object.keys(i).length?i[xc]:new Fc([],i),this.consumeOptional("//")}return e},t.prototype.peekStartsWith=function(t){return this.remaining.startsWith(t)},t.prototype.consumeOptional=function(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)},t.prototype.capture=function(t){if(!this.consumeOptional(t))throw new Error('Expected "'+t+'".')},t}(),sh=function(){function t(t){this._root=t}return Object.defineProperty(t.prototype,"root",{get:function(){return this._root.value},enumerable:!0,configurable:!0}),t.prototype.parent=function(t){var e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null},t.prototype.children=function(t){var e=ah(t,this._root);return e?e.children.map(function(t){return t.value}):[]},t.prototype.firstChild=function(t){var e=ah(t,this._root);return e&&e.children.length>0?e.children[0].value:null},t.prototype.siblings=function(t){var e=lh(t,this._root);return e.length<2?[]:e[e.length-2].children.map(function(t){return t.value}).filter(function(e){return e!==t})},t.prototype.pathFromRoot=function(t){return lh(t,this._root).map(function(t){return t.value})},t}();function ah(t,e){var n,r;if(t===e.value)return e;try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=ah(t,i.value);if(s)return s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}function lh(t,e){var n,r;if(t===e.value)return[e];try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=lh(t,i.value);if(s.length)return s.unshift(e),s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return[]}var uh=function(){function t(t,e){this.value=t,this.children=e}return t.prototype.toString=function(){return"TreeNode("+this.value+")"},t}();function ch(t){var e={};return t&&t.children.forEach(function(t){return e[t.value.outlet]=t}),e}var hh=function(t){function e(e,n){var r=t.call(this,e)||this;return r.snapshot=n,yh(r,e),r}return o(e,t),e.prototype.toString=function(){return this.snapshot.toString()},e}(sh);function ph(t,e){var n=function(t,e){var n=new gh([],{},{},"",{},xc,e,null,t.root,-1,{});return new vh("",new uh(n,[]))}(t,e),r=new rl([new Hc("",{})]),o=new rl({}),i=new rl({}),s=new rl({}),a=new rl(""),l=new dh(r,o,s,a,i,xc,e,n.root);return l.snapshot=n.root,new hh(new uh(l,[]),n)}var dh=function(){function t(t,e,n,r,o,i,s,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this._futureSnapshot=a}return Object.defineProperty(t.prototype,"routeConfig",{get:function(){return this._futureSnapshot.routeConfig},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=this.params.pipe(K(function(t){return Ec(t)}))),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(function(t){return Ec(t)}))),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return this.snapshot?this.snapshot.toString():"Future("+this._futureSnapshot+")"},t}();function fh(t,e){void 0===e&&(e="emptyOnly");var n=t.pathFromRoot,r=0;if("always"!==e)for(r=n.length-1;r>=1;){var o=n[r],s=n[r-1];if(o.routeConfig&&""===o.routeConfig.path)r--;else{if(s.component)break;r--}}return function(t){return t.reduce(function(t,e){return{params:i({},t.params,e.params),data:i({},t.data,e.data),resolve:i({},t.resolve,e._resolvedData)}},{params:{},data:{},resolve:{}})}(n.slice(r))}var gh=function(){function t(t,e,n,r,o,i,s,a,l,u,c){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this.routeConfig=a,this._urlSegment=l,this._lastPathIndex=u,this._resolve=c}return Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=Ec(this.params)),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=Ec(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return"Route(url:'"+this.url.map(function(t){return t.toString()}).join("/")+"', path:'"+(this.routeConfig?this.routeConfig.path:"")+"')"},t}(),vh=function(t){function e(e,n){var r=t.call(this,n)||this;return r.url=e,yh(r,n),r}return o(e,t),e.prototype.toString=function(){return mh(this._root)},e}(sh);function yh(t,e){e.value._routerState=t,e.children.forEach(function(e){return yh(t,e)})}function mh(t){var e=t.children.length>0?" { "+t.children.map(mh).join(", ")+" } ":"";return""+t.value+e}function _h(t){if(t.snapshot){var e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Nc(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Nc(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(var n=0;n0&&wh(n[0]))throw new Error("Root segment cannot have matrix parameters");var r=n.find(function(t){return"object"==typeof t&&null!=t&&t.outlets});if(r&&r!==jc(n))throw new Error("{outlets:{}} has to be the last command")}return t.prototype.toRoot=function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]},t}(),Sh=function(){return function(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}();function Eh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[xc]:""+t}function Oh(t,e,n){if(t||(t=new Fc([],{})),0===t.segments.length&&t.hasChildren())return kh(t,e,n);var r=function(t,e,n){for(var r=0,o=e,i={match:!1,pathIndex:0,commandIndex:0};o=n.length)return i;var s=t.segments[o],a=Eh(n[r]),l=r0&&void 0===a)break;if(a&&l&&"object"==typeof l&&void 0===l.outlets){if(!Rh(a,l,s))return i;r+=2}else{if(!Rh(a,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(t,e,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndex0?new Fc([],((r={})[xc]=t,r)):t;return new Uc(o,e,n)},t.prototype.expandSegmentGroup=function(t,e,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(K(function(t){return new Fc([],t)})):this.expandSegment(t,n,e,n.segments,r,!0)},t.prototype.expandChildren=function(t,e,n){var r=this;return function(n,o){if(0===Object.keys(n).length)return nl({});var i=[],s=[],a={};return Vc(n,function(n,o){var l,u,c=(l=o,u=n,r.expandSegmentGroup(t,e,u,l)).pipe(K(function(t){return a[o]=t}));o===xc?i.push(c):s.push(c)}),nl.apply(null,i.concat(s)).pipe(cl(),kl(),K(function(){return a}))}(n.children)},t.prototype.expandSegment=function(t,e,n,r,o,i){var s=this;return nl.apply(void 0,p(n)).pipe(K(function(a){return s.expandSegmentAgainstRoute(t,e,n,a,r,o,i).pipe(Pl(function(t){if(t instanceof jh)return nl(null);throw t}))}),cl(),Nl(function(t){return!!t}),Pl(function(t,n){if(t instanceof il||"EmptyError"===t.name){if(s.noLeftoversInUrl(e,r,o))return nl(new Fc([],{}));throw new jh(e)}throw t}))},t.prototype.noLeftoversInUrl=function(t,e,n){return 0===e.length&&!t.children[n]},t.prototype.expandSegmentAgainstRoute=function(t,e,n,r,o,i,s){return Gh(r)!==i?Lh(e):void 0===r.redirectTo?this.matchSegmentAgainstRoute(t,e,r,o):s&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i):Lh(e)},t.prototype.expandSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,r,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i)},t.prototype.expandWildCardWithParamsAgainstRouteUsingRedirect=function(t,e,n,r){var o=this,i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?zh(i):this.lineralizeSegments(n,i).pipe(rt(function(n){var i=new Fc(n,{});return o.expandSegment(t,i,e,n,r,!1)}))},t.prototype.expandRegularSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){var s=this,a=Hh(e,r,o),l=a.consumedSegments,u=a.lastChild,c=a.positionalParamSegments;if(!a.matched)return Lh(e);var h=this.applyRedirectCommands(l,r.redirectTo,c);return r.redirectTo.startsWith("/")?zh(h):this.lineralizeSegments(r,h).pipe(rt(function(r){return s.expandSegment(t,e,n,r.concat(o.slice(u)),i,!1)}))},t.prototype.matchSegmentAgainstRoute=function(t,e,n,r){var o=this;if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(K(function(t){return n._loadedConfig=t,new Fc(r,{})})):nl(new Fc(r,{}));var s=Hh(e,n,r),a=s.consumedSegments,l=s.lastChild;if(!s.matched)return Lh(e);var u=r.slice(l);return this.getChildConfig(t,n,r).pipe(rt(function(t){var n=t.module,r=t.routes,s=function(t,e,n,r){return n.length>0&&function(t,e,n){return r.some(function(n){return Wh(t,e,n)&&Gh(n)!==xc})}(t,n)?{segmentGroup:Bh(new Fc(e,function(t,e){var n,r,o={};o[xc]=e;try{for(var i=c(t),s=i.next();!s.done;s=i.next()){var a=s.value;""===a.path&&Gh(a)!==xc&&(o[Gh(a)]=new Fc([],{}))}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o}(r,new Fc(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return r.some(function(n){return Wh(t,e,n)})}(t,n)?{segmentGroup:Bh(new Fc(t.segments,function(t,e,n,r){var o,s,a={};try{for(var l=c(n),u=l.next();!u.done;u=l.next()){var h=u.value;Wh(t,e,h)&&!r[Gh(h)]&&(a[Gh(h)]=new Fc([],{}))}}catch(p){o={error:p}}finally{try{u&&!u.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}return i({},r,a)}(t,n,r,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,a,u,r),l=s.segmentGroup,h=s.slicedSegments;return 0===h.length&&l.hasChildren()?o.expandChildren(n,r,l).pipe(K(function(t){return new Fc(a,t)})):0===r.length&&0===h.length?nl(new Fc(a,{})):o.expandSegment(n,l,r,h,xc,!0).pipe(K(function(t){return new Fc(a.concat(t.segments),t.children)}))}))},t.prototype.getChildConfig=function(t,e,n){var r=this;return e.children?nl(new Tc(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?nl(e._loadedConfig):function(t,e,n){var r,o=e.canLoad;return o&&0!==o.length?nt(o).pipe(K(function(r){var o,i=t.get(r);if(function(t){return t&&Nh(t.canLoad)}(i))o=i.canLoad(e,n);else{if(!Nh(i))throw new Error("Invalid CanLoad guard");o=i(e,n)}return Lc(o)})).pipe(cl(),(r=function(t){return!0===t},function(t){return t.lift(new Dl(r,void 0,t))})):nl(!0)}(t.injector,e,n).pipe(rt(function(n){return n?r.configLoader.load(t.injector,e).pipe(K(function(t){return e._loadedConfig=t,t})):function(t){return new R(function(e){return e.error(kc("Cannot load children because the guard of the route \"path: '"+t.path+"'\" returned false"))})}(e)})):nl(new Tc([],t))},t.prototype.lineralizeSegments=function(t,e){for(var n=[],r=e.root;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return nl(n);if(r.numberOfChildren>1||!r.children[xc])return Uh(t.redirectTo);r=r.children[xc]}},t.prototype.applyRedirectCommands=function(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)},t.prototype.applyRedirectCreatreUrlTree=function(t,e,n,r){var o=this.createSegmentGroup(t,e.root,n,r);return new Uc(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)},t.prototype.createQueryParams=function(t,e){var n={};return Vc(t,function(t,r){if("string"==typeof t&&t.startsWith(":")){var o=t.substring(1);n[r]=e[o]}else n[r]=t}),n},t.prototype.createSegmentGroup=function(t,e,n,r){var o=this,i=this.createSegments(t,e.segments,n,r),s={};return Vc(e.children,function(e,i){s[i]=o.createSegmentGroup(t,e,n,r)}),new Fc(i,s)},t.prototype.createSegments=function(t,e,n,r){var o=this;return e.map(function(e){return e.path.startsWith(":")?o.findPosParam(t,e,r):o.findOrReturn(e,n)})},t.prototype.findPosParam=function(t,e,n){var r=n[e.path.substring(1)];if(!r)throw new Error("Cannot redirect to '"+t+"'. Cannot find '"+e.path+"'.");return r},t.prototype.findOrReturn=function(t,e){var n,r,o=0;try{for(var i=c(e),s=i.next();!s.done;s=i.next()){var a=s.value;if(a.path===t.path)return e.splice(o),a;o++}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return t},t}();function Hh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};var r=(e.matcher||Pc)(n,t,e);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Bh(t){if(1===t.numberOfChildren&&t.children[xc]){var e=t.children[xc];return new Fc(t.segments.concat(e.segments),e.children)}return t}function Wh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Gh(t){return t.outlet||xc}var Yh=function(){return function(t){this.path=t,this.route=this.path[this.path.length-1]}}(),qh=function(){return function(t,e){this.component=t,this.route=e}}();function Zh(t,e,n){var r=function(t){if(!t)return null;for(var e=t.parent;e;e=e.parent){var n=e.routeConfig;if(n&&n._loadedConfig)return n._loadedConfig}return null}(e);return(r?r.module.injector:n).get(t)}function $h(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=ch(e);return t.children.forEach(function(t){!function(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=t.value,s=e?e.value:null,a=n?n.getContext(t.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){var l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!Bc(t.url,e.url);case"pathParamsOrQueryParamsChange":return!Bc(t.url,e.url)||!Nc(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!bh(t,e)||!Nc(t.queryParams,e.queryParams);case"paramsChange":default:return!bh(t,e)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Yh(r)):(i.data=s.data,i._resolvedData=s._resolvedData),$h(t,e,i.component?a?a.children:null:n,r,o),l&&o.canDeactivateChecks.push(new qh(a&&a.outlet&&a.outlet.component||null,s))}else s&&Qh(e,a,o),o.canActivateChecks.push(new Yh(r)),$h(t,null,i.component?a?a.children:null:n,r,o)}(t,i[t.value.outlet],n,r.concat([t.value]),o),delete i[t.value.outlet]}),Vc(i,function(t,e){return Qh(t,n.getContext(e),o)}),o}function Qh(t,e,n){var r=ch(t),o=t.value;Vc(r,function(t,r){Qh(t,o.component?e?e.children.getContext(r):null:e,n)}),n.canDeactivateChecks.push(new qh(o.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,o))}var Xh=Symbol("INITIAL_VALUE");function Kh(){return Vl(function(t){return(function(){for(var t=[],e=0;e0?jc(n).parameters:{};o=new gh(n,l,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,cp(t),r,t.component,t,ip(e),sp(e)+n.length,hp(t))}else{var u=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new rp;return{consumedSegments:[],lastChild:0,parameters:{}}}var r=(e.matcher||Pc)(n,t,e);if(!r)throw new rp;var o={};Vc(r.posParams,function(t,e){o[e]=t.path});var s=r.consumed.length>0?i({},o,r.consumed[r.consumed.length-1].parameters):o;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:s}}(e,t,n);s=u.consumedSegments,a=n.slice(u.lastChild),o=new gh(s,u.parameters,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,cp(t),r,t.component,t,ip(e),sp(e)+s.length,hp(t))}var c=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),h=ap(e,s,a,c,this.relativeLinkResolution),p=h.segmentGroup,d=h.slicedSegments;if(0===d.length&&p.hasChildren()){var f=this.processChildren(c,p);return[new uh(o,f)]}if(0===c.length&&0===d.length)return[new uh(o,[])];var g=this.processSegment(c,p,d,xc);return[new uh(o,g)]},t}();function ip(t){for(var e=t;e._sourceSegment;)e=e._sourceSegment;return e}function sp(t){for(var e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function ap(t,e,n,r,o){if(n.length>0&&function(t,e,n){return r.some(function(n){return lp(t,e,n)&&up(n)!==xc})}(t,n)){var s=new Fc(e,function(t,e,n,r){var o,i,s={};s[xc]=r,r._sourceSegment=t,r._segmentIndexShift=e.length;try{for(var a=c(n),l=a.next();!l.done;l=a.next()){var u=l.value;if(""===u.path&&up(u)!==xc){var h=new Fc([],{});h._sourceSegment=t,h._segmentIndexShift=e.length,s[up(u)]=h}}}catch(p){o={error:p}}finally{try{l&&!l.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return s}(t,e,r,new Fc(n,t.children)));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return r.some(function(n){return lp(t,e,n)})}(t,n)){var a=new Fc(t.segments,function(t,e,n,r,o,s){var a,l,u={};try{for(var h=c(r),p=h.next();!p.done;p=h.next()){var d=p.value;if(lp(t,n,d)&&!o[up(d)]){var f=new Fc([],{});f._sourceSegment=t,f._segmentIndexShift="legacy"===s?t.segments.length:e.length,u[up(d)]=f}}}catch(g){a={error:g}}finally{try{p&&!p.done&&(l=h.return)&&l.call(h)}finally{if(a)throw a.error}}return i({},o,u)}(t,e,n,r,t.children,o));return a._sourceSegment=t,a._segmentIndexShift=e.length,{segmentGroup:a,slicedSegments:n}}var l=new Fc(t.segments,t.children);return l._sourceSegment=t,l._segmentIndexShift=e.length,{segmentGroup:l,slicedSegments:n}}function lp(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function up(t){return t.outlet||xc}function cp(t){return t.data||{}}function hp(t){return t.resolve||{}}function pp(t,e,n,r){var o=Zh(t,e,r);return Lc(o.resolve?o.resolve(e,n):o(e,n))}function dp(t){return function(e){return e.pipe(Vl(function(e){var n=t(e);return n?nt(n).pipe(K(function(){return e})):nt([e])}))}}var fp=function(){return function(){}}(),gp=function(){function t(){}return t.prototype.shouldDetach=function(t){return!1},t.prototype.store=function(t,e){},t.prototype.shouldAttach=function(t){return!1},t.prototype.retrieve=function(t){return null},t.prototype.shouldReuseRoute=function(t,e){return t.routeConfig===e.routeConfig},t}(),vp=new Ut("ROUTES"),yp=function(){function t(t,e,n,r){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=r}return t.prototype.load=function(t,e){var n=this;return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(K(function(r){n.onLoadEndListener&&n.onLoadEndListener(e);var o=r.create(t);return new Tc(Dc(o.injector.get(vp)).map(Mc),o)}))},t.prototype.loadModuleFactory=function(t){var e=this;return"string"==typeof t?nt(this.loader.load(t)):Lc(t()).pipe(rt(function(t){return t instanceof cn?nl(t):nt(e.compiler.compileModuleAsync(t))}))},t}(),mp=function(){return function(){}}(),_p=function(){function t(){}return t.prototype.shouldProcessUrl=function(t){return!0},t.prototype.extract=function(t){return t},t.prototype.merge=function(t,e){return t},t}();function bp(t){throw t}function wp(t,e,n){return e.parse("/")}function Cp(t,e){return nl(null)}var xp=function(){function t(t,e,n,r,o,i,s,a){var l=this;this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=r,this.config=a,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new V,this.errorHandler=bp,this.malformedUriErrorHandler=wp,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Cp,afterPreactivation:Cp},this.urlHandlingStrategy=new _p,this.routeReuseStrategy=new gp,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=o.get(un),this.console=o.get(Bo);var u=o.get(si);this.isNgZoneEnabled=u instanceof si,this.resetConfig(a),this.currentUrlTree=new Uc(new Fc([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new yp(i,s,function(t){return l.triggerEvent(new gc(t))},function(t){return l.triggerEvent(new vc(t))}),this.routerState=ph(this.currentUrlTree,this.rootComponentType),this.transitions=new rl({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return t.prototype.setupNavigations=function(t){var e=this,n=this.events;return t.pipe(hl(function(t){return 0!==t.id}),K(function(t){return i({},t,{extractedUrl:e.urlHandlingStrategy.extract(t.rawUrl)})}),Vl(function(t){var r,o,s,a,l=!1,u=!1;return nl(t).pipe(_l(function(t){e.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:e.lastSuccessfulNavigation?i({},e.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Vl(function(t){var r,o,s,a,l=!e.navigated||t.extractedUrl.toString()!==e.browserUrlTree.toString();if(("reload"===e.onSameUrlNavigation||l)&&e.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return nl(t).pipe(Vl(function(t){var r=e.transitions.getValue();return n.next(new sc(t.id,e.serializeUrl(t.extractedUrl),t.source,t.restoredState)),r!==e.transitions.getValue()?Ja:[t]}),Vl(function(t){return Promise.resolve(t)}),(r=e.ngModule.injector,o=e.configLoader,s=e.urlSerializer,a=e.config,function(t){return t.pipe(Vl(function(t){return function(e,n,r,o,i){return new Fh(e,n,r,t.extractedUrl,i).apply()}(r,o,s,0,a).pipe(K(function(e){return i({},t,{urlAfterRedirects:e})}))}))}),_l(function(t){e.currentNavigation=i({},e.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,n,r,o,s){return function(r){return r.pipe(rt(function(r){return function(t,e,n,r,o,i){return void 0===o&&(o="emptyOnly"),void 0===i&&(i="legacy"),new op(t,e,n,r,o,i).recognize()}(t,n,r.urlAfterRedirects,(a=r.urlAfterRedirects,e.serializeUrl(a)),o,s).pipe(K(function(t){return i({},r,{targetSnapshot:t})}));var a}))}}(e.rootComponentType,e.config,0,e.paramsInheritanceStrategy,e.relativeLinkResolution),_l(function(t){"eager"===e.urlUpdateStrategy&&(t.extras.skipLocationChange||e.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),e.browserUrlTree=t.urlAfterRedirects)}),_l(function(t){var r=new cc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);n.next(r)}));if(l&&e.rawUrlTree&&e.urlHandlingStrategy.shouldProcessUrl(e.rawUrlTree)){var u=t.extractedUrl,c=t.source,h=t.restoredState,p=t.extras,d=new sc(t.id,e.serializeUrl(u),c,h);n.next(d);var f=ph(u,e.rootComponentType).snapshot;return nl(i({},t,{targetSnapshot:f,urlAfterRedirects:u,extras:i({},p,{skipLocationChange:!1,replaceUrl:!1})}))}return e.rawUrlTree=t.rawUrl,e.browserUrlTree=t.urlAfterRedirects,t.resolve(null),Ja}),dp(function(t){var n=t.extras;return e.hooks.beforePreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),_l(function(t){var n=new hc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),K(function(t){return i({},t,{guards:(n=t.targetSnapshot,r=t.currentSnapshot,o=e.rootContexts,s=n._root,$h(s,r?r._root:null,o,[s.value]))});var n,r,o,s}),function(t,e){return function(n){return n.pipe(rt(function(n){var r=n.targetSnapshot,o=n.currentSnapshot,s=n.guards,a=s.canActivateChecks,l=s.canDeactivateChecks;return 0===l.length&&0===a.length?nl(i({},n,{guardsResult:!0})):function(t,e,n,r){return nt(l).pipe(rt(function(t){return function(t,e,n,r,o){var i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?nl(i.map(function(i){var s,a=Zh(i,e,o);if(function(t){return t&&Nh(t.canDeactivate)}(a))s=Lc(a.canDeactivate(t,e,n,r));else{if(!Nh(a))throw new Error("Invalid CanDeactivate guard");s=Lc(a(t,e,n,r))}return s.pipe(Nl())})).pipe(Kh()):nl(!0)}(t.component,t.route,n,e,r)}),Nl(function(t){return!0!==t},!0))}(0,r,o,t).pipe(rt(function(n){return n&&"boolean"==typeof n?function(t,e,n,r){return nt(a).pipe(Gl(function(e){return nt([tp(e.route.parent,r),Jh(e.route,r),np(t,e.path,n),ep(t,e.route,n)]).pipe(cl(),Nl(function(t){return!0!==t},!0))}),Nl(function(t){return!0!==t},!0))}(r,0,t,e):nl(n)}),K(function(t){return i({},n,{guardsResult:t})}))}))}}(e.ngModule.injector,function(t){return e.triggerEvent(t)}),_l(function(t){if(Dh(t.guardsResult)){var n=kc('Redirecting to "'+e.serializeUrl(t.guardsResult)+'"');throw n.url=t.guardsResult,n}}),_l(function(t){var n=new pc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);e.triggerEvent(n)}),hl(function(t){if(!t.guardsResult){e.resetUrlToCurrentUrlTree();var r=new lc(t.id,e.serializeUrl(t.extractedUrl),"");return n.next(r),t.resolve(!1),!1}return!0}),dp(function(t){if(t.guards.canActivateChecks.length)return nl(t).pipe(_l(function(t){var n=new dc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),(n=e.paramsInheritanceStrategy,r=e.ngModule.injector,function(t){return t.pipe(rt(function(t){var e=t.targetSnapshot,o=t.guards.canActivateChecks;return o.length?nt(o).pipe(Gl(function(t){return function(t,n,r,o){return function(t,e,n,r){var o=Object.keys(t);if(0===o.length)return nl({});if(1===o.length){var i=o[0];return pp(t[i],e,n,r).pipe(K(function(t){var e;return(e={})[i]=t,e}))}var s={};return nt(o).pipe(rt(function(o){return pp(t[o],e,n,r).pipe(K(function(t){return s[o]=t,t}))})).pipe(kl(),K(function(){return s}))}(t._resolve,t,e,o).pipe(K(function(e){return t._resolvedData=e,t.data=i({},t.data,fh(t,r).resolve),null}))}(t.route,0,n,r)}),function(t,e){return arguments.length>=2?function(e){return T(Hl(t,void 0),vl(1),Sl(void 0))(e)}:function(e){return T(Hl(function(e,n,r){return t(e)}),vl(1))(e)}}(function(t,e){return t}),K(function(e){return t})):nl(t)}))}),_l(function(t){var n=new fc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}));var n,r}),dp(function(t){var n=t.extras;return e.hooks.afterPreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),K(function(t){var n,r,o,s=(o=function t(e,n,r){if(r&&e.shouldReuseRoute(n.value,r.value.snapshot)){(l=r.value)._futureSnapshot=n.value;var o=function(e,n,r){return n.children.map(function(n){var o,i;try{for(var s=c(r.children),a=s.next();!a.done;a=s.next()){var l=a.value;if(e.shouldReuseRoute(l.value.snapshot,n.value))return t(e,n,l)}}catch(u){o={error:u}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(o)throw o.error}}return t(e,n)})}(e,n,r);return new uh(l,o)}var i=e.retrieve(n.value);if(i){var s=i.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(var r=0;ra;){if(l-=a,!(s=s.parent))throw new Error("Invalid number of '../'");a=s.segments.length}return new Sh(s,!1,a-l)}()}(i,0,t),a=s.processChildren?kh(s.segmentGroup,s.index,i.commands):Oh(s.segmentGroup,s.index,i.commands);return Ch(s.segmentGroup,a,e,r,o)}(u,this.currentUrlTree,t,h,c)},t.prototype.navigateByUrl=function(t,e){void 0===e&&(e={skipLocationChange:!1}),ge()&&this.isNgZoneEnabled&&!si.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");var n=Dh(t)?t:this.parseUrl(t),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,e)},t.prototype.navigate=function(t,e){return void 0===e&&(e={skipLocationChange:!1}),function(t){for(var e=0;et.name.length?e:t},{id:"",name:""}),this.filter())},t.prototype.ngAfterViewInit=function(){this.resize()},t.prototype.trackByFn=function(t,e){return e?"string"==typeof e?e:e.id:t},t.prototype.resize=function(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)},t.prototype.filter=function(){var t=this;if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(function(e){return("string"==typeof e?e:e.name).toLowerCase().indexOf(t.search.toLowerCase())>=0})),this.options&&this.options.hide_active&&this.selected)){var e="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(function(t){return("string"==typeof t?t:t.id).indexOf(e)<0})}},t.prototype.toggleShow=function(){var t=this;this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(function(){t.input&&t.input.nativeElement.focus()},100)},t.prototype.updateScroll=function(){var t=this;if(!this.viewport||!this.scroll_el)return setTimeout(function(){return t.updateScroll()},50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;var e="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)===e}))},t.prototype.select=function(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)},t.prototype.change=function(t){var e=this,n="string"==typeof this.selected?this.selected:this.selected.id,r=this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)==n})+t;r>=0&&r1?Array.prototype.slice.call(arguments):t)},r,n)})}var sd=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r.pending=!1,r}return o(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,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(r,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,r=void 0;try{this.work(t)}catch(o){n=!0,r=!!o&&o||new Error(o)}if(n)return this.unsubscribe(),r},e.prototype._unsubscribe=function(){var t=this.id,e=this.scheduler,n=e.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,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 o(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(m)),ad=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(e,t),e.prototype.requestAsyncId=function(e,n,r){return void 0===r&&(r=0),null!==r&&r>0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame(function(){return e.flush(null)})))},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(cancelAnimationFrame(n),e.scheduled=void 0)},e}(sd),ld=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}(),ud=function(t){function e(n,r){void 0===r&&(r=ld.now);var o=t.call(this,n,function(){return e.delegate&&e.delegate!==o?e.delegate.now():r()})||this;return o.actions=[],o.active=!1,o.scheduled=void 0,o}return o(e,t),e.prototype.schedule=function(n,r,o){return void 0===r&&(r=0),e.delegate&&e.delegate!==this?e.delegate.schedule(n,r,o):t.prototype.schedule.call(this,n,r,o)},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}(ld),cd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=(o=e.flush.bind(e,null),i=hd++,pd[i]=o,Promise.resolve().then(function(){return function(t){var e=pd[t];e&&e()}(i)}),i)));var o,i},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(delete pd[n],e.scheduled=void 0)},e}(sd),fd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r=0}function wd(t){var e=t.index,n=t.period,r=t.subscriber;if(r.next(e),!r.closed){if(-1===n)return r.complete();t.index=e+1,this.schedule(t,n)}}function Cd(t,e){return void 0===e&&(e=yd),n=function(){return function(t,e,n){void 0===t&&(t=0);var r=-1;return bd(e)?r=Number(e)<1?1:Number(e):z(e)&&(n=e),z(n)||(n=yd),new R(function(e){var o=bd(t)?t:+t-n.now();return n.schedule(wd,o,{index:0,period:r,subscriber:e})})}(t,e)},function(t){return t.lift(new md(n))};var n}function xd(t){return function(e){return e.lift(new Ed(t))}}var Sd,Ed=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new Od(t),r=Q(n,this.notifier);return r&&!n.seenValue?(n.add(r),e.subscribe(n)):n},t}(),Od=function(t){function e(e){var n=t.call(this,e)||this;return n.seenValue=!1,n}return o(e,t),e.prototype.notifyNext=function(t,e,n,r,o){this.seenValue=!0,this.complete()},e.prototype.notifyComplete=function(){},e}(X),kd=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new Pd(t))},t}(),Pd=function(t){function e(e){var n=t.call(this,e)||this;return n.hasPrev=!1,n}return o(e,t),e.prototype._next=function(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t},e}(E),Td=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(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,r){return void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,r):e.flush(this)},e}(sd),Id=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e}(ud))(Td);function Rd(t,e){return new R(e?function(n){return e.schedule(Ad,0,{error:t,subscriber:n})}:function(e){return e.error(t)})}function Ad(t){t.subscriber.error(t.error)}Sd||(Sd={});var Md,Nd=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 nl(this.value);case"E":return Rd(this.error);case"C":return tl()}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}(),Dd=function(t){function e(e,n,r){void 0===r&&(r=0);var o=t.call(this,e)||this;return o.scheduler=n,o.delay=r,o}return o(e,t),e.dispatch=function(t){t.notification.observe(t.destination),this.unsubscribe()},e.prototype.scheduleMessage=function(t){this.destination.add(this.scheduler.schedule(e.dispatch,this.delay,new jd(t,this.destination)))},e.prototype._next=function(t){this.scheduleMessage(Nd.createNext(t))},e.prototype._error=function(t){this.scheduleMessage(Nd.createError(t)),this.unsubscribe()},e.prototype._complete=function(){this.scheduleMessage(Nd.createComplete()),this.unsubscribe()},e}(E),jd=function(){return function(t,e){this.notification=t,this.destination=e}}(),Vd=function(t){function e(e,n,r){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=Number.POSITIVE_INFINITY);var o=t.call(this)||this;return o.scheduler=r,o._events=[],o._infiniteTimeWindow=!1,o._bufferSize=e<1?1:e,o._windowTime=n<1?1:n,n===Number.POSITIVE_INFINITY?(o._infiniteTimeWindow=!0,o.next=o.nextInfiniteTimeWindow):o.next=o.nextTimeWindow,o}return o(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 Ld(this._getNow(),e)),this._trimBufferThenGetEvents(),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,n=this._infiniteTimeWindow,r=n?this._events:this._trimBufferThenGetEvents(),o=this.scheduler,i=r.length;if(this.closed)throw new N;if(this.isStopped||this.hasError?e=m.EMPTY:(this.observers.push(t),e=new D(this,t)),o&&t.add(t=new Dd(t,o)),n)for(var s=0;se&&(i=Math.max(i,o-e)),i>0&&r.splice(0,i),r},e}(V),Ld=function(){return function(t,e){this.time=t,this.value=e}}();try{Md="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Em){Md=!1}var zd,Ud=function(){function t(t){this._platformId=t,this.isBrowser=this._platformId?Qa(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&&!Md)&&"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.ngInjectableDef=Ot({factory:function(){return new t(Lt(Fo,8))},token:t,providedIn:"root"}),t}(),Fd=function(){return function(){}}(),Hd=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();function Bd(){if("object"!=typeof document||!document)return Hd.NORMAL;if(!zd){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"),r=n.style;r.width="2px",r.height="1px",t.appendChild(n),document.body.appendChild(t),zd=Hd.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,zd=0===t.scrollLeft?Hd.NEGATED:Hd.INVERTED),t.parentNode.removeChild(t)}return zd}var Wd=function(t){function e(e){var n=t.call(this)||this;return n._data=e,n}return o(e,t),e.prototype.connect=function(){return this._data instanceof R?this._data:nl(this._data)},e.prototype.disconnect=function(){},e}(function(){return function(){}}()),Gd=new Ut("VIRTUAL_SCROLL_STRATEGY"),Yd=function(){function t(t,e,n){this._scrolledIndexChange=new V,this.scrolledIndexChange=this._scrolledIndexChange.pipe(function(t){return t.lift(new gd(void 0,void 0))}),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(n0&&(r.end=Math.min(i,r.end+u),r.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(r),this._viewport.setRenderedContentOffset(this._itemSize*r.start),this._scrolledIndexChange.next(Math.floor(e))}},t}();function qd(t){return t._scrollStrategy}var Zd=function(){function t(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Yd(this.itemSize,this.minBufferPx,this.maxBufferPx)}return Object.defineProperty(t.prototype,"itemSize",{get:function(){return this._itemSize},set:function(t){this._itemSize=nd(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minBufferPx",{get:function(){return this._minBufferPx},set:function(t){this._minBufferPx=nd(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxBufferPx",{get:function(){return this._maxBufferPx},set:function(t){this._maxBufferPx=nd(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)},t}(),$d=function(){function t(t,e){this._ngZone=t,this._platform=e,this._scrolled=new V,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}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 R(function(n){e._globalSubscription||e._addGlobalListener();var r=t>0?e._scrolled.pipe(Cd(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){r.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):nl()},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(hl(function(t){return!t||n.indexOf(t)>-1}))},t.prototype.getAncestorScrollContainers=function(t){var e=this,n=[];return this.scrollContainers.forEach(function(r,o){e._scrollableContainsElement(o,t)&&n.push(o)}),n},t.prototype._scrollableContainsElement=function(t,e){var n=e.nativeElement,r=t.getElementRef().nativeElement;do{if(n==r)return!0}while(n=n.parentElement);return!1},t.prototype._addGlobalListener=function(){var t=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){return id(window.document,"scroll").subscribe(function(){return t._scrolled.next()})})},t.prototype._removeGlobalListener=function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(si),Lt(Ud))},token:t,providedIn:"root"}),t}(),Qd=function(){function t(t,e,n,r){var o=this;this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=r,this._destroyed=new V,this._elementScrolled=new R(function(t){return o.ngZone.runOutsideAngular(function(){return id(o.elementRef.nativeElement,"scroll").pipe(xd(o._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;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Bd()!=Hd.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Bd()==Hd.INVERTED?t.left=t.right:Bd()==Hd.NEGATED&&(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"==typeof document&&"scrollBehavior"in document.documentElement.style?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&&Bd()==Hd.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Bd()==Hd.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft},t}(),Xd="undefined"!=typeof requestAnimationFrame?cd:fd,Kd=function(t){function e(e,n,r,o,i,s){var a=t.call(this,e,s,r,i)||this;if(a.elementRef=e,a._changeDetectorRef=n,a._scrollStrategy=o,a._detachedSubject=new V,a._renderedRangeSubject=new V,a.orientation="vertical",a.scrolledIndexChange=new R(function(t){return a._scrollStrategy.scrolledIndexChange.subscribe(function(e){return Promise.resolve().then(function(){return a.ngZone.run(function(){return t.next(e)})})})}),a.renderedRangeStream=a._renderedRangeSubject.asObservable(),a._totalContentSizeTransform="",a._totalContentSize=0,a._renderedRange={start:0,end:0},a._dataLength=0,a._viewportSize=0,a._renderedContentOffset=0,a._renderedContentOffsetNeedsRewrite=!1,a._isChangeDetectionPending=!1,a._runAfterChangeDetection=[],!o)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.');return a}return o(e,t),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(Fl(null),Cd(0,Xd)).subscribe(function(){return e._scrollStrategy.onContentScrolled()}),e._markChangeDetectionNeeded()})})},e.prototype.ngOnDestroy=function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),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(xd(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._totalContentSizeTransform="scale"+("horizontal"==this.orientation?"X":"Y")+"("+this._totalContentSize+")",this._markChangeDetectionNeeded())},e.prototype.setRenderedRange=function(t){var e,n,r=this;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(function(){return r._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 r="horizontal"==this.orientation,o=r?"X":"Y",i="translate"+o+"("+Number((r&&this.dir&&"rtl"==this.dir.value?-1:1)*t)+"px)";this._renderedContentOffset=t,"to-end"===e&&(i+=" translate"+o+"(-100%)",this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,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 t.prototype.measureScrollOffset.call(this,e||("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=this;this._isChangeDetectionPending=!1,this.ngZone.run(function(){return t._changeDetectorRef.markForCheck()}),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;var e=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(var n=0,r=e;n=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");for(var n=t.start-this._renderedRange.start,r=0,o=t.end-t.start;o--;)for(var i=this._viewContainerRef.get(o+n),s=i?i.rootNodes.length:0;s--;)r+=Jd(e,i.rootNodes[s]);return r},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(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(var t=0,e=this._templateCache;t0?this._change.pipe(Cd(t)):this._change},t.prototype._updateViewportSize=function(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Ud),Lt(si))},token:t,providedIn:"root"}),t}();function rf(){throw Error("Host already has a portal attached")}var of=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()&&rf(),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}(),sf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.component=e,i.viewContainerRef=n,i.injector=r,i.componentFactoryResolver=o,i}return o(e,t),e}(of),af=function(t){function e(e,n,r){var o=t.call(this)||this;return o.templateRef=e,o.viewContainerRef=n,o.context=r,o}return o(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}(of),lf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.outletElement=e,i._componentFactoryResolver=n,i._appRef=r,i._defaultInjector=o,i}return o(e,t),e.prototype.attachComponentPortal=function(t){var e,n=this,r=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);return t.viewContainerRef?(e=t.viewContainerRef.createComponent(r,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(function(){return e.destroy()})):(e=r.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,r=n.createEmbeddedView(t.templateRef,t.context);return r.detectChanges(),r.rootNodes.forEach(function(t){return e.outletElement.appendChild(t)}),this.setDisposeFn(function(){var t=n.indexOf(r);-1!==t&&n.remove(t)}),r},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}(function(){function t(){this._isDisposed=!1}return t.prototype.hasAttached=function(){return!!this._attachedPortal},t.prototype.attach=function(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&rf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof sf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof af?(this._attachedPortal=t,this.attachTemplatePortal(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}()),uf=function(){return function(){}}(),cf=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=od(-this._previousScrollPosition.left),t.style.top=od(-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=t.style,n=this._document.body.style,r=e.scrollBehavior||"",o=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=r,n.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}();function hf(){return Error("Scroll strategy has already been attached.")}var pf=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return t.prototype.attach=function(t){if(this._overlayRef)throw hf();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}(),df=function(){function t(){}return t.prototype.enable=function(){},t.prototype.disable=function(){},t.prototype.attach=function(){},t}();function ff(t,e){return e.some(function(e){return t.bottome.bottom||t.righte.right})}function gf(t,e){return e.some(function(e){return t.tope.bottom||t.lefte.right})}var vf=function(){function t(t,e,n,r){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=r,this._scrollSubscription=null}return t.prototype.attach=function(t){if(this._overlayRef)throw hf();this._overlayRef=t},t.prototype.enable=function(){var t=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(t._overlayRef.updatePosition(),t._config&&t._config.autoClose){var e=t._overlayRef.overlayElement.getBoundingClientRect(),n=t._viewportRuler.getViewportSize(),r=n.width,o=n.height;ff(e,[{width:r,height:o,bottom:o,right:r,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}(),yf=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=function(){return new df},this.close=function(t){return new pf(o._scrollDispatcher,o._ngZone,o._viewportRuler,t)},this.block=function(){return new cf(o._viewportRuler,o._document)},this.reposition=function(t){return new vf(o._scrollDispatcher,o._viewportRuler,o._ngZone,t)},this._document=r}return t.ngInjectableDef=Ot({factory:function(){return new t(Lt($d),Lt(nf),Lt(si),Lt(qa))},token:t,providedIn:"root"}),t}(),mf=function(){return function(t){var e=this;this.scrollStrategy=new df,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(function(n){void 0!==t[n]&&(e[n]=t[n])})}}(),_f=function(){return function(t,e,n,r,o){this.offsetX=n,this.offsetY=r,this.panelClass=o,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}(),bf=function(){return function(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}();function wf(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "top", "bottom" or "center".')}function Cf(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "start", "end" or "center".')}var xf=function(){function t(t){var e=this;this._attachedOverlays=[],this._keydownListener=function(t){for(var n=e._attachedOverlays,r=n.length-1;r>-1;r--)if(n[r]._keydownEventSubscriptions>0){n[r]._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.ngInjectableDef=Ot({factory:function(){return new t(Lt(qa))},token:t,providedIn:"root"}),t}(),Sf=function(){function t(t){this._document=t}return t.prototype.ngOnDestroy=function(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)},t.prototype.getContainerElement=function(){return this._containerElement||this._createContainer(),this._containerElement},t.prototype._createContainer=function(){var t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(qa))},token:t,providedIn:"root"}),t}(),Ef=function(){function t(t,e,n,r,o,i,s,a){var l=this;this._portalOutlet=t,this._host=e,this._pane=n,this._config=r,this._ngZone=o,this._keyboardDispatcher=i,this._document=s,this._location=a,this._backdropElement=null,this._backdropClick=new V,this._attachments=new V,this._detachments=new V,this._locationChanges=m.EMPTY,this._keydownEventsObservable=new R(function(t){var e=l._keydownEvents.subscribe(t);return l._keydownEventSubscriptions++,function(){e.unsubscribe(),l._keydownEventSubscriptions--}}),this._keydownEvents=new V,this._keydownEventSubscriptions=0,r.scrollStrategy&&(this._scrollStrategy=r.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=r.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._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Rl(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=i({},this._config,t),this._updateElementSize()},t.prototype.setDirection=function(t){this._config=i({},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(){var t=this._pane.style;t.width=od(this._config.width),t.height=od(this._config.height),t.minWidth=od(this._config.minWidth),t.minHeight=od(this._config.minHeight),t.maxWidth=od(this._config.maxWidth),t.maxHeight=od(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",function(e){return t._backdropClick.next(e)}),"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,r=function(){e&&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",r)}),e.style.pointerEvents="none",n=this._ngZone.runOutsideAngular(function(){return setTimeout(r,500)})}},t.prototype._toggleClasses=function(t,e,n){var r=t.classList;rd(e).forEach(function(t){n?r.add(t):r.remove(t)})},t.prototype._detachContentWhenStable=function(){var t=this;this._ngZone.runOutsideAngular(function(){var e=t._ngZone.onStable.asObservable().pipe(xd(lt(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}(),Of=function(){function t(t,e,n,r,o){this._viewportRuler=e,this._document=n,this._platform=r,this._overlayContainer=o,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 V,this._resizeSubscription=m.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(){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();for(var t,e=this._originRect,n=this._overlayRect,r=this._viewportRect,o=[],i=0,s=this._preferredPositions;ip&&(p=v,h=g)}return this._isPushed=!1,void this._applyPosition(h.position,h.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(t.position,t.originPoint);this._applyPosition(t.position,t.originPoint)}},t.prototype.detach=function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()},t.prototype.dispose=function(){this._isDisposed||(this._boundingBox&&kf(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 r=this._isRtl()?t.right:t.left,o=this._isRtl()?t.left:t.right;n="start"==e.originX?r:o}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 r;return r="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+r,y:t.y+("center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}},t.prototype._getOverlayFit=function(t,e,n,r){var o=t.x,i=t.y,s=this._getOffset(r,"x"),a=this._getOffset(r,"y");s&&(o+=s),a&&(i+=a);var l=0-i,u=i+e.height-n.height,c=this._subtractOverflows(e.width,0-o,o+e.width-n.width),h=this._subtractOverflows(e.height,l,u),p=c*h;return{visibleArea:p,isCompletelyWithinViewport:e.width*e.height===p,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:c==e.width}},t.prototype._canFitWithFlexibleDimensions=function(t,e,n){if(this._hasFlexibleDimensions){var r=n.bottom-e.y,o=n.right-e.x,i=this._overlayRef.getConfig().minHeight,s=this._overlayRef.getConfig().minWidth;return(t.fitsInViewportVertically||null!=i&&i<=r)&&(t.fitsInViewportHorizontally||null!=s&&s<=o)}},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 r,o,i=this._viewportRect,s=Math.max(t.x+e.width-i.right,0),a=Math.max(t.y+e.height-i.bottom,0),l=Math.max(i.top-n.top-t.y,0),u=Math.max(i.left-n.left-t.x,0);return this._previousPushAmount={x:r=e.width<=i.width?u||-s:t.xh&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-h/2)}if("end"===e.overlayX&&!u||"start"===e.overlayX&&u)a=l.right-t.x+this._viewportMargin,i=t.x-l.left;else if("start"===e.overlayX&&!u||"end"===e.overlayX&&u)s=t.x,i=l.right-t.x;else{c=Math.min(l.right-t.x+l.left,t.x);var p=this._lastBoundingBoxSize.width;s=t.x-c,(i=2*c)>p&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.x-p/2)}return{top:r,left:s,bottom:o,right:a,width:i,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 r={};if(this._hasExactPosition())r.top=r.left="0",r.bottom=r.right="",r.width=r.height="100%";else{var o=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;r.height=od(n.height),r.top=od(n.top),r.bottom=od(n.bottom),r.width=od(n.width),r.left=od(n.left),r.right=od(n.right),r.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",r.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",o&&(r.maxHeight=od(o)),i&&(r.maxWidth=od(i))}this._lastBoundingBoxSize=n,kf(this._boundingBox.style,r)},t.prototype._resetBoundingBoxStyles=function(){kf(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})},t.prototype._resetOverlayElementStyles=function(){kf(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})},t.prototype._setOverlayElementStyles=function(t,e){var n={};if(this._hasExactPosition()){var r=this._viewportRuler.getViewportScrollPosition();kf(n,this._getExactOverlayY(e,t,r)),kf(n,this._getExactOverlayX(e,t,r))}else n.position="static";var o="",i=this._getOffset(e,"x"),s=this._getOffset(e,"y");i&&(o+="translateX("+i+"px) "),s&&(o+="translateY("+s+"px)"),n.transform=o.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),kf(this._pane.style,n)},t.prototype._getExactOverlayY=function(t,e,n){var r={top:null,bottom:null},o=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n));var i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return o.y-=i,"bottom"===t.overlayY?r.bottom=this._document.documentElement.clientHeight-(o.y+this._overlayRect.height)+"px":r.top=od(o.y),r},t.prototype._getExactOverlayX=function(t,e,n){var r={left:null,right:null},o=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n)),"right"==(this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=this._document.documentElement.clientWidth-(o.x+this._overlayRect.width)+"px":r.left=od(o.x),r},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:gf(t,n),isOriginOutsideView:ff(t,n),isOverlayClipped:gf(e,n),isOverlayOutsideView:ff(e,n)}},t.prototype._subtractOverflows=function(t){for(var e=[],n=1;n0?p(this.events,[t]):[t],this.displayed_events=this.events.slice(-8),t.close=function(){return e.remove(t.id)},0!==t.delay&&setTimeout(function(){return e.remove(t.id)},t.delay||this.delay||5e3))},t.prototype.remove=function(t){this.events=this.events.filter(function(e){return e.id!==t}),this.displayed_events=this.events.slice(-8)},t.prototype.action=function(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)},t.prototype.grab=function(t,e){var n=this,r=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=r,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",function(e){return n.pull(t,e)}),touchmove:this.renderer.listen("window","touchmove",function(e){return n.pull(t,e)}),mouseup:this.renderer.listen("window","mouseup",function(e){return n.release(t)}),touchend:this.renderer.listen("window","touchend",function(e){return n.release(t)})}},t.prototype.pull=function(t,e){var n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)},t.prototype.release=function(t){for(var e in t.offset>128&&this.remove(t.id),t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0},t.prototype.trackByFn=function(t,e){return(t?t.id:null)||e},t}(),Hf=function(){function t(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new V,this._notify.remove=new V,this._notify.delay=new V,this.registerPreset("default",new mf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new mf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}return t.prototype.register=function(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Uf(t,this,this.injector,this.overlay,e),this._refs[t]},t.prototype.open=function(t,e,n,r){if(e.config?e.config instanceof mf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error("No content set for the overlay "+t);var o=this._refs[t],i=o.details.config instanceof mf?o.details.config:this.preset(o.details.config);o.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),r&&this._refs[t].onClose.subscribe(r))},t.prototype.update=function(t,e){this._refs[t]&&this._refs[t].set(e)},t.prototype.close=function(t){this._refs[t]&&this._refs[t].close(null)},t.prototype.remove=function(t){this._refs[t]&&(this._refs[t]=null)},t.prototype.registerPreset=function(t,e){this._presets[t]=e},t.prototype.preset=function(t){return void 0===t&&(t="default"),this._presets[t]||this._presets.default},t.prototype.loadNotificationsOutlet=function(){var t=this;this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(function(){t.registerPreset("ACA_NOTIFICATIONS_OUTLET",new mf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:t.overlay.position().global().bottom("0").right("0"),scrollStrategy:t.overlay.scrollStrategies.noop()})),t.open("ACA_NOTIFICATIONS_OUTLET",{content:Ff,data:t._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)},t.prototype.notify=function(t,e,n,r,o){var i=null;return this._notify.add&&(i="notification-"+Math.floor(999999*Math.random()),this._notify.add.next({id:i,content:t,action:e,on_action:n,type:r,delay:o,event:function(t){return n?n(t):null}})),i},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Af),Lt(Bt))},token:t,providedIn:"root"}),t}(),Bf=function(){function t(t,e,n,r){this.el=t,this.service=e,this.overlay=n,this.renderer=r,this.id="tooltip-"+Math.floor(9999999*Math.random()),this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new Ao,this.event=new Ao,this.close=new Ao,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}return t.prototype.ngOnInit=function(){this.updateConfig(),this.el&&this.listenForScroll()},t.prototype.ngOnDestroy=function(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()},t.prototype.ngOnChanges=function(t){var e=this;if(t.config&&this.updateConfig(),t.reposition){var n=this.overlay.scrollStrategies;this.strategy=this.reposition?n.reposition():n.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(function(){return e.open()},10):this.closeTooltip(t.show.previousValue))},t.prototype.open=function(){var t=this;this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},function(e){return t.event.emit(e)},function(e){t.show=!1,t.showChange.emit(!1),t.close.emit(e),t.clearListeners()})},t.prototype.getOverlayPosition=function(t){var e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)},t.prototype.getPositions=function(){var t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}},t.prototype.updateConfig=function(){this.service.registerPreset(this.id,new mf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))},t.prototype.listenForScroll=function(){var t=this;if(this.show)for(var e=this.el.nativeElement.parentElement;e;e=e.parentElement)this.listeners.push(this.renderer.listen(e,"scroll",function(){return t.update()}))},t.prototype.clearListeners=function(){var t,e;try{for(var n=c(this.listeners),r=n.next();!r.done;r=n.next())(0,r.value)()}catch(o){t={error:o}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)},t.prototype.update=function(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))},t.prototype.listenForHover=function(){var t=this;this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",function(e){t.show=!0,t.showChange.emit(t.show),t._leave_listener=t.renderer.listen(t.el.nativeElement,"mouseleave",function(e){t.show=!1,t.showChange.emit(t.show),t.closeTooltip(t.show)}),t.open()})},t.prototype.closeTooltip=function(t){!this.content&&this.el?function(t,e,n,r,o){if(void 0===r&&(r="debug"),window.debug){var i=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Vf()?console[r].apply(console,p(["%c["+jf+"]%c["+t+"] %c"+e],i,[n])):console[r]("["+jf+"]["+t+"] "+e,n):Vf()?console[r].apply(console,p(["%c["+jf+"]%c["+t+"] %c"+e],i)):console[r]("["+jf+"]["+t+"] "+e)}}("Tooltip","No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()},t}(),Wf=function(){function t(t,e){this.item=t,this.service=e}return t.prototype.ngOnInit=function(){var t=this;setTimeout(function(){t.text=t.item.details.data.text,t.center=t.item.details.data.center},10),setTimeout(function(){return t.service.close(t.item.ID)},1e3)},t}(),Gf=ga,Yf=function(){function t(){if(this.build=Gf(),!t.init){var e=Gf();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),Vf()?console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+jf+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"])):console[n]("[ACA][LIB] "+jf+" - "+t+" | "+e)}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),qf=new Ut("cdk-dir-doc",{providedIn:"root",factory:function(){return zt(qa)}}),Zf=function(){function t(t){if(this.value="ltr",this.change=new Ao,t){var e=(t.body?t.body.dir:null)||(t.documentElement?t.documentElement.dir:null);this.value="ltr"===e||"rtl"===e?e:"ltr"}}return t.prototype.ngOnDestroy=function(){this.change.complete()},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(qf,8))},token:t,providedIn:"root"}),t}(),$f=function(){return function(){}}(),Qf=rr({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function Xf(t){return is(0,[(t()(),Bi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function Kf(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Jf(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,Kf)),go(2,540672,null,0,Ga,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function tg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function eg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,tg)),go(2,671744,null,0,Na,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ng(t){return is(0,[(t()(),Bi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Bi(1,0,null,null,7,null,null,null,null,null,null,null)),go(2,16384,null,0,Ha,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Hi(16777216,null,null,1,null,Xf)),go(4,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,Jf)),go(6,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,eg)),go(8,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function rg(t){return is(0,[(t()(),Hi(16777216,null,null,1,null,ng)),go(1,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function og(t){return is(0,[(t()(),Bi(0,0,null,null,1,"overlay-outlet",[],null,null,null,rg,Qf)),go(1,114688,null,0,zf,[Gt],null,null)],function(t,e){t(e,1,0)},null)}var ig=Wr("overlay-outlet",zf,og,{},{},[]),sg=rr({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function ag(t){return is(0,[(t()(),Bi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),ns(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function lg(t){return is(0,[(t()(),Bi(0,0,null,null,1,"a-floating-text",[],null,null,null,ag,sg)),go(1,114688,null,0,Wf,[Uf,Hf],null,null)],function(t,e){t(e,1,0)},null)}var ug=Wr("a-floating-text",Wf,lg,{},{},[]),cg=rr({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function hg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function pg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,hg)),go(2,540672,null,0,Ga,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function dg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function fg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,dg)),go(2,671744,null,0,Na,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function gg(t){return is(0,[(t()(),Bi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function vg(t){return is(0,[(t()(),Bi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),ns(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function yg(t){return is(0,[(t()(),Bi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function mg(t){return is(0,[(t()(),Bi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Bi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),"touchstart"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),r},null,null)),(t()(),Bi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Bi(4,0,null,null,7,null,null,null,null,null,null,null)),go(5,16384,null,0,Ha,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Hi(16777216,null,null,1,null,pg)),go(7,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,fg)),go(9,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,gg)),go(11,16384,null,0,Wa,[zn,Vn,Ha],null,null),(t()(),Bi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),"touchend"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),r},null,null)),(t()(),Hi(16777216,null,null,1,null,vg)),go(14,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Hi(16777216,null,null,1,null,yg)),go(16,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function _g(t){return is(0,[(t()(),Bi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,mg)),go(2,278528,null,0,ja,[zn,Vn,In],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function bg(t){return is(0,[(t()(),Bi(0,0,null,null,1,"notification-outlet",[],null,null,null,_g,cg)),go(1,245760,null,0,Ff,[Uf,yn],null,null)],function(t,e){t(e,1,0)},null)}var wg=Wr("notification-outlet",Ff,bg,{},{},[]),Cg=function(t){function e(e,n){var r=t.call(this,e)||this;r.sources=n,r.completed=0,r.haveValues=0;var o=n.length;r.values=new Array(o);for(var i=0;it?{max:{max:t,actual:e.value}}:null}},t.required=function(t){return Ag(t.value)?{required:!0}:null},t.requiredTrue=function(t){return!0===t.value?null:{required:!0}},t.email=function(t){return Ag(t.value)?null:Mg.test(t.value)?null:{email:!0}},t.minLength=function(t){return function(e){if(Ag(e.value))return null;var n=e.value?e.value.length:0;return nt?{maxlength:{requiredLength:t,actualLength:n}}:null}},t.pattern=function(e){return e?("string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),n=new RegExp(r)):(r=e.toString(),n=e),function(t){if(Ag(t.value))return null;var e=t.value;return n.test(e)?null:{pattern:{requiredPattern:r,actualValue:e}}}):t.nullValidator;var n,r},t.nullValidator=function(t){return null},t.compose=function(t){if(!t)return null;var e=t.filter(Dg);return 0==e.length?null:function(t){return Vg(function(t,n){return e.map(function(e){return e(t)})}(t))}},t.composeAsync=function(t){if(!t)return null;var e=t.filter(Dg);return 0==e.length?null:function(t){return function t(){for(var e,n=[],r=0;r=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}(),Hg=function(){function t(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return t.prototype.ngOnInit=function(){this._control=this._injector.get(Ig),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: \n ')},t}(),Bg='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Wg='\n
\n
\n \n
\n
';function Gg(t,e){return p(e.path,[t])}function Yg(t,e){t||Zg(e,"Cannot find control with"),e.valueAccessor||Zg(e,"No value accessor for form control with"),t.validator=Ng.compose([t.validator,e.validator]),t.asyncValidator=Ng.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&&qg(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&&qg(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 qg(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Zg(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 $g(t){return null!=t?Ng.compose(t.map(Lg)):null}function Qg(t){return null!=t?Ng.composeAsync(t.map(zg)):null}var Xg=[Sg,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}(),Ug,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=qe}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=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}(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=c(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var i=o.value;if(this._compareWith(this._optionMap.get(i),t))return i}}catch(s){e={error:s}}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},t}(),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=qe}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 r=t.map(function(t){return n._getOptionId(t)});e=function(t,e){t._setSelected(r.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 r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i0||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}(ev),ov=function(t){function e(e,n,r){var o=t.call(this,Kg(n),Jg(r,n))||this;return o.controls=e,o._initObservables(),o._setUpdateStrategy(n),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return o(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,r){n._throwIfControlMissing(r),n.at(r).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,r){n.at(r)&&n.at(r).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,r){n.reset(t[r],{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 nv?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=c(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(o){t={error:o}}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}(ev),iv=function(){return Promise.resolve(null)}(),sv=function(t){function e(e,n){var r=t.call(this)||this;return r.submitted=!1,r._directives=[],r.ngSubmit=new Ao,r.form=new rv({},$g(e),Qg(n)),r}return o(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;iv.then(function(){var n=e._findContainer(t.path);t.control=n.registerControl(t.name,t.control),Yg(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;iv.then(function(){var n,r,o=e._findContainer(t.path);o&&o.removeControl(t.name),(r=(n=e._directives).indexOf(t))>-1&&n.splice(r,1)})},e.prototype.addFormGroup=function(t){var e=this;iv.then(function(){var n=e._findContainer(t.path),r=new rv({});(function(t,e){null==t&&Zg(e,"Cannot find control with"),t.validator=Ng.compose([t.validator,e.validator]),t.asyncValidator=Ng.composeAsync([t.asyncValidator,e.asyncValidator])})(r,t),n.registerControl(t.name,r),r.updateValueAndValidity({emitEvent:!1})})},e.prototype.removeFormGroup=function(t){var e=this;iv.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;iv.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,e=this._directives,this.form._syncPendingControls(),e.forEach(function(t){var e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e},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},e}(Pg),av=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 \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\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
\n \n \n
\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 "+Bg+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+Wg)},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: \n Example 2: ')},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 "+Bg+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+Wg)},t.ngFormWarning=function(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")},t}(),lv=new Ut("NgFormSelectorWarning"),uv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(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 Gg(this.name,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 $g(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Qg(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){},e}(Pg),cv=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}var n;return o(e,t),n=e,e.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof sv||av.modelGroupParentException()},e}(uv),hv=function(){return Promise.resolve(null)}(),pv=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.control=new nv,i._registered=!1,i.update=new Ao,i._parent=e,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Zg(t,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,o=void 0;return e.forEach(function(e){var i;e.constructor===Og?n=e:(i=e,Xg.some(function(t){return i.constructor===t})?(r&&Zg(t,"More than one built-in value accessor matches form control with"),r=e):(o&&Zg(t,"More than one custom value accessor matches form control with"),o=e))}),o||r||n||(Zg(t,"No valid value accessor for form control with"),null)}(i,o),i}return o(e,t),e.prototype.ngOnChanges=function(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;var n=t.model;return!!n.isFirstChange()||!qe(e,n.currentValue)}(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?Gg(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 $g(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Qg(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(){Yg(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 cv)&&this._parent instanceof uv?av.formGroupNameException():this._parent instanceof cv||this._parent instanceof sv||av.modelParentException()},e.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||av.missingNameException()},e.prototype._updateValue=function(t){var e=this;hv.then(function(){e.control.setValue(t,{emitViewToModelChange:!1})})},e.prototype._updateDisabled=function(t){var e=this,n=t.isDisabled.currentValue,r=""===n||n&&"false"!==n;hv.then(function(){r&&!e.control.disabled?e.control.disable():!r&&e.control.disabled&&e.control.enable()})},e}(Ig),dv=new Ut("NgModelWithFormControlWarning"),fv=function(){return function(){}}(),gv=function(){function t(){}return t.prototype.group=function(t,e){void 0===e&&(e=null);var n=this._reduceControls(t),r=null,o=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(r=null!=e.validators?e.validators:null,o=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(r=null!=e.validator?e.validator:null,o=null!=e.asyncValidator?e.asyncValidator:null)),new rv(n,{asyncValidators:o,updateOn:i,validators:r})},t.prototype.control=function(t,e,n){return new nv(t,e,n)},t.prototype.array=function(t,e,n){var r=this,o=t.map(function(t){return r._createControl(t)});return new ov(o,e,n)},t.prototype._reduceControls=function(t){var e=this,n={};return Object.keys(t).forEach(function(r){n[r]=e._createControl(t[r])}),n},t.prototype._createControl=function(t){return t instanceof nv||t instanceof rv||t instanceof ov?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)},t}(),vv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:lv,useValue:t.warnOnDeprecatedNgFormSelector}]}},t}(),yv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:dv,useValue:t.warnOnNgModelWithFormControl}]}},t}(),mv=rr({encapsulation:2,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:0}.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:0}.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}"],data:{}});function _v(t){return is(2,[Zi(402653184,1,{_contentWrapper:0}),(t()(),Bi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),Ji(null,0),(t()(),Bi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var bv=rr({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function wv(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Bi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==eo(t,5)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==eo(t,5).onTouched()&&r),"compositionstart"===e&&(r=!1!==eo(t,5)._compositionStart()&&r),"compositionend"===e&&(r=!1!==eo(t,5)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search=n)&&r),"ngModelChange"===e&&(o.searchChange.emit(n),r=!1!==o.filter()&&r),r},null,null)),go(5,16384,null,0,Og,[yn,pn,[2,Eg]],null,null),vo(1024,null,xg,function(t){return[t]},[Og]),go(7,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(9,16384,null,0,Rg,[[4,Ig]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,eo(e,9).ngClassUntouched,eo(e,9).ngClassTouched,eo(e,9).ngClassPristine,eo(e,9).ngClassDirty,eo(e,9).ngClassValid,eo(e,9).ngClassInvalid,eo(e,9).ngClassPending)})}function Cv(t){return is(0,[(t()(),Bi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.select(t.context.$implicit)&&r),r},null,null)),(t()(),Bi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function xv(t){return is(0,[(t()(),Bi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,_v,mv)),vo(6144,null,Qd,null,[Kd]),go(3,540672,null,0,Zd,[],{itemSize:[0,"itemSize"]},null),vo(1024,null,Gd,qd,[Zd]),go(5,245760,[[4,4],[5,4],["viewport",4]],0,Kd,[pn,An,si,[2,Gd],[2,Zf],$d],null,null),(t()(),Hi(16777216,[[2,2]],0,1,null,Cv)),go(7,409600,null,0,tf,[zn,Vn,In,[1,Kd],si],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===eo(e,5).orientation,"horizontal"!==eo(e,5).orientation)})}function Sv(t){return is(0,[(t()(),Bi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Ev(t){return is(0,[(t()(),Bi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.cancelClose()&&r),r},null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(r=0!=(o.show=!o.show)&&r),r},null,null)),(t()(),Bi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Hi(16777216,[[2,2]],null,1,null,wv)),go(7,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Hi(16777216,[[2,2]],null,1,null,xv)),go(10,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Hi(0,[[2,2],["noItems",2]],null,0,null,Sv))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,eo(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Ov(t){return is(0,[Zi(402653184,1,{reference:0}),Zi(402653184,2,{dropdown_tooltip:0}),Zi(402653184,3,{input:0}),Zi(402653184,4,{viewport:0}),Zi(402653184,5,{scroll_el:0}),(t()(),Bi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var r=!0,o=t.component;return"keyup.enter"===e&&(r=!1!==o.toggleShow()&&r),"keydown.arrowup"===e&&(r=!1!==n.preventDefault()&&r),"keydown.arrowdown"===e&&(r=!1!==n.preventDefault()&&r),"keyup.arrowup"===e&&(r=!1!==(o.focus?o.change(-1):"")&&r),"keyup.arrowdown"===e&&(r=!1!==(o.focus?o.change(1):"")&&r),"focus"===e&&(r=0!=(o.focus=!0)&&r),"blur"===e&&(r=0!=(o.focus=!1)&&r),"window:resize"===e&&(r=!1!==o.resize()&&r),"window:click"===e&&(r=!1!==(o.show?o.close():"")&&r),r},null,null)),(t()(),Bi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Bi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"showChange"===e&&(r=!1!==(o.show=n)&&r),"showChange"===e&&(r=!1!==o.updateScroll()&&r),"click"===e&&(r=!1!==o.toggleShow()&&r),r},null,null)),go(8,737280,null,0,Bf,[pn,Hf,Af,yn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Bi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),ns(10,null,["",""])),(t()(),Bi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Bi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Bi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(15,null,["",""])),(t()(),Bi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Hi(0,[[2,2],["dropdown",2]],null,0,null,Ev))],function(t,e){t(e,8,0,e.component.show,eo(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}var kv="Checkbox",Pv=function(){function t(){this.klass="default"}return t.prototype.toggle=function(){this.state=!this.state,this.onChange&&this.onChange(this.state)},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouch=t},t}(),Tv=ga,Iv=function(){function t(){if(this.build=Tv(),!t.init){var e=Tv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+kv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+kv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Rv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}return t.prototype.handleMouse=function(t){this.handleEvent(t)},t.prototype.handleTouch=function(t){this.handleEvent(t)},t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;setTimeout(function(){t.element&&t.element.nativeElement&&(t.cached_box=t.element.nativeElement.getBoundingClientRect(),t.size=Math.ceil(1.5*Math.max(t.cached_box.height,t.cached_box.width)))})},t.prototype.ngOnDestroy=function(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t.prototype.handleEvent=function(t){var e=this;this.cancelled=!1;var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,r=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:r-this.cached_box.top+"px",left:n-this.cached_box.left+"px"},this.mouse_release_cancel=this.renderer.listen("window","mouseup",function(t){return e.handleRelease(t)}),this.touch_release_cancel=this.renderer.listen("window","touchend",function(t){return e.handleRelease(t)}),this.transitioning=!0,setTimeout(function(){e.transitioning=!1,e.cancelled&&(e.show=!1)},350)},t.prototype.handleRelease=function(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t}(),Av=function(){function t(t,e){this.el=t,this.renderer=e,this.tapped=new Ao,this.touchrelease=new Ao,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}return t.prototype.ngAfterViewInit=function(){var t=this;this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",function(e){return t.handleHold(e)}),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",function(e){return t.handleHold(e)}))},t.prototype.ngOnDestroy=function(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}},t.prototype.remove=function(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)},t.prototype.handleHold=function(t){var e=this,n={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=n,this.mouse_listener=this.renderer.listen(window,"mouseup",function(t){return e.handleRelease(t)}),this.touch_listener=this.renderer.listen(window,"touchend",function(t){return e.handleRelease(t)}),this.timer=setTimeout(function(){return e.remove()},this.max_delay)},t.prototype.handleRelease=function(t){var e=this;this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(function(){var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(n-e.start.x,2)+2) div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function zv(t){return is(0,[(t()(),Bi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.toggle()&&r),r},null,null)),go(1,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),ns(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Uv(t){return is(0,[(t()(),Bi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Bi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,2).handleTouch(n)&&r),"keyup.enter"===e&&(r=!1!==o.toggle()&&r),"tapped"===e&&(r=!1!==o.toggle()&&r),r},Vv,jv)),go(2,4440064,null,0,Rv,[pn,yn],{center:[0,"center"]},null),go(3,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,zv)),go(6,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}var Fv="Buttons",Hv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new Ao,this.id="button-"+Math.floor(999999*Math.random())}return t.prototype.ngOnChanges=function(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()},t.prototype.ngAfterViewInit=function(){this.setClass(this.klass)},t.prototype.setClass=function(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))},t.prototype.setGroup=function(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")},t.prototype.setState=function(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")},t.prototype.tap=function(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this._onChange=t},t.prototype.registerOnTouched=function(t){this._onTouch=t},t}(),Bv=ga,Wv=function(){function t(){if(this.build=Bv(),!t.init){var e=Bv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Fv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Fv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Gv=rr({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function Yv(t){return is(0,[(t()(),Bi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,1).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,1).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.tap()&&r),r},Vv,jv)),go(1,4440064,null,0,Rv,[pn,yn],null,null),go(2,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),Ji(0,0)],function(t,e){t(e,1,0)},null)}var qv=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t,e){switch(void 0===e&&(e="html"),e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}},t}(),Zv="Pipes",$v=ga,Qv=function(){function t(){if(this.build=$v(),!t.init){var e=$v();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Zv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Zv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Xv=function(){function t(){this._timers={},this._intervals={},this._subscriptions={}}return t.prototype.timeout=function(t,e,n){var r=this;if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(function(){e(),r._timers[t]=null},n)},t.prototype.clearTimeout=function(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)},t.prototype.interval=function(t,e,n){if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(function(){return e()},n)},t.prototype.clearInterval=function(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)},t.prototype.subscription=function(t,e){this.unsub(t),this._subscriptions[t]=e},t.prototype.unsub=function(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof m?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)},t}(),Kv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.ngOnDestroy=function(){for(var t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(var t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(var t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)},e}(Xv),Jv=function(){return function(){}}(),ty=function(){return function(){}}(),ey=function(){function t(t){var e=this;this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?function(){e.headers=new Map,t.split("\n").forEach(function(t){var n=t.indexOf(":");if(n>0){var r=t.slice(0,n),o=r.toLowerCase(),i=t.slice(n+1).trim();e.maybeSetNormalizedName(r,o),e.headers.has(o)?e.headers.get(o).push(i):e.headers.set(o,[i])}})}:function(){e.headers=new Map,Object.keys(t).forEach(function(n){var r=t[n],o=n.toLowerCase();"string"==typeof r&&(r=[r]),r.length>0&&(e.headers.set(o,r),e.maybeSetNormalizedName(n,o))})}:this.headers=new Map}return t.prototype.has=function(t){return this.init(),this.headers.has(t.toLowerCase())},t.prototype.get=function(t){this.init();var e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null},t.prototype.keys=function(){return this.init(),Array.from(this.normalizedNames.values())},t.prototype.getAll=function(t){return this.init(),this.headers.get(t.toLowerCase())||null},t.prototype.append=function(t,e){return this.clone({name:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({name:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({name:t,value:e,op:"d"})},t.prototype.maybeSetNormalizedName=function(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)},t.prototype.init=function(){var e=this;this.lazyInit&&(this.lazyInit instanceof t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(t){return e.applyUpdate(t)}),this.lazyUpdate=null))},t.prototype.copyFrom=function(t){var e=this;t.init(),Array.from(t.headers.keys()).forEach(function(n){e.headers.set(n,t.headers.get(n)),e.normalizedNames.set(n,t.normalizedNames.get(n))})},t.prototype.clone=function(e){var n=new t;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([e]),n},t.prototype.applyUpdate=function(t){var e=t.name.toLowerCase();switch(t.op){case"a":case"s":var n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);var r=("a"===t.op?this.headers.get(e):void 0)||[];r.push.apply(r,p(n)),this.headers.set(e,r);break;case"d":var o=t.value;if(o){var i=this.headers.get(e);if(!i)return;0===(i=i.filter(function(t){return-1===o.indexOf(t)})).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,i)}else this.headers.delete(e),this.normalizedNames.delete(e)}},t.prototype.forEach=function(t){var e=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return t(e.normalizedNames.get(n),e.headers.get(n))})},t}(),ny=function(){function t(){}return t.prototype.encodeKey=function(t){return ry(t)},t.prototype.encodeValue=function(t){return ry(t)},t.prototype.decodeKey=function(t){return decodeURIComponent(t)},t.prototype.decodeValue=function(t){return decodeURIComponent(t)},t}();function ry(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}var oy=function(){function t(t){var e,n,r,o=this;if(void 0===t&&(t={}),this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new ny,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=(e=t.fromString,n=this.encoder,r=new Map,e.length>0&&e.split("&").forEach(function(t){var e=t.indexOf("="),o=h(-1==e?[n.decodeKey(t),""]:[n.decodeKey(t.slice(0,e)),n.decodeValue(t.slice(e+1))],2),i=o[0],s=o[1],a=r.get(i)||[];a.push(s),r.set(i,a)}),r)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(function(e){var n=t.fromObject[e];o.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}return t.prototype.has=function(t){return this.init(),this.map.has(t)},t.prototype.get=function(t){this.init();var e=this.map.get(t);return e?e[0]:null},t.prototype.getAll=function(t){return this.init(),this.map.get(t)||null},t.prototype.keys=function(){return this.init(),Array.from(this.map.keys())},t.prototype.append=function(t,e){return this.clone({param:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({param:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({param:t,value:e,op:"d"})},t.prototype.toString=function(){var t=this;return this.init(),this.keys().map(function(e){var n=t.encoder.encodeKey(e);return t.map.get(e).map(function(e){return n+"="+t.encoder.encodeValue(e)}).join("&")}).join("&")},t.prototype.clone=function(e){var n=new t({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat([e]),n},t.prototype.init=function(){var t=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(e){return t.map.set(e,t.cloneFrom.map.get(e))}),this.updates.forEach(function(e){switch(e.op){case"a":case"s":var n=("a"===e.op?t.map.get(e.param):void 0)||[];n.push(e.value),t.map.set(e.param,n);break;case"d":if(void 0===e.value){t.map.delete(e.param);break}var r=t.map.get(e.param)||[],o=r.indexOf(e.value);-1!==o&&r.splice(o,1),r.length>0?t.map.set(e.param,r):t.map.delete(e.param)}}),this.cloneFrom=this.updates=null)},t}();function iy(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function sy(t){return"undefined"!=typeof Blob&&t instanceof Blob}function ay(t){return"undefined"!=typeof FormData&&t instanceof FormData}var ly=function(){function t(t,e,n,r){var o;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,o=r):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.params&&(this.params=o.params)),this.headers||(this.headers=new ey),this.params){var i=this.params.toString();if(0===i.length)this.urlWithParams=e;else{var s=e.indexOf("?");this.urlWithParams=e+(-1===s?"?":s=200&&this.status<300}}(),hy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=uy.ResponseHeader,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(cy),py=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=uy.Response,n.body=void 0!==e.body?e.body:null,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(cy),dy=function(t){function e(e){var n=t.call(this,e,0,"Unknown Error")||this;return n.name="HttpErrorResponse",n.ok=!1,n.message=n.status>=200&&n.status<300?"Http failure during parsing for "+(e.url||"(unknown url)"):"Http failure response for "+(e.url||"(unknown url)")+": "+e.status+" "+e.statusText,n.error=e.error||null,n}return o(e,t),e}(cy);function fy(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}var gy=function(){function t(t){this.handler=t}return t.prototype.request=function(t,e,n){var r,o=this;if(void 0===n&&(n={}),t instanceof ly)r=t;else{var i;i=n.headers instanceof ey?n.headers:new ey(n.headers);var s=void 0;n.params&&(s=n.params instanceof oy?n.params:new oy({fromObject:n.params})),r=new ly(t,e,void 0!==n.body?n.body:null,{headers:i,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}var a=nl(r).pipe(Gl(function(t){return o.handler.handle(t)}));if(t instanceof ly||"events"===n.observe)return a;var l=a.pipe(hl(function(t){return t instanceof py}));switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return l.pipe(K(function(t){if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return l.pipe(K(function(t){return t.body}))}case"response":return l;default:throw new Error("Unreachable: unhandled observe type "+n.observe+"}")}},t.prototype.delete=function(t,e){return void 0===e&&(e={}),this.request("DELETE",t,e)},t.prototype.get=function(t,e){return void 0===e&&(e={}),this.request("GET",t,e)},t.prototype.head=function(t,e){return void 0===e&&(e={}),this.request("HEAD",t,e)},t.prototype.jsonp=function(t,e){return this.request("JSONP",t,{params:(new oy).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})},t.prototype.options=function(t,e){return void 0===e&&(e={}),this.request("OPTIONS",t,e)},t.prototype.patch=function(t,e,n){return void 0===n&&(n={}),this.request("PATCH",t,fy(n,e))},t.prototype.post=function(t,e,n){return void 0===n&&(n={}),this.request("POST",t,fy(n,e))},t.prototype.put=function(t,e,n){return void 0===n&&(n={}),this.request("PUT",t,fy(n,e))},t}(),vy=function(){function t(t,e){this.next=t,this.interceptor=e}return t.prototype.handle=function(t){return this.interceptor.intercept(t,this.next)},t}(),yy=new Ut("HTTP_INTERCEPTORS"),my=function(){function t(){}return t.prototype.intercept=function(t,e){return e.handle(t)},t}(),_y=/^\)\]\}',?\n/,by=function(){return function(){}}(),wy=function(){function t(){}return t.prototype.build=function(){return new XMLHttpRequest},t}(),Cy=function(){function t(t){this.xhrFactory=t}return t.prototype.handle=function(t){var e=this;if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new R(function(n){var r=e.xhrFactory.build();if(r.open(t.method,t.urlWithParams),t.withCredentials&&(r.withCredentials=!0),t.headers.forEach(function(t,e){return r.setRequestHeader(t,e.join(","))}),t.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){var o=t.detectContentTypeHeader();null!==o&&r.setRequestHeader("Content-Type",o)}if(t.responseType){var i=t.responseType.toLowerCase();r.responseType="json"!==i?i:"text"}var s=t.serializeBody(),a=null,l=function(){if(null!==a)return a;var e=1223===r.status?204:r.status,n=r.statusText||"OK",o=new ey(r.getAllResponseHeaders()),i=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(r)||t.url;return a=new hy({headers:o,status:e,statusText:n,url:i})},u=function(){var e=l(),o=e.headers,i=e.status,s=e.statusText,a=e.url,u=null;204!==i&&(u=void 0===r.response?r.responseText:r.response),0===i&&(i=u?200:0);var c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof u){var h=u;u=u.replace(_y,"");try{u=""!==u?JSON.parse(u):null}catch(p){u=h,c&&(c=!1,u={error:p,text:u})}}c?(n.next(new py({body:u,headers:o,status:i,statusText:s,url:a||void 0})),n.complete()):n.error(new dy({error:u,headers:o,status:i,statusText:s,url:a||void 0}))},c=function(t){var e=l().url,o=new dy({error:t,status:r.status||0,statusText:r.statusText||"Unknown Error",url:e||void 0});n.error(o)},h=!1,p=function(e){h||(n.next(l()),h=!0);var o={type:uy.DownloadProgress,loaded:e.loaded};e.lengthComputable&&(o.total=e.total),"text"===t.responseType&&r.responseText&&(o.partialText=r.responseText),n.next(o)},d=function(t){var e={type:uy.UploadProgress,loaded:t.loaded};t.lengthComputable&&(e.total=t.total),n.next(e)};return r.addEventListener("load",u),r.addEventListener("error",c),t.reportProgress&&(r.addEventListener("progress",p),null!==s&&r.upload&&r.upload.addEventListener("progress",d)),r.send(s),n.next({type:uy.Sent}),function(){r.removeEventListener("error",c),r.removeEventListener("load",u),t.reportProgress&&(r.removeEventListener("progress",p),null!==s&&r.upload&&r.upload.removeEventListener("progress",d)),r.abort()}})},t}(),xy=new Ut("XSRF_COOKIE_NAME"),Sy=new Ut("XSRF_HEADER_NAME"),Ey=function(){return function(){}}(),Oy=function(){function t(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return t.prototype.getToken=function(){if("server"===this.platform)return null;var t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Ma(t,this.cookieName),this.lastCookieString=t),this.lastToken},t}(),ky=function(){function t(t,e){this.tokenService=t,this.headerName=e}return t.prototype.intercept=function(t,e){var n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);var r=this.tokenService.getToken();return null===r||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,r)})),e.handle(t)},t}(),Py=function(){function t(t,e){this.backend=t,this.injector=e,this.chain=null}return t.prototype.handle=function(t){if(null===this.chain){var e=this.injector.get(yy,[]);this.chain=e.reduceRight(function(t,e){return new vy(t,e)},this.backend)}return this.chain.handle(t)},t}(),Ty=function(){function t(){}var e;return e=t,t.disable=function(){return{ngModule:e,providers:[{provide:ky,useClass:my}]}},t.withOptions=function(t){return void 0===t&&(t={}),{ngModule:e,providers:[t.cookieName?{provide:xy,useValue:t.cookieName}:[],t.headerName?{provide:Sy,useValue:t.headerName}:[]]}},t}(),Iy=function(){return function(){}}(),Ry=function(){function t(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new rl(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}return t.prototype.init=function(){return l(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.loadFromFile("api")];case 1:return t.sent(),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete(),[2]}})})},Object.defineProperty(t.prototype,"setup",{get:function(){return this._setup},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"app_name",{get:function(){return this._app_name},enumerable:!0,configurable:!0}),t.prototype.isSetup=function(t){return this._is_setup_observer.subscribe(t)},t.prototype.log=function(t,e,n,r,o){if(void 0===r&&(r="debug"),void 0===o&&(o=!1),window.debug||o){var i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i,[n])):console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i))}},t.prototype.get=function(t){var e=t.split("."),n=null;return"session"===e[0]?(e.shift(),n=fa(e,this._settings.session)):"local"===e[0]?(e.shift(),n=fa(e,this._settings.local)):n=fa(e,this._settings.api)||fa(e,this._settings.session)||fa(e,this._settings.local),n},t.prototype.loadStore=function(t,e){if(e)for(var n=0;n5?[2,Promise.resolve()]:(this._promises[r="load|"+t+"|"+e]||(this._promises[r]=new Promise(function(s,a){o.http.get(e).subscribe(function(e){o._settings[t]=i({},o._settings[t]||{},e||{})},function(i){o.log("Settings",'Failed to load settings from "'+e+'"'),o._promises[r]=null,o.loadFromFile(t,e,++n).then(function(){return s()})},function(){return s()})})),[2,this._promises[r]])})})},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(gy))},token:t,providedIn:"root"}),t}(),Ay=["control","shift","alt","meta","os"],My=function(){function t(){var t=this;this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.last_down!==n&&(t.keydown_states[n]||(t.keydown_states[n]=new rl(null),t.keydown_observers[n]=t.keydown_states[n].asObservable()),t.keydown_states[n].next(t.counter++),t.combo_end.indexOf(n)>=0&&e.preventDefault(),t.last_down=n)}),window.addEventListener("keyup",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.keydown_states[n].next(null),t.last_down===n&&(t.last_down=null)})}return t.prototype.listen=function(t,e){var n=this,r=(t=t instanceof Array?t:t.split("+")).map(function(t){return n.mapKey(t.toLowerCase())});if(r.length>0&&this.validCombination(r)){this.registered_combos.push(r);var o=r[r.length-1];return this.keydown_states[o]||(this.keydown_states[o]=new rl(null),this.keydown_observers[o]=this.keydown_states[o].asObservable()),this.updateCombinationEndList(),this.keydown_observers[o].subscribe(function(t){if(t){var o=[];if(r.length>1){for(var i=0,s=r;io[l+1])return}e()}})}return null},t.prototype.mapKey=function(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t},t.prototype.updateCombinationEndList=function(){for(var t,e=0,n=this.registered_combos;e0},t.ngInjectableDef=Ot({factory:function(){return new t},token:t,providedIn:"root"}),t}(),Ny=[],Dy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=da(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.repositories=function(){var t=this,e="repositories";return this._promises[e]||(this._promises[e]=new Promise(function(n,r){var o;t.http.get(t.api_route+"/repositories").subscribe(function(t){return o=t},function(n){r(n),delete t._promises[e]},function(){n(o),t.timeout(e,function(){return delete t._promises[e]},1e3)})})),this._promises[e]},e.prototype.commits=function(t){var e=this,n="commits|"+da(t);return this._promises[n]||(this._promises[n]=new Promise(function(t,r){var o;e.http.get(e.api_route+"/repositories_commits").subscribe(function(t){return o=t},function(t){r(t),delete e._promises[n]},function(){t(o),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.versions=function(t){var e=this,n="versions|"+t;return this._promises[n]||(this._promises[n]=new Promise(function(r,o){var i,s=e.api_route+"/"+encodeURIComponent(t);e.http.get(s).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[n]},function(){r(i),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.driverCommits=function(t,e){var n=this,r=da(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.build=function(t){var e=this,n=da(t),r="build|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){e.http.post(""+e.api_route,n).subscribe(function(t){return null},function(t){o(t),delete e._promises[r]},function(){t(),delete e._promises[r]})})),this._promises[r]},e.prototype.clean=function(t,e){var n=this,r=da(e),o="clean|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(t,e){n.http.delete(n.api_route+(r?"?"+r:"")).subscribe(function(t){return null},function(t){e(t),delete n._promises[o]},function(){t(),delete n._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/build":"/build"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(gy))},token:e,providedIn:"root"}),e}(Xv),jy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=da(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.specCommits=function(t,e){var n=this,r=da(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.run=function(t){var e=this;for(var n in t)null==t[n]&&delete t[n];var r=da(t),o="build|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(n,i){var s;e.http.post(e.api_route+(r?"?"+r:""),t,{responseType:"text"}).subscribe(function(t){return s=t},function(t){i(t),delete e._promises[o]},function(){n(s),delete e._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/test":"/test"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(gy))},token:e,providedIn:"root"}),e}(Xv),Vy=new R(P),Ly=function(){function t(t,e){this.delay=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new zy(t,this.delay,this.scheduler))},t}(),zy=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.delay=n,o.scheduler=r,o.queue=[],o.active=!1,o.errored=!1,o}return o(e,t),e.dispatch=function(t){for(var e=t.source,n=e.queue,r=t.scheduler,o=t.destination;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(o);if(n.length>0){var i=Math.max(0,n[0].time-r.now());this.schedule(t,i)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.destination.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new Uy(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(Nd.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.scheduleNotification(Nd.createComplete()),this.unsubscribe()},e}(E),Uy=function(){return function(t,e){this.time=t,this.notification=e}}(),Fy="Service workers are disabled or not supported by this browser",Hy=function(){function t(t){if(this.serviceWorker=t,t){var e=id(t,"controllerchange").pipe(K(function(){return t.controller})),n=Ul(ul(function(){return nl(t.controller)}),e);this.worker=n.pipe(hl(function(t){return!!t})),this.registration=this.worker.pipe(Vl(function(){return t.getRegistration()}));var r=id(t,"message").pipe(K(function(t){return t.data})).pipe(hl(function(t){return t&&t.type})).pipe(gt(new V));r.connect(),this.events=r}else this.worker=this.events=this.registration=(o=Fy,ul(function(){return Rd(new Error(o))}));var o}return t.prototype.postMessage=function(t,e){return this.worker.pipe(Rl(1),_l(function(n){n.postMessage(i({action:t},e))})).toPromise().then(function(){})},t.prototype.postMessageWithStatus=function(t,e,n){var r=this.waitForStatus(n),o=this.postMessage(t,e);return Promise.all([r,o]).then(function(){})},t.prototype.generateNonce=function(){return Math.round(1e7*Math.random())},t.prototype.eventsOfType=function(t){return this.events.pipe(hl(function(e){return e.type===t}))},t.prototype.nextEventOfType=function(t){return this.eventsOfType(t).pipe(Rl(1))},t.prototype.waitForStatus=function(t){return this.eventsOfType("STATUS").pipe(hl(function(e){return e.nonce===t}),Rl(1),K(function(t){if(!t.status)throw new Error(t.error)})).toPromise()},Object.defineProperty(t.prototype,"isEnabled",{get:function(){return!!this.serviceWorker},enumerable:!0,configurable:!0}),t}(),By=function(){function t(t){if(this.sw=t,this.subscriptionChanges=new V,!t.isEnabled)return this.messages=Vy,this.notificationClicks=Vy,void(this.subscription=Vy);this.messages=this.sw.eventsOfType("PUSH").pipe(K(function(t){return t.data})),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(K(function(t){return t.data})),this.pushManager=this.sw.registration.pipe(K(function(t){return t.pushManager}));var e=this.pushManager.pipe(Vl(function(t){return t.getSubscription()}));this.subscription=lt(e,this.subscriptionChanges)}return Object.defineProperty(t.prototype,"isEnabled",{get:function(){return this.sw.isEnabled},enumerable:!0,configurable:!0}),t.prototype.requestSubscription=function(t){var e=this;if(!this.sw.isEnabled)return Promise.reject(new Error(Fy));for(var n={userVisibleOnly:!0},r=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),o=new Uint8Array(new ArrayBuffer(r.length)),i=0;i
'+e+"
",n,r,t)},e.prototype.notifySuccess=function(t,e,n){this.notify("success",t,e,n)},e.prototype.notifyError=function(t,e,n){this.notify("error",t,e,n)},e.prototype.notifyInfo=function(t,e,n){this.notify("info",t,e,n)},e.prototype.log=function(t,e,n,r,o){void 0===r&&(r="debug"),void 0===o&&(o=!1),this._settings.log(t,e,n,r,o)},e.prototype.navigate=function(t,e){var n=t instanceof Array?t.slice():[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})},e.prototype.navigateBack=function(){if(this._route_trail&&this._route_trail.length>0){var t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])},e.prototype.get=function(t){return this._subjects[t]&&this._subjects[t]instanceof rl?this._subjects[t].getValue():null},e.prototype.listen=function(t,e){return this._observers[t]?this._observers[t].subscribe(e):null},e.prototype.set=function(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new rl(e),this._observers[t]=this._subjects[t].asObservable())},e.prototype.init=function(){var t=this;if(!this._settings.setup)return this.timeout("init",function(){return t.init()});this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(function(e){t.log("CACHE","Update available: current version is "+e.current.hash+" available version is "+e.available.hash),t.notifyInfo("Newer version of the app is available","Refresh",function(){return location.reload()})}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],function(){t.navigate("bootstrap",{clear:!0})})},e.prototype.registerOverlays=function(){if(Ny)for(var t=0,e=Ny;tt.driver.localeCompare(n.id)?e:n},null),t.updateSpecCommits()),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.updateSpecCommits=function(){var t=this;this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(function(e){t.spec_commit_list=(e||[]).map(function(t){return{id:t.commit,name:t.commit,author:t.author,date:ga(t.date).format("DD MMM YYYY h:mm A")}}),t.spec_commit_list.unshift({id:null,name:"Latest Commit"}),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.test=function(){var t=this;if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";var e=function(e){e instanceof Object&&(e=e.error),t.test_results=t.styleResults(e||"");var n=t.service.get("TEST.results")||{},r=e.indexOf("exited with 0")>=0;n[t.repo+"|"+t.driver]=r?"passed":"failed",t.service.set("TEST.results",n),t.testing=!1,t.timeout("scroll",function(){return t.body.nativeElement.scrollTo(0,t.body.nativeElement.scrollHeight)},10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(e,e)}},e.prototype.styleResults=function(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')},e}(Kv),nm=rr({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function rm(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Spec Commit:"])),(t()(),Bi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.spec_commit=n)&&r),r},Ov,bv)),go(5,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(7,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(9,16384,null,0,Rg,[[4,Ig]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,eo(e,9).ngClassUntouched,eo(e,9).ngClassTouched,eo(e,9).ngClassPristine,eo(e,9).ngClassDirty,eo(e,9).ngClassValid,eo(e,9).ngClassInvalid,eo(e,9).ngClassPending)})}function om(t){return is(0,[(t()(),Bi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),es(128,1,new Array(3))],null,function(t,e){var n=e.component,r=function(t,e,n,r){if($e.isWrapped(r)){r=$e.unwrap(r);var o=t.def.nodes[0].bindingIndex+0,i=$e.unwrap(t.oldValues[o]);t.oldValues[o]=new $e(i)}return r}(e,0,0,t(e,1,0,eo(e.parent.parent,0),n.test_results,"html"));t(e,0,0,r)})}function im(t){return is(0,[(t()(),Bi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Repository:"])),(t()(),Bi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),ns(6,null,["",""])),(t()(),Bi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Driver:"])),(t()(),Bi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),ns(11,null,["",""])),(t()(),Bi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Commit:"])),(t()(),Bi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.commit=n)&&r),r},Ov,bv)),go(17,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(19,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(21,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Spec:"])),(t()(),Bi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.spec=n)&&r),"ngModelChange"===e&&(r=!1!==o.updateSpecCommits()&&r),r},Ov,bv)),go(27,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(29,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(31,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Hi(16777216,null,null,1,null,rm)),go(33,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Bi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Bi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Bi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.force=n)&&r),r},Uv,Lv)),go(38,49152,null,0,Pv,[],{klass:[0,"klass"],label:[1,"label"]},null),vo(1024,null,xg,function(t){return[t]},[Pv]),go(40,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(42,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Bi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.debug=n)&&r),r},Uv,Lv)),go(45,49152,null,0,Pv,[],{klass:[0,"klass"],label:[1,"label"]},null),vo(1024,null,xg,function(t){return[t]},[Pv]),go(47,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(49,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Bi(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Bi(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.test()&&r),r},Yv,Gv)),vo(5120,null,xg,function(t){return[t]},[Hv]),go(55,4767744,null,0,Hv,[pn,yn],null,{tapped:"tapped"}),go(56,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),ns(-1,0,["Run!"])),(t()(),Bi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),ns(59,null,[" "," "])),(t()(),Hi(16777216,null,null,1,null,om)),go(61,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,63).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,63).handleTouch(n)&&r),"tapped"===e&&(r=0!=(o.show=!o.show)&&r),r},Vv,jv)),go(63,4440064,null,0,Rv,[pn,yn],{klass:[0,"klass"],center:[1,"center"]},null),go(64,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,eo(e,21).ngClassUntouched,eo(e,21).ngClassTouched,eo(e,21).ngClassPristine,eo(e,21).ngClassDirty,eo(e,21).ngClassValid,eo(e,21).ngClassInvalid,eo(e,21).ngClassPending),t(e,26,0,eo(e,31).ngClassUntouched,eo(e,31).ngClassTouched,eo(e,31).ngClassPristine,eo(e,31).ngClassDirty,eo(e,31).ngClassValid,eo(e,31).ngClassInvalid,eo(e,31).ngClassPending),t(e,37,0,eo(e,42).ngClassUntouched,eo(e,42).ngClassTouched,eo(e,42).ngClassPristine,eo(e,42).ngClassDirty,eo(e,42).ngClassValid,eo(e,42).ngClassInvalid,eo(e,42).ngClassPending),t(e,44,0,eo(e,49).ngClassUntouched,eo(e,49).ngClassTouched,eo(e,49).ngClassPristine,eo(e,49).ngClassDirty,eo(e,49).ngClassValid,eo(e,49).ngClassInvalid,eo(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_up":"keyboard_arrow_down")})}function sm(t){return is(0,[(t()(),Bi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(-1,null,["arrow_back"])),(t()(),Bi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(-1,null,["Select a driver from the sidebar"]))],null,null)}function am(t){return is(0,[(e=0,n=qv,r=[Yu],yo(-1,e|=16,null,0,n,n,r)),Zi(671088640,1,{body:0}),(t()(),Bi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,im)),go(4,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Hi(0,[["select",2]],null,0,null,sm))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,eo(e,5))},null);var e,n,r}function lm(t){return is(0,[(t()(),Bi(0,0,null,null,1,"app-workspace",[],null,null,null,am,nm)),go(1,245760,null,0,em,[tm,dh],null,null)],function(t,e){t(e,1,0)},null)}var um=Wr("app-workspace",em,lm,{},{},[]),cm=function(){function t(){this.menu=!0,this.menuChange=new Ao}return t.prototype.toggleMenu=function(){this.menu=!this.menu,this.menuChange.emit(this.menu)},t}(),hm=rr({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function pm(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,2).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.toggleMenu()&&r),r},Vv,jv)),go(2,4440064,null,0,Rv,[pn,yn],{klass:[0,"klass"]},null),go(3,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(-1,null,["menu"])),(t()(),Bi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Bi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Bi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),ns(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}var dm=function(t){function e(e){var n=t.call(this)||this;return n.service=e,n.repository_list=[],n.status={},n}return o(e,t),e.prototype.ngOnInit=function(){var t=this;this.service.set("TEST.repository",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",function(){return t.updateRepositoryList()},6e4),this.subscription("test_results",this.service.listen("TEST.results",function(e){t.status=e||{}})),this.subscription("repository",this.service.listen("TEST.repository",function(e){e&&(t.repo={id:e,name:e},t.search_str="",t.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",function(e){t.driver=e}))},e.prototype.setRepository=function(t){this.service.navigate([t]),this.search_str="",this.updateDriverList()},e.prototype.setDriver=function(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t])},e.prototype.filter=function(t){this.filtered_list=this.driver_list.filter(function(e){return e.toLowerCase().indexOf(t.toLowerCase())>=0})},e.prototype.updateDriverList=function(){var t=this;this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(function(e){t.driver_list=e||[],t.filter(""),t.loading=!1},function(e){return t.loading=!1})},e.prototype.updateRepositoryList=function(){var t=this;this.service.Build.repositories().then(function(e){t.repository_list=(e||[]).map(function(t){return{id:t,name:t}}),t.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),t.updateDriverList()})},e}(Kv),fm=rr({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function gm(t){return is(0,[(t()(),Bi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.setDriver(t.context.$implicit)&&r),r},null,null)),go(1,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Bi(3,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(4,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]),t(e,4,0,e.context.$implicit)})}function vm(t){return is(0,[(t()(),Bi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function ym(t){return is(0,[(t()(),Bi(0,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.repo=n)&&r),"ngModelChange"===e&&(r=!1!==o.setRepository(n.id)&&r),r},Ov,bv)),go(3,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(5,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(7,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(8,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Bi(9,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(10,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(-1,null,["search"])),(t()(),Bi(12,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==eo(t,13)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==eo(t,13).onTouched()&&r),"compositionstart"===e&&(r=!1!==eo(t,13)._compositionStart()&&r),"compositionend"===e&&(r=!1!==eo(t,13)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search_str=n)&&r),"ngModelChange"===e&&(r=!1!==o.filter(n)&&r),r},null,null)),go(13,16384,null,0,Og,[yn,pn,[2,Eg]],null,null),vo(1024,null,xg,function(t){return[t]},[Og]),go(15,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(17,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(18,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,gm)),go(20,278528,null,0,ja,[zn,Vn,In],{ngForOf:[0,"ngForOf"]},null),(t()(),Hi(16777216,null,null,1,null,vm)),go(22,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,3,0,"simple",n.repository_list||Ir,"ACA Drivers"),t(e,5,0,n.repo),t(e,15,0,n.search_str),t(e,20,0,n.filtered_list),t(e,22,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,2,0,eo(e,7).ngClassUntouched,eo(e,7).ngClassTouched,eo(e,7).ngClassPristine,eo(e,7).ngClassDirty,eo(e,7).ngClassValid,eo(e,7).ngClassInvalid,eo(e,7).ngClassPending),t(e,12,0,eo(e,17).ngClassUntouched,eo(e,17).ngClassTouched,eo(e,17).ngClassPristine,eo(e,17).ngClassDirty,eo(e,17).ngClassValid,eo(e,17).ngClassInvalid,eo(e,17).ngClassPending)})}var mm=rr({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:16em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:16em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function _m(t){return is(0,[(t()(),Bi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var r=!0;return"menuChange"===e&&(r=!1!==(t.component.show_menu=n)&&r),r},pm,hm)),go(3,49152,null,0,cm,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Bi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Bi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(6,0,null,null,1,"sidebar",[],null,null,null,ym,fm)),go(7,245760,null,0,dm,[tm],null,null),(t()(),Bi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Bi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),go(10,212992,null,0,Op,[Ep,zn,sn,[8,null],An],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function bm(t){return is(0,[(t()(),Bi(0,0,null,null,1,"app-root",[],null,null,null,_m,mm)),go(1,49152,null,0,ya,[],null,null)],null,null)}var wm=Wr("app-root",ya,bm,{},{},[]),Cm=function(){return function(){}}(),xm=function(){return function(){}}(),Sm=ca(va,[ya],function(t){return function(t){for(var e={},n=[],r=!1,o=0;o Date: Wed, 12 Jun 2019 16:50:23 +1000 Subject: [PATCH 0086/1365] [Task Runner] Tweak search, update driver listing display --- www/index.html | 2 +- www/main-es2015.03e22bf1a315c027e1ae.js | 1 - www/main-es2015.144e194cfd63f43c4197.js | 1 + www/main-es5.33cf6bf03f100d29adae.js | 1 - www/main-es5.37b7e9a21a91f80edc18.js | 1 + www/ngsw.json | 12 ++++++------ 6 files changed, 9 insertions(+), 9 deletions(-) delete mode 100644 www/main-es2015.03e22bf1a315c027e1ae.js create mode 100644 www/main-es2015.144e194cfd63f43c4197.js delete mode 100644 www/main-es5.33cf6bf03f100d29adae.js create mode 100644 www/main-es5.37b7e9a21a91f80edc18.js diff --git a/www/index.html b/www/index.html index 716312eb72b..9a5653b9da6 100644 --- a/www/index.html +++ b/www/index.html @@ -31,5 +31,5 @@
Javascript is required for this site to run.
- + diff --git a/www/main-es2015.03e22bf1a315c027e1ae.js b/www/main-es2015.03e22bf1a315c027e1ae.js deleted file mode 100644 index f922f945d95..00000000000 --- a/www/main-es2015.03e22bf1a315c027e1ae.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",s="hour",r="day",i="week",o="month",l="quarter",a="year",c=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,u=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var s=String(t);return!s||s.length>=e?t:""+Array(e+1-s.length).join(n)+t},d={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),s=Math.floor(n/60),r=n%60;return(e<=0?"+":"-")+h(s,2,"0")+":"+h(r,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,o),r=e-s<0,i=t.clone().add(n+(r?-1:1),o);return Number(-(n+(e-s)/(r?s-i:i-s))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(c){return{M:o,y:a,w:i,d:r,h:s,m:n,s:e,ms:t,Q:l}[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},p={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=p;var m=function(t){return t instanceof w},_=function(t,e,n){var s;if(!t)return null;if("string"==typeof t)g[t]&&(s=t),e&&(g[t]=e,s=t);else{var r=t.name;g[r]=t,s=r}return n||(f=s),s},v=function(t,e,n){if(m(t))return t.clone();var s=e?"string"==typeof e?{format:e,pl:n}:e:{};return s.date=t,new w(s)},y=d;y.l=_,y.i=m,y.w=function(t,e){return v(t,{locale:e.$L,utc:e.$u})};var w=function(){function h(t){this.$L=this.$L||_(t.locale,null,!0)||f,this.parse(t)}var d=h.prototype;return d.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(y.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var s=e.match(c);if(s)return n?new Date(Date.UTC(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)):new Date(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)}return new Date(e)}(t),this.init()},d.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},d.$utils=function(){return y},d.isValid=function(){return!("Invalid Date"===this.$d.toString())},d.isSame=function(t,e){var n=v(t);return this.startOf(e)<=n&&n<=this.endOf(e)},d.isAfter=function(t,e){return v(t){throw t})}const l={closed:!0,next(t){},error(t){if(i.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},a=Array.isArray||(t=>t&&"number"==typeof t.length);function c(t){return null!==t&&"object"==typeof t}function u(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}u.prototype=Object.create(Error.prototype);const h=u,d=(()=>{class t{constructor(t){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let t,e=!1;if(this.closed)return;let{_parent:n,_parents:r,_unsubscribe:i,_subscriptions:o}=this;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;let l=-1,u=r?r.length:0;for(;n;)n.remove(this),n=++lt.concat(e instanceof h?e.errors:e),[])}const f="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class g extends d{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof g?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[f](){return this}static create(t,e,n){const s=new g(t,e,n);return s.syncErrorThrowable=!1,s}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parent:t,_parents:e}=this;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=t,this._parents=e,this}}class m extends g{constructor(t,e,n,r){let i;super(),this._parentSubscriber=t;let o=this;s(e)?i=e:e&&(i=e.next,n=e.error,r=e.complete,e!==l&&(s((o=Object.create(e)).unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=i,this._error=n,this._complete=r}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;i.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=i;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):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);i.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),i.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!i.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(s){return i.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=s,t.syncErrorThrown=!0,!0):(o(s),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const _="function"==typeof Symbol&&Symbol.observable||"@@observable";function v(){}function y(...t){return w(t)}function w(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:v}const b=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:s}=this,r=function(t,e,n){if(t){if(t instanceof g)return t;if(t[f])return t[f]()}return t||e||n?new g(t,e,n):new g(l)}(t,e,n);if(r.add(s?s.call(r,this.source):this.source||i.useDeprecatedSynchronousErrorHandling&&!r.syncErrorThrowable?this._subscribe(r):this._trySubscribe(r)),i.useDeprecatedSynchronousErrorHandling&&r.syncErrorThrowable&&(r.syncErrorThrowable=!1,r.syncErrorThrown))throw r.syncErrorValue;return r}_trySubscribe(t){try{return this._subscribe(t)}catch(e){i.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:s}=t;if(e||s)return!1;t=n&&n instanceof g?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=C(e))((e,n)=>{let s;s=this.subscribe(e=>{try{t(e)}catch(r){n(r),s&&s.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[_](){return this}pipe(...t){return 0===t.length?this:w(t)(this)}toPromise(t){return new(t=C(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=(e=>new t(e)),t})();function C(t){if(t||(t=i.Promise||Promise),!t)throw new Error("no Promise impl found");return t}function x(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}x.prototype=Object.create(Error.prototype);const S=x;class E extends d{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class k extends g{constructor(t){super(t),this.destination=t}}const T=(()=>{class t extends b{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new k(this)}lift(t){const e=new O(this,this);return e.operator=t,e}next(t){if(this.closed)throw new S;if(!this.isStopped){const{observers:e}=this,n=e.length,s=e.slice();for(let r=0;rnew O(t,e)),t})();class O extends T{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):d.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}class R extends g{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const P=t=>e=>{for(let n=0,s=t.length;ne=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,o),e);function M(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}const N=M(),D=t=>e=>{const n=t[N]();for(;;){const t=n.next();if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e},V=t=>e=>{const n=t[_]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)},$=t=>t&&"number"==typeof t.length&&"function"!=typeof t;function L(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const j=t=>{if(t instanceof b)return e=>t._isScalar?(e.next(t.value),void e.complete()):t.subscribe(e);if(t&&"function"==typeof t[_])return V(t);if($(t))return P(t);if(L(t))return A(t);if(t&&"function"==typeof t[N])return D(t);{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};function U(t,e,n,s,r=new R(t,n,s)){if(!r.closed)return j(e)(r)}class z extends g{notifyNext(t,e,n,s,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(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 H(t,e))}}class H{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new B(t,this.project,this.thisArg))}}class B extends g{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function G(t,e){return new b(e?n=>{const s=new d;let r=0;return s.add(e.schedule(function(){r!==t.length?(n.next(t[r++]),n.closed||s.add(this.schedule())):n.complete()})),s}:P(t))}function W(t,e){if(!e)return t instanceof b?t:new b(j(t));if(null!=t){if(function(t){return t&&"function"==typeof t[_]}(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>{const r=t[_]();s.add(r.subscribe({next(t){s.add(e.schedule(()=>n.next(t)))},error(t){s.add(e.schedule(()=>n.error(t)))},complete(){s.add(e.schedule(()=>n.complete()))}}))})),s}:V(t))}(t,e);if(L(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>t.then(t=>{s.add(e.schedule(()=>{n.next(t),s.add(e.schedule(()=>n.complete()))}))},t=>{s.add(e.schedule(()=>n.error(t)))}))),s}:A(t))}(t,e);if($(t))return G(t,e);if(function(t){return t&&"function"==typeof t[N]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new b(e?n=>{const s=new d;let r;return s.add(()=>{r&&"function"==typeof r.return&&r.return()}),s.add(e.schedule(()=>{r=t[N](),s.add(e.schedule(function(){if(n.closed)return;let t,e;try{const i=r.next();t=i.value,e=i.done}catch(s){return void n.error(s)}e?n.complete():(n.next(t),this.schedule())}))})),s}:D(t))}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}function Y(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?s=>s.pipe(Y((n,s)=>W(t(n,s)).pipe(F((t,r)=>e(n,t,s,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new Z(t,this.project,this.concurrent))}}class Z extends z{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Q(t){return t}function X(t=Number.POSITIVE_INFINITY){return Y(Q,t)}function K(...t){let e=Number.POSITIVE_INFINITY,n=null,s=t[t.length-1];return I(s)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof s&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof b?t[0]:X(e)(G(t,n))}function J(){return function(t){return t.lift(new tt(t))}}class tt{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const s=new et(t,n),r=e.subscribe(s);return s.closed||(s.connection=n.connect()),r}}class et extends g{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,s=t._connection;this.connection=null,!s||n&&s!==n||s.unsubscribe()}}const nt=class extends b{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new d).add(this.source.subscribe(new rt(this.getSubject(),this))),t.closed?(this._connection=null,t=d.EMPTY):this._connection=t),t}refCount(){return J()(this)}}.prototype,st={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:nt._subscribe},_isComplete:{value:nt._isComplete,writable:!0},getSubject:{value:nt.getSubject},connect:{value:nt.connect},refCount:{value:nt.refCount}};class rt extends k{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function it(t,e){return function(n){let s;if(s="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new ot(s,e));const r=Object.create(n,st);return r.source=n,r.subjectFactory=s,r}}class ot{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,s=this.subjectFactory(),r=n(s).subscribe(t);return r.add(e.subscribe(s)),r}}function lt(){return new T}const at="__parameters__";function ct(t,e,n){const s=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function r(...t){if(this instanceof r)return s.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,s){const r=t.hasOwnProperty(at)?t[at]:Object.defineProperty(t,at,{value:[]})[at];for(;r.length<=s;)r.push(null);return(r[s]=r[s]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r}const ut=ct("Inject",t=>({token:t})),ht=ct("Optional"),dt=ct("Self"),pt=ct("SkipSelf");var ft=function(t){return 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",t}({});function gt(t){for(let e in t)if(t[e]===gt)return e;throw Error("Could not find renamed property on target object.")}function mt(t){return{providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function _t(t){return t&&t.hasOwnProperty(vt)?t[vt]:null}const vt=gt({ngInjectableDef:gt});function yt(t){if("string"==typeof t)return t;if(t instanceof Array)return"["+t.map(yt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}const wt=gt({__forward_ref__:gt});function bt(t){return t.__forward_ref__=bt,t.toString=function(){return yt(this())},t}function Ct(t){const e=t;return"function"==typeof e&&e.hasOwnProperty(wt)&&e.__forward_ref__===bt?e():t}function xt(){const t="undefined"!=typeof globalThis&&globalThis,e="undefined"!=typeof window&&window,n="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,s="undefined"!=typeof global&&global;return t||s||e||n}const St=xt();let Et,kt=void 0;function Tt(t){const e=kt;return kt=t,e}function Ot(t,e=ft.Default){return(Et||function(t,e=ft.Default){if(void 0===kt)throw new Error("inject() must be called from an injection context");return null===kt?function(t,e,n){const s=_t(t);if(s&&"root"==s.providedIn)return void 0===s.value?s.value=s.factory():s.value;if(n&ft.Optional)return null;throw new Error(`Injector: NOT_FOUND [${yt(t)}]`)}(t,0,e):kt.get(t,e&ft.Optional?null:void 0,e)})(t,e)}const It=Ot;class Rt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ngInjectableDef=mt({providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Pt="__source",At=new Object,Mt=new Rt("INJECTOR",-1);class Nt{get(t,e=At){if(e===At){const e=new Error(`NullInjectorError: No provider for ${yt(t)}!`);throw e.name="NullInjectorError",e}return e}}const Dt=(()=>{class t{static create(t,e){return Array.isArray(t)?new Gt(t,e):new Gt(t.providers,t.parent,t.name||null)}}return t.THROW_IF_NOT_FOUND=At,t.NULL=new Nt,t.ngInjectableDef=mt({providedIn:"any",factory:()=>Ot(Mt)}),t.__NG_ELEMENT_ID__=-1,t})(),Vt=function(t){return t},$t=[],Lt=Vt,jt=function(){return Array.prototype.slice.call(arguments)},Ut=gt({provide:String,useValue:gt}),zt="ngTokenPath",Ft="ngTempTokenPath",Ht=/\n/gm,Bt="\u0275";class Gt{constructor(t,e=Dt.NULL,n=null){this.parent=e,this.source=n;const s=this._records=new Map;s.set(Dt,{token:Dt,fn:Vt,deps:$t,value:this,useNew:!1}),s.set(Mt,{token:Mt,fn:Vt,deps:$t,value:this,useNew:!1}),function t(e,n){if(n)if((n=Ct(n))instanceof Array)for(let s=0;st.push(yt(n))),`StaticInjector[${t.join(", ")}]`}}function Wt(t){return qt("Cannot mix multi providers and regular providers",t)}function Yt(t,e,n,s=null){t=t&&"\n"===t.charAt(0)&&t.charAt(1)==Bt?t.substr(2):t;let r=yt(e);if(e instanceof Array)r=e.map(yt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let s=e[n];t.push(n+":"+("string"==typeof s?JSON.stringify(s):yt(s)))}r=`{${t.join(", ")}}`}return`${n}${s?"("+s+")":""}[${r}]: ${t.replace(Ht,"\n ")}`}function qt(t,e){return new Error(Yt(t,e,"StaticInjectorError"))}const Zt="ngDebugContext",Qt="ngOriginalError",Xt="ngErrorLogger",Kt=new Rt("AnalyzeForEntryComponents"),Jt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}(),te=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(St))();function ee(t){return t[Zt]}function ne(t){return t[Qt]}function se(t,...e){t.error(...e)}class re{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),s=function(t){return t[Xt]||se}(t);s(this._console,"ERROR",t),e&&s(this._console,"ORIGINAL ERROR",e),n&&s(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?ee(t)?ee(t):this._findContext(ne(t)):null}_findOriginalError(t){let e=ne(t);for(;e&&ne(e);)e=ne(e);return e}}let ie=!0,oe=!1;function le(){return oe=!0,ie}class ae{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),this.inertBodyElement=this.inertDocument.createElement("body"),t.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t=""+t+"";try{t=encodeURI(t)}catch(s){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t=""+t+"";try{const n=(new window.DOMParser).parseFromString(t,"text/html").body;return n.removeChild(n.firstChild),n}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(t){const e=t.attributes;for(let s=e.length-1;0he(t.trim())).join(", ")),this.buf.push(" ",e,'="',ke(o),'"')}var s;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();ve.hasOwnProperty(e)&&!fe.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(ke(t))}checkClobberedElement(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}}const Se=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ee=/([^\#-~ |!])/g;function ke(t){return t.replace(/&/g,"&").replace(Se,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ee,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let Te;function Oe(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const Ie=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}();class Re{}const Pe=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ae=/^url\(([^)]+)\)$/,Me=/([A-Z])/g;function Ne(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function De(t){return!!t&&"function"==typeof t.then}function Ve(t){return!!t&&"function"==typeof t.subscribe}let $e=null;function Le(){if(!$e){const t=St.Symbol;if(t&&t.iterator)$e=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e{class t{}return t.NULL=new Qe,t})();class Ke{constructor(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(let s=0;s{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=(()=>rn(t)),t})(),rn=nn;class on{}class ln{}const an=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}(),cn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>un()),t})(),un=nn;class hn{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const dn=new hn("8.0.0");class pn{constructor(){}supports(t){return Fe(t)}create(t){return new gn(t)}}const fn=(t,e)=>e;class gn{constructor(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||fn}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,s=0,r=null;for(;e||n;){const i=!n||e&&e.currentIndex{s=this._trackByFn(e,t),null!==r&&je(r.trackById,s)?(i&&(r=this._verifyReinsertion(r,t,s,e)),je(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,s,e),i=!0),r=r._next,e++}),this.length=e;return this._truncate(r),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;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}}_mismatch(t,e,n,s){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,s))?(je(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,s)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(je(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,s)):t=this._addAfter(new mn(e,n),r,s),t}_verifyReinsertion(t,e,n,s){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,t._prev,s):t.currentIndex!=s&&(t.currentIndex=s,this._addToMoves(t,s)),t}_truncate(t){for(;null!==t;){const 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)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const s=t._prevRemoved,r=t._nextRemoved;return null===s?this._removalsHead=r:s._nextRemoved=r,null===r?this._removalsTail=s:r._prevRemoved=s,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const s=null===e?this._itHead:e._next;return t._next=s,t._prev=e,null===s?this._itTail=t:s._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new vn),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e?t:(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t,t)}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new vn),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}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class mn{constructor(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}}class _n{constructor(){this._head=null,this._tail=null}add(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)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&je(n.trackById,t))return n;return null}remove(t){const 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}}class vn{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _n,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function yn(t,e,n){const s=t.previousIndex;if(null===s)return s;let r=0;return n&&s{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const s=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,s)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const 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}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const s=n._prev,r=n._next;return s&&(s._next=r),r&&(r._prev=s),n._next=null,n._prev=null,n}const n=new Cn(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;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}}_maybeAddToChanges(t,e){je(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Cn{constructor(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}}const xn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new pn])}),t})(),Sn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new wn])}),t})(),En=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>kn()),t})(),kn=(...t)=>{},Tn=[new wn],On=new xn([new pn]),In=new Sn(Tn),Rn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Pn(t,sn)),t})(),Pn=nn,An=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Mn(t,sn)),t})(),Mn=nn;function Nn(t,e,n,s){let r=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${e}'. Current value: '${n}'.`;return s&&(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){const n=new Error(t);return Dn(n,e),n}(r,t)}function Dn(t,e){t[Zt]=e,t[Xt]=e.logError.bind(e)}function Vn(t){return new Error(`ViewDestroyedError: Attempt to use a destroyed view: ${t}`)}function $n(t,e,n){const s=t.state,r=1792&s;return r===e?(t.state=-1793&s|n,t.initIndex=-1,!0):r===n}function Ln(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function jn(t,e){return t.nodes[e]}function Un(t,e){return t.nodes[e]}function zn(t,e){return t.nodes[e]}function Fn(t,e){return t.nodes[e]}function Hn(t,e){return t.nodes[e]}const Bn={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},Gn=()=>{},Wn=new Map;function Yn(t){let e=Wn.get(t);return e||(e=yt(t)+"_"+Wn.size,Wn.set(t,e)),e}const qn="$$undefined",Zn="$$empty";function Qn(t){return{id:qn,styles:t.styles,encapsulation:t.encapsulation,data:t.data}}let Xn=0;function Kn(t,e,n,s){return!(!(2&t.state)&&je(t.oldValues[e.bindingIndex+n],s))}function Jn(t,e,n,s){return!!Kn(t,e,n,s)&&(t.oldValues[e.bindingIndex+n]=s,!0)}function ts(t,e,n,s){const r=t.oldValues[e.bindingIndex+n];if(1&t.state||!Ue(r,s)){const i=e.bindings[n].name;throw Nn(Bn.createDebugContext(t,e.nodeIndex),`${i}: ${r}`,`${i}: ${s}`,0!=(1&t.state))}}function es(t){let e=t;for(;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function ns(t,e){let n=t;for(;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function ss(t,e,n,s){try{return es(33554432&t.def.nodes[e].flags?Un(t,e).componentView:t),Bn.handleEvent(t,e,n,s)}catch(r){t.root.errorHandler.handleError(r)}}function rs(t){return t.parent?Un(t.parent,t.parentNodeDef.nodeIndex):null}function is(t){return t.parent?t.parentNodeDef.parent:null}function os(t,e){switch(201347067&e.flags){case 1:return Un(t,e.nodeIndex).renderElement;case 2:return jn(t,e.nodeIndex).renderText}}function ls(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function as(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function cs(t){return 1<{"number"==typeof t?(e[t]=r,n|=cs(t)):s[t]=r}),{matchedQueries:e,references:s,matchedQueryIds:n}}function hs(t,e){return t.map(t=>{let n,s;return Array.isArray(t)?[s,n]=t:(s=0,n=t),n&&("function"==typeof n||"object"==typeof n)&&e&&Object.defineProperty(n,Pt,{value:e,configurable:!0}),{flags:s,token:n,tokenKey:Yn(n)}})}function ds(t,e,n){let s=n.renderParent;return s?0==(1&s.flags)||0==(33554432&s.flags)||s.element.componentRendererType&&s.element.componentRendererType.encapsulation===Jt.Native?Un(t,n.renderParent.nodeIndex).renderElement:void 0:e}const ps=new WeakMap;function fs(t){let e=ps.get(t);return e||((e=t(()=>Gn)).factory=t,ps.set(t,e)),e}function gs(t,e,n,s,r){3===e&&(n=t.renderer.parentNode(os(t,t.def.lastRenderRootNode))),ms(t,e,0,t.def.nodes.length-1,n,s,r)}function ms(t,e,n,s,r,i,o){for(let l=n;l<=s;l++){const n=t.def.nodes[l];11&n.flags&&vs(t,n,e,r,i,o),l+=n.childCount}}function _s(t,e,n,s,r,i){let o=t;for(;o&&!ls(o);)o=o.parent;const l=o.parent,a=is(o),c=a.nodeIndex+a.childCount;for(let u=a.nodeIndex+1;u<=c;u++){const t=l.def.nodes[u];t.ngContentIndex===e&&vs(l,t,n,s,r,i),u+=t.childCount}if(!l.parent){const o=t.root.projectableNodes[e];if(o)for(let e=0;e-1}(r)||"root"===i.providedIn&&r._def.isRoot))){const n=t._providers.length;return t._def.providers[n]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:n,token:e.token},t._providers[n]=Ss,t._providers[n]=Rs(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Tt(s)}var r,i}function Rs(t,e){let n;switch(201347067&e.flags){case 512:n=function(t,e,n){const s=n.length;switch(s){case 0:return new e;case 1:return new e(Is(t,n[0]));case 2:return new e(Is(t,n[0]),Is(t,n[1]));case 3:return new e(Is(t,n[0]),Is(t,n[1]),Is(t,n[2]));default:const r=new Array(s);for(let e=0;e=n.length)&&(e=n.length-1),e<0)return null;const s=n[e];return s.viewContainerParent=null,Ds(n,e),Bn.dirtyParentQueries(s),Ms(s),s}function As(t,e,n){const s=e?os(e,e.def.lastRenderRootNode):t.renderElement,r=n.renderer.parentNode(s),i=n.renderer.nextSibling(s);gs(n,2,r,i,void 0)}function Ms(t){gs(t,3,null,null,void 0)}function Ns(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Ds(t,e){e>=t.length-1?t.pop():t.splice(e,1)}const Vs=new Object;function $s(t,e,n,s,r,i){return new Ls(t,e,n,s,r,i)}class Ls extends Ye{constructor(t,e,n,s,r,i){super(),this.selector=t,this.componentType=e,this._inputs=s,this._outputs=r,this.ngContentSelectors=i,this.viewDefFactory=n}get inputs(){const t=[],e=this._inputs;for(let n in e)t.push({propName:n,templateName:e[n]});return t}get outputs(){const t=[];for(let e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t}create(t,e,n,s){if(!s)throw new Error("ngModule should be provided");const r=fs(this.viewDefFactory),i=r.nodes[0].element.componentProvider.nodeIndex,o=Bn.createRootView(t,e||[],n,r,s,Vs),l=zn(o,i).instance;return n&&o.renderer.setAttribute(Un(o,0).renderElement,"ng-version",dn.full),new js(o,new Hs(o),l)}}class js extends We{constructor(t,e,n){super(),this._view=t,this._viewRef=e,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=e,this.changeDetectorRef=e,this.instance=n}get location(){return new sn(Un(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new Ys(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(t){this._viewRef.onDestroy(t)}}function Us(t,e,n){return new zs(t,e,n)}class zs{constructor(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}get element(){return new sn(this._data.renderElement)}get injector(){return new Ys(this._view,this._elDef)}get parentInjector(){let t=this._view,e=this._elDef.parent;for(;!e&&t;)e=is(t),t=t.parent;return t?new Ys(t,e):new Ys(this._view,null)}clear(){for(let t=this._embeddedViews.length-1;t>=0;t--){const e=Ps(this._data,t);Bn.destroyView(e)}}get(t){const e=this._embeddedViews[t];if(e){const t=new Hs(e);return t.attachToViewContainerRef(this),t}return null}get length(){return this._embeddedViews.length}createEmbeddedView(t,e,n){const s=t.createEmbeddedView(e||{});return this.insert(s,n),s}createComponent(t,e,n,s,r){const i=n||this.parentInjector;r||t instanceof Je||(r=i.get(tn));const o=t.create(i,s,void 0,r);return this.insert(o.hostView,e),o}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=t;return function(t,e,n,s){let r=e.viewContainer._embeddedViews;null==n&&(n=r.length),s.viewContainerParent=t,Ns(r,n,s),function(t,e){const n=rs(e);if(!n||n===t||16&e.state)return;e.state|=16;let s=n.template._projectedViews;s||(s=n.template._projectedViews=[]),s.push(e),function(t,n){if(4&n.flags)return;e.parent.def.nodeFlags|=4,n.flags|=4;let s=n.parent;for(;s;)s.childFlags|=4,s=s.parent}(0,e.parentNodeDef)}(e,s),Bn.dirtyParentQueries(s),As(e,n>0?r[n-1]:null,s)}(this._view,this._data,e,n._view),n.attachToViewContainerRef(this),t}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(t._view);return function(t,e,s){const r=t.viewContainer._embeddedViews,i=r[n];Ds(r,n),null==s&&(s=r.length),Ns(r,s,i),Bn.dirtyParentQueries(i),Ms(i),As(t,s>0?r[s-1]:null,i)}(this._data,0,e),t}indexOf(t){return this._embeddedViews.indexOf(t._view)}remove(t){const e=Ps(this._data,t);e&&Bn.destroyView(e)}detach(t){const e=Ps(this._data,t);return e?new Hs(e):null}}function Fs(t){return new Hs(t)}class Hs{constructor(t){this._view=t,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(t){const e=[];return gs(t,0,void 0,void 0,e),e}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){es(this._view)}detach(){this._view.state&=-5}detectChanges(){const t=this._view.root.rendererFactory;t.begin&&t.begin();try{Bn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}}checkNoChanges(){Bn.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Bn.destroyView(this._view)}detachFromAppRef(){this._appRef=null,Ms(this._view),Bn.dirtyParentQueries(this._view)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}}function Bs(t,e){return new Gs(t,e)}class Gs extends Rn{constructor(t,e){super(),this._parentView=t,this._def=e}createEmbeddedView(t){return new Hs(Bn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))}get elementRef(){return new sn(Un(this._parentView,this._def.nodeIndex).renderElement)}}function Ws(t,e){return new Ys(t,e)}class Ys{constructor(t,e){this.view=t,this.elDef=e}get(t,e=Dt.THROW_IF_NOT_FOUND){return Bn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:Yn(t)},e)}}function qs(t,e){const n=t.def.nodes[e];if(1&n.flags){const e=Un(t,n.nodeIndex);return n.element.template?e.template:e.renderElement}if(2&n.flags)return jn(t,n.nodeIndex).renderText;if(20240&n.flags)return zn(t,n.nodeIndex).instance;throw new Error(`Illegal state: read nodeValue for node index ${e}`)}function Zs(t){return new Qs(t.renderer)}class Qs{constructor(t){this.delegate=t}selectRootElement(t){return this.delegate.selectRootElement(t)}createElement(t,e){const[n,s]=bs(e),r=this.delegate.createElement(s,n);return t&&this.delegate.appendChild(t,r),r}createViewRoot(t){return t}createTemplateAnchor(t){const e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e}createText(t,e){const n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n}projectNodes(t,e){for(let n=0;nt())}onDestroy(t){this._destroyListeners.push(t)}}const Js=Yn(on),tr=Yn(cn),er=Yn(sn),nr=Yn(An),sr=Yn(Rn),rr=Yn(En),ir=Yn(Dt),or=Yn(Mt);function lr(t,e,n,s,r,i,o,l){const a=[];if(o)for(let u in o){const[t,e]=o[u];a[t]={flags:8,name:u,nonMinifiedName:e,ns:null,securityContext:null,suffix:null}}const c=[];if(l)for(let u in l)c.push({type:1,propName:u,target:null,eventName:l[u]});return cr(t,e|=16384,n,s,r,r,i,a,c)}function ar(t,e,n,s,r){return cr(-1,t,e,0,n,s,r)}function cr(t,e,n,s,r,i,o,l,a){const{matchedQueries:c,references:u,matchedQueryIds:h}=us(n);a||(a=[]),l||(l=[]),i=Ct(i);const d=hs(o,yt(r));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:h,references:u,ngContentIndex:-1,childCount:s,bindings:l,bindingFlags:Cs(l),outputs:a,element:null,provider:{token:r,value:i,deps:d},text:null,query:null,ngContent:null}}function ur(t,e){return fr(t,e)}function hr(t,e){let n=t;for(;n.parent&&!ls(n);)n=n.parent;return gr(n.parent,is(n),!0,e.provider.value,e.provider.deps)}function dr(t,e){const n=gr(t,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(let s=0;sss(t,e,n,s)}function fr(t,e){const n=(8192&e.flags)>0,s=e.provider;switch(201347067&e.flags){case 512:return gr(t,e.parent,n,s.value,s.deps);case 1024:return function(t,e,n,s,r){const i=r.length;switch(i){case 0:return s();case 1:return s(_r(t,e,n,r[0]));case 2:return s(_r(t,e,n,r[0]),_r(t,e,n,r[1]));case 3:return s(_r(t,e,n,r[0]),_r(t,e,n,r[1]),_r(t,e,n,r[2]));default:const o=Array(i);for(let s=0;ste});class Sr extends T{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let s,r=t=>null,i=()=>null;t&&"object"==typeof t?(s=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(r=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(i=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(i=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(s,r,i);return t instanceof d&&t.add(o),o}}class Er{constructor(){this.dirty=!0,this._results=[],this.changes=new Sr,this.length=0}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}[Le()](){return this._results[Le()]()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let s=0;s(class{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}))(),Ir=new Rt("AppId");function Rr(){return`${Pr()}${Pr()}${Pr()}`}function Pr(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const Ar=new Rt("Platform Initializer"),Mr=new Rt("Platform ID"),Nr=new Rt("appBootstrapListener"),Dr=(()=>(class{log(t){console.log(t)}warn(t){console.warn(t)}}))();function Vr(){throw new Error("Runtime compiler is not loaded")}const $r=Vr,Lr=Vr,jr=Vr,Ur=Vr,zr=(()=>(class{constructor(){this.compileModuleSync=$r,this.compileModuleAsync=Lr,this.compileModuleAndAllComponentsSync=jr,this.compileModuleAndAllComponentsAsync=Ur}clearCache(){}clearCacheFor(t){}getModuleId(t){}}))();class Fr{}let Hr,Br;function Gr(){const t=St.wtf;return!(!t||!(Hr=t.trace)||(Br=Hr.events,0))}const Wr=Gr(),Yr=Wr?function(t,e=null){return Br.createScope(t,e)}:(t,e)=>(function(t,e){return null}),qr=Wr?function(t,e){return Hr.leaveScope(t,e),e}:(t,e)=>e,Zr=(()=>Promise.resolve(0))();function Qr(t){"undefined"==typeof Zone?Zr.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Xr{constructor({enableLongStackTrace:t=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Sr(!1),this.onMicrotaskEmpty=new Sr(!1),this.onStable=new Sr(!1),this.onError=new Sr(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var e;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)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,n,s,r,i,o)=>{try{return ei(e),t.invokeTask(s,r,i,o)}finally{ni(e)}},onInvoke:(t,n,s,r,i,o,l)=>{try{return ei(e),t.invoke(s,r,i,o,l)}finally{ni(e)}},onHasTask:(t,n,s,r)=>{t.hasTask(s,r),n===s&&("microTask"==r.change?(e.hasPendingMicrotasks=r.microTask,ti(e)):"macroTask"==r.change&&(e.hasPendingMacrotasks=r.macroTask))},onHandleError:(t,n,s,r)=>(t.handleError(s,r),e.runOutsideAngular(()=>e.onError.emit(r)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Xr.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Xr.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,s){const r=this._inner,i=r.scheduleEventTask("NgZoneEvent: "+s,t,Jr,Kr,Kr);try{return r.runTask(i,e,n)}finally{r.cancelTask(i)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function Kr(){}const Jr={};function ti(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(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function ei(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ni(t){t._nesting--,ti(t)}class si{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Sr,this.onMicrotaskEmpty=new Sr,this.onStable=new Sr,this.onError=new Sr}run(t){return t()}runGuarded(t){return t()}runOutsideAngular(t){return t()}runTask(t){return t()}}const ri=(()=>(class{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Xr.assertNotInAngularZone(),Qr(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Qr(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let s=-1;e&&e>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==s),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:s,updateCb:n})}whenStable(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()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}))(),ii=(()=>{class t{constructor(){this._applications=new Map,ai.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return ai.findTestabilityInTree(this,t,e)}}return t.ctorParameters=(()=>[]),t})();class oi{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let li,ai=new oi,ci=function(t){return t instanceof Je};const ui=new Rt("AllowMultipleToken");class hi{constructor(t,e){this.name=t,this.token=e}}function di(t,e,n=[]){const s=`Platform: ${e}`,r=new Rt(s);return(e=[])=>{let i=pi();if(!i||i.injector.get(ui,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0});!function(t){if(li&&!li.destroyed&&!li.injector.get(ui,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");li=t.get(fi);const e=t.get(Ar,null);e&&e.forEach(t=>t())}(Dt.create({providers:t,name:s}))}return function(t){const e=pi();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}(r)}}function pi(){return li&&!li.destroyed?li:null}const fi=(()=>(class{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n="noop"===(r=e?e.ngZone:void 0)?new si:("zone.js"===r?void 0:r)||new Xr({enableLongStackTrace:le()}),s=[{provide:Xr,useValue:n}];var r;return n.run(()=>{const e=Dt.create({providers:s,parent:this.injector,name:t.moduleType.name}),r=t.create(e),i=r.injector.get(re,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return r.onDestroy(()=>_i(this._modules,r)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{i.handleError(t)}})),function(t,e,n){try{const r=n();return De(r)?r.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):r}catch(s){throw e.runOutsideAngular(()=>t.handleError(s)),s}}(i,n,()=>{const t=r.injector.get(Or);return t.runInitializers(),t.donePromise.then(()=>(this._moduleDoBootstrap(r),r))})})}bootstrapModule(t,e=[]){const n=gi({},e);return function(t,e,n){return t.get(Fr).createCompiler([e]).compileModuleAsync(n)}(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(mi);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${yt(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)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}))();function gi(t,e){return Array.isArray(e)?e.reduce(gi,t):Object.assign({},t,e)}const mi=(()=>{class t{constructor(t,e,n,s,r,i){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=s,this._componentFactoryResolver=r,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=le(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new b(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new b(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Xr.assertNotInAngularZone(),Qr(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Xr.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=K(o,l.pipe(t=>J()(it(lt)(t))))}bootstrap(t,e){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.");let n;n=t instanceof Ye?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const s=ci(n)?null:this._injector.get(tn),r=n.create(Dt.NULL,[],e||n.selector,s);r.onDestroy(()=>{this._unloadComponent(r)});const i=r.injector.get(ri,null);return i&&r.injector.get(ii).registerApplication(r.location.nativeElement,i),this._loadComponent(r),le()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const e=t._tickScope();try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,qr(e)}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;_i(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Nr,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),_i(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t._tickScope=Yr("ApplicationRef#tick()"),t})();function _i(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class vi{}const yi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},wi=(()=>(class{constructor(t,e){this._compiler=t,this._config=e||yi}load(t){return this._compiler instanceof zr?this.loadFactory(t):this.loadAndCompile(t)}loadAndCompile(t){let[e,s]=t.split("#");return void 0===s&&(s="default"),n("zn8P")(e).then(t=>t[s]).then(t=>bi(t,e,s)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,s]=t.split("#"),r="NgFactory";return void 0===s&&(s="default",r=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[s+r]).then(t=>bi(t,e,s))}}))();function bi(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}class Ci{constructor(t,e){this.name=t,this.callback=e}}class xi{constructor(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Si&&e.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class Si extends xi{constructor(t,e,n){super(t,e,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=t}addChild(t){t&&(this.childNodes.push(t),t.parent=this)}removeChild(t){const e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))}insertChildrenAfter(t,e){const n=this.childNodes.indexOf(t);-1!==n&&(this.childNodes.splice(n+1,0,...e),e.forEach(e=>{e.parent&&e.parent.removeChild(e),t.parent=this}))}insertBefore(t,e){const 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))}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return function t(e,n,s){e.childNodes.forEach(e=>{e instanceof Si&&(n(e)&&s.push(e),t(e,n,s))})}(this,t,e),e}queryAllNodes(t){const e=[];return function t(e,n,s){e instanceof Si&&e.childNodes.forEach(e=>{n(e)&&s.push(e),e instanceof Si&&t(e,n,s)})}(this,t,e),e}get children(){return this.childNodes.filter(t=>t instanceof Si)}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name==t&&n.callback(e)})}}const Ei=new Map,ki=function(t){return Ei.get(t)||null};function Ti(t){Ei.set(t.nativeNode,t)}const Oi=di(null,"core",[{provide:Mr,useValue:"unknown"},{provide:fi,deps:[Dt]},{provide:ii,deps:[]},{provide:Dr,deps:[]}]),Ii=new Rt("LocaleId");function Ri(){return On}function Pi(){return In}function Ai(t){return t||"en-US"}function Mi(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}const Ni=(()=>(class{constructor(t){}}))();function Di(t,e,n,s,r,i){t|=1;const{matchedQueries:o,references:l,matchedQueryIds:a}=us(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:o,matchedQueryIds:a,references:l,ngContentIndex:n,childCount:s,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?fs(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:r||Gn},provider:null,text:null,query:null,ngContent:null}}function Vi(t,e,n,s,r,i,o=[],l,a,c,u,h){c||(c=Gn);const{matchedQueries:d,references:p,matchedQueryIds:f}=us(n);let g=null,m=null;i&&([g,m]=bs(i)),l=l||[];const _=new Array(l.length);for(let w=0;w{const[n,s]=bs(t);return[n,s,e]});return h=function(t){if(t&&t.id===qn){const e=null!=t.encapsulation&&t.encapsulation!==Jt.None||t.styles.length||Object.keys(t.data).length;t.id=e?`c${Xn++}`:Zn}return t&&t.id===Zn&&(t=null),t||null}(h),u&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:d,matchedQueryIds:f,references:p,ngContentIndex:s,childCount:r,bindings:_,bindingFlags:Cs(_),outputs:v,element:{ns:g,name:m,attrs:y,template:null,componentProvider:null,componentView:u||null,componentRendererType:h,publicProviders:null,allProviders:null,handleEvent:c||Gn},provider:null,text:null,query:null,ngContent:null}}function $i(t,e,n){const s=n.element,r=t.root.selectorOrNode,i=t.renderer;let o;if(t.parent||!r){o=s.name?i.createElement(s.name,s.ns):i.createComment("");const r=ds(t,e,n);r&&i.appendChild(r,o)}else o=i.selectRootElement(r,!!s.componentRendererType&&s.componentRendererType.encapsulation===Jt.ShadowDom);if(s.attrs)for(let l=0;lss(t,e,n,s)}function Ui(t,e,n,s){if(!Jn(t,e,n,s))return!1;const r=e.bindings[n],i=Un(t,e.nodeIndex),o=i.renderElement,l=r.name;switch(15&r.flags){case 1:!function(t,e,n,s,r,i){const o=e.securityContext;let l=o?t.root.sanitizer.sanitize(o,i):i;l=null!=l?l.toString():null;const a=t.renderer;null!=i?a.setAttribute(n,r,l,s):a.removeAttribute(n,r,s)}(t,r,o,r.ns,l,s);break;case 2:!function(t,e,n,s){const r=t.renderer;s?r.addClass(e,n):r.removeClass(e,n)}(t,o,l,s);break;case 4:!function(t,e,n,s,r){let i=t.root.sanitizer.sanitize(Ie.STYLE,r);if(null!=i){i=i.toString();const t=e.suffix;null!=t&&(i+=t)}else i=null;const o=t.renderer;null!=i?o.setStyle(n,s,i):o.removeStyle(n,s)}(t,r,o,l,s);break;case 8:!function(t,e,n,s,r){const i=e.securityContext;let o=i?t.root.sanitizer.sanitize(i,r):r;t.renderer.setProperty(n,s,o)}(33554432&e.flags&&32&r.flags?i.componentView:t,r,o,l,s)}return!0}function zi(t,e,n){let s=[];for(let r in n)s.push({propName:r,bindingType:n[r]});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:cs(e),bindings:s},ngContent:null}}function Fi(t){const e=t.def.nodeMatchedQueries;for(;t.parent&&as(t);){let n=t.parentNodeDef;t=t.parent;const s=n.nodeIndex+n.childCount;for(let r=0;r<=s;r++){const s=t.def.nodes[r];67108864&s.flags&&536870912&s.flags&&(s.query.filterId&e)===s.query.filterId&&Hn(t,r).setDirty(),!(1&s.flags&&r+s.childCount0)c=t,Ji(t)||(u=t);else for(;c&&f===c.nodeIndex+c.childCount;){const t=c.parent;t&&(t.childFlags|=c.childFlags,t.childMatchedQueries|=c.childMatchedQueries),u=(c=t)&&Ji(c)?c.renderParent:c}}return{factory:null,nodeFlags:o,rootNodeFlags:l,nodeMatchedQueries:a,flags:t,nodes:e,updateDirectives:n||Gn,updateRenderer:s||Gn,handleEvent:(t,n,s,r)=>e[n].element.handleEvent(t,s,r),bindingCount:r,outputCount:i,lastRenderRootNode:p}}function Ji(t){return 0!=(1&t.flags)&&null===t.element.name}function to(t,e,n){const s=e.element&&e.element.template;if(s){if(!s.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(s.lastRenderRootNode&&16777216&s.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){const s=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=s&&e.nodeIndex+e.childCount>s)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${e.nodeIndex}!`)}}function eo(t,e,n,s){const r=ro(t.root,t.renderer,t,e,n);return io(r,t.component,s),oo(r),r}function no(t,e,n){const s=ro(t,t.renderer,null,null,e);return io(s,n,n),oo(s),s}function so(t,e,n,s){const r=e.element.componentRendererType;let i;return i=r?t.root.rendererFactory.createRenderer(s,r):t.root.renderer,ro(t.root,i,t,e.element.componentProvider,n)}function ro(t,e,n,s,r){const i=new Array(r.nodes.length),o=r.outputCount?new Array(r.outputCount):null;return{def:r,parent:n,viewContainerParent:null,parentNodeDef:s,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(r.bindingCount),disposables:o,initIndex:-1}}function io(t,e,n){t.component=e,t.context=n}function oo(t){let e;ls(t)&&(e=Un(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);const n=t.def,s=t.nodes;for(let r=0;r0&&Ui(t,e,0,n)&&(p=!0),d>1&&Ui(t,e,1,s)&&(p=!0),d>2&&Ui(t,e,2,r)&&(p=!0),d>3&&Ui(t,e,3,i)&&(p=!0),d>4&&Ui(t,e,4,o)&&(p=!0),d>5&&Ui(t,e,5,l)&&(p=!0),d>6&&Ui(t,e,6,a)&&(p=!0),d>7&&Ui(t,e,7,c)&&(p=!0),d>8&&Ui(t,e,8,u)&&(p=!0),d>9&&Ui(t,e,9,h)&&(p=!0),p}(t,e,n,s,r,i,o,l,a,c,u,h);case 2:return function(t,e,n,s,r,i,o,l,a,c,u,h){let d=!1;const p=e.bindings,f=p.length;if(f>0&&Jn(t,e,0,n)&&(d=!0),f>1&&Jn(t,e,1,s)&&(d=!0),f>2&&Jn(t,e,2,r)&&(d=!0),f>3&&Jn(t,e,3,i)&&(d=!0),f>4&&Jn(t,e,4,o)&&(d=!0),f>5&&Jn(t,e,5,l)&&(d=!0),f>6&&Jn(t,e,6,a)&&(d=!0),f>7&&Jn(t,e,7,c)&&(d=!0),f>8&&Jn(t,e,8,u)&&(d=!0),f>9&&Jn(t,e,9,h)&&(d=!0),d){let d=e.text.prefix;f>0&&(d+=Xi(n,p[0])),f>1&&(d+=Xi(s,p[1])),f>2&&(d+=Xi(r,p[2])),f>3&&(d+=Xi(i,p[3])),f>4&&(d+=Xi(o,p[4])),f>5&&(d+=Xi(l,p[5])),f>6&&(d+=Xi(a,p[6])),f>7&&(d+=Xi(c,p[7])),f>8&&(d+=Xi(u,p[8])),f>9&&(d+=Xi(h,p[9]));const g=jn(t,e.nodeIndex).renderText;t.renderer.setValue(g,d)}return d}(t,e,n,s,r,i,o,l,a,c,u,h);case 16384:return function(t,e,n,s,r,i,o,l,a,c,u,h){const d=zn(t,e.nodeIndex),p=d.instance;let f=!1,g=void 0;const m=e.bindings.length;return m>0&&Kn(t,e,0,n)&&(f=!0,g=yr(t,d,e,0,n,g)),m>1&&Kn(t,e,1,s)&&(f=!0,g=yr(t,d,e,1,s,g)),m>2&&Kn(t,e,2,r)&&(f=!0,g=yr(t,d,e,2,r,g)),m>3&&Kn(t,e,3,i)&&(f=!0,g=yr(t,d,e,3,i,g)),m>4&&Kn(t,e,4,o)&&(f=!0,g=yr(t,d,e,4,o,g)),m>5&&Kn(t,e,5,l)&&(f=!0,g=yr(t,d,e,5,l,g)),m>6&&Kn(t,e,6,a)&&(f=!0,g=yr(t,d,e,6,a,g)),m>7&&Kn(t,e,7,c)&&(f=!0,g=yr(t,d,e,7,c,g)),m>8&&Kn(t,e,8,u)&&(f=!0,g=yr(t,d,e,8,u,g)),m>9&&Kn(t,e,9,h)&&(f=!0,g=yr(t,d,e,9,h,g)),g&&p.ngOnChanges(g),65536&e.flags&&Ln(t,256,e.nodeIndex)&&p.ngOnInit(),262144&e.flags&&p.ngDoCheck(),f}(t,e,n,s,r,i,o,l,a,c,u,h);case 32:case 64:case 128:return function(t,e,n,s,r,i,o,l,a,c,u,h){const d=e.bindings;let p=!1;const f=d.length;if(f>0&&Jn(t,e,0,n)&&(p=!0),f>1&&Jn(t,e,1,s)&&(p=!0),f>2&&Jn(t,e,2,r)&&(p=!0),f>3&&Jn(t,e,3,i)&&(p=!0),f>4&&Jn(t,e,4,o)&&(p=!0),f>5&&Jn(t,e,5,l)&&(p=!0),f>6&&Jn(t,e,6,a)&&(p=!0),f>7&&Jn(t,e,7,c)&&(p=!0),f>8&&Jn(t,e,8,u)&&(p=!0),f>9&&Jn(t,e,9,h)&&(p=!0),p){const p=Fn(t,e.nodeIndex);let g;switch(201347067&e.flags){case 32:g=new Array(d.length),f>0&&(g[0]=n),f>1&&(g[1]=s),f>2&&(g[2]=r),f>3&&(g[3]=i),f>4&&(g[4]=o),f>5&&(g[5]=l),f>6&&(g[6]=a),f>7&&(g[7]=c),f>8&&(g[8]=u),f>9&&(g[9]=h);break;case 64:g={},f>0&&(g[d[0].name]=n),f>1&&(g[d[1].name]=s),f>2&&(g[d[2].name]=r),f>3&&(g[d[3].name]=i),f>4&&(g[d[4].name]=o),f>5&&(g[d[5].name]=l),f>6&&(g[d[6].name]=a),f>7&&(g[d[7].name]=c),f>8&&(g[d[8].name]=u),f>9&&(g[d[9].name]=h);break;case 128:const t=n;switch(f){case 1:g=t.transform(n);break;case 2:g=t.transform(s);break;case 3:g=t.transform(s,r);break;case 4:g=t.transform(s,r,i);break;case 5:g=t.transform(s,r,i,o);break;case 6:g=t.transform(s,r,i,o,l);break;case 7:g=t.transform(s,r,i,o,l,a);break;case 8:g=t.transform(s,r,i,o,l,a,c);break;case 9:g=t.transform(s,r,i,o,l,a,c,u);break;case 10:g=t.transform(s,r,i,o,l,a,c,u,h)}}p.value=g}return p}(t,e,n,s,r,i,o,l,a,c,u,h);default:throw"unreachable"}}(t,e,s,r,i,o,l,a,c,u,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){let s=!1;for(let r=0;r0&&ts(t,e,0,n),d>1&&ts(t,e,1,s),d>2&&ts(t,e,2,r),d>3&&ts(t,e,3,i),d>4&&ts(t,e,4,o),d>5&&ts(t,e,5,l),d>6&&ts(t,e,6,a),d>7&&ts(t,e,7,c),d>8&&ts(t,e,8,u),d>9&&ts(t,e,9,h)}(t,e,s,r,i,o,l,a,c,u,h,d):function(t,e,n){for(let s=0;s{const s=Oo.get(t.token);3840&t.flags&&s&&(e=!0,n=n||s.deprecatedBehavior)}),t.modules.forEach(t=>{Io.forEach((s,r)=>{_t(r).providedIn===t&&(e=!0,n=n||s.deprecatedBehavior)})}),{hasOverrides:e,hasDeprecatedOverrides:n})}(t);return e?(function(t){for(let e=0;e0){let e=new Set(t.modules);Io.forEach((s,r)=>{if(e.has(_t(r).providedIn)){let e={token:r,flags:s.flags|(n?4096:0),deps:hs(s.deps),value:s.value,index:t.providers.length};t.providers.push(e),t.providersByKey[Yn(r)]=e}})}}(t=t.factory(()=>Gn)),t):t}(s))}const Oo=new Map,Io=new Map,Ro=new Map;function Po(t){let e;Oo.set(t.token,t),"function"==typeof t.token&&(e=_t(t.token))&&"function"==typeof e.providedIn&&Io.set(t.token,t)}function Ao(t,e){const n=fs(e.viewDefFactory),s=fs(n.nodes[0].element.componentView);Ro.set(t,s)}function Mo(){Oo.clear(),Io.clear(),Ro.clear()}function No(t){if(0===Oo.size)return t;const e=function(t){const e=[];let n=null;for(let s=0;sGn);for(let s=0;s"-"+t[1].toLowerCase())}`)]=Ne(l))}const s=e.parent,l=Un(t,s.nodeIndex).renderElement;if(s.element.name)for(let e in n){const s=n[e];null!=s?t.renderer.setAttribute(l,e,s):t.renderer.removeAttribute(l,e)}else t.renderer.setValue(l,`bindings=${JSON.stringify(n,null,2)}`)}}var r,i}function Zo(t,e,n,s){ho(t,e,n,...s)}function Qo(t,e){for(let n=e;n++i===r?t.error.bind(t,...e):Gn),inew Ko(t,e),handleEvent:Go,updateDirectives:Wo,updateRenderer:Yo}:{setCurrentNode:()=>{},createRootView:Co,createEmbeddedView:eo,createComponentView:so,createNgModuleRef:Xs,overrideProvider:Gn,overrideComponentView:Gn,clearOverrides:Gn,checkAndUpdateView:ao,checkNoChangesView:lo,destroyView:fo,createDebugContext:(t,e)=>new Ko(t,e),handleEvent:(t,e,n,s)=>t.def.handleEvent(t,e,n,s),updateDirectives:(t,e)=>t.def.updateDirectives(0===e?Do:Vo,t),updateRenderer:(t,e)=>t.def.updateRenderer(0===e?Do:Vo,t)};Bn.setCurrentNode=t.setCurrentNode,Bn.createRootView=t.createRootView,Bn.createEmbeddedView=t.createEmbeddedView,Bn.createComponentView=t.createComponentView,Bn.createNgModuleRef=t.createNgModuleRef,Bn.overrideProvider=t.overrideProvider,Bn.overrideComponentView=t.overrideComponentView,Bn.clearOverrides=t.clearOverrides,Bn.checkAndUpdateView=t.checkAndUpdateView,Bn.checkNoChangesView=t.checkNoChangesView,Bn.destroyView=t.destroyView,Bn.resolveDep=_r,Bn.createDebugContext=t.createDebugContext,Bn.handleEvent=t.handleEvent,Bn.updateDirectives=t.updateDirectives,Bn.updateRenderer=t.updateRenderer,Bn.dirtyParentQueries=Fi}();const e=function(t){const e=Array.from(t.providers),n=Array.from(t.modules),s={};for(const r in t.providersByKey)s[r]=t.providersByKey[r];return{factory:t.factory,isRoot:t.isRoot,providers:e,modules:n,providersByKey:s}}(fs(this._ngModuleDefFactory));return Bn.createNgModuleRef(this.moduleType,t||Dt.NULL,this._bootstrapComponents,e)}}const ol="Test Runner";function ll(t){let e="";if(t)for(const n in t)t.hasOwnProperty(n)&&null!=t[n]&&(e+=`${e?"&":""}${n}=${t[n]}`);return e}function al(t,e){const n=t.shift();return e[n]?t.length>0?al(t,e[n]):e[n]:null}var cl=n("Wgwc");const ul=(()=>{class t{constructor(){if(this.build=cl(),!t.init){const e=cl();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][APP] ${ol} - ${t} | ${e}`):console[n](`%c[ACA]%c[APP] %c${ol} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0",t.init=!1,t})();class hl{constructor(){this.show_menu=!0}}class dl{}const pl=new Rt("Location Initialized");class fl{}const gl=new Rt("appBaseHref"),ml=(()=>{class t{constructor(e,n){this._subject=new Sr,this._urlChangeListeners=[],this._platformStrategy=e;const s=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=t.stripTrailingSlash(_l(s)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(e,n=""){return this.path()==this.normalize(e+t.normalizeQueryParams(n))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,_l(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(e,n="",s=null){this._platformStrategy.pushState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}replaceState(e,n="",s=null){this._platformStrategy.replaceState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}static normalizeQueryParams(t){return t&&"?"!==t[0]?"?"+t:t}static joinWithSlash(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}static stripTrailingSlash(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}}return t})();function _l(t){return t.replace(/\/index.html$/,"")}const vl=(()=>(class extends fl{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=ml.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,s){let r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,s){let r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),yl=(()=>(class extends fl{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)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.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return ml.joinWithSlash(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+ml.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,s){const r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,s){const r=this.prepareExternalUrl(n+ml.normalizeQueryParams(s));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),wl=void 0;var bl=["en",[["a","p"],["AM","PM"],wl],[["AM","PM"],wl,wl],[["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"]],wl,[["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"]],wl,[["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}",wl,"{1} 'at' {0}",wl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];const Cl={},xl=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),Sl=new Rt("UseV4Plurals");class El{}const kl=(()=>(class extends El{constructor(t,e){super(),this.locale=t,this.deprecatedPluralFn=e}getPluralCategory(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){const e=t.toLowerCase().replace(/_/g,"-");let n=Cl[e];if(n)return n;const s=e.split("-")[0];if(n=Cl[s])return n;if("en"===s)return bl;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[18]}(e||this.locale)(t)){case xl.Zero:return"zero";case xl.One:return"one";case xl.Two:return"two";case xl.Few:return"few";case xl.Many:return"many";default:return"other"}}}))();function Tl(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[s,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(s.trim()===e)return decodeURIComponent(r)}return null}const Ol=(()=>(class{constructor(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}ngOnChanges(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){const e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){const t=e.get(tn);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(t.injector)}else this._moduleRef=null;const n=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(Xe)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(n,this._viewContainerRef.length,e,this.ngComponentOutletContent)}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}))();class Il{constructor(t,e,n,s){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=s}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}const Rl=(()=>(class{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){le()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,s)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Il(null,this._ngForOf,-1,-1),s),r=new Pl(t,n);e.push(r)}else if(null==s)this._viewContainer.remove(n);else{const r=this._viewContainer.get(n);this._viewContainer.move(r,s);const i=new Pl(t,r);e.push(i)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}))();class Pl{constructor(t,e){this.record=t,this.view=e}}const Al=(()=>(class{constructor(t,e){this._viewContainer=t,this._context=new Ml,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){Nl("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Nl("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){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)))}static ngTemplateGuard_ngIf(t,e){return!0}}))();class Ml{constructor(){this.$implicit=null,this.ngIf=null}}function Nl(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${yt(e)}'.`)}class Dl{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}const Vl=(()=>(class{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const 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}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e(class{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new Dl(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}))(),Ll=(()=>(class{constructor(t,e,n){n._addDefault(new Dl(t,e))}}))(),jl=(()=>(class{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){this._shouldRecreateView(t)?(this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))):this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)}_shouldRecreateView(t){const e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)}_hasContextShapeChanged(t){const e=Object.keys(t.previousValue||{}),n=Object.keys(t.currentValue||{});if(e.length===n.length){for(let t of n)if(-1===e.indexOf(t))return!0;return!1}return!0}_updateExistingContext(t){for(let e of Object.keys(t))this._viewRef.context[e]=this.ngTemplateOutletContext[e]}}))(),Ul=(()=>(class{}))(),zl=new Rt("DocumentToken"),Fl="browser";function Hl(t){return t===Fl}const Bl=(()=>{class t{}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new Gl(Ot(zl),window,Ot(re))}),t})();class Gl{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=(()=>[0,0])}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const n=this.document.querySelector(`#${t}`);if(n)return void this.scrollToElement(n);const s=this.document.querySelector(`[name='${t}']`);if(s)return void this.scrollToElement(s)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,s=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(n-r[0],s-r[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}const Wl=new b(t=>t.complete());function Yl(t){return t?function(t){return new b(e=>t.schedule(()=>e.complete()))}(t):Wl}function ql(t){const e=new b(e=>{e.next(t),e.complete()});return e._isScalar=!0,e.value=t,e}function Zl(...t){let e=t[t.length-1];switch(I(e)?t.pop():e=void 0,t.length){case 0:return Yl(e);case 1:return e?G(t,e):ql(t[0]);default:return G(t,e)}}class Ql extends T{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new S;return this._value}next(t){super.next(this._value=t)}}function Xl(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}Xl.prototype=Object.create(Error.prototype);const Kl=Xl,Jl={};class ta{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new ea(t,this.resultSelector))}}class ea extends z{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(Jl),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{let n;try{n=t()}catch(s){return void e.error(s)}return(n?W(n):Yl()).subscribe(e)})}function sa(){return X(1)}function ra(t,e){return function(n){return n.lift(new ia(t,e))}}class ia{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new oa(t,this.predicate,this.thisArg))}}class oa extends g{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}function la(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}la.prototype=Object.create(Error.prototype);const aa=la;function ca(t){return function(e){return 0===t?Yl():e.lift(new ua(t))}}class ua{constructor(t){if(this.total=t,this.total<0)throw new aa}call(t,e){return e.subscribe(new ha(t,this.total))}}class ha extends g{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,s=this.count++;e.length0){const n=this.count>=this.total?this.total:this.count,s=this.ring;for(let r=0;rda({hasValue:!1,next(){this.hasValue=!0},complete(){if(!this.hasValue)throw t()}});function ma(t=null){return e=>e.lift(new _a(t))}class _a{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new va(t,this.defaultValue))}}class va extends g{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}function ya(t,e){const n=arguments.length>=2;return s=>s.pipe(t?ra((e,n)=>t(e,n,s)):Q,ca(1),n?ma(e):ga(()=>new Kl))}function wa(t){return function(e){const n=new ba(t),s=e.lift(n);return n.caught=s}}class ba{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Ca(t,this.selector,this.caught))}}class Ca extends z{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const s=new R(this,void 0,void 0);this.add(s),U(this,n,void 0,void 0,s)}}}function xa(t){return e=>0===t?Yl():e.lift(new Sa(t))}class Sa{constructor(t){if(this.total=t,this.total<0)throw new aa}call(t,e){return e.subscribe(new Ea(t,this.total))}}class Ea extends g{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}function ka(t,e){const n=arguments.length>=2;return s=>s.pipe(t?ra((e,n)=>t(e,n,s)):Q,xa(1),n?ma(e):ga(()=>new Kl))}class Ta{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new Oa(t,this.predicate,this.thisArg,this.source))}}class Oa extends g{constructor(t,e,n,s){super(t),this.predicate=e,this.thisArg=n,this.source=s,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}function Ia(t,e){return"function"==typeof e?n=>n.pipe(Ia((n,s)=>W(t(n,s)).pipe(F((t,r)=>e(n,t,s,r))))):e=>e.lift(new Ra(t))}class Ra{constructor(t){this.project=t}call(t,e){return e.subscribe(new Pa(t,this.project))}}class Pa extends z{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(s){return void this.destination.error(s)}this._innerSub(e,t,n)}_innerSub(t,e,n){const s=this.innerSubscription;s&&s.unsubscribe();const r=new R(this,void 0,void 0);this.destination.add(r),this.innerSubscription=U(this,t,e,n,r)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,s,r){this.destination.next(e)}}function Aa(...t){return sa()(Zl(...t))}function Ma(...t){return e=>{let n=t[t.length-1];I(n)?t.pop():n=null;const s=t.length;return Aa(1!==s||n?s>0?G(t,n):Yl(n):ql(t[0]),e)}}function Na(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(s){return s.lift(new Da(t,e,n))}}class Da{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new Va(t,this.accumulator,this.seed,this.hasSeed))}}class Va extends g{constructor(t,e,n,s){super(t),this.accumulator=e,this._seed=n,this.hasSeed=s,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(s){this.destination.error(s)}this.seed=n,this.destination.next(n)}}function $a(t,e){return Y(t,e,1)}class La{constructor(t){this.callback=t}call(t,e){return e.subscribe(new ja(t,this.callback))}}class ja extends g{constructor(t,e){super(t),this.add(new d(e))}}let Ua=null;function za(){return Ua}class Fa{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(t){this._attrToPropMap=t}}class Ha extends Fa{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const e=this.createElement("div",document);if(null!=this.getStyle(e,"animationName"))this._animationPrefix="";else{const t=["Webkit","Moz","O","ms"];for(let n=0;n{null!=this.getStyle(e,t)&&(this._transitionEnd=n[t])})}catch(t){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(t){return t.getDistributedNodes()}resolveAndSetHref(t,e,n){t.href=null==n?e:e+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}const Ba={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},Ga=3,Wa={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Ya={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},qa=(()=>{if(St.Node)return St.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))}})();class Za extends Ha{parse(t){throw new Error("parse not implemented")}static makeCurrent(){var t;t=new Za,Ua||(Ua=t)}hasProperty(t,e){return e in t}setProperty(t,e,n){t[e]=n}getProperty(t,e){return t[e]}invoke(t,e,n){t[e](...n)}logError(t){window.console&&(console.error?console.error(t):console.log(t))}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return Ba}contains(t,e){return qa.call(t,e)}querySelector(t,e){return t.querySelector(e)}querySelectorAll(t,e){return t.querySelectorAll(e)}on(t,e,n){t.addEventListener(e,n,!1)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}createMouseEvent(t){const e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(t,!0,!0),e}createEvent(t){const e=this.getDefaultDocument().createEvent("Event");return e.initEvent(t,!0,!0),e}preventDefault(t){t.preventDefault(),t.returnValue=!1}isPrevented(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue}getInnerHTML(t){return t.innerHTML}getTemplateContent(t){return"content"in t&&this.isTemplateElement(t)?t.content:null}getOuterHTML(t){return t.outerHTML}nodeName(t){return t.nodeName}nodeValue(t){return t.nodeValue}type(t){return t.type}content(t){return this.hasProperty(t,"content")?t.content:t}firstChild(t){return t.firstChild}nextSibling(t){return t.nextSibling}parentElement(t){return t.parentNode}childNodes(t){return t.childNodes}childNodesAsList(t){const e=t.childNodes,n=new Array(e.length);for(let s=0;st.insertBefore(n,e))}insertAfter(t,e,n){t.insertBefore(n,e.nextSibling)}setInnerHTML(t,e){t.innerHTML=e}getText(t){return t.textContent}setText(t,e){t.textContent=e}getValue(t){return t.value}setValue(t,e){t.value=e}getChecked(t){return t.checked}setChecked(t,e){t.checked=e}createComment(t){return this.getDefaultDocument().createComment(t)}createTemplate(t){const e=this.getDefaultDocument().createElement("template");return e.innerHTML=t,e}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createElementNS(t,e,n){return(n=n||this.getDefaultDocument()).createElementNS(t,e)}createTextNode(t,e){return(e=e||this.getDefaultDocument()).createTextNode(t)}createScriptTag(t,e,n){const s=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return s.setAttribute(t,e),s}createStyleElement(t,e){const n=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(t,e)),n}createShadowRoot(t){return t.createShadowRoot()}getShadowRoot(t){return t.shadowRoot}getHost(t){return t.host}clone(t){return t.cloneNode(!0)}getElementsByClassName(t,e){return t.getElementsByClassName(e)}getElementsByTagName(t,e){return t.getElementsByTagName(e)}classList(t){return Array.prototype.slice.call(t.classList,0)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}hasClass(t,e){return t.classList.contains(e)}setStyle(t,e,n){t.style[e]=n}removeStyle(t,e){t.style[e]=""}getStyle(t,e){return t.style[e]}hasStyle(t,e,n){const s=this.getStyle(t,e)||"";return n?s==n:s.length>0}tagName(t){return t.tagName}attributeMap(t){const e=new Map,n=t.attributes;for(let s=0;s{class t extends dl{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=za().getLocation(),this._history=za().getHistory()}getBaseHrefFromDOM(){return za().getBaseHref(this._doc)}onPopState(t){za().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){za().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){Ka()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){Ka()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return t.ctorParameters=(()=>[{type:void 0,decorators:[{type:ut,args:[zl]}]}]),t})(),tc=new Rt("TRANSITION_ID"),ec=[{provide:Tr,useFactory:function(t,e,n){return()=>{n.get(Or).donePromise.then(()=>{const n=za();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(e=>n.getAttribute(e,"ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[tc,zl,Dt],multi:!0}];class nc{static init(){var t;t=new nc,ai=t}addToWindow(t){St.getAngularTestability=((e,n=!0)=>{const s=t.findTestabilityInTree(e,n);if(null==s)throw new Error("Could not find testability for element.");return s}),St.getAllAngularTestabilities=(()=>t.getAllTestabilities()),St.getAllAngularRootElements=(()=>t.getAllRootElements()),St.frameworkStabilizers||(St.frameworkStabilizers=[]),St.frameworkStabilizers.push(t=>{const e=St.getAllAngularTestabilities();let n=e.length,s=!1;const r=function(e){s=s||e,0==--n&&t(s)};e.forEach(function(t){t.whenStable(r)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const s=t.getTestability(e);return null!=s?s:n?za().isShadowRoot(e)?this.findTestabilityInTree(t,za().getHost(e),!0):this.findTestabilityInTree(t,za().parentElement(e),!0):null}}function sc(t,e){"undefined"!=typeof COMPILED&&COMPILED||((St.ng=St.ng||{})[t]=e)}const rc=(()=>({ApplicationRef:mi,NgZone:Xr}))();function ic(t){return ki(t)}const oc=new Rt("EventManagerPlugins"),lc=(()=>(class{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let s=0;s(class{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}))(),uc=(()=>(class extends cc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>za().remove(t))}}))(),hc={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/"},dc=/%COMP%/g,pc="_nghost-%COMP%",fc="_ngcontent-%COMP%";function gc(t,e,n){for(let s=0;s{!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}const _c=(()=>(class{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new vc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case Jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new bc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case Jt.Native:case Jt.ShadowDom:return new Cc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=gc(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}))();class vc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(hc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let 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}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,s){if(s){e=`${s}:${e}`;const r=hc[s];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const s=hc[n];s?t.removeAttributeNS(s,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&an.DashCase?t.style.setProperty(e,n,s&an.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&an.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){wc(e,"property"),t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return wc(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,mc(n)):this.eventManager.addEventListener(t,e,mc(n))}}const yc=(()=>"@".charCodeAt(0))();function wc(t,e){if(t.charCodeAt(0)===yc)throw new Error(`Found the synthetic ${e} ${t}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class bc extends vc{constructor(t,e,n,s){super(t),this.component=n;const r=gc(s+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr=fc.replace(dc,s+"-"+n.id),this.hostAttr=pc.replace(dc,s+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Cc extends vc{constructor(t,e,n,s){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=s,this.shadowRoot=s.encapsulation===Jt.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const r=gc(s.id,s.styles,[]);for(let i=0;i"undefined"!=typeof Zone&&Zone.__symbol__||function(t){return"__zone_symbol__"+t})(),Sc=xc("addEventListener"),Ec=xc("removeEventListener"),kc={},Tc="__zone_symbol__propagationStopped",Oc=(()=>{const t="undefined"!=typeof Zone&&Zone[xc("BLACK_LISTED_EVENTS")];if(t){const e={};return t.forEach(t=>{e[t]=t}),e}})(),Ic=function(t){return!!Oc&&Oc.hasOwnProperty(t)},Rc=function(t){const e=kc[t.type];if(!e)return;const n=this[e];if(!n)return;const s=[t];if(1===n.length){const t=n[0];return t.zone!==Zone.current?t.zone.run(t.handler,this,s):t.handler.apply(this,s)}{const e=n.slice();for(let n=0;n(class extends ac{constructor(t,e,n){super(t),this.ngZone=e,n&&function(t){return"server"===t}(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const t=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[Tc]=!0),t&&t.apply(this,arguments)}}supports(t){return!0}addEventListener(t,e,n){let s=n;if(!t[Sc]||Xr.isInAngularZone()&&!Ic(e))t.addEventListener(e,s,!1);else{let n=kc[e];n||(n=kc[e]=xc("ANGULAR"+e+"FALSE"));let r=t[n];const i=r&&r.length>0;r||(r=t[n]=[]);const o=Ic(e)?Zone.root:Zone.current;if(0===r.length)r.push({zone:o,handler:s});else{let t=!1;for(let e=0;ethis.removeEventListener(t,e,s)}removeEventListener(t,e,n){let s=t[Ec];if(!s)return t.removeEventListener.apply(t,[e,n,!1]);let r=kc[e],i=r&&t[r];if(!i)return t.removeEventListener.apply(t,[e,n,!1]);let o=!1;for(let l=0;l(class{constructor(){this.events=[],this.overrides={}}buildHammer(t){const e=new Hammer(t,this.options);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(const n in this.overrides)e.get(n).set(this.overrides[n]);return e}}))(),Vc=(()=>(class extends ac{constructor(t,e,n,s){super(t),this._config=e,this.console=n,this.loader=s}supports(t){return!(!Ac.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))}addEventListener(t,e,n){const s=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){let s=!1,r=()=>{s=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(r=(()=>{}));s||(r=this.addEventListener(t,e,n))}).catch(()=>{this.console.warn(`The "${e}" event cannot be bound because the custom `+"Hammer.JS loader failed."),r=(()=>{})}),()=>{r()}}return s.runOutsideAngular(()=>{const r=this._config.buildHammer(t),i=function(t){s.runGuarded(function(){n(t)})};return r.on(e,i),()=>{r.off(e,i),"function"==typeof r.destroy&&r.destroy()}})}isCustomEvent(t){return this._config.events.indexOf(t)>-1}}))(),$c=["alt","control","meta","shift"],Lc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},jc=(()=>{class t extends ac{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,s){const r=t.parseEventName(n),i=t.eventCallback(r.fullKey,s,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>za().onAndCancel(e,r.domEventName,i))}static parseEventName(e){const n=e.toLowerCase().split("."),s=n.shift();if(0===n.length||"keydown"!==s&&"keyup"!==s)return null;const r=t._normalizeKey(n.pop());let i="";if($c.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),i+=t+".")}),i+=r,0!=n.length||0===r.length)return null;const o={};return o.domEventName=s,o.fullKey=i,o}static getEventFullKey(t){let e="",n=za().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),$c.forEach(s=>{s!=n&&(0,Lc[s])(t)&&(e+=s+".")}),e+=n}static eventCallback(e,n,s){return r=>{t.getEventFullKey(r)===e&&s.runGuarded(()=>n(r))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t})();class Uc{}const zc=(()=>(class extends Uc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case Ie.NONE:return e;case Ie.HTML:return e instanceof Hc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){let n=null;try{Te=Te||new ae(t);let s=e?String(e):"";n=Te.getInertBodyElement(s);let r=5,i=s;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,s=i,i=n.innerHTML,n=Te.getInertBodyElement(s)}while(s!==i);const o=new xe,l=o.sanitizeChildren(Oe(n)||n);return le()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),l}finally{if(n){const t=Oe(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e)));case Ie.STYLE:return e instanceof Bc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";const e=t.match(Ae);return e&&he(e[1])===e[1]||t.match(Pe)&&function(t){let e=!0,n=!0;for(let s=0;s{class t{constructor(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.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Ir,useValue:e.appId},{provide:tc,useExisting:Ir},ec]}}}return t})();function Xc(){return new Kc(Ot(zl))}const Kc=(()=>{class t{constructor(t){this._doc=t}getTitle(){return za().getTitle(this._doc)}setTitle(t){za().setTitle(this._doc,t)}}return t.ngInjectableDef=mt({factory:Xc,token:t,providedIn:"root"}),t})();"undefined"!=typeof window&&window;class Jc{constructor(t,e){this.id=t,this.url=e}}class tu extends Jc{constructor(t,e,n="imperative",s=null){super(t,e),this.navigationTrigger=n,this.restoredState=s}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class eu extends Jc{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class nu extends Jc{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class su extends Jc{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ru extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class iu extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class ou extends Jc{constructor(t,e,n,s,r){super(t,e),this.urlAfterRedirects=n,this.state=s,this.shouldActivate=r}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class lu extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class au extends Jc{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class cu{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class uu{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class hu{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class du{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class pu{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class fu{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class gu{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const mu=(()=>(class{}))(),_u="primary";class vu{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function yu(t){return new vu(t)}const wu="ngNavigationCancelingError";function bu(t){const e=Error("NavigationCancelingError: "+t);return e[wu]=!0,e}function Cu(t,e,n){const s=n.path.split("/");if(s.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||s.length0?t[t.length-1]:null}function Pu(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Au(t){return Ve(t)?t:De(t)?W(Promise.resolve(t)):Zl(t)}function Mu(t,e,n){return n?function(t,e){return Ou(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!$u(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const s in n.children){if(!e.children[s])return!1;if(!t(e.children[s],n.children[s]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>e[n]===t[n])}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,s,r){if(n.segments.length>r.length){return!!$u(n.segments.slice(0,r.length),r)&&!s.hasChildren()}if(n.segments.length===r.length){if(!$u(n.segments,r))return!1;for(const e in s.children){if(!n.children[e])return!1;if(!t(n.children[e],s.children[e]))return!1}return!0}{const t=r.slice(0,n.segments.length),i=r.slice(n.segments.length);return!!$u(n.segments,t)&&!!n.children[_u]&&e(n.children[_u],s,i)}}(e,n,n.segments)}(t.root,e.root)}class Nu{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=yu(this.queryParams)),this._queryParamMap}toString(){return zu.serialize(this)}}class Du{constructor(t,e){this.segments=t,this.children=e,this.parent=null,Pu(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Fu(this)}}class Vu{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=yu(this.parameters)),this._parameterMap}toString(){return qu(this)}}function $u(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Lu(t,e){let n=[];return Pu(t.children,(t,s)=>{s===_u&&(n=n.concat(e(t,s)))}),Pu(t.children,(t,s)=>{s!==_u&&(n=n.concat(e(t,s)))}),n}class ju{}class Uu{parse(t){const e=new Ju(t);return new Nu(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){var e;return`${`/${function t(e,n){if(!e.hasChildren())return Fu(e);if(n){const n=e.children[_u]?t(e.children[_u],!1):"",s=[];return Pu(e.children,(e,n)=>{n!==_u&&s.push(`${n}:${t(e,!1)}`)}),s.length>0?`${n}(${s.join("//")})`:n}{const n=Lu(e,(n,s)=>s===_u?[t(e.children[_u],!1)]:[`${s}:${t(n,!1)}`]);return`${Fu(e)}/(${n.join("//")})`}}(t.root,!0)}`}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Bu(e)}=${Bu(t)}`).join("&"):`${Bu(e)}=${Bu(n)}`});return e.length?`?${e.join("&")}`:""}(t.queryParams)}${"string"==typeof t.fragment?`#${e=t.fragment,encodeURI(e)}`:""}`}}const zu=new Uu;function Fu(t){return t.segments.map(t=>qu(t)).join("/")}function Hu(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Bu(t){return Hu(t).replace(/%3B/gi,";")}function Gu(t){return Hu(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Wu(t){return decodeURIComponent(t)}function Yu(t){return Wu(t.replace(/\+/g,"%20"))}function qu(t){return`${Gu(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Gu(t)}=${Gu(e[t])}`).join("")}`;var e}const Zu=/^[^\/()?;=#]+/;function Qu(t){const e=t.match(Zu);return e?e[0]:""}const Xu=/^[^=?&#]+/,Ku=/^[^?&#]+/;class Ju{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Du([],{}):new Du([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[_u]=new Du(t,e)),n}parseSegment(){const t=Qu(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Vu(Wu(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Qu(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Qu(this.remaining);t&&this.capture(n=t)}t[Wu(e)]=Wu(n)}parseQueryParam(t){const e=function(t){const e=t.match(Xu);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(Ku);return e?e[0]:""}(this.remaining);t&&this.capture(n=t)}const s=Yu(e),r=Yu(n);if(t.hasOwnProperty(s)){let e=t[s];Array.isArray(e)||(t[s]=e=[e]),e.push(r)}else t[s]=r}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Qu(this.remaining),s=this.remaining[n.length];if("/"!==s&&")"!==s&&";"!==s)throw new Error(`Cannot parse url '${this.url}'`);let r=void 0;n.indexOf(":")>-1?(r=n.substr(0,n.indexOf(":")),this.capture(r),this.capture(":")):t&&(r=_u);const i=this.parseChildren();e[r]=1===Object.keys(i).length?i[_u]:new Du([],i),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class th{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=eh(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=eh(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=nh(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return nh(t,this._root).map(t=>t.value)}}function eh(t,e){if(t===e.value)return e;for(const n of e.children){const e=eh(t,n);if(e)return e}return null}function nh(t,e){if(t===e.value)return[e];for(const n of e.children){const s=nh(t,n);if(s.length)return s.unshift(e),s}return[]}class sh{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function rh(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class ih extends th{constructor(t,e){super(t),this.snapshot=e,hh(this,t)}toString(){return this.snapshot.toString()}}function oh(t,e){const n=function(t,e){const n=new ch([],{},{},"",{},_u,e,null,t.root,-1,{});return new uh("",new sh(n,[]))}(t,e),s=new Ql([new Vu("",{})]),r=new Ql({}),i=new Ql({}),o=new Ql({}),l=new Ql(""),a=new lh(s,r,o,l,i,_u,e,n.root);return a.snapshot=n.root,new ih(new sh(a,[]),n)}class lh{constructor(t,e,n,s,r,i,o,l){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=r,this.outlet=i,this.component=o,this._futureSnapshot=l}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(F(t=>yu(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(F(t=>yu(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function ah(t,e="emptyOnly"){const n=t.pathFromRoot;let s=0;if("always"!==e)for(s=n.length-1;s>=1;){const t=n[s],e=n[s-1];if(t.routeConfig&&""===t.routeConfig.path)s--;else{if(e.component)break;s--}}return function(t){return t.reduce((t,e)=>({params:Object.assign({},t.params,e.params),data:Object.assign({},t.data,e.data),resolve:Object.assign({},t.resolve,e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(s))}class ch{constructor(t,e,n,s,r,i,o,l,a,c,u){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=r,this.outlet=i,this.component=o,this.routeConfig=l,this._urlSegment=a,this._lastPathIndex=c,this._resolve=u}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=yu(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=yu(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class uh extends th{constructor(t,e){super(e),this.url=t,hh(this,e)}toString(){return dh(this._root)}}function hh(t,e){e.value._routerState=t,e.children.forEach(e=>hh(t,e))}function dh(t){const e=t.children.length>0?` { ${t.children.map(dh).join(", ")} } `:"";return`${t.value}${e}`}function ph(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Ou(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Ou(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nOu(t.parameters,s[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||fh(t.parent,e.parent))}function gh(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function mh(t,e,n,s,r){let i={};return s&&Pu(s,(t,e)=>{i[e]=Array.isArray(t)?t.map(t=>`${t}`):`${t}`}),new Nu(n.root===t?e:function t(e,n,s){const r={};return Pu(e.children,(e,i)=>{r[i]=e===n?s:t(e,n,s)}),new Du(e.segments,r)}(n.root,t,e),i,r)}class _h{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&gh(n[0]))throw new Error("Root segment cannot have matrix parameters");const s=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(s&&s!==Ru(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class vh{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function yh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[_u]:`${t}`}function wh(t,e,n){if(t||(t=new Du([],{})),0===t.segments.length&&t.hasChildren())return bh(t,e,n);const s=function(t,e,n){let s=0,r=e;const i={match:!1,pathIndex:0,commandIndex:0};for(;r=n.length)return i;const e=t.segments[r],o=yh(n[s]),l=s0&&void 0===o)break;if(o&&l&&"object"==typeof l&&void 0===l.outlets){if(!Eh(o,l,e))return i;s+=2}else{if(!Eh(o,{},e))return i;s++}r++}return{match:!0,pathIndex:r,commandIndex:s}}(t,e,n),r=n.slice(s.commandIndex);if(s.match&&s.pathIndex{null!==n&&(r[s]=wh(t.children[s],e,n))}),Pu(t.children,(t,e)=>{void 0===s[e]&&(r[e]=t)}),new Du(t.segments,r)}}function Ch(t,e,n){const s=t.segments.slice(0,e);let r=0;for(;r{null!==t&&(e[n]=Ch(new Du([],{}),0,t))}),e}function Sh(t){const e={};return Pu(t,(t,n)=>e[n]=`${t}`),e}function Eh(t,e,n){return t==n.path&&Ou(e,n.parameters)}const kh=(t,e,n)=>F(s=>(new Th(e,s.targetRouterState,s.currentRouterState,n).activate(t),s));class Th{constructor(t,e,n,s){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=s}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),ph(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const s=rh(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,s[e],n),delete s[e]}),Pu(s,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const s=t.value,r=e?e.value:null;if(s===r)if(s.component){const r=n.getContext(s.outlet);r&&this.deactivateChildRoutes(t,e,r.children)}else this.deactivateChildRoutes(t,e,n);else r&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),s=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:s})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const s=rh(t),r=t.value.component?n.children:e;Pu(s,(t,e)=>this.deactivateRouteAndItsChildren(t,r)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const s=rh(e);t.children.forEach(t=>{this.activateRoutes(t,s[t.value.outlet],n),this.forwardEvent(new fu(t.value.snapshot))}),t.children.length&&this.forwardEvent(new du(t.value.snapshot))}activateRoutes(t,e,n){const s=t.value,r=e?e.value:null;if(ph(s),s===r)if(s.component){const r=n.getOrCreateContext(s.outlet);this.activateChildRoutes(t,e,r.children)}else this.activateChildRoutes(t,e,n);else if(s.component){const e=n.getOrCreateContext(s.outlet);if(this.routeReuseStrategy.shouldAttach(s.snapshot)){const t=this.routeReuseStrategy.retrieve(s.snapshot);this.routeReuseStrategy.store(s.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),Oh(t.route)}else{const n=function(t){for(let e=s.snapshot.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(),r=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=s,e.resolver=r,e.outlet&&e.outlet.activateWith(s,r),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Oh(t){ph(t.value),t.children.forEach(Oh)}function Ih(t){return"function"==typeof t}function Rh(t){return t instanceof Nu}class Ph{constructor(t){this.segmentGroup=t||null}}class Ah{constructor(t){this.urlTree=t}}function Mh(t){return new b(e=>e.error(new Ph(t)))}function Nh(t){return new b(e=>e.error(new Ah(t)))}function Dh(t){return new b(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class Vh{constructor(t,e,n,s,r){this.configLoader=e,this.urlSerializer=n,this.urlTree=s,this.config=r,this.allowRedirects=!0,this.ngModule=t.get(tn)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,_u).pipe(F(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(wa(t=>{if(t instanceof Ah)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof Ph)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,_u).pipe(F(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(wa(t=>{if(t instanceof Ph)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const s=t.segments.length>0?new Du([],{[_u]:t}):t;return new Nu(s,e,n)}expandSegmentGroup(t,e,n,s){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(F(t=>new Du([],t))):this.expandSegment(t,n,e,n.segments,s,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Zl({});const n=[],s=[],r={};return Pu(t,(t,i)=>{const o=e(i,t).pipe(F(t=>r[i]=t));i===_u?n.push(o):s.push(o)}),Zl.apply(null,n.concat(s)).pipe(sa(),ya(),F(()=>r))}(n.children,(n,s)=>this.expandSegmentGroup(t,e,s,n))}expandSegment(t,e,n,s,r,i){return Zl(...n).pipe(F(o=>this.expandSegmentAgainstRoute(t,e,n,o,s,r,i).pipe(wa(t=>{if(t instanceof Ph)return Zl(null);throw t}))),sa(),ka(t=>!!t),wa((t,n)=>{if(t instanceof Kl||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,s,r))return Zl(new Du([],{}));throw new Ph(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,s,r,i,o){return Uh(s)!==i?Mh(e):void 0===s.redirectTo?this.matchSegmentAgainstRoute(t,e,s,r):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i):Mh(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i){return"**"===s.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,s,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,s){const r=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Nh(r):this.lineralizeSegments(n,r).pipe(Y(n=>{const r=new Du(n,{});return this.expandSegment(t,r,e,n,s,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,r,i){const{matched:o,consumedSegments:l,lastChild:a,positionalParamSegments:c}=$h(e,s,r);if(!o)return Mh(e);const u=this.applyRedirectCommands(l,s.redirectTo,c);return s.redirectTo.startsWith("/")?Nh(u):this.lineralizeSegments(s,u).pipe(Y(s=>this.expandSegment(t,e,n,s.concat(r.slice(a)),i,!1)))}matchSegmentAgainstRoute(t,e,n,s){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(F(t=>(n._loadedConfig=t,new Du(s,{})))):Zl(new Du(s,{}));const{matched:r,consumedSegments:i,lastChild:o}=$h(e,n,s);if(!r)return Mh(e);const l=s.slice(o);return this.getChildConfig(t,n,s).pipe(Y(t=>{const n=t.module,s=t.routes,{segmentGroup:r,slicedSegments:o}=function(t,e,n,s){return n.length>0&&function(t,e,n){return s.some(n=>jh(t,e,n)&&Uh(n)!==_u)}(t,n)?{segmentGroup:Lh(new Du(e,function(t,e){const n={};n[_u]=e;for(const s of t)""===s.path&&Uh(s)!==_u&&(n[Uh(s)]=new Du([],{}));return n}(s,new Du(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return s.some(n=>jh(t,e,n))}(t,n)?{segmentGroup:Lh(new Du(t.segments,function(t,e,n,s){const r={};for(const i of n)jh(t,e,i)&&!s[Uh(i)]&&(r[Uh(i)]=new Du([],{}));return Object.assign({},s,r)}(t,n,s,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,i,l,s);return 0===o.length&&r.hasChildren()?this.expandChildren(n,s,r).pipe(F(t=>new Du(i,t))):0===s.length&&0===o.length?Zl(new Du(i,{})):this.expandSegment(n,r,s,o,_u,!0).pipe(F(t=>new Du(i.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Zl(new xu(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Zl(e._loadedConfig):function(t,e,n){const s=e.canLoad;return s&&0!==s.length?W(s).pipe(F(s=>{const r=t.get(s);let i;if(function(t){return t&&Ih(t.canLoad)}(r))i=r.canLoad(e,n);else{if(!Ih(r))throw new Error("Invalid CanLoad guard");i=r(e,n)}return Au(i)})).pipe(sa(),(r=(t=>!0===t),t=>t.lift(new Ta(r,void 0,t)))):Zl(!0);var r}(t.injector,e,n).pipe(Y(n=>n?this.configLoader.load(t.injector,e).pipe(F(t=>(e._loadedConfig=t,t))):function(t){return new b(e=>e.error(bu(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Zl(new xu([],t))}lineralizeSegments(t,e){let n=[],s=e.root;for(;;){if(n=n.concat(s.segments),0===s.numberOfChildren)return Zl(n);if(s.numberOfChildren>1||!s.children[_u])return Dh(t.redirectTo);s=s.children[_u]}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,s){const r=this.createSegmentGroup(t,e.root,n,s);return new Nu(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return Pu(t,(t,s)=>{if("string"==typeof t&&t.startsWith(":")){const r=t.substring(1);n[s]=e[r]}else n[s]=t}),n}createSegmentGroup(t,e,n,s){const r=this.createSegments(t,e.segments,n,s);let i={};return Pu(e.children,(e,r)=>{i[r]=this.createSegmentGroup(t,e,n,s)}),new Du(r,i)}createSegments(t,e,n,s){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,s):this.findOrReturn(e,n))}findPosParam(t,e,n){const s=n[e.path.substring(1)];if(!s)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return s}findOrReturn(t,e){let n=0;for(const s of e){if(s.path===t.path)return e.splice(n),s;n++}return t}}function $h(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const s=(e.matcher||Cu)(n,t,e);return s?{matched:!0,consumedSegments:s.consumed,lastChild:s.consumed.length,positionalParamSegments:s.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Lh(t){if(1===t.numberOfChildren&&t.children[_u]){const e=t.children[_u];return new Du(t.segments.concat(e.segments),e.children)}return t}function jh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Uh(t){return t.outlet||_u}class zh{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Fh{constructor(t,e){this.component=t,this.route=e}}function Hh(t,e,n){const s=t._root;return function t(e,n,s,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const o=rh(n);return e.children.forEach(e=>{!function(e,n,s,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const o=e.value,l=n?n.value:null,a=s?s.getContext(e.value.outlet):null;if(l&&o.routeConfig===l.routeConfig){const c=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!$u(t.url,e.url);case"pathParamsOrQueryParamsChange":return!$u(t.url,e.url)||!Ou(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!fh(t,e)||!Ou(t.queryParams,e.queryParams);case"paramsChange":default:return!fh(t,e)}}(l,o,o.routeConfig.runGuardsAndResolvers);if(c?i.canActivateChecks.push(new zh(r)):(o.data=l.data,o._resolvedData=l._resolvedData),t(e,n,o.component?a?a.children:null:s,r,i),c){i.canDeactivateChecks.push(new Fh(a&&a.outlet&&a.outlet.component||null,l))}}else l&&Gh(n,a,i),i.canActivateChecks.push(new zh(r)),t(e,null,o.component?a?a.children:null:s,r,i)}(e,o[e.value.outlet],s,r.concat([e.value]),i),delete o[e.value.outlet]}),Pu(o,(t,e)=>Gh(t,s.getContext(e),i)),i}(s,e?e._root:null,n,[s.value])}function Bh(t,e,n){const s=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(s?s.module.injector:n).get(t)}function Gh(t,e,n){const s=rh(t),r=t.value;Pu(s,(t,s)=>{Gh(t,r.component?e?e.children.getContext(s):null:e,n)}),n.canDeactivateChecks.push(new Fh(r.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,r))}const Wh=Symbol("INITIAL_VALUE");function Yh(){return Ia(t=>(function(...t){let e=null,n=null;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&a(t[0])&&(t=t[0]),G(t,n).lift(new ta(e))})(...t.map(t=>t.pipe(xa(1),Ma(Wh)))).pipe(Na((t,e)=>{let n=!1;return e.reduce((t,s,r)=>{if(t!==Wh)return t;if(s===Wh&&(n=!0),!n){if(!1===s)return s;if(r===e.length-1||Rh(s))return s}return t},t)},Wh),ra(t=>t!==Wh),F(t=>Rh(t)?t:!0===t),xa(1)))}function qh(t,e){return null!==t&&e&&e(new pu(t)),Zl(!0)}function Zh(t,e){return null!==t&&e&&e(new hu(t)),Zl(!0)}function Qh(t,e,n){const s=e.routeConfig?e.routeConfig.canActivate:null;return s&&0!==s.length?Zl(s.map(s=>na(()=>{const r=Bh(s,e,n);let i;if(function(t){return t&&Ih(t.canActivate)}(r))i=Au(r.canActivate(e,t));else{if(!Ih(r))throw new Error("Invalid CanActivate guard");i=Au(r(e,t))}return i.pipe(ka())}))).pipe(Yh()):Zl(!0)}function Xh(t,e,n){const s=e[e.length-1],r=e.slice(0,e.length-1).reverse().map(t=>(function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null})(t)).filter(t=>null!==t).map(e=>na(()=>Zl(e.guards.map(r=>{const i=Bh(r,e.node,n);let o;if(function(t){return t&&Ih(t.canActivateChild)}(i))o=Au(i.canActivateChild(s,t));else{if(!Ih(i))throw new Error("Invalid CanActivateChild guard");o=Au(i(s,t))}return o.pipe(ka())})).pipe(Yh())));return Zl(r).pipe(Yh())}class Kh{}class Jh{constructor(t,e,n,s,r,i){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=s,this.paramsInheritanceStrategy=r,this.relativeLinkResolution=i}recognize(){try{const e=nd(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,n=this.processSegmentGroup(this.config,e,_u),s=new ch([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},_u,this.rootComponentType,null,this.urlTree.root,-1,{}),r=new sh(s,n),i=new uh(this.url,r);return this.inheritParamsAndData(i._root),Zl(i)}catch(t){return new b(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=ah(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Lu(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};n.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),s=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${s}'.`)}e[t.value.outlet]=t.value})}(),n.sort((t,e)=>t.value.outlet===_u?-1:e.value.outlet===_u?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,s){for(const i of t)try{return this.processSegmentAgainstRoute(i,e,n,s)}catch(r){if(!(r instanceof Kh))throw r}if(this.noLeftoversInUrl(e,n,s))return[];throw new Kh}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,s){if(t.redirectTo)throw new Kh;if((t.outlet||_u)!==s)throw new Kh;let r,i=[],o=[];if("**"===t.path){const i=n.length>0?Ru(n).parameters:{};r=new ch(n,i,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,id(t),s,t.component,t,td(e),ed(e)+n.length,od(t))}else{const l=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new Kh;return{consumedSegments:[],lastChild:0,parameters:{}}}const s=(e.matcher||Cu)(n,t,e);if(!s)throw new Kh;const r={};Pu(s.posParams,(t,e)=>{r[e]=t.path});const i=s.consumed.length>0?Object.assign({},r,s.consumed[s.consumed.length-1].parameters):r;return{consumedSegments:s.consumed,lastChild:s.consumed.length,parameters:i}}(e,t,n);i=l.consumedSegments,o=n.slice(l.lastChild),r=new ch(i,l.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,id(t),s,t.component,t,td(e),ed(e)+i.length,od(t))}const l=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:a,slicedSegments:c}=nd(e,i,o,l,this.relativeLinkResolution);if(0===c.length&&a.hasChildren()){const t=this.processChildren(l,a);return[new sh(r,t)]}if(0===l.length&&0===c.length)return[new sh(r,[])];const u=this.processSegment(l,a,c,_u);return[new sh(r,u)]}}function td(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function ed(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function nd(t,e,n,s,r){if(n.length>0&&function(t,e,n){return s.some(n=>sd(t,e,n)&&rd(n)!==_u)}(t,n)){const r=new Du(e,function(t,e,n,s){const r={};r[_u]=s,s._sourceSegment=t,s._segmentIndexShift=e.length;for(const i of n)if(""===i.path&&rd(i)!==_u){const n=new Du([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,r[rd(i)]=n}return r}(t,e,s,new Du(n,t.children)));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return s.some(n=>sd(t,e,n))}(t,n)){const i=new Du(t.segments,function(t,e,n,s,r,i){const o={};for(const l of s)if(sd(t,n,l)&&!r[rd(l)]){const n=new Du([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===i?t.segments.length:e.length,o[rd(l)]=n}return Object.assign({},r,o)}(t,e,n,s,t.children,r));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}const i=new Du(t.segments,t.children);return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}function sd(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function rd(t){return t.outlet||_u}function id(t){return t.data||{}}function od(t){return t.resolve||{}}function ld(t,e,n,s){const r=Bh(t,e,s);return Au(r.resolve?r.resolve(e,n):r(e,n))}function ad(t){return function(e){return e.pipe(Ia(e=>{const n=t(e);return n?W(n).pipe(F(()=>e)):W([e])}))}}class cd{}class ud{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const hd=new Rt("ROUTES");class dd{constructor(t,e,n,s){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=s}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(F(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const s=n.create(t);return new xu(Iu(s.injector.get(hd)).map(Tu),s)}))}loadModuleFactory(t){return"string"==typeof t?W(this.loader.load(t)):Au(t()).pipe(Y(t=>t instanceof en?Zl(t):W(this.compiler.compileModuleAsync(t))))}}class pd{}class fd{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function gd(t){throw t}function md(t,e,n){return e.parse("/")}function _d(t,e){return Zl(null)}class vd{constructor(t,e,n,s,r,i,o,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=s,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new T,this.errorHandler=gd,this.malformedUriErrorHandler=md,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:_d,afterPreactivation:_d},this.urlHandlingStrategy=new fd,this.routeReuseStrategy=new ud,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=r.get(tn),this.console=r.get(Dr);const a=r.get(Xr);this.isNgZoneEnabled=a instanceof Xr,this.resetConfig(l),this.currentUrlTree=new Nu(new Du([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new dd(i,o,t=>this.triggerEvent(new cu(t)),t=>this.triggerEvent(new uu(t))),this.routerState=oh(this.currentUrlTree,this.rootComponentType),this.transitions=new Ql({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(ra(t=>0!==t.id),F(t=>Object.assign({},t,{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Ia(t=>{let n=!1,s=!1;return Zl(t).pipe(da(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign({},this.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Ia(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Zl(t).pipe(Ia(t=>{const n=this.transitions.getValue();return e.next(new tu(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?Wl:[t]}),Ia(t=>Promise.resolve(t)),function(t,e,n,s){return function(r){return r.pipe(Ia(r=>(function(t,e,n,s,i){return new Vh(t,e,n,r.extractedUrl,i).apply()})(t,e,n,0,s).pipe(F(t=>Object.assign({},r,{urlAfterRedirects:t})))))}}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),da(t=>{this.currentNavigation=Object.assign({},this.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,e,n,s,r){return function(i){return i.pipe(Y(i=>(function(t,e,n,s,r="emptyOnly",i="legacy"){return new Jh(t,e,n,s,r,i).recognize()})(t,e,i.urlAfterRedirects,n(i.urlAfterRedirects),s,r).pipe(F(t=>Object.assign({},i,{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),da(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),da(t=>{const n=new ru(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:s,source:r,restoredState:i,extras:o}=t,l=new tu(n,this.serializeUrl(s),r,i);e.next(l);const a=oh(s,this.rootComponentType).snapshot;return Zl(Object.assign({},t,{targetSnapshot:a,urlAfterRedirects:s,extras:Object.assign({},o,{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),Wl}),ad(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!o})}),da(t=>{const e=new iu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),F(t=>Object.assign({},t,{guards:Hh(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,currentSnapshot:r,guards:{canActivateChecks:i,canDeactivateChecks:o}}=n;return 0===o.length&&0===i.length?Zl(Object.assign({},n,{guardsResult:!0})):function(t,e,n,s){return W(o).pipe(Y(t=>(function(t,e,n,s,r){const i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?Zl(i.map(i=>{const o=Bh(i,e,r);let l;if(function(t){return t&&Ih(t.canDeactivate)}(o))l=Au(o.canDeactivate(t,e,n,s));else{if(!Ih(o))throw new Error("Invalid CanDeactivate guard");l=Au(o(t,e,n,s))}return l.pipe(ka())})).pipe(Yh()):Zl(!0)})(t.component,t.route,n,e,s)),ka(t=>!0!==t,!0))}(0,s,r,t).pipe(Y(n=>n&&function(t){return"boolean"==typeof n}()?function(t,e,n,s){return W(i).pipe($a(e=>W([Zh(e.route.parent,s),qh(e.route,s),Xh(t,e.path,n),Qh(t,e.route,n)]).pipe(sa(),ka(t=>!0!==t,!0))),ka(t=>!0!==t,!0))}(s,0,t,e):Zl(n)),F(t=>Object.assign({},n,{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),da(t=>{if(Rh(t.guardsResult)){const e=bu(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),da(t=>{const e=new ou(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),ra(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new nu(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),ad(t=>{if(t.guards.canActivateChecks.length)return Zl(t).pipe(da(t=>{const e=new lu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,guards:{canActivateChecks:r}}=n;return r.length?W(r).pipe($a(n=>(function(t,e,n,r){return function(t,e,n,s){const r=Object.keys(t);if(0===r.length)return Zl({});if(1===r.length){const i=r[0];return ld(t[i],e,n,s).pipe(F(t=>({[i]:t})))}const i={};return W(r).pipe(Y(r=>ld(t[r],e,n,s).pipe(F(t=>(i[r]=t,t))))).pipe(ya(),F(()=>i))}(t._resolve,t,s,r).pipe(F(e=>(t._resolvedData=e,t.data=Object.assign({},t.data,ah(t,n).resolve),null)))})(n.route,0,t,e)),function(t,e){return arguments.length>=2?function(e){return y(Na(t,void 0),ca(1),ma(void 0))(e)}:function(e){return y(Na((e,n,s)=>t(e)),ca(1))(e)}}((t,e)=>t),F(t=>n)):Zl(n)}))}}(this.paramsInheritanceStrategy,this.ngModule.injector),da(t=>{const e=new au(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}))}),ad(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!o})}),F(t=>{const e=function(t,e,n){const s=function t(e,n,s){if(s&&e.shouldReuseRoute(n.value,s.value.snapshot)){const r=s.value;r._futureSnapshot=n.value;const i=function(e,n,s){return n.children.map(n=>{for(const r of s.children)if(e.shouldReuseRoute(r.value.snapshot,n.value))return t(e,n,r);return t(e,n)})}(e,n,s);return new sh(r,i)}{const s=e.retrieve(n.value);if(s){const t=s.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let s=0;st(e,n));return new sh(s,i)}}var r}(t,e._root,n?n._root:void 0);return new ih(s,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign({},t,{targetRouterState:e})}),da(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),kh(this.rootContexts,this.routeReuseStrategy,t=>this.triggerEvent(t)),da({next(){n=!0},complete(){n=!0}}),function(t){return e=>e.lift(new La(t))}(()=>{if(!n&&!s){this.resetUrlToCurrentUrlTree();const n=new nu(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null}),wa(n=>{if(s=!0,function(t){return n&&n[wu]}()){const s=Rh(n.url);s||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const r=new nu(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(r),t.resolve(!1),s&&this.navigateByUrl(n.url)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const s=new su(t.id,this.serializeUrl(t.extractedUrl),n);e.next(s);try{t.resolve(this.errorHandler(n))}catch(r){t.reject(r)}}return Wl}))}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign({},this.getTransition(),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",s=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,s,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){Su(t),this.config=t.map(Tu),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:s,fragment:r,preserveQueryParams:i,queryParamsHandling:o,preserveFragment:l}=e;le()&&i&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const a=n||this.routerState.root,c=l?this.currentUrlTree.fragment:r;let u=null;if(o)switch(o){case"merge":u=Object.assign({},this.currentUrlTree.queryParams,s);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=s||null}else u=i?this.currentUrlTree.queryParams:s||null;return null!==u&&(u=this.removeEmptyProps(u)),function(t,e,n,s,r){if(0===n.length)return mh(e.root,e.root,e,s,r);const i=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new _h(!0,0,t);let e=0,n=!1;const s=t.reduce((t,s,r)=>{if("object"==typeof s&&null!=s){if(s.outlets){const e={};return Pu(s.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(s.segmentPath)return[...t,s.segmentPath]}return"string"!=typeof s?[...t,s]:0===r?(s.split("/").forEach((s,r)=>{0==r&&"."===s||(0==r&&""===s?n=!0:".."===s?e++:""!=s&&t.push(s))}),t):[...t,s]},[]);return new _h(n,e,s)}(n);if(i.toRoot())return mh(e.root,new Du([],{}),e,s,r);const o=function(t,n,s){if(t.isAbsolute)return new vh(e.root,!0,0);if(-1===s.snapshot._lastPathIndex)return new vh(s.snapshot._urlSegment,!0,0);const r=gh(t.commands[0])?0:1;return function(e,n,i){let o=s.snapshot._urlSegment,l=s.snapshot._lastPathIndex+r,a=t.numberOfDoubleDots;for(;a>l;){if(a-=l,!(o=o.parent))throw new Error("Invalid number of '../'");l=o.segments.length}return new vh(o,!1,l-a)}()}(i,0,t),l=o.processChildren?bh(o.segmentGroup,o.index,i.commands):wh(o.segmentGroup,o.index,i.commands);return mh(o.segmentGroup,l,e,s,r)}(a,this.currentUrlTree,t,u,c)}navigateByUrl(t,e={skipLocationChange:!1}){le()&&this.isNgZoneEnabled&&!Xr.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=Rh(t)?t:this.parseUrl(t),s=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(s,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const s=t[n];return null!=s&&(e[n]=s),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new eu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,s){const r=this.getTransition();if(r&&"imperative"!==e&&"imperative"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"hashchange"==e&&"popstate"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"popstate"==e&&"hashchange"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);let i=null,o=null;const l=new Promise((t,e)=>{i=t,o=e}),a=++this.navigationId;return this.setTransition({id:a,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:s,resolve:i,reject:o,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,s){const r=this.urlSerializer.serialize(t);s=s||{},this.location.isCurrentPathEqualTo(r)||e?this.location.replaceState(r,"",Object.assign({},s,{navigationId:n})):this.location.go(r,"",Object.assign({},s,{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}class yd{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new wd,this.attachRef=null}}class wd{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new yd,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}const bd=(()=>(class{constructor(t,e,n,s,r){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=r,this.activated=null,this._activatedRoute=null,this.activateEvents=new Sr,this.deactivateEvents=new Sr,this.name=s||_u,t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),s=this.parentContexts.getOrCreateContext(this.name).children,r=new Cd(t,s,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,r),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}))();class Cd{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===lh?this.route:t===wd?this.childContexts:this.parent.get(t,e)}}class xd{}class Sd{preload(t,e){return e().pipe(wa(()=>Zl(null)))}}class Ed{preload(t,e){return Zl(null)}}const kd=(()=>(class{constructor(t,e,n,s,r){this.router=t,this.injector=s,this.preloadingStrategy=r,this.loader=new dd(e,n,e=>t.triggerEvent(new cu(e)),e=>t.triggerEvent(new uu(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(ra(t=>t instanceof eu),$a(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(tn);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const s of e)if(s.loadChildren&&!s.canLoad&&s._loadedConfig){const t=s._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else s.loadChildren&&!s.canLoad?n.push(this.preloadConfig(t,s)):s.children&&n.push(this.processRoutes(t,s.children));return W(n).pipe(X(),F(t=>void 0))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Y(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}))();class Td{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof tu?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof eu&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof gu&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new gu(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}const Od=new Rt("ROUTER_CONFIGURATION"),Id=new Rt("ROUTER_FORROOT_GUARD"),Rd=[ml,{provide:ju,useClass:Uu},{provide:vd,useFactory:$d,deps:[mi,ju,wd,ml,Dt,kr,zr,hd,Od,[pd,new ht],[cd,new ht]]},wd,{provide:lh,useFactory:Ld,deps:[vd]},{provide:kr,useClass:wi},kd,Ed,Sd,{provide:Od,useValue:{enableTracing:!1}}];function Pd(){return new hi("Router",vd)}const Ad=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[Rd,Vd(e),{provide:Id,useFactory:Dd,deps:[[vd,new ht,new pt]]},{provide:Od,useValue:n||{}},{provide:fl,useFactory:Nd,deps:[dl,[new ut(gl),new ht],Od]},{provide:Td,useFactory:Md,deps:[vd,Bl,Od]},{provide:xd,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:Ed},{provide:hi,multi:!0,useFactory:Pd},[jd,{provide:Tr,multi:!0,useFactory:Ud,deps:[jd]},{provide:Fd,useFactory:zd,deps:[jd]},{provide:Nr,multi:!0,useExisting:Fd}]]}}static forChild(e){return{ngModule:t,providers:[Vd(e)]}}}return t})();function Md(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Td(t,e,n)}function Nd(t,e,n={}){return n.useHash?new vl(t,e):new yl(t,e)}function Dd(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function Vd(t){return[{provide:Kt,multi:!0,useValue:t},{provide:hd,multi:!0,useValue:t}]}function $d(t,e,n,s,r,i,o,l,a={},c,u){const h=new vd(null,e,n,s,r,i,o,Iu(l));if(c&&(h.urlHandlingStrategy=c),u&&(h.routeReuseStrategy=u),a.errorHandler&&(h.errorHandler=a.errorHandler),a.malformedUriErrorHandler&&(h.malformedUriErrorHandler=a.malformedUriErrorHandler),a.enableTracing){const t=za();h.events.subscribe(e=>{t.logGroup(`Router Event: ${e.constructor.name}`),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return a.onSameUrlNavigation&&(h.onSameUrlNavigation=a.onSameUrlNavigation),a.paramsInheritanceStrategy&&(h.paramsInheritanceStrategy=a.paramsInheritanceStrategy),a.urlUpdateStrategy&&(h.urlUpdateStrategy=a.urlUpdateStrategy),a.relativeLinkResolution&&(h.relativeLinkResolution=a.relativeLinkResolution),h}function Ld(t){return t.routerState.root}const jd=(()=>(class{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new T}appInitializer(){return this.injector.get(pl,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(vd),s=this.injector.get(Od);if(this.isLegacyDisabled(s)||this.isLegacyEnabled(s))t(!0);else if("disabled"===s.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==s.initialNavigation)throw new Error(`Invalid initialNavigation options: '${s.initialNavigation}'`);n.hooks.afterPreactivation=(()=>this.initNavigation?Zl(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone)),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(Od),n=this.injector.get(kd),s=this.injector.get(Td),r=this.injector.get(vd),i=this.injector.get(mi);t===i.components[0]&&(this.isLegacyEnabled(e)?r.initialNavigation():this.isLegacyDisabled(e)&&r.setUpLocationChangeListener(),n.setUpPreloading(),s.init(),r.resetRootComponentType(i.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}))();function Ud(t){return t.appInitializer.bind(t)}function zd(t){return t.bootstrapListener.bind(t)}const Fd=new Rt("Router Initializer");var Hd=Qn({encapsulation:2,styles:[],data:{}});function Bd(t){return Ki(0,[(t()(),Vi(0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),lr(1,212992,null,0,bd,[wd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,1,0)},null)}function Gd(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"ng-component",[],null,null,null,Bd,Hd)),lr(1,49152,null,0,mu,[],null,null)],null,null)}var Wd=$s("ng-component",mu,Gd,{},{},[]);const Yd="Dropdowns",qd=(()=>(class{constructor(){this.klass="default",this.items=[],this.placeholder="Select item",this.searchChange=new Sr,this.font_size=16,this.width=128,this.filtered_items=[]}ngOnChanges(t){t.items&&(this.list=this.items.map(t=>t instanceof Object?t:{id:t,name:t}),this.longest=this.list.reduce((t,e)=>e.name.length>t.name.length?e:t,{id:"",name:""}),this.filter())}ngAfterViewInit(){this.resize()}trackByFn(t,e){return e?"string"==typeof e?e:e.id:t}resize(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)}filter(){if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(t=>("string"==typeof t?t:t.name).toLowerCase().indexOf(this.search.toLowerCase())>=0)),this.options&&this.options.hide_active&&this.selected)){const t="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(e=>("string"==typeof e?e:e.id).indexOf(t)<0)}}toggleShow(){this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(()=>{this.input&&this.input.nativeElement.focus()},100)}updateScroll(){if(!this.viewport||!this.scroll_el)return setTimeout(()=>this.updateScroll(),50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;const t="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(e=>("string"==typeof e?e:e.id)===t))}select(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)}change(t){const e="string"==typeof this.selected?this.selected:this.selected.id,n=this.filtered_items.findIndex(t=>("string"==typeof t?t:t.id)==e)+t;n>=0&&nthis.updateScroll(),100))}close(){this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null),this.close_timer=setTimeout(()=>this.show=!1,100)}cancelClose(){setTimeout(()=>{this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null)},50)}writeValue(t){this.selected=t,this.show=!1}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Zd=cl,Qd=(()=>{class t{constructor(){if(this.build=Zd(),!t.init){const e=Zd();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Yd} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Yd} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();function Xd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function Kd(t){return Array.isArray(t)?t:[t]}function Jd(t){return null==t?"":"string"==typeof t?t:`${t}px`}function tp(t,e,n,r){return s(n)&&(r=n,n=void 0),r?tp(t,e,n).pipe(F(t=>a(t)?r(...t):r(t))):new b(s=>{!function t(e,n,s,r,i){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,s,i),o=(()=>t.removeEventListener(n,s,i))}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,s),o=(()=>t.off(n,s))}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,s),o=(()=>t.removeListener(n,s))}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,l=e.length;o1?Array.prototype.slice.call(arguments):t)},s,n)})}class ep extends d{constructor(t,e){super()}schedule(t,e=0){return this}}class np extends ep{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,s=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(s,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(s,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,s=void 0;try{this.work(t)}catch(r){n=!0,s=!!r&&r||new Error(r)}if(n)return this.unsubscribe(),s}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,s=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==s&&n.splice(s,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}class sp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}const rp=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=(()=>Date.now()),t})();class ip extends rp{constructor(t,e=rp.now){super(t,()=>ip.delegate&&ip.delegate!==this?ip.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return ip.delegate&&ip.delegate!==this?ip.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let 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}}}class op extends ip{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s(function(t){const e=cp[t];e&&e()})(e)),e},clearImmediate(t){delete cp[t]}};class hp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=up.setImmediate(t.flush.bind(t,null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(up.clearImmediate(e),t.scheduled=void 0)}}class dp extends ip{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s=0}function wp(t){const{index:e,period:n,subscriber:s}=t;if(s.next(e),!s.closed){if(-1===n)return s.complete();t.index=e+1,this.schedule(t,n)}}function bp(t,e=mp){return n=(()=>(function(t=0,e,n){let s=-1;return yp(e)?s=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=mp),new b(e=>{const r=yp(t)?t:+t-n.now();return n.schedule(wp,r,{index:0,period:s,subscriber:e})})})(t,e)),function(t){return t.lift(new _p(n))};var n}function Cp(t){return e=>e.lift(new xp(t))}class xp{constructor(t){this.notifier=t}call(t,e){const n=new Sp(t),s=U(n,this.notifier);return s&&!n.seenValue?(n.add(s),e.subscribe(n)):n}}class Sp extends z{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,s,r){this.seenValue=!0,this.complete()}notifyComplete(){}}class Ep{call(t,e){return e.subscribe(new kp(t))}}class kp extends g{constructor(t){super(t),this.hasPrev=!1}_next(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t}}class Tp extends np{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}class Op extends ip{}const Ip=new Op(Tp);function Rp(t,e){return new b(e?n=>e.schedule(Pp,0,{error:t,subscriber:n}):e=>e.error(t))}function Pp({error:t,subscriber:e}){e.error(t)}var Ap;!function(t){t.NEXT="N",t.ERROR="E",t.COMPLETE="C"}(Ap||(Ap={}));const Mp=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(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()}}do(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()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Zl(this.value);case"E":return Rp(this.error);case"C":return Yl()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})();class Np extends g{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(Np.dispatch,this.delay,new Dp(t,this.destination)))}_next(t){this.scheduleMessage(Mp.createNext(t))}_error(t){this.scheduleMessage(Mp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(Mp.createComplete()),this.unsubscribe()}}class Dp{constructor(t,e){this.notification=t,this.destination=e}}class Vp extends T{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift(),super.next(t)}nextTimeWindow(t){this._events.push(new $p(this._getNow(),t)),this._trimBufferThenGetEvents(),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),s=this.scheduler,r=n.length;let i;if(this.closed)throw new S;if(this.isStopped||this.hasError?i=d.EMPTY:(this.observers.push(t),i=new E(this,t)),s&&t.add(t=new Np(t,s)),e)for(let o=0;oe&&(i=Math.max(i,r-e)),i>0&&s.splice(0,i),s}}class $p{constructor(t,e){this.time=t,this.value=e}}let Lp;try{Lp="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Dv){Lp=!1}const jp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Hl(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&&!Lp)&&"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.ngInjectableDef=mt({factory:function(){return new t(Ot(Mr,8))},token:t,providedIn:"root"}),t})(),Up=(()=>(class{}))(),zp=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();let Fp;function Hp(){if("object"!=typeof document||!document)return zp.NORMAL;if(!Fp){const 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";const n=document.createElement("div"),s=n.style;s.width="2px",s.height="1px",t.appendChild(n),document.body.appendChild(t),Fp=zp.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Fp=0===t.scrollLeft?zp.NEGATED:zp.INVERTED),t.parentNode.removeChild(t)}return Fp}class Bp{}class Gp extends Bp{constructor(t){super(),this._data=t}connect(){return this._data instanceof b?this._data:Zl(this._data)}disconnect(){}}const Wp=new Rt("VIRTUAL_SCROLL_STRATEGY");class Yp{constructor(t,e,n){this._scrolledIndexChange=new T,this.scrolledIndexChange=this._scrolledIndexChange.pipe(t=>t.lift(new fp(void 0,void 0))),this._viewport=null,this._itemSize=t,this._minBufferPx=e,this._maxBufferPx=n}attach(t){this._viewport=t,this._updateTotalContentSize(),this._updateRenderedRange()}detach(){this._scrolledIndexChange.complete(),this._viewport=null}updateItemAndBufferSize(t,e,n){if(n0&&(s.end=Math.min(i,s.end+t),s.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(s),this._viewport.setRenderedContentOffset(this._itemSize*s.start),this._scrolledIndexChange.next(Math.floor(e))}}function qp(t){return t._scrollStrategy}const Zp=(()=>(class{constructor(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Yp(this.itemSize,this.minBufferPx,this.maxBufferPx)}get itemSize(){return this._itemSize}set itemSize(t){this._itemSize=Xd(t)}get minBufferPx(){return this._minBufferPx}set minBufferPx(t){this._minBufferPx=Xd(t)}get maxBufferPx(){return this._maxBufferPx}set maxBufferPx(t){this._maxBufferPx=Xd(t)}ngOnChanges(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}}))(),Qp=20,Xp=(()=>{class t{constructor(t,e){this._ngZone=t,this._platform=e,this._scrolled=new T,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=Qp){return this._platform.isBrowser?new b(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(bp(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Zl()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(ra(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,s)=>{this._scrollableContainsElement(s,t)&&e.push(s)}),e}_scrollableContainsElement(t,e){let n=e.nativeElement,s=t.getElementRef().nativeElement;do{if(n==s)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>tp(window.document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Xr),Ot(jp))},token:t,providedIn:"root"}),t})(),Kp=(()=>(class{constructor(t,e,n,s){this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=s,this._destroyed=new T,this._elementScrolled=new b(t=>this.ngZone.runOutsideAngular(()=>tp(this.elementRef.nativeElement,"scroll").pipe(Cp(this._destroyed)).subscribe(t)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(t){const e=this.elementRef.nativeElement,n=this.dir&&"rtl"==this.dir.value;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Hp()!=zp.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Hp()==zp.INVERTED?t.left=t.right:Hp()==zp.NEGATED&&(t.left=t.right?-t.right:t.right)):null!=t.right&&(t.left=e.scrollWidth-e.clientWidth-t.right),this._applyScrollToOptions(t)}_applyScrollToOptions(t){const e=this.elementRef.nativeElement;"object"==typeof document&&"scrollBehavior"in document.documentElement.style?e.scrollTo(t):(null!=t.top&&(e.scrollTop=t.top),null!=t.left&&(e.scrollLeft=t.left))}measureScrollOffset(t){const e=this.elementRef.nativeElement;if("top"==t)return e.scrollTop;if("bottom"==t)return e.scrollHeight-e.clientHeight-e.scrollTop;const n=this.dir&&"rtl"==this.dir.value;return"start"==t?t=n?"right":"left":"end"==t&&(t=n?"left":"right"),n&&Hp()==zp.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Hp()==zp.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft}}))(),Jp="undefined"!=typeof requestAnimationFrame?lp:pp,tf=(()=>(class extends Kp{constructor(t,e,n,s,r,i){if(super(t,i,n,r),this.elementRef=t,this._changeDetectorRef=e,this._scrollStrategy=s,this._detachedSubject=new T,this._renderedRangeSubject=new T,this.orientation="vertical",this.scrolledIndexChange=new b(t=>this._scrollStrategy.scrolledIndexChange.subscribe(e=>Promise.resolve().then(()=>this.ngZone.run(()=>t.next(e))))),this.renderedRangeStream=this._renderedRangeSubject.asObservable(),this._totalContentSizeTransform="",this._totalContentSize=0,this._renderedRange={start:0,end:0},this._dataLength=0,this._viewportSize=0,this._renderedContentOffset=0,this._renderedContentOffsetNeedsRewrite=!1,this._isChangeDetectionPending=!1,this._runAfterChangeDetection=[],!s)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.')}ngOnInit(){super.ngOnInit(),this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._measureViewportSize(),this._scrollStrategy.attach(this),this.elementScrolled().pipe(Ma(null),bp(0,Jp)).subscribe(()=>this._scrollStrategy.onContentScrolled()),this._markChangeDetectionNeeded()}))}ngOnDestroy(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),super.ngOnDestroy()}attach(t){if(this._forOf)throw Error("CdkVirtualScrollViewport is already attached.");this.ngZone.runOutsideAngular(()=>{this._forOf=t,this._forOf.dataStream.pipe(Cp(this._detachedSubject)).subscribe(t=>{const e=t.length;e!==this._dataLength&&(this._dataLength=e,this._scrollStrategy.onDataLengthChanged()),this._doChangeDetection()})})}detach(){this._forOf=null,this._detachedSubject.next()}getDataLength(){return this._dataLength}getViewportSize(){return this._viewportSize}getRenderedRange(){return this._renderedRange}setTotalContentSize(t){this._totalContentSize!==t&&(this._totalContentSize=t,this._totalContentSizeTransform=`scale${"horizontal"==this.orientation?"X":"Y"}(${this._totalContentSize})`,this._markChangeDetectionNeeded())}setRenderedRange(t){var e,n;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(()=>this._scrollStrategy.onContentRendered()))}getOffsetToRenderedContentStart(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}setRenderedContentOffset(t,e="to-start"){const n="horizontal"==this.orientation,s=n?"X":"Y";let r=`translate${s}(${Number((n&&this.dir&&"rtl"==this.dir.value?-1:1)*t)}px)`;this._renderedContentOffset=t,"to-end"===e&&(r+=` translate${s}(-100%)`,this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=r&&(this._renderedContentTransform=r,this._markChangeDetectionNeeded(()=>{this._renderedContentOffsetNeedsRewrite?(this._renderedContentOffset-=this.measureRenderedContentSize(),this._renderedContentOffsetNeedsRewrite=!1,this.setRenderedContentOffset(this._renderedContentOffset)):this._scrollStrategy.onRenderedOffsetChanged()}))}scrollToOffset(t,e="auto"){const n={behavior:e};"horizontal"===this.orientation?n.start=t:n.top=t,this.scrollTo(n)}scrollToIndex(t,e="auto"){this._scrollStrategy.scrollToIndex(t,e)}measureScrollOffset(t){return super.measureScrollOffset(t||("horizontal"===this.orientation?"start":"top"))}measureRenderedContentSize(){const t=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?t.offsetWidth:t.offsetHeight}measureRangeSize(t){return this._forOf?this._forOf.measureRangeSize(t,this.orientation):0}checkViewportSize(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}_measureViewportSize(){const t=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?t.clientWidth:t.clientHeight}_markChangeDetectionNeeded(t){t&&this._runAfterChangeDetection.push(t),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._doChangeDetection()})))}_doChangeDetection(){this._isChangeDetectionPending=!1,this.ngZone.run(()=>this._changeDetectorRef.markForCheck()),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;const t=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(const e of t)e()}}))();function ef(t,e){if(!e.getBoundingClientRect)return 0;const n=e.getBoundingClientRect();return"horizontal"==t?n.width:n.height}const nf=(()=>(class{constructor(t,e,n,s,r){this._viewContainerRef=t,this._template=e,this._differs=n,this._viewport=s,this.viewChange=new T,this._dataSourceChanges=new T,this.cdkVirtualForTemplateCacheSize=20,this.dataStream=this._dataSourceChanges.pipe(Ma(null),t=>t.lift(new Ep),Ia(([t,e])=>this._changeDataSource(t,e)),function(t,e,n){let s;return s={bufferSize:1,windowTime:void 0,refCount:!1,scheduler:void 0},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:s}){let r,i,o=0,l=!1,a=!1;return function(c){o++,r&&!l||(l=!1,r=new Vp(t,e,s),i=c.subscribe({next(t){r.next(t)},error(t){l=!0,r.error(t)},complete(){a=!0,r.complete()}}));const u=r.subscribe(this);this.add(()=>{o--,u.unsubscribe(),i&&!a&&n&&0===o&&(i.unsubscribe(),i=void 0,r=void 0)})}}(s))}()),this._differ=null,this._templateCache=[],this._needsUpdate=!1,this._destroyed=new T,this.dataStream.subscribe(t=>{this._data=t,this._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe(Cp(this._destroyed)).subscribe(t=>{this._renderedRange=t,r.run(()=>this.viewChange.next(this._renderedRange)),this._onRenderedDataChange()}),this._viewport.attach(this)}get cdkVirtualForOf(){return this._cdkVirtualForOf}set cdkVirtualForOf(t){this._cdkVirtualForOf=t;const e=function(t){return t&&"function"==typeof t.connect}(t)?t:new Gp(t instanceof b?t:Array.prototype.slice.call(t||[]));this._dataSourceChanges.next(e)}get cdkVirtualForTrackBy(){return this._cdkVirtualForTrackBy}set cdkVirtualForTrackBy(t){this._needsUpdate=!0,this._cdkVirtualForTrackBy=t?(e,n)=>t(e+(this._renderedRange?this._renderedRange.start:0),n):void 0}set cdkVirtualForTemplate(t){t&&(this._needsUpdate=!0,this._template=t)}measureRangeSize(t,e){if(t.start>=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");const n=t.start-this._renderedRange.start;let s=0,r=t.end-t.start;for(;r--;){const t=this._viewContainerRef.get(r+n);let i=t?t.rootNodes.length:0;for(;i--;)s+=ef(e,t.rootNodes[i])}return s}ngDoCheck(){if(this._differ&&this._needsUpdate){const t=this._differ.diff(this._renderedItems);t?this._applyChanges(t):this._updateContext(),this._needsUpdate=!1}}ngOnDestroy(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(let t of this._templateCache)t.destroy()}_onRenderedDataChange(){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)}_changeDataSource(t,e){return t&&t.disconnect(this),this._needsUpdate=!0,e?e.connect(this):Zl()}_updateContext(){const t=this._data.length;let e=this._viewContainerRef.length;for(;e--;){let n=this._viewContainerRef.get(e);n.context.index=this._renderedRange.start+e,n.context.count=t,this._updateComputedContextProperties(n.context),n.detectChanges()}}_applyChanges(t){t.forEachOperation((t,e,n)=>{if(null==t.previousIndex)this._insertViewForNewItem(n).context.$implicit=t.item;else if(null==n)this._cacheView(this._detachView(e));else{const s=this._viewContainerRef.get(e);this._viewContainerRef.move(s,n),s.context.$implicit=t.item}}),t.forEachIdentityChange(t=>{this._viewContainerRef.get(t.currentIndex).context.$implicit=t.item});const e=this._data.length;let n=this._viewContainerRef.length;for(;n--;){const t=this._viewContainerRef.get(n);t.context.index=this._renderedRange.start+n,t.context.count=e,this._updateComputedContextProperties(t.context)}}_cacheView(t){if(this._templateCache.length(class{}))(),rf=20,of=(()=>{class t{constructor(t,e){this._platform=t,e.runOutsideAngular(()=>{this._change=t.isBrowser?K(tp(window,"resize"),tp(window,"orientationchange")):Zl(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=document.documentElement,e=t.getBoundingClientRect();return{top:-e.top||document.body.scrollTop||window.scrollY||t.scrollTop||0,left:-e.left||document.body.scrollLeft||window.scrollX||t.scrollLeft||0}}change(t=rf){return t>0?this._change.pipe(bp(t)):this._change}_updateViewportSize(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(jp),Ot(Xr))},token:t,providedIn:"root"}),t})();function lf(){throw Error("Host already has a portal attached")}class af{attach(t){return null==t&&function(){throw Error("Attempting to attach a portal to a null PortalOutlet")}(),t.hasAttached()&&lf(),this._attachedHost=t,t.attach(this)}detach(){let 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())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class cf extends af{constructor(t,e,n,s){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=s}}class uf extends af{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class hf{constructor(){this._isDisposed=!1}hasAttached(){return!!this._attachedPortal}attach(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&lf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof cf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof uf?(this._attachedPortal=t,this.attachTemplatePortal(t)):void function(){throw Error("Attempting to attach an unknown Portal type. BasePortalOutlet accepts either a ComponentPortal or a TemplatePortal.")}()}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class df extends hf{constructor(t,e,n,s){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=s}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.detectChanges(),n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}const pf=(()=>(class{}))();class ff{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=Jd(-this._previousScrollPosition.left),t.style.top=Jd(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,s=e.scrollBehavior||"",r=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=s,n.scrollBehavior=r}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}function gf(){return Error("Scroll strategy has already been attached.")}class mf{constructor(t,e,n,s){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=s,this._scrollSubscription=null,this._detach=(()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())})}attach(t){if(this._overlayRef)throw gf();this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class _f{enable(){}disable(){}attach(){}}function vf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function yf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class wf{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=s,this._scrollSubscription=null}attach(t){if(this._overlayRef)throw gf();this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();vf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}const bf=(()=>{class t{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=(()=>new _f),this.close=(t=>new mf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t)),this.block=(()=>new ff(this._viewportRuler,this._document)),this.reposition=(t=>new wf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t)),this._document=s}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Xp),Ot(of),Ot(Xr),Ot(zl))},token:t,providedIn:"root"}),t})();class Cf{constructor(t){this.scrollStrategy=new _f,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(e=>{void 0!==t[e]&&(this[e]=t[e])})}}class xf{constructor(t,e,n,s,r){this.offsetX=n,this.offsetY=s,this.panelClass=r,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}const Sf=(()=>(class{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}))();function Ef(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "top", "bottom" or "center".')}function kf(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "start", "end" or "center".')}const Tf=(()=>{class t{constructor(t){this._attachedOverlays=[],this._keydownListener=(t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEventSubscriptions>0){e[n]._keydownEvents.next(t);break}}),this._document=t}ngOnDestroy(){this._detach()}add(t){this.remove(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this._detach()}_detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zl))},token:t,providedIn:"root"}),t})(),Of=(()=>{class t{constructor(t){this._document=t}ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zl))},token:t,providedIn:"root"}),t})();class If{constructor(t,e,n,s,r,i,o,l){this._portalOutlet=t,this._host=e,this._pane=n,this._config=s,this._ngZone=r,this._keyboardDispatcher=i,this._document=o,this._location=l,this._backdropElement=null,this._backdropClick=new T,this._attachments=new T,this._detachments=new T,this._locationChanges=d.EMPTY,this._keydownEventsObservable=new b(t=>{const e=this._keydownEvents.subscribe(t);return this._keydownEventSubscriptions++,()=>{e.unsubscribe(),this._keydownEventSubscriptions--}}),this._keydownEvents=new T,this._keydownEventSubscriptions=0,s.scrollStrategy&&(this._scrollStrategy=s.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=s.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return this._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(xa(1)).subscribe(()=>{this.hasAttached()&&this.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(()=>this.dispose())),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),t}dispose(){const 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()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick.asObservable()}attachments(){return this._attachments.asObservable()}detachments(){return this._detachments.asObservable()}keydownEvents(){return this._keydownEventsObservable}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign({},this._config,t),this._updateElementSize()}setDirection(t){this._config=Object.assign({},this._config,{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){const t=this._pane.style;t.width=Jd(this._config.width),t.height=Jd(this._config.height),t.minWidth=Jd(this._config.minWidth),t.minHeight=Jd(this._config.minHeight),t.maxWidth=Jd(this._config.maxWidth),t.maxHeight=Jd(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"auto":"none"}_attachBackdrop(){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",t=>this._backdropClick.next(t)),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add("cdk-overlay-backdrop-showing")})}):this._backdropElement.classList.add("cdk-overlay-backdrop-showing")}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t,e=this._backdropElement;if(!e)return;let n=()=>{e&&e.parentNode&&e.parentNode.removeChild(e),this._backdropElement==e&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(e,this._config.backdropClass,!1),clearTimeout(t)};e.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{e.addEventListener("transitionend",n)}),e.style.pointerEvents="none",t=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const s=t.classList;Kd(e).forEach(t=>{n?s.add(t):s.remove(t)})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.asObservable().pipe(Cp(K(this._attachments,this._detachments))).subscribe(()=>{this._pane&&this._host&&0!==this._pane.children.length||(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const Rf="cdk-overlay-connected-position-bounding-box";class Pf{constructor(t,e,n,s,r){this._viewportRuler=e,this._document=n,this._platform=s,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 T,this._resizeSubscription=d.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges.asObservable(),this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){if(this._overlayRef&&t!==this._overlayRef)throw Error("This position strategy is already attached to an overlay");this._validatePositions(),t.hostElement.classList.add(Rf),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(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,s=[];let r;for(let i of this._preferredPositions){let o=this._getOriginPoint(t,i),l=this._getOverlayPoint(o,e,i),a=this._getOverlayFit(l,e,n,i);if(a.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(i,o);this._canFitWithFlexibleDimensions(a,l,n)?s.push({position:i,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,i)}):(!r||r.overlayFit.visibleAreae&&(e=s,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(r.position,r.originPoint);this._applyPosition(r.position,r.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&Af(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Rf),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,s;if("center"==e.originX)n=t.left+t.width/2;else{const s=this._isRtl()?t.right:t.left,r=this._isRtl()?t.left:t.right;n="start"==e.originX?s:r}return{x:n,y:s="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom}}_getOverlayPoint(t,e,n){let s,r;return s="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+s,y:t.y+(r="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}}_getOverlayFit(t,e,n,s){let{x:r,y:i}=t,o=this._getOffset(s,"x"),l=this._getOffset(s,"y");o&&(r+=o),l&&(i+=l);let a=0-i,c=i+e.height-n.height,u=this._subtractOverflows(e.width,0-r,r+e.width-n.width),h=this._subtractOverflows(e.height,a,c),d=u*h;return{visibleArea:d,isCompletelyWithinViewport:e.width*e.height===d,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:u==e.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const s=n.bottom-e.y,r=n.right-e.x,i=this._overlayRef.getConfig().minHeight,o=this._overlayRef.getConfig().minWidth,l=t.fitsInViewportHorizontally||null!=o&&o<=r;return(t.fitsInViewportVertically||null!=i&&i<=s)&&l}}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const s=this._viewportRect,r=Math.max(t.x+e.width-s.right,0),i=Math.max(t.y+e.height-s.bottom,0),o=Math.max(s.top-n.top-t.y,0),l=Math.max(s.left-n.left-t.x,0);let a=0,c=0;return this._previousPushAmount={x:a=e.width<=s.width?l||-r:t.xs&&!this._isInitialRender&&!this._growAfterOpen&&(i=t.y-s/2)}if("end"===e.overlayX&&!s||"start"===e.overlayX&&s)c=n.right-t.x+this._viewportMargin,l=t.x-n.left;else if("start"===e.overlayX&&!s||"end"===e.overlayX&&s)a=t.x,l=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),s=this._lastBoundingBoxSize.width;a=t.x-e,(l=2*e)>s&&!this._isInitialRender&&!this._growAfterOpen&&(a=t.x-s/2)}return{top:i,left:a,bottom:o,right:c,width:l,height:r}}_setBoundingBoxStyles(t,e){const 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));const s={};if(this._hasExactPosition())s.top=s.left="0",s.bottom=s.right="",s.width=s.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,r=this._overlayRef.getConfig().maxWidth;s.height=Jd(n.height),s.top=Jd(n.top),s.bottom=Jd(n.bottom),s.width=Jd(n.width),s.left=Jd(n.left),s.right=Jd(n.right),s.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",s.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(s.maxHeight=Jd(t)),r&&(s.maxWidth=Jd(r))}this._lastBoundingBoxSize=n,Af(this._boundingBox.style,s)}_resetBoundingBoxStyles(){Af(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){Af(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={};if(this._hasExactPosition()){const s=this._viewportRuler.getViewportScrollPosition();Af(n,this._getExactOverlayY(e,t,s)),Af(n,this._getExactOverlayX(e,t,s))}else n.position="static";let s="",r=this._getOffset(e,"x"),i=this._getOffset(e,"y");r&&(s+=`translateX(${r}px) `),i&&(s+=`translateY(${i}px)`),n.transform=s.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Af(this._pane.style,n)}_getExactOverlayY(t,e,n){let s={top:null,bottom:null},r=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));let i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=i,"bottom"===t.overlayY?s.bottom=`${this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)}px`:s.top=Jd(r.y),s}_getExactOverlayX(t,e,n){let s,r={left:null,right:null},i=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(i=this._pushOverlayOnScreen(i,this._overlayRect,n)),"right"==(s=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=`${this._document.documentElement.clientWidth-(i.x+this._overlayRect.width)}px`:r.left=Jd(i.x),r}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:yf(t,n),isOriginOutsideView:vf(t,n),isOverlayClipped:yf(e,n),isOverlayOutsideView:vf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const 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}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){if(!this._preferredPositions.length)throw Error("FlexibleConnectedPositionStrategy: At least one position is required.");this._preferredPositions.forEach(t=>{kf("originX",t.originX),Ef("originY",t.originY),kf("overlayX",t.overlayX),Ef("overlayY",t.overlayY)})}_addPanelClasses(t){this._pane&&Kd(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;return t instanceof sn?t.nativeElement.getBoundingClientRect():t instanceof HTMLElement?t.getBoundingClientRect():{top:t.y,bottom:t.y,left:t.x,right:t.x,height:0,width:0}}}function Af(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}class Mf{constructor(t,e,n,s,r,i,o){this._preferredPositions=[],this._positionStrategy=new Pf(n,s,r,i,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e)}get _isRtl(){return"rtl"===this._overlayRef.getDirection()}get onPositionChange(){return this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,s){const r=new xf(t,e,n,s);return this._preferredPositions.push(r),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Nf="cdk-global-overlay-wrapper";class Df{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const 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(Nf),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig();t.position=this._cssPosition,t.marginLeft="100%"===n.width?"0":this._leftOffset,t.marginTop="100%"===n.height?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,"100%"===n.width?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="100%"===n.height?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Nf),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}const Vf=(()=>{class t{constructor(t,e,n,s){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=s}global(){return new Df}connectedTo(t,e,n){return new Mf(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new Pf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(of),Ot(zl),Ot(jp),Ot(Of))},token:t,providedIn:"root"}),t})();let $f=0;const Lf=(()=>(class{constructor(t,e,n,s,r,i,o,l,a,c){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=s,this._keyboardDispatcher=r,this._injector=i,this._ngZone=o,this._document=l,this._directionality=a,this._location=c}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),s=this._createPortalOutlet(n),r=new Cf(t);return r.direction=r.direction||this._directionality.value,new If(s,e,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id=`cdk-overlay-${$f++}`,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(mi)),new df(t,this._componentFactoryResolver,this._appRef,this._injector)}}))(),jf=new Rt("cdk-connected-overlay-scroll-strategy");function Uf(t){return()=>t.scrollStrategies.reposition()}const zf=(()=>(class{}))(),Ff="Pipes";function Hf(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}class Bf{constructor(t,e){this._parentInjector=t,this._customTokens=e}get(t,e){const n=this._customTokens.get(t);return void 0!==n?n:this._parentInjector.get(t,e)}}const Gf=(()=>(class{constructor(t){this.injector=t,this.klass="default",this._overlay=t.get(Wf)}ngOnInit(){setTimeout(()=>{this.offset=this._overlay.details.offset,this.setMethod()},1)}setMethod(){this.method="component",this.content=this._overlay.content,this.klass=this._overlay.details.klass||"default","string"==typeof this.content?this.method="text":this.content instanceof Rn&&(this.method="template",this.context=Object.assign({},this._overlay.details.data||{},{event:this._overlay.post.bind(this._overlay),close:this._overlay.close.bind(this._overlay)}),Object.defineProperty(this.context,"position",{get:()=>this._overlay.position}))}}))();class Wf{constructor(t,e,n,s,r){this.id=t,this.service=e,this.injector=n,this.overlay=s,this.details=r,this.onClose=new T,this.event=new T,this.position_subject=new Ql(null),this.subs=[],this._overlay=this.overlay.create(this.details.config),this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null))}open(t,e){this._overlay&&this._close("reopen",null),e&&(delete this._overlay,this._overlay=this.overlay.create(e),this.details.config=e,this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null)));const n=this._createInjector(this,this.injector);this.onClose=new T,this.event=new T,this._overlay.attach(new cf(Gf,null,n)),this.set(t)}set(t,e=!0){this._data=t,e&&setTimeout(()=>this.updatePosition(),100)}get data(){return this._data||this.details.data||null}get content(){return this.details.content}get ID(){return this.id}listen(t){const e=this.event.subscribe(t);return this.subs.push(e),e}post(t,e){this.event.next({type:t,data:e})}get position(){return this.position_subject?this.position_subject.getValue():null}close(t){this._close("close",t)}_close(t,e){this._overlay&&this._overlay.dispose(),"reopen"!==t&&this.onClose.next({type:t,data:e}),this.onClose.complete(),this.event.complete(),this.subs=[]}_createInjector(t,e){const n=new WeakMap([[Wf,t]]);return new Bf(e,n)}updatePosition(){const t=this.details.config;this._overlay.updatePosition();const e=t.positionStrategy;e instanceof Pf&&setTimeout(()=>{e._lastPosition&&this.position_subject.next({x:e._lastPosition.originX,y:e._lastPosition.originY})},1)}}const Yf=(()=>(class{constructor(t,e){this.overlay=t,this.renderer=e,this.events=[],this.displayed_events=[],this.subs={},this.delay=5e3,this.offset=0}ngOnInit(){this.context=this.overlay.details.data,this.subs.add=this.context.add.subscribe(t=>this.add(t)),this.subs.remove=this.context.remove.subscribe(t=>this.remove(t)),this.subs.delay=this.context.delay.subscribe(t=>this.delay=t)}ngOnDestroy(){for(const t in this.subs)this.subs[t]&&this.subs[t]instanceof d&&this.subs[t].unsubscribe()}add(t){this.events.findIndex(e=>e.id===t.id)<0&&(t.method="component","string"==typeof t.content?t.method="text":t.content instanceof Rn&&(t.method="template",t.context={close:()=>this.remove(t.id)}),this.events=this.events&&this.events.length>0?[...this.events,t]:[t],this.displayed_events=this.events.slice(-8),t.close=(()=>this.remove(t.id)),0!==t.delay&&setTimeout(()=>this.remove(t.id),t.delay||this.delay||5e3))}remove(t){this.events=this.events.filter(e=>e.id!==t),this.displayed_events=this.events.slice(-8)}action(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)}grab(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=n,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",e=>this.pull(t,e)),touchmove:this.renderer.listen("window","touchmove",e=>this.pull(t,e)),mouseup:this.renderer.listen("window","mouseup",e=>this.release(t)),touchend:this.renderer.listen("window","touchend",e=>this.release(t))}}pull(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)}release(t){t.offset>128&&this.remove(t.id);for(const e in t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0}trackByFn(t,e){return(t?t.id:null)||e}}))(),qf=(()=>{class t{constructor(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new T,this._notify.remove=new T,this._notify.delay=new T,this.registerPreset("default",new Cf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new Cf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}register(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Wf(t,this,this.injector,this.overlay,e),this._refs[t]}open(t,e,n,s){if(e.config?e.config instanceof Cf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error(`No content set for the overlay ${t}`);const r=this._refs[t],i=r.details.config instanceof Cf?r.details.config:this.preset(r.details.config);r.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),s&&this._refs[t].onClose.subscribe(s))}update(t,e){this._refs[t]&&this._refs[t].set(e)}close(t){this._refs[t]&&this._refs[t].close(null)}remove(t){this._refs[t]&&(this._refs[t]=null)}registerPreset(t,e){this._presets[t]=e}preset(t="default"){return this._presets[t]||this._presets.default}loadNotificationsOutlet(){this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(()=>{this.registerPreset("ACA_NOTIFICATIONS_OUTLET",new Cf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:this.overlay.position().global().bottom("0").right("0"),scrollStrategy:this.overlay.scrollStrategies.noop()})),this.open("ACA_NOTIFICATIONS_OUTLET",{content:Yf,data:this._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)}notify(t,e,n,s,r){let i=null;return this._notify.add&&(i=`notification-${Math.floor(999999*Math.random())}`,this._notify.add.next({id:i,content:t,action:e,on_action:n,type:s,delay:r,event:t=>n?n(t):null})),i}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Lf),Ot(Mt))},token:t,providedIn:"root"}),t})(),Zf=(()=>(class{constructor(t,e,n,s){this.el=t,this.service=e,this.overlay=n,this.renderer=s,this.id=`tooltip-${Math.floor(9999999*Math.random())}`,this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new Sr,this.event=new Sr,this.close=new Sr,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}ngOnInit(){this.updateConfig(),this.el&&this.listenForScroll()}ngOnDestroy(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()}ngOnChanges(t){if(t.config&&this.updateConfig(),t.reposition){const t=this.overlay.scrollStrategies;this.strategy=this.reposition?t.reposition():t.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(()=>this.open(),10):this.closeTooltip(t.show.previousValue))}open(){this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},t=>this.event.emit(t),t=>{this.show=!1,this.showChange.emit(!1),this.close.emit(t),this.clearListeners()})}getOverlayPosition(t){const e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)}getPositions(){const t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}}updateConfig(){this.service.registerPreset(this.id,new Cf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))}listenForScroll(){if(this.show){let t=this.el.nativeElement.parentElement;for(;t;t=t.parentElement)this.listeners.push(this.renderer.listen(t,"scroll",()=>this.update()))}}clearListeners(){for(const t of this.listeners)t();this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)}update(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))}listenForHover(){this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",t=>{this.show=!0,this.showChange.emit(this.show),this._leave_listener=this.renderer.listen(this.el.nativeElement,"mouseleave",t=>{this.show=!1,this.showChange.emit(this.show),this.closeTooltip(this.show)}),this.open()})}closeTooltip(t){!this.content&&this.el?function(t,e,n,s="debug",r){if(window.debug){const t=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Hf()?console[s](`%c[${Ff}]%c[Tooltip] %c${e}`,...t,n):console[s](`[${Ff}][Tooltip] ${e}`,n):Hf()?console[s](`%c[${Ff}]%c[Tooltip] %c${e}`,...t):console[s](`[${Ff}][Tooltip] ${e}`)}}(0,"No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()}}))(),Qf=(()=>(class{constructor(t,e){this.item=t,this.service=e}ngOnInit(){setTimeout(()=>{this.text=this.item.details.data.text,this.center=this.item.details.data.center},10),setTimeout(()=>this.service.close(this.item.ID),1e3)}}))(),Xf=cl,Kf=(()=>{class t{constructor(){if(this.build=Xf(),!t.init){const e=Xf();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){Hf()?console[n](`%c[ACA]%c[LIB] %c${Ff} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"):console[n](`[ACA][LIB] ${Ff} - ${t} | ${e}`)}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Jf=new Rt("cdk-dir-doc",{providedIn:"root",factory:function(){return It(zl)}}),tg=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Sr,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Jf,8))},token:t,providedIn:"root"}),t})(),eg=(()=>(class{}))();var ng=Qn({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function sg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function rg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function ig(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,rg)),lr(2,540672,null,0,jl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function og(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function lg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,og)),lr(2,671744,null,0,Ol,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ag(t){return Ki(0,[(t()(),Vi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Vi(1,0,null,null,7,null,null,null,null,null,null,null)),lr(2,16384,null,0,Vl,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Di(16777216,null,null,1,null,sg)),lr(4,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,ig)),lr(6,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,lg)),lr(8,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function cg(t){return Ki(0,[(t()(),Di(16777216,null,null,1,null,ag)),lr(1,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function ug(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"overlay-outlet",[],null,null,null,cg,ng)),lr(1,114688,null,0,Gf,[Dt],null,null)],function(t,e){t(e,1,0)},null)}var hg=$s("overlay-outlet",Gf,ug,{},{},[]),dg=Qn({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function pg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Zi(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function fg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"a-floating-text",[],null,null,null,pg,dg)),lr(1,114688,null,0,Qf,[Wf,qf],null,null)],function(t,e){t(e,1,0)},null)}var gg=$s("a-floating-text",Qf,fg,{},{},[]),mg=Qn({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function _g(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function vg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,_g)),lr(2,540672,null,0,jl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function yg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function wg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,yg)),lr(2,671744,null,0,Ol,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Di(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function bg(t){return Ki(0,[(t()(),Vi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function Cg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Zi(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function xg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function Sg(t){return Ki(0,[(t()(),Vi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Vi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==r.grab(t.context.$implicit,n)&&s),"touchstart"===e&&(s=!1!==r.grab(t.context.$implicit,n)&&s),s},null,null)),(t()(),Vi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Vi(4,0,null,null,7,null,null,null,null,null,null,null)),lr(5,16384,null,0,Vl,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Di(16777216,null,null,1,null,vg)),lr(7,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,wg)),lr(9,278528,null,0,$l,[An,Rn,Vl],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Di(16777216,null,null,1,null,bg)),lr(11,16384,null,0,Ll,[An,Rn,Vl],null,null),(t()(),Vi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var s=!0,r=t.component;return"click"===e&&(r.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),"touchend"===e&&(r.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),s},null,null)),(t()(),Di(16777216,null,null,1,null,Cg)),lr(14,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Di(16777216,null,null,1,null,xg)),lr(16,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function Eg(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,Sg)),lr(2,278528,null,0,Rl,[An,Rn,xn],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function kg(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"notification-outlet",[],null,null,null,Eg,mg)),lr(1,245760,null,0,Yf,[Wf,cn],null,null)],function(t,e){t(e,1,0)},null)}var Tg=$s("notification-outlet",Yf,kg,{},{},[]);class Og extends z{constructor(t,e){super(t),this.sources=e,this.completed=0,this.haveValues=0;const n=e.length;this.values=new Array(n);for(let s=0;s(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Pg=new Rt("CompositionEventMode"),Ag=(()=>(class{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=za()?za().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}))();class Mg{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class Ng extends Mg{get formDirective(){return null}get path(){return null}}function Dg(){throw new Error("unimplemented")}class Vg extends Mg{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return Dg()}get asyncValidator(){return Dg()}}const $g=(()=>(class extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}))();function Lg(t){return null==t||0===t.length}const jg=/^(?=.{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])?)*$/;class Ug{static min(t){return e=>{if(Lg(e.value)||Lg(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(Lg(e.value)||Lg(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return Lg(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return Lg(t.value)?null:jg.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(Lg(e.value))return null;const n=e.value?e.value.length:0;return n{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return Ug.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(Lg(t.value))return null;const s=t.value;return e.test(s)?null:{pattern:{requiredPattern:n,actualValue:s}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(zg);return 0==e.length?null:function(t){return Hg(function(t,n){return e.map(e=>e(t))}(t))}}static composeAsync(t){if(!t)return null;const e=t.filter(zg);return 0==e.length?null:function(t){return function t(...e){let n;return"function"==typeof e[e.length-1]&&(n=e.pop()),1===e.length&&a(e[0])&&(e=e[0]),0===e.length?Wl:n?t(e).pipe(F(t=>n(...t))):new b(t=>new Og(t,e))}(function(t,n){return e.map(e=>e(t))}(t).map(Fg)).pipe(F(Hg))}}}function zg(t){return null!=t}function Fg(t){const e=De(t)?W(t):t;if(!Ve(e))throw new Error("Expected validator to return Promise or Observable.");return e}function Hg(t){const e=t.reduce((t,e)=>null!=e?Object.assign({},t,e):t,{});return 0===Object.keys(e).length?null:e}function Bg(t){return t.validate?e=>t.validate(e):t}function Gg(t){return t.validate?e=>t.validate(e):t}const Wg=(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Yg=(()=>(class{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}))(),qg=(()=>(class{constructor(t,e,n,s){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=s,this.onChange=(()=>{}),this.onTouched=(()=>{})}ngOnInit(){this._control=this._injector.get(Vg),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=(()=>{t(this.value),this._registry.select(this)})}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}))(),Zg={formControlName:'\n

\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',formGroupName:'\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',formArrayName:'\n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });',ngModelGroup:'\n
\n
\n \n
\n
',ngModelWithFormGroup:'\n
\n \n \n
\n '};function Qg(t,e){return[...e.path,t]}function Xg(t,e){t||Jg(e,"Cannot find control with"),e.valueAccessor||Jg(e,"No value accessor for form control with"),t.validator=Ug.compose([t.validator,e.validator]),t.asyncValidator=Ug.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&Kg(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&Kg(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function Kg(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Jg(t,e){let 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 tm(t){return null!=t?Ug.compose(t.map(Bg)):null}function em(t){return null!=t?Ug.composeAsync(t.map(Gg)):null}const nm=[Rg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Wg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?`${e}`:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=(e=>{this.value=this._getOptionValue(e),t(this.value)})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}))(),(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=((t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)})}else e=((t,e)=>{t._setSelected(!1)});this._optionMap.forEach(e)}registerOnChange(t){this.onChange=(e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e{}),this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return this.status===sm}get invalid(){return this.status===rm}get pending(){return this.status==im}get disabled(){return this.status===om}get enabled(){return this.status!==om}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=lm(t)}setAsyncValidators(t){this.asyncValidator=am(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=im,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=om,this.errors=null,this._forEachChild(e=>{e.disable(Object.assign({},t,{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=sm,this._forEachChild(e=>{e.enable(Object.assign({},t,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==sm&&this.status!==im||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)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?om:sm}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=im;const e=Fg(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(".")),e instanceof Array&&0===e.length?null:e.reduce((t,e)=>t instanceof dm?t.controls.hasOwnProperty(e)?t.controls[e]:null:t instanceof pm&&t.at(e)||null,t))}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Sr,this.statusChanges=new Sr}_calculateStatus(){return this._allControlsDisabled()?om:this.errors?rm:this._anyControlsHaveStatus(im)?im:this._anyControlsHaveStatus(rm)?rm:sm}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){cm(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class hm extends um{constructor(t=null,e,n){super(lm(e),am(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=(()=>{})}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(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}}class dm extends um{constructor(t,e,n){super(lm(e),am(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof hm?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,s)=>{e=e||this.contains(s)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,s)=>{n=e(n,t,s)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class pm extends um{constructor(t,e,n){super(lm(e),am(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof hm?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}`)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const fm=(()=>Promise.resolve(null))(),gm=(()=>(class extends Ng{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Sr,this.form=new dm({},tm(t),em(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){fm.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Xg(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){fm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),function(e,n){const s=e.indexOf(t);s>-1&&e.splice(s,1)}(this._directives)})}addFormGroup(t){fm.then(()=>{const e=this._findContainer(t.path),n=new dm({});(function(t,e){null==t&&Jg(e,"Cannot find control with"),t.validator=Ug.compose([t.validator,e.validator]),t.asyncValidator=Ug.composeAsync([t.asyncValidator,e.asyncValidator])})(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){fm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){fm.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,e=this._directives,this.form._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}))();class mm{static modelParentException(){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 ${Zg.formControlName}\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 ${Zg.ngModelWithFormGroup}`)}static formGroupNameException(){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 ${Zg.formGroupName}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Zg.ngModelGroup}`)}static missingNameException(){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: \n Example 2: ')}static modelGroupParentException(){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 ${Zg.formGroupName}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Zg.ngModelGroup}`)}static ngFormWarning(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")}}const _m=new Rt("NgFormSelectorWarning");class vm extends Ng{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Qg(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return tm(this._validators)}get asyncValidator(){return em(this._asyncValidators)}_checkParentType(){}}const ym=(()=>{class t extends vm{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof gm||mm.modelGroupParentException()}}return t})(),wm=(()=>Promise.resolve(null))(),bm=(()=>(class extends Vg{constructor(t,e,n,s){super(),this.control=new hm,this._registered=!1,this.update=new Sr,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Jg(t,"Value accessor was not provided as an array for form control with");let n=void 0,s=void 0,r=void 0;return e.forEach(e=>{e.constructor===Ag?n=e:function(t){return nm.some(e=>t.constructor===e)}(e)?(s&&Jg(t,"More than one built-in value accessor matches form control with"),s=e):(r&&Jg(t,"More than one custom value accessor matches form control with"),r=e)}),r||s||n||(Jg(t,"No valid value accessor for form control with"),null)}(this,s)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!je(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Qg(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return tm(this._rawValidators)}get asyncValidator(){return em(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Xg(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof ym)&&this._parent instanceof vm?mm.formGroupNameException():this._parent instanceof ym||this._parent instanceof gm||mm.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||mm.missingNameException()}_updateValue(t){wm.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;wm.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}))(),Cm=new Rt("NgModelWithFormControlWarning"),xm=(()=>(class{}))(),Sm=(()=>(class{group(t,e=null){const n=this._reduceControls(t);let s=null,r=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(s=null!=e.validators?e.validators:null,r=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(s=null!=e.validator?e.validator:null,r=null!=e.asyncValidator?e.asyncValidator:null)),new dm(n,{asyncValidators:r,updateOn:i,validators:s})}control(t,e,n){return new hm(t,e,n)}array(t,e,n){const s=t.map(t=>this._createControl(t));return new pm(s,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof hm||t instanceof dm||t instanceof pm?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}))(),Em=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:_m,useValue:e.warnOnDeprecatedNgFormSelector}]}}}return t})(),km=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Cm,useValue:e.warnOnNgModelWithFormControl}]}}}return t})();var Tm=Qn({encapsulation:2,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:0}.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:0}.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}"],data:{}});function Om(t){return Ki(2,[zi(402653184,1,{_contentWrapper:0}),(t()(),Vi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),Wi(null,0),(t()(),Vi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Im=Qn({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function Rm(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Vi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,r=t.component;return"input"===e&&(s=!1!==qs(t,5)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==qs(t,5).onTouched()&&s),"compositionstart"===e&&(s=!1!==qs(t,5)._compositionStart()&&s),"compositionend"===e&&(s=!1!==qs(t,5)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(r.search=n)&&s),"ngModelChange"===e&&(r.searchChange.emit(n),s=!1!==r.filter()&&s),s},null,null)),lr(5,16384,null,0,Ag,[cn,sn,[2,Pg]],null,null),ar(1024,null,Ig,function(t){return[t]},[Ag]),lr(7,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(9,16384,null,0,$g,[[4,Vg]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,qs(e,9).ngClassUntouched,qs(e,9).ngClassTouched,qs(e,9).ngClassPristine,qs(e,9).ngClassDirty,qs(e,9).ngClassValid,qs(e,9).ngClassInvalid,qs(e,9).ngClassPending)})}function Pm(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.select(t.context.$implicit)&&s),s},null,null)),(t()(),Vi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Am(t){return Ki(0,[(t()(),Vi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,Om,Tm)),ar(6144,null,Kp,null,[tf]),lr(3,540672,null,0,Zp,[],{itemSize:[0,"itemSize"]},null),ar(1024,null,Wp,qp,[Zp]),lr(5,245760,[[4,4],[5,4],["viewport",4]],0,tf,[sn,En,Xr,[2,Wp],[2,tg],Xp],null,null),(t()(),Di(16777216,[[2,2]],0,1,null,Pm)),lr(7,409600,null,0,nf,[An,Rn,xn,[1,tf],Xr],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===qs(e,5).orientation,"horizontal"!==qs(e,5).orientation)})}function Mm(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Nm(t){return Ki(0,[(t()(),Vi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.cancelClose()&&s),s},null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var s=!0,r=t.component;return"click"===e&&(s=0!=(r.show=!r.show)&&s),s},null,null)),(t()(),Vi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Di(16777216,[[2,2]],null,1,null,Rm)),lr(7,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Di(16777216,[[2,2]],null,1,null,Am)),lr(10,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Di(0,[[2,2],["noItems",2]],null,0,null,Mm))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,qs(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Dm(t){return Ki(0,[zi(402653184,1,{reference:0}),zi(402653184,2,{dropdown_tooltip:0}),zi(402653184,3,{input:0}),zi(402653184,4,{viewport:0}),zi(402653184,5,{scroll_el:0}),(t()(),Vi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var s=!0,r=t.component;return"keyup.enter"===e&&(s=!1!==r.toggleShow()&&s),"keydown.arrowup"===e&&(s=!1!==n.preventDefault()&&s),"keydown.arrowdown"===e&&(s=!1!==n.preventDefault()&&s),"keyup.arrowup"===e&&(s=!1!==(r.focus?r.change(-1):"")&&s),"keyup.arrowdown"===e&&(s=!1!==(r.focus?r.change(1):"")&&s),"focus"===e&&(s=0!=(r.focus=!0)&&s),"blur"===e&&(s=0!=(r.focus=!1)&&s),"window:resize"===e&&(s=!1!==r.resize()&&s),"window:click"===e&&(s=!1!==(r.show?r.close():"")&&s),s},null,null)),(t()(),Vi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Vi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var s=!0,r=t.component;return"showChange"===e&&(s=!1!==(r.show=n)&&s),"showChange"===e&&(s=!1!==r.updateScroll()&&s),"click"===e&&(s=!1!==r.toggleShow()&&s),s},null,null)),lr(8,737280,null,0,Zf,[sn,qf,Lf,cn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Vi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),Zi(10,null,["",""])),(t()(),Vi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Vi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Vi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Vi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(15,null,["",""])),(t()(),Vi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Di(0,[[2,2],["dropdown",2]],null,0,null,Nm))],function(t,e){t(e,8,0,e.component.show,qs(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}const Vm="Checkbox",$m=(()=>(class{constructor(){this.klass="default"}toggle(){this.state=!this.state,this.onChange&&this.onChange(this.state)}writeValue(t){this.state=t}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouch=t}}))(),Lm=cl,jm=(()=>{class t{constructor(){if(this.build=Lm(),!t.init){const e=Lm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Vm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Vm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Um=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}handleMouse(t){this.handleEvent(t)}handleTouch(t){this.handleEvent(t)}ngOnInit(){}ngAfterViewInit(){setTimeout(()=>{this.element&&this.element.nativeElement&&(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width)))})}ngOnDestroy(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}handleEvent(t){this.cancelled=!1;const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,n=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:`${n-this.cached_box.top}px`,left:`${e-this.cached_box.left}px`},this.mouse_release_cancel=this.renderer.listen("window","mouseup",t=>this.handleRelease(t)),this.touch_release_cancel=this.renderer.listen("window","touchend",t=>this.handleRelease(t)),this.transitioning=!0,setTimeout(()=>{this.transitioning=!1,this.cancelled&&(this.show=!1)},350)}handleRelease(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}}))(),zm=(()=>(class{constructor(t,e){this.el=t,this.renderer=e,this.tapped=new Sr,this.touchrelease=new Sr,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}ngAfterViewInit(){this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",t=>this.handleHold(t)),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",t=>this.handleHold(t)))}ngOnDestroy(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}}remove(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)}handleHold(t){const e={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=e,this.mouse_listener=this.renderer.listen(window,"mouseup",t=>this.handleRelease(t)),this.touch_listener=this.renderer.listen(window,"touchend",t=>this.handleRelease(t)),this.timer=setTimeout(()=>this.remove(),this.max_delay)}handleRelease(t){this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(()=>{const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(e-this.start.x,2)+2){this.tapped.emit(t),this.touchrelease.emit(t)},100)),this.start={x:-999,y:-999}},50)}}))(),Fm="Custom Events",Hm=cl,Bm=(()=>{class t{constructor(){if(this.build=Hm(),!t.init){const e=Hm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Fm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Fm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var Gm=Qn({encapsulation:0,styles:["[_nghost-%COMP%]{position:relative;overflow:hidden}.event-feedback[_ngcontent-%COMP%]{position:absolute;border-radius:100%;background-color:rgba(0,0,0,.1);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;pointer-events:none}.event-feedback.show[_ngcontent-%COMP%]{-webkit-animation:.5s feedback;animation:.5s feedback;opacity:1}.event-feedback.hide[_ngcontent-%COMP%]{-webkit-animation:.5s fadeout;animation:.5s fadeout}.event-feedback.light[_ngcontent-%COMP%]{background-color:rgba(255,255,255,.1)}@-webkit-keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@-webkit-keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}@keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}"],data:{}});function Wm(t){return Ki(0,[Wi(null,0),(t()(),Vi(1,0,null,null,0,"div",[],[[8,"className",0],[4,"top",null],[4,"left",null],[4,"height",null],[4,"width",null],[2,"show",null],[2,"hide",null]],null,null,null,null))],null,function(t,e){var n=e.component;t(e,1,0,"event-feedback"+(n.klass?" "+n.klass:""),n.position.top,n.position.left,n.size+"px",n.size+"px",n.show,!1===n.show)})}var Ym=Qn({encapsulation:0,styles:[".checkbox[_ngcontent-%COMP%]{display:flex;align-items:center}.box[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;margin:.25em;font-size:.8em;height:1.5em;width:1.5em;border-radius:4px;padding:0;border:2px solid #ccc;cursor:pointer;outline:0;transition:background-color .2s,border-color .2s}.box[_ngcontent-%COMP%]:hover{background-color:#ccc}.box[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function qm(t){return Ki(0,[(t()(),Vi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.toggle()&&s),s},null,null)),lr(1,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Zi(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Zm(t){return Ki(0,[(t()(),Vi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Vi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,2).handleTouch(n)&&s),"keyup.enter"===e&&(s=!1!==r.toggle()&&s),"tapped"===e&&(s=!1!==r.toggle()&&s),s},Wm,Gm)),lr(2,4440064,null,0,Um,[sn,cn],{center:[0,"center"]},null),lr(3,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,qm)),lr(6,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}const Qm="Buttons",Xm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new Sr,this.id=`button-${Math.floor(999999*Math.random())}`}ngOnChanges(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()}ngAfterViewInit(){this.setClass(this.klass)}setClass(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))}setGroup(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")}setState(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")}tap(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))}writeValue(t){this.state=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Km=cl,Jm=(()=>{class t{constructor(){if(this.build=Km(),!t.init){const e=Km();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Qm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Qm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var t_=Qn({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function e_(t){return Ki(0,[(t()(),Vi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,1).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,1).handleTouch(n)&&s),"tapped"===e&&(s=!1!==r.tap()&&s),s},Wm,Gm)),lr(1,4440064,null,0,Um,[sn,cn],null,null),lr(2,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),Wi(0,0)],function(t,e){t(e,1,0)},null)}const n_=(()=>(class{constructor(t){this.sanitizer=t}transform(t,e="html"){switch(e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}}}))(),s_="Pipes",r_=cl,i_=(()=>{class t{constructor(){if(this.build=r_(),!t.init){const e=r_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${s_} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${s_} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();class o_{constructor(){this._timers={},this._intervals={},this._subscriptions={}}timeout(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(()=>{e(),this._timers[t]=null},n)}clearTimeout(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)}interval(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(()=>e(),n)}clearInterval(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)}subscription(t,e){this.unsub(t),this._subscriptions[t]=e}unsub(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof d?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)}}class l_ extends o_{ngOnDestroy(){for(const t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(const t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(const t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)}}function a_(t,e,n,s){return new(n||(n=Promise))(function(r,i){function o(t){try{a(s.next(t))}catch(e){i(e)}}function l(t){try{a(s.throw(t))}catch(e){i(e)}}function a(t){t.done?r(t.value):new n(function(e){e(t.value)}).then(o,l)}a((s=s.apply(t,e||[])).next())})}class c_{}class u_{}class h_{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),s=n.toLowerCase(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,s),this.headers.has(s)?this.headers.get(s).push(r):this.headers.set(s,[r])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const s=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(s,n),this.maybeSetNormalizedName(e,s))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof h_?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new h_;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof h_?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const s=("a"===t.op?this.headers.get(e):void 0)||[];s.push(...n),this.headers.set(e,s);break;case"d":const r=t.value;if(r){let t=this.headers.get(e);if(!t)return;0===(t=t.filter(t=>-1===r.indexOf(t))).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class d_{encodeKey(t){return p_(t)}encodeValue(t){return p_(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function p_(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class f_{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new d_,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const s=t.indexOf("="),[r,i]=-1==s?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,s)),e.decodeValue(t.slice(s+1))],o=n.get(r)||[];o.push(i),n.set(r,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).join("&")}clone(t){const e=new f_({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function g_(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function m_(t){return"undefined"!=typeof Blob&&t instanceof Blob}function __(t){return"undefined"!=typeof FormData&&t instanceof FormData}class v_{constructor(t,e,n,s){let r;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||s?(this.body=void 0!==n?n:null,r=s):r=n,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.params&&(this.params=r.params)),this.headers||(this.headers=new h_),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),l)),t.setParams&&(a=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),a)),new v_(e,n,r,{params:a,headers:l,reportProgress:o,responseType:s,withCredentials:i})}}const y_=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class w_{constructor(t,e=200,n="OK"){this.headers=t.headers||new h_,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class b_ extends w_{constructor(t={}){super(t),this.type=y_.ResponseHeader}clone(t={}){return new b_({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class C_ extends w_{constructor(t={}){super(t),this.type=y_.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new C_({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class x_ extends w_{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function S_(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}const E_=(()=>(class{constructor(t){this.handler=t}request(t,e,n={}){let s;if(t instanceof v_)s=t;else{let r=void 0;r=n.headers instanceof h_?n.headers:new h_(n.headers);let i=void 0;n.params&&(i=n.params instanceof f_?n.params:new f_({fromObject:n.params})),s=new v_(t,e,void 0!==n.body?n.body:null,{headers:r,params:i,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const r=Zl(s).pipe($a(t=>this.handler.handle(t)));if(t instanceof v_||"events"===n.observe)return r;const i=r.pipe(ra(t=>t instanceof C_));switch(n.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return i.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return i.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return i.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return i.pipe(F(t=>t.body))}case"response":return i;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new f_).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,S_(n,e))}post(t,e,n={}){return this.request("POST",t,S_(n,e))}put(t,e,n={}){return this.request("PUT",t,S_(n,e))}}))();class k_{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const T_=new Rt("HTTP_INTERCEPTORS"),O_=(()=>(class{intercept(t,e){return e.handle(t)}}))(),I_=/^\)\]\}',?\n/;class R_{}const P_=(()=>(class{constructor(){}build(){return new XMLHttpRequest}}))(),A_=(()=>(class{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new b(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const s=t.serializeBody();let r=null;const i=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,s=n.statusText||"OK",i=new h_(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return r=new b_({headers:i,status:e,statusText:s,url:o})},o=()=>{let{headers:s,status:r,statusText:o,url:l}=i(),a=null;204!==r&&(a=void 0===n.response?n.responseText:n.response),0===r&&(r=a?200:0);let c=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof a){const t=a;a=a.replace(I_,"");try{a=""!==a?JSON.parse(a):null}catch(u){a=t,c&&(c=!1,a={error:u,text:a})}}c?(e.next(new C_({body:a,headers:s,status:r,statusText:o,url:l||void 0})),e.complete()):e.error(new x_({error:a,headers:s,status:r,statusText:o,url:l||void 0}))},l=t=>{const{url:s}=i(),r=new x_({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:s||void 0});e.error(r)};let a=!1;const c=s=>{a||(e.next(i()),a=!0);let r={type:y_.DownloadProgress,loaded:s.loaded};s.lengthComputable&&(r.total=s.total),"text"===t.responseType&&n.responseText&&(r.partialText=n.responseText),e.next(r)},u=t=>{let n={type:y_.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",l),t.reportProgress&&(n.addEventListener("progress",c),null!==s&&n.upload&&n.upload.addEventListener("progress",u)),n.send(s),e.next({type:y_.Sent}),()=>{n.removeEventListener("error",l),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",c),null!==s&&n.upload&&n.upload.removeEventListener("progress",u)),n.abort()}})}}))(),M_=new Rt("XSRF_COOKIE_NAME"),N_=new Rt("XSRF_HEADER_NAME");class D_{}const V_=(()=>(class{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Tl(t,this.cookieName),this.lastCookieString=t),this.lastToken}}))(),$_=(()=>(class{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const s=this.tokenService.getToken();return null===s||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,s)})),e.handle(t)}}))(),L_=(()=>(class{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(T_,[]);this.chain=t.reduceRight((t,e)=>new k_(t,e),this.backend)}return this.chain.handle(t)}}))(),j_=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:$_,useClass:O_}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:M_,useValue:e.cookieName}:[],e.headerName?{provide:N_,useValue:e.headerName}:[]]}}}return t})(),U_=(()=>(class{}))(),z_=(()=>{class t{constructor(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new Ql(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}init(){return a_(this,void 0,void 0,function*(){yield this.loadFromFile("api"),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete()})}get setup(){return this._setup}get app_name(){return this._app_name}isSetup(t){return this._is_setup_observer.subscribe(t)}log(t,e,n,s="debug",r=!1){if(window.debug||r){const r=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...r,n):console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...r)}}get(t){const e=t.split(".");let n=null;return"session"===e[0]?(e.shift(),n=al(e,this._settings.session)):"local"===e[0]?(e.shift(),n=al(e,this._settings.local)):n=al(e,this._settings.api)||al(e,this._settings.session)||al(e,this._settings.local),n}loadStore(t,e){if(e)for(let n=0;n5)return Promise.resolve();const s=`load|${t}|${e}`;return this._promises[s]||(this._promises[s]=new Promise((r,i)=>{this.http.get(e).subscribe(e=>{this._settings[t]=Object.assign({},this._settings[t]||{},e||{})},i=>{this.log("Settings",`Failed to load settings from "${e}"`),this._promises[s]=null,this.loadFromFile(t,e,++n).then(()=>r())},()=>r())})),this._promises[s]})}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),F_=["control","shift","alt","meta","os"],H_=(()=>{class t{constructor(){this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.last_down!==e&&(this.keydown_states[e]||(this.keydown_states[e]=new Ql(null),this.keydown_observers[e]=this.keydown_states[e].asObservable()),this.keydown_states[e].next(this.counter++),this.combo_end.indexOf(e)>=0&&t.preventDefault(),this.last_down=e)}),window.addEventListener("keyup",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.keydown_states[e].next(null),this.last_down===e&&(this.last_down=null)})}listen(t,e){const n=(t=t instanceof Array?t:t.split("+")).map(t=>this.mapKey(t.toLowerCase()));if(n.length>0&&this.validCombination(n)){this.registered_combos.push(n);const t=n[n.length-1];return this.keydown_states[t]||(this.keydown_states[t]=new Ql(null),this.keydown_observers[t]=this.keydown_states[t].asObservable()),this.updateCombinationEndList(),this.keydown_observers[t].subscribe(t=>{if(t){const t=[];if(n.length>1){for(const e of n){const n=this.keydown_states[e];t.push(n&&n.getValue()||-1)}for(let e=0;et[e+1])return}e()}})}return null}mapKey(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t}updateCombinationEndList(){for(const t of this.registered_combos)this.combo_end.push(t[t.length-1]);this.combo_end=function(t,e=""){return[].filter((t,n,s)=>s.indexOf(s.find(e?n=>n[e]===t[e]:e=>e===t))===n)}()}validCombination(t){let e=0;for(const n of t)F_.indexOf(n)<0&&e++;return e>0}}return t.ngInjectableDef=mt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),B_=[],G_=(()=>{class t extends o_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=ll(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let r;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>r=t,t=>{s(t),delete this._promises[n]},()=>{t(r),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}repositories(){const t="repositories";return this._promises[t]||(this._promises[t]=new Promise((e,n)=>{let s;this.http.get(`${this.api_route}/repositories`).subscribe(t=>s=t,e=>{n(e),delete this._promises[t]},()=>{e(s),this.timeout(t,()=>delete this._promises[t],1e3)})})),this._promises[t]}commits(t){const e=`commits|${ll(t)}`;return this._promises[e]||(this._promises[e]=new Promise((t,n)=>{let s;this.http.get(`${this.api_route}/repositories_commits`).subscribe(t=>s=t,t=>{n(t),delete this._promises[e]},()=>{t(s),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}versions(t){const e=`versions|${t}`;return this._promises[e]||(this._promises[e]=new Promise((n,s)=>{const r=`${this.api_route}/${encodeURIComponent(t)}`;let i;this.http.get(r).subscribe(t=>i=t,t=>{s(t),delete this._promises[e]},()=>{n(i),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}driverCommits(t,e){const n=ll(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const r=`${this.api_route}/${encodeURIComponent(t)}/commits`;let i;this.http.get(r).subscribe(t=>i=t,t=>{n(t),delete this._promises[s]},()=>{e(i),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}build(t){const e=ll(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{this.http.post(`${this.api_route}`,e).subscribe(t=>null,t=>{s(t),delete this._promises[n]},()=>{t(),delete this._promises[n]})})),this._promises[n]}clean(t,e){const n=ll(e),s=`clean|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((t,e)=>{this.http.delete(`${this.api_route}${n?"?"+n:""}`).subscribe(t=>null,t=>{e(t),delete this._promises[s]},()=>{t(),delete this._promises[s]})})),this._promises[s]}get api_route(){return this.parent?`${this.parent.endpoint}/build`:"/build"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),W_=(()=>{class t extends o_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=ll(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let r;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>r=t,t=>{s(t),delete this._promises[n]},()=>{t(r),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}specCommits(t,e){const n=ll(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const r=`${this.api_route}/${encodeURIComponent(t)}/commits`;let i;this.http.get(r).subscribe(t=>i=t,t=>{n(t),delete this._promises[s]},()=>{e(i),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}run(t){for(const s in t)null==t[s]&&delete t[s];const e=ll(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((s,r)=>{let i;this.http.post(`${this.api_route}${e?"?"+e:""}`,t,{responseType:"text"}).subscribe(t=>i=t,t=>{r(t),delete this._promises[n]},()=>{s(i),delete this._promises[n]})})),this._promises[n]}get api_route(){return this.parent?`${this.parent.endpoint}/test`:"/test"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(E_))},token:t,providedIn:"root"}),t})(),Y_=new b(v);class q_{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new Z_(t,this.delay,this.scheduler))}}class Z_ extends g{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,s=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-s.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-s.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(Z_.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new Q_(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Mp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Mp.createComplete()),this.unsubscribe()}}class Q_{constructor(t,e){this.time=t,this.notification=e}}const X_="Service workers are disabled or not supported by this browser";class K_{constructor(t){if(this.serviceWorker=t,t){const e=tp(t,"controllerchange").pipe(F(()=>t.controller)),n=Aa(na(()=>Zl(t.controller)),e);this.worker=n.pipe(ra(t=>!!t)),this.registration=this.worker.pipe(Ia(()=>t.getRegistration()));const s=tp(t,"message").pipe(F(t=>t.data)).pipe(ra(t=>t&&t.type)).pipe(it(new T));s.connect(),this.events=s}else this.worker=this.events=this.registration=(e=X_,na(()=>Rp(new Error(e))));var e}postMessage(t,e){return this.worker.pipe(xa(1),da(n=>{n.postMessage(Object.assign({action:t},e))})).toPromise().then(()=>void 0)}postMessageWithStatus(t,e,n){const s=this.waitForStatus(n),r=this.postMessage(t,e);return Promise.all([s,r]).then(()=>void 0)}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(t){return this.events.pipe(ra(e=>e.type===t))}nextEventOfType(t){return this.eventsOfType(t).pipe(xa(1))}waitForStatus(t){return this.eventsOfType("STATUS").pipe(ra(e=>e.nonce===t),xa(1),F(t=>{if(!t.status)throw new Error(t.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}const J_=(()=>(class{constructor(t){if(this.sw=t,this.subscriptionChanges=new T,!t.isEnabled)return this.messages=Y_,this.notificationClicks=Y_,void(this.subscription=Y_);this.messages=this.sw.eventsOfType("PUSH").pipe(F(t=>t.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(F(t=>t.data)),this.pushManager=this.sw.registration.pipe(F(t=>t.pushManager));const e=this.pushManager.pipe(Ia(t=>t.getSubscription()));this.subscription=K(e,this.subscriptionChanges)}get isEnabled(){return this.sw.isEnabled}requestSubscription(t){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const e={userVisibleOnly:!0};let n=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),s=new Uint8Array(new ArrayBuffer(n.length));for(let r=0;rt.subscribe(e)),xa(1)).toPromise().then(t=>(this.subscriptionChanges.next(t),t))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe(xa(1),Ia(t=>{if(null===t)throw new Error("Not subscribed to push notifications.");return t.unsubscribe().then(t=>{if(!t)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(X_))}decodeBase64(t){return atob(t)}}))(),tv=(()=>(class{constructor(t){if(this.sw=t,!t.isEnabled)return this.available=Y_,void(this.activated=Y_);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED")}get isEnabled(){return this.sw.isEnabled}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:t},t)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(X_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:t},t)}}))();class ev{}const nv=new Rt("NGSW_REGISTER_SCRIPT");function sv(t,e,n,s){return()=>{if(!(Hl(s)&&"serviceWorker"in navigator&&!1!==n.enabled))return;let r;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof n.registrationStrategy)r=n.registrationStrategy();else{const[e,...s]=(n.registrationStrategy||"registerWhenStable").split(":");switch(e){case"registerImmediately":r=Zl(null);break;case"registerWithDelay":r=Zl(null).pipe(function(t,e=mp){var n;const s=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new q_(s,e))}(+s[0]||0));break;case"registerWhenStable":r=t.get(mi).isStable.pipe(ra(t=>t));break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${n.registrationStrategy}`)}}r.pipe(xa(1)).subscribe(()=>navigator.serviceWorker.register(e,{scope:n.scope}))}}function rv(t,e){return new K_(Hl(e)&&!1!==t.enabled?navigator.serviceWorker:void 0)}const iv=(()=>{class t{static register(e,n={}){return{ngModule:t,providers:[{provide:nv,useValue:e},{provide:ev,useValue:n},{provide:K_,useFactory:rv,deps:[ev,Mr]},{provide:Tr,useFactory:sv,deps:[Dt,nv,ev,Mr],multi:!0}]}}}return t})(),ov="Google Analytics";function lv(t,e,n,s="debug",r){if(window.debug){const i=["color: #0288D1",`color:${r||"#009688"}`,"color:rgba(0,0,0,0.87)"];n?av()?console[s](`%c[${ov}]%c[${t}] %c${e}`,...i,n):console[s](`[${ov}][${t}] ${e}`,n):av()?console[s](`%c[${ov}]%c[${t}] %c${e}`,...i):console[s](`[${ov}][${t}] ${e}`)}}function av(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}const cv=(()=>{class t{constructor(t){var e,n,s,r,i;this.title=t,this.enabled=!0,this.app_name="GA_APP",this.timers={},e=window,n=document,s="script",e.GoogleAnalyticsObject="ga",e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,r=n.createElement(s),i=n.getElementsByTagName(s)[0],r.async=1,r.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(r,i),lv("Service","Injected Google Analytics into page"),this.service=window.ga}load(t){if(!this.enabled)throw new Error("Google Analytics needs to be enabled before being initialised");if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.service("create",t,"auto"),this.service("send","pageview")}setUser(t){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`user|${t}`,()=>{lv("Service",`Set user ID: ${t}`),this.service("set","userId",t),this.event("authentication","user-id available")},100)}event(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`event|${t}|${e}|${n}|${s}`,()=>{lv("Service",`Event: ${t}, ${e}${n?", "+n:""}${s?", "+s:""}`),this.service("send","event",`${this.app_prefix?this.app_prefix+"_":""}${t}`,e,n,s)},100)}screen(t,e){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");t&&this.enabled&&this.timeout(`event|${t}|${e||this.app_name}`,()=>{lv("Service",`Screen: ${t}${e?", "+e:""}`),this.service("send","screenview",{appName:e||this.app_name,screenName:t})},100)}page(t,e=!1){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&(this.last_route=t||"/",this.timeout(`page|${t}`,()=>{lv("Service",`Page: ${t}`),this.service("send","pageview",`${e?location.origin:""}${t}`)},100))}timing(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`page|${t}|${e}|${n}|${s}`,()=>{lv("Service",`Timing: ${t}, ${e}, ${n}${s?", "+s:""}`),this.service("send","timing",t,e,n,s)},100)}timeout(t,e,n=300){this.timers[t]&&(clearTimeout(this.timers[t]),this.timers[t]=null),this.timers[t]=setTimeout(()=>{e instanceof Function&&e(),this.timers[t]=null},n)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Kc))},token:t,providedIn:"root"}),t})(),uv=(()=>{class t extends o_{constructor(t,e,n,s,r,i,o,l,a){super(),this._title=t,this._router=e,this._version=n,this._settings=s,this._overlay=r,this._analytics=i,this._hotkeys=o,this._build=l,this._test=a,this._route_trail=[],this._subjects={},this._observers={},this.set("system",null),this._build.parent=this._test.parent=this,this.init(),this.registerOverlays()}get Overlay(){return this._overlay}get Analytics(){return this._analytics}get Hotkeys(){return this._hotkeys}get Build(){return this._build}get Test(){return this._test}setting(t){return this._settings.get(t)}get name(){return this._settings.app_name}set title(t){const e=this.setting("app.title");this._title.setTitle(`${t?t+" | ":""}${e}`)}get title(){return this._title.getTitle()}get endpoint(){return`${location.origin}`}get engine_endpoint(){return"/control/api/"}get is_ready(){return this._settings.setup}notify(t,e,n,s){this._overlay.notify(`
${e}
`,n,s,t)}notifySuccess(t,e,n){this.notify("success",t,e,n)}notifyError(t,e,n){this.notify("error",t,e,n)}notifyInfo(t,e,n){this.notify("info",t,e,n)}log(t,e,n,s="debug",r=!1){this._settings.log(t,e,n,s,r)}navigate(t,e){const n=t instanceof Array?[...t]:[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})}navigateBack(){if(this._route_trail&&this._route_trail.length>0){const t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])}get(t){return this._subjects[t]&&this._subjects[t]instanceof Ql?this._subjects[t].getValue():null}listen(t,e){return this._observers[t]?this._observers[t].subscribe(e):null}set(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new Ql(e),this._observers[t]=this._subjects[t].asObservable())}init(){if(!this._settings.setup)return this.timeout("init",()=>this.init());this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(t=>{this.log("CACHE",`Update available: ${`current version is ${t.current.hash}`} ${`available version is ${t.available.hash}`}`),this.notifyInfo("Newer version of the app is available","Refresh",()=>location.reload())}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],()=>{this.navigate("bootstrap",{clear:!0})})}registerOverlays(){if(B_)for(const t of B_)this._overlay.register(t.id,t.config)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Kc),Ot(vd),Ot(tv),Ot(z_),Ot(qf),Ot(cv),Ot(H_),Ot(G_),Ot(W_))},token:t,providedIn:"root"}),t})();class hv extends l_{constructor(t,e){super(),this.service=t,this.route=e,this.commit_list=[],this.spec_list=[],this.spec_commit_list=[]}ngOnInit(){this.subscription("route.params",this.route.paramMap.subscribe(t=>{t.has("repo")&&(this.repo=t.get("repo"),this.timeout("repo_update",()=>this.service.set("TEST.repository",this.repo))),t.has("driver")?(this.driver=t.get("driver"),this.timeout("driver_update",()=>this.service.set("TEST.driver",this.driver)),this.test_results="",this.commit=null,this.updateCommits(),this.spec=null,this.spec_commit=null,this.updateSpecs(),this.show=!1):this.timeout("driver_update",()=>this.service.set("TEST.driver",""))})),this.updateCommits(),this.updateSpecs(),this.updateSpecCommits(),this.interval("update",()=>{this.updateCommits(),this.updateSpecs(),this.updateSpecCommits()},6e4)}updateCommits(){this.driver&&(this.loading_commits=!0,this.service.Build.driverCommits(this.driver,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:cl(t.date).format("DD MMM YYYY h:mm A")})),this.commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecs(){this.driver&&(this.loading_commits=!0,this.service.Test.query({repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_list=(t||[]).map(t=>({id:t,name:t})),this.spec||(this.spec=this.spec_list.reduce((t,e)=>t&&this.driver.localeCompare(t.id)>this.driver.localeCompare(e.id)?t:e,null),this.updateSpecCommits()),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecCommits(){this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:cl(t.date).format("DD MMM YYYY h:mm A")})),this.spec_commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}test(){if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";const t=t=>{t instanceof Object&&(t=t.error),this.test_results=this.styleResults(t||"");const e=this.service.get("TEST.results")||{},n=t.indexOf("exited with 0")>=0;e[`${this.repo}|${this.driver}`]=n?"passed":"failed",this.service.set("TEST.results",e),this.testing=!1,this.timeout("scroll",()=>this.body.nativeElement.scrollTo(0,this.body.nativeElement.scrollHeight),10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(t,t)}}styleResults(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')}}var dv=Qn({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function pv(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Spec Commit:"])),(t()(),Vi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.spec_commit=n)&&s),s},Dm,Im)),lr(5,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(7,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(9,16384,null,0,$g,[[4,Vg]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,qs(e,9).ngClassUntouched,qs(e,9).ngClassTouched,qs(e,9).ngClassPristine,qs(e,9).ngClassDirty,qs(e,9).ngClassValid,qs(e,9).ngClassInvalid,qs(e,9).ngClassPending)})}function fv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),qi(128,1,new Array(3))],null,function(t,e){var n=e.component,s=function(t,e,n,s){if(ze.isWrapped(s)){s=ze.unwrap(s);const e=t.def.nodes[0].bindingIndex+0,n=ze.unwrap(t.oldValues[e]);t.oldValues[e]=new ze(n)}return s}(e,0,0,t(e,1,0,qs(e.parent.parent,0),n.test_results,"html"));t(e,0,0,s)})}function gv(t){return Ki(0,[(t()(),Vi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Vi(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Repository:"])),(t()(),Vi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Zi(6,null,["",""])),(t()(),Vi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Driver:"])),(t()(),Vi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Zi(11,null,["",""])),(t()(),Vi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Commit:"])),(t()(),Vi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.commit=n)&&s),s},Dm,Im)),lr(17,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(19,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(21,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Vi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Zi(-1,null,["Spec:"])),(t()(),Vi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Vi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,r=t.component;return"ngModelChange"===e&&(s=!1!==(r.spec=n)&&s),"ngModelChange"===e&&(s=!1!==r.updateSpecCommits()&&s),s},Dm,Im)),lr(27,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(29,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(31,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Di(16777216,null,null,1,null,pv)),lr(33,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Vi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Vi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Vi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.force=n)&&s),s},Zm,Ym)),lr(38,49152,null,0,$m,[],{klass:[0,"klass"],label:[1,"label"]},null),ar(1024,null,Ig,function(t){return[t]},[$m]),lr(40,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(42,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Vi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.debug=n)&&s),s},Zm,Ym)),lr(45,49152,null,0,$m,[],{klass:[0,"klass"],label:[1,"label"]},null),ar(1024,null,Ig,function(t){return[t]},[$m]),lr(47,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(49,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Vi(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Vi(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.test()&&s),s},e_,t_)),ar(5120,null,Ig,function(t){return[t]},[Xm]),lr(55,4767744,null,0,Xm,[sn,cn],null,{tapped:"tapped"}),lr(56,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Zi(-1,0,["Run!"])),(t()(),Vi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),Zi(59,null,[" "," "])),(t()(),Di(16777216,null,null,1,null,fv)),lr(61,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Vi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,63).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,63).handleTouch(n)&&s),"tapped"===e&&(s=0!=(r.show=!r.show)&&s),s},Wm,Gm)),lr(63,4440064,null,0,Um,[sn,cn],{klass:[0,"klass"],center:[1,"center"]},null),lr(64,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,qs(e,21).ngClassUntouched,qs(e,21).ngClassTouched,qs(e,21).ngClassPristine,qs(e,21).ngClassDirty,qs(e,21).ngClassValid,qs(e,21).ngClassInvalid,qs(e,21).ngClassPending),t(e,26,0,qs(e,31).ngClassUntouched,qs(e,31).ngClassTouched,qs(e,31).ngClassPristine,qs(e,31).ngClassDirty,qs(e,31).ngClassValid,qs(e,31).ngClassInvalid,qs(e,31).ngClassPending),t(e,37,0,qs(e,42).ngClassUntouched,qs(e,42).ngClassTouched,qs(e,42).ngClassPristine,qs(e,42).ngClassDirty,qs(e,42).ngClassValid,qs(e,42).ngClassInvalid,qs(e,42).ngClassPending),t(e,44,0,qs(e,49).ngClassUntouched,qs(e,49).ngClassTouched,qs(e,49).ngClassPristine,qs(e,49).ngClassDirty,qs(e,49).ngClassValid,qs(e,49).ngClassInvalid,qs(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_up":"keyboard_arrow_down")})}function mv(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(-1,null,["arrow_back"])),(t()(),Vi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(-1,null,["Select a driver from the sidebar"]))],null,null)}function _v(t){return Ki(0,[(e=0,n=n_,s=[Uc],cr(-1,e|=16,null,0,n,n,s)),zi(671088640,1,{body:0}),(t()(),Vi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,gv)),lr(4,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Di(0,[["select",2]],null,0,null,mv))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,qs(e,5))},null);var e,n,s}function vv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"app-workspace",[],null,null,null,_v,dv)),lr(1,245760,null,0,hv,[uv,lh],null,null)],function(t,e){t(e,1,0)},null)}var yv=$s("app-workspace",hv,vv,{},{},[]);class wv{constructor(){this.menu=!0,this.menuChange=new Sr}toggleMenu(){this.menu=!this.menu,this.menuChange.emit(this.menu)}}var bv=Qn({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function Cv(t){return Ki(0,[(t()(),Vi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,r=t.component;return"mousedown"===e&&(s=!1!==qs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==qs(t,2).handleTouch(n)&&s),"tapped"===e&&(s=!1!==r.toggleMenu()&&s),s},Wm,Gm)),lr(2,4440064,null,0,Um,[sn,cn],{klass:[0,"klass"]},null),lr(3,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(-1,null,["menu"])),(t()(),Vi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Vi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Vi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),Zi(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}class xv extends l_{constructor(t){super(),this.service=t,this.repository_list=[],this.status={}}ngOnInit(){this.service.set("TEST.repository",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",()=>this.updateRepositoryList(),6e4),this.subscription("test_results",this.service.listen("TEST.results",t=>{this.status=t||{}})),this.subscription("repository",this.service.listen("TEST.repository",t=>{t&&(this.repo={id:t,name:t},this.search_str="",this.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",t=>{this.driver=t}))}setRepository(t){this.service.navigate([t]),this.search_str="",this.updateDriverList()}setDriver(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t])}filter(t){this.filtered_list=this.driver_list.filter(e=>e.toLowerCase().indexOf(t.toLowerCase())>=0)}updateDriverList(){this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(t=>{this.driver_list=t||[],this.filter(""),this.loading=!1},t=>this.loading=!1)}updateRepositoryList(){this.service.Build.repositories().then(t=>{this.repository_list=(t||[]).map(t=>({id:t,name:t})),this.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),this.updateDriverList()})}}var Sv=Qn({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function Ev(t){return Ki(0,[(t()(),Vi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.setDriver(t.context.$implicit)&&s),s},null,null)),lr(1,4341760,null,0,zm,[sn,cn],null,{tapped:"tapped"}),(t()(),Vi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Vi(3,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(4,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]),t(e,4,0,e.context.$implicit)})}function kv(t){return Ki(0,[(t()(),Vi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(3,null,["",""])),(t()(),Vi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Zi(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function Tv(t){return Ki(0,[(t()(),Vi(0,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,r=t.component;return"ngModelChange"===e&&(s=!1!==(r.repo=n)&&s),"ngModelChange"===e&&(s=!1!==r.setRepository(n.id)&&s),s},Dm,Im)),lr(3,4767744,null,0,qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ar(1024,null,Ig,function(t){return[t]},[qd]),lr(5,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(7,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(8,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Vi(9,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Vi(10,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Zi(-1,null,["search"])),(t()(),Vi(12,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,r=t.component;return"input"===e&&(s=!1!==qs(t,13)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==qs(t,13).onTouched()&&s),"compositionstart"===e&&(s=!1!==qs(t,13)._compositionStart()&&s),"compositionend"===e&&(s=!1!==qs(t,13)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(r.search_str=n)&&s),"ngModelChange"===e&&(s=!1!==r.filter(n)&&s),s},null,null)),lr(13,16384,null,0,Ag,[cn,sn,[2,Pg]],null,null),ar(1024,null,Ig,function(t){return[t]},[Ag]),lr(15,671744,null,0,bm,[[8,null],[8,null],[8,null],[6,Ig]],{model:[0,"model"]},{update:"ngModelChange"}),ar(2048,null,Vg,null,[bm]),lr(17,16384,null,0,$g,[[4,Vg]],null,null),(t()(),Vi(18,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Di(16777216,null,null,1,null,Ev)),lr(20,278528,null,0,Rl,[An,Rn,xn],{ngForOf:[0,"ngForOf"]},null),(t()(),Di(16777216,null,null,1,null,kv)),lr(22,16384,null,0,Al,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,3,0,"simple",n.repository_list||xs,"ACA Drivers"),t(e,5,0,n.repo),t(e,15,0,n.search_str),t(e,20,0,n.filtered_list),t(e,22,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,2,0,qs(e,7).ngClassUntouched,qs(e,7).ngClassTouched,qs(e,7).ngClassPristine,qs(e,7).ngClassDirty,qs(e,7).ngClassValid,qs(e,7).ngClassInvalid,qs(e,7).ngClassPending),t(e,12,0,qs(e,17).ngClassUntouched,qs(e,17).ngClassTouched,qs(e,17).ngClassPristine,qs(e,17).ngClassDirty,qs(e,17).ngClassValid,qs(e,17).ngClassInvalid,qs(e,17).ngClassPending)})}var Ov=Qn({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:16em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:16em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Iv(t){return Ki(0,[(t()(),Vi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Vi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Vi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var s=!0;return"menuChange"===e&&(s=!1!==(t.component.show_menu=n)&&s),s},Cv,bv)),lr(3,49152,null,0,wv,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Vi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Vi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Vi(6,0,null,null,1,"sidebar",[],null,null,null,Tv,Sv)),lr(7,245760,null,0,xv,[uv],null,null),(t()(),Vi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Vi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),lr(10,212992,null,0,bd,[wd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function Rv(t){return Ki(0,[(t()(),Vi(0,0,null,null,1,"app-root",[],null,null,null,Iv,Ov)),lr(1,49152,null,0,hl,[],null,null)],null,null)}var Pv=$s("app-root",hl,Rv,{},{},[]);class Av{}class Mv{}var Nv=rl(ul,[hl],function(t){return function(t){const e={},n=[];let s=!1;for(let r=0;r(t[e.name]=e.token,t),{}))),()=>ic),Ud(e),sv(n,s,r,i)];var o},[[2,hi],jd,Dt,nv,ev,Mr]),Os(512,Or,Or,[[2,Tr]]),Os(131584,mi,mi,[Xr,Dr,Dt,re,Xe,Or]),Os(1073742336,Ni,Ni,[mi]),Os(1073742336,Qc,Qc,[[3,Qc]]),Os(1024,Id,Dd,[[3,vd]]),Os(512,ju,Uu,[]),Os(512,wd,wd,[]),Os(256,Od,{useHash:!0},[]),Os(1024,fl,Nd,[dl,[2,gl],Od]),Os(512,ml,ml,[fl,dl]),Os(512,zr,zr,[]),Os(512,kr,wi,[zr,[2,vi]]),Os(1024,hd,function(){return[[{path:"",component:hv},{path:":repo",component:hv},{path:":repo/:driver",component:hv}]]},[]),Os(1024,vd,$d,[mi,ju,wd,ml,Dt,kr,zr,hd,Od,[2,pd],[2,cd]]),Os(1073742336,Ad,Ad,[[2,Id],[2,vd]]),Os(1073742336,Av,Av,[]),Os(1073742336,iv,iv,[]),Os(1073742336,xm,xm,[]),Os(1073742336,Em,Em,[]),Os(1073742336,km,km,[]),Os(1073742336,Bm,Bm,[]),Os(1073742336,Jm,Jm,[]),Os(1073742336,jm,jm,[]),Os(1073742336,eg,eg,[]),Os(1073742336,pf,pf,[]),Os(1073742336,Up,Up,[]),Os(1073742336,sf,sf,[]),Os(1073742336,zf,zf,[]),Os(1073742336,Kf,Kf,[]),Os(1073742336,i_,i_,[]),Os(1073742336,Qd,Qd,[]),Os(1073742336,Mv,Mv,[]),Os(1073742336,j_,j_,[]),Os(1073742336,U_,U_,[]),Os(1073742336,ul,ul,[]),Os(256,Ge,!0,[]),Os(256,M_,"XSRF-TOKEN",[]),Os(256,N_,"X-XSRF-TOKEN",[])])});(function(){if(oe)throw new Error("Cannot enable prod mode after platform setup.");ie=!1})(),qc().bootstrapModuleFactory(Nv).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file diff --git a/www/main-es2015.144e194cfd63f43c4197.js b/www/main-es2015.144e194cfd63f43c4197.js new file mode 100644 index 00000000000..4d80f89b304 --- /dev/null +++ b/www/main-es2015.144e194cfd63f43c4197.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",s="hour",i="day",r="week",o="month",l="quarter",a="year",c=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,u=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var s=String(t);return!s||s.length>=e?t:""+Array(e+1-s.length).join(n)+t},d={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),s=Math.floor(n/60),i=n%60;return(e<=0?"+":"-")+h(s,2,"0")+":"+h(i,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,o),i=e-s<0,r=t.clone().add(n+(i?-1:1),o);return Number(-(n+(e-s)/(i?s-r:r-s))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(c){return{M:o,y:a,w:r,d:i,h:s,m:n,s:e,ms:t,Q:l}[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},p={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=p;var m=function(t){return t instanceof w},_=function(t,e,n){var s;if(!t)return null;if("string"==typeof t)g[t]&&(s=t),e&&(g[t]=e,s=t);else{var i=t.name;g[i]=t,s=i}return n||(f=s),s},v=function(t,e,n){if(m(t))return t.clone();var s=e?"string"==typeof e?{format:e,pl:n}:e:{};return s.date=t,new w(s)},y=d;y.l=_,y.i=m,y.w=function(t,e){return v(t,{locale:e.$L,utc:e.$u})};var w=function(){function h(t){this.$L=this.$L||_(t.locale,null,!0)||f,this.parse(t)}var d=h.prototype;return d.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(y.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var s=e.match(c);if(s)return n?new Date(Date.UTC(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)):new Date(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)}return new Date(e)}(t),this.init()},d.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},d.$utils=function(){return y},d.isValid=function(){return!("Invalid Date"===this.$d.toString())},d.isSame=function(t,e){var n=v(t);return this.startOf(e)<=n&&n<=this.endOf(e)},d.isAfter=function(t,e){return v(t){throw t})}const l={closed:!0,next(t){},error(t){if(r.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},a=Array.isArray||(t=>t&&"number"==typeof t.length);function c(t){return null!==t&&"object"==typeof t}function u(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}u.prototype=Object.create(Error.prototype);const h=u,d=(()=>{class t{constructor(t){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let t,e=!1;if(this.closed)return;let{_parent:n,_parents:i,_unsubscribe:r,_subscriptions:o}=this;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;let l=-1,u=i?i.length:0;for(;n;)n.remove(this),n=++lt.concat(e instanceof h?e.errors:e),[])}const f="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class g extends d{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof g?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[f](){return this}static create(t,e,n){const s=new g(t,e,n);return s.syncErrorThrowable=!1,s}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parent:t,_parents:e}=this;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=t,this._parents=e,this}}class m extends g{constructor(t,e,n,i){let r;super(),this._parentSubscriber=t;let o=this;s(e)?r=e:e&&(r=e.next,n=e.error,i=e.complete,e!==l&&(s((o=Object.create(e)).unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=r,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;r.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=r;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):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);r.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),r.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!r.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(s){return r.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=s,t.syncErrorThrown=!0,!0):(o(s),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const _="function"==typeof Symbol&&Symbol.observable||"@@observable";function v(){}function y(...t){return w(t)}function w(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:v}const b=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:s}=this,i=function(t,e,n){if(t){if(t instanceof g)return t;if(t[f])return t[f]()}return t||e||n?new g(t,e,n):new g(l)}(t,e,n);if(i.add(s?s.call(i,this.source):this.source||r.useDeprecatedSynchronousErrorHandling&&!i.syncErrorThrowable?this._subscribe(i):this._trySubscribe(i)),r.useDeprecatedSynchronousErrorHandling&&i.syncErrorThrowable&&(i.syncErrorThrowable=!1,i.syncErrorThrown))throw i.syncErrorValue;return i}_trySubscribe(t){try{return this._subscribe(t)}catch(e){r.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:s}=t;if(e||s)return!1;t=n&&n instanceof g?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=C(e))((e,n)=>{let s;s=this.subscribe(e=>{try{t(e)}catch(i){n(i),s&&s.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[_](){return this}pipe(...t){return 0===t.length?this:w(t)(this)}toPromise(t){return new(t=C(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=(e=>new t(e)),t})();function C(t){if(t||(t=r.Promise||Promise),!t)throw new Error("no Promise impl found");return t}function x(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}x.prototype=Object.create(Error.prototype);const S=x;class E extends d{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class k extends g{constructor(t){super(t),this.destination=t}}const T=(()=>{class t extends b{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new k(this)}lift(t){const e=new O(this,this);return e.operator=t,e}next(t){if(this.closed)throw new S;if(!this.isStopped){const{observers:e}=this,n=e.length,s=e.slice();for(let i=0;inew O(t,e)),t})();class O extends T{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):d.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}class R extends g{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const P=t=>e=>{for(let n=0,s=t.length;ne=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,o),e);function M(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}const N=M(),D=t=>e=>{const n=t[N]();for(;;){const t=n.next();if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e},V=t=>e=>{const n=t[_]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)},$=t=>t&&"number"==typeof t.length&&"function"!=typeof t;function L(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const j=t=>{if(t instanceof b)return e=>t._isScalar?(e.next(t.value),void e.complete()):t.subscribe(e);if(t&&"function"==typeof t[_])return V(t);if($(t))return P(t);if(L(t))return A(t);if(t&&"function"==typeof t[N])return D(t);{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};function U(t,e,n,s,i=new R(t,n,s)){if(!i.closed)return j(e)(i)}class z extends g{notifyNext(t,e,n,s,i){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(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 H(t,e))}}class H{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new B(t,this.project,this.thisArg))}}class B extends g{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function G(t,e){return new b(e?n=>{const s=new d;let i=0;return s.add(e.schedule(function(){i!==t.length?(n.next(t[i++]),n.closed||s.add(this.schedule())):n.complete()})),s}:P(t))}function W(t,e){if(!e)return t instanceof b?t:new b(j(t));if(null!=t){if(function(t){return t&&"function"==typeof t[_]}(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>{const i=t[_]();s.add(i.subscribe({next(t){s.add(e.schedule(()=>n.next(t)))},error(t){s.add(e.schedule(()=>n.error(t)))},complete(){s.add(e.schedule(()=>n.complete()))}}))})),s}:V(t))}(t,e);if(L(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>t.then(t=>{s.add(e.schedule(()=>{n.next(t),s.add(e.schedule(()=>n.complete()))}))},t=>{s.add(e.schedule(()=>n.error(t)))}))),s}:A(t))}(t,e);if($(t))return G(t,e);if(function(t){return t&&"function"==typeof t[N]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new b(e?n=>{const s=new d;let i;return s.add(()=>{i&&"function"==typeof i.return&&i.return()}),s.add(e.schedule(()=>{i=t[N](),s.add(e.schedule(function(){if(n.closed)return;let t,e;try{const r=i.next();t=r.value,e=r.done}catch(s){return void n.error(s)}e?n.complete():(n.next(t),this.schedule())}))})),s}:D(t))}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}function Y(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?s=>s.pipe(Y((n,s)=>W(t(n,s)).pipe(F((t,i)=>e(n,t,s,i))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new Z(t,this.project,this.concurrent))}}class Z extends z{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Q(t){return t}function X(t=Number.POSITIVE_INFINITY){return Y(Q,t)}function K(...t){let e=Number.POSITIVE_INFINITY,n=null,s=t[t.length-1];return I(s)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof s&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof b?t[0]:X(e)(G(t,n))}function J(){return function(t){return t.lift(new tt(t))}}class tt{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const s=new et(t,n),i=e.subscribe(s);return s.closed||(s.connection=n.connect()),i}}class et extends g{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,s=t._connection;this.connection=null,!s||n&&s!==n||s.unsubscribe()}}const nt=class extends b{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new d).add(this.source.subscribe(new it(this.getSubject(),this))),t.closed?(this._connection=null,t=d.EMPTY):this._connection=t),t}refCount(){return J()(this)}}.prototype,st={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:nt._subscribe},_isComplete:{value:nt._isComplete,writable:!0},getSubject:{value:nt.getSubject},connect:{value:nt.connect},refCount:{value:nt.refCount}};class it extends k{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function rt(t,e){return function(n){let s;if(s="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new ot(s,e));const i=Object.create(n,st);return i.source=n,i.subjectFactory=s,i}}class ot{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,s=this.subjectFactory(),i=n(s).subscribe(t);return i.add(e.subscribe(s)),i}}function lt(){return new T}const at="__parameters__";function ct(t,e,n){const s=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function i(...t){if(this instanceof i)return s.apply(this,t),this;const e=new i(...t);return n.annotation=e,n;function n(t,n,s){const i=t.hasOwnProperty(at)?t[at]:Object.defineProperty(t,at,{value:[]})[at];for(;i.length<=s;)i.push(null);return(i[s]=i[s]||[]).push(e),t}}return n&&(i.prototype=Object.create(n.prototype)),i.prototype.ngMetadataName=t,i.annotationCls=i,i}const ut=ct("Inject",t=>({token:t})),ht=ct("Optional"),dt=ct("Self"),pt=ct("SkipSelf");var ft=function(t){return 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",t}({});function gt(t){for(let e in t)if(t[e]===gt)return e;throw Error("Could not find renamed property on target object.")}function mt(t){return{providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function _t(t){return t&&t.hasOwnProperty(vt)?t[vt]:null}const vt=gt({ngInjectableDef:gt});function yt(t){if("string"==typeof t)return t;if(t instanceof Array)return"["+t.map(yt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}const wt=gt({__forward_ref__:gt});function bt(t){return t.__forward_ref__=bt,t.toString=function(){return yt(this())},t}function Ct(t){const e=t;return"function"==typeof e&&e.hasOwnProperty(wt)&&e.__forward_ref__===bt?e():t}function xt(){const t="undefined"!=typeof globalThis&&globalThis,e="undefined"!=typeof window&&window,n="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,s="undefined"!=typeof global&&global;return t||s||e||n}const St=xt();let Et,kt=void 0;function Tt(t){const e=kt;return kt=t,e}function Ot(t,e=ft.Default){return(Et||function(t,e=ft.Default){if(void 0===kt)throw new Error("inject() must be called from an injection context");return null===kt?function(t,e,n){const s=_t(t);if(s&&"root"==s.providedIn)return void 0===s.value?s.value=s.factory():s.value;if(n&ft.Optional)return null;throw new Error(`Injector: NOT_FOUND [${yt(t)}]`)}(t,0,e):kt.get(t,e&ft.Optional?null:void 0,e)})(t,e)}const It=Ot;class Rt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ngInjectableDef=mt({providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Pt="__source",At=new Object,Mt=new Rt("INJECTOR",-1);class Nt{get(t,e=At){if(e===At){const e=new Error(`NullInjectorError: No provider for ${yt(t)}!`);throw e.name="NullInjectorError",e}return e}}const Dt=(()=>{class t{static create(t,e){return Array.isArray(t)?new Gt(t,e):new Gt(t.providers,t.parent,t.name||null)}}return t.THROW_IF_NOT_FOUND=At,t.NULL=new Nt,t.ngInjectableDef=mt({providedIn:"any",factory:()=>Ot(Mt)}),t.__NG_ELEMENT_ID__=-1,t})(),Vt=function(t){return t},$t=[],Lt=Vt,jt=function(){return Array.prototype.slice.call(arguments)},Ut=gt({provide:String,useValue:gt}),zt="ngTokenPath",Ft="ngTempTokenPath",Ht=/\n/gm,Bt="\u0275";class Gt{constructor(t,e=Dt.NULL,n=null){this.parent=e,this.source=n;const s=this._records=new Map;s.set(Dt,{token:Dt,fn:Vt,deps:$t,value:this,useNew:!1}),s.set(Mt,{token:Mt,fn:Vt,deps:$t,value:this,useNew:!1}),function t(e,n){if(n)if((n=Ct(n))instanceof Array)for(let s=0;st.push(yt(n))),`StaticInjector[${t.join(", ")}]`}}function Wt(t){return qt("Cannot mix multi providers and regular providers",t)}function Yt(t,e,n,s=null){t=t&&"\n"===t.charAt(0)&&t.charAt(1)==Bt?t.substr(2):t;let i=yt(e);if(e instanceof Array)i=e.map(yt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let s=e[n];t.push(n+":"+("string"==typeof s?JSON.stringify(s):yt(s)))}i=`{${t.join(", ")}}`}return`${n}${s?"("+s+")":""}[${i}]: ${t.replace(Ht,"\n ")}`}function qt(t,e){return new Error(Yt(t,e,"StaticInjectorError"))}const Zt="ngDebugContext",Qt="ngOriginalError",Xt="ngErrorLogger",Kt=new Rt("AnalyzeForEntryComponents"),Jt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}(),te=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(St))();function ee(t){return t[Zt]}function ne(t){return t[Qt]}function se(t,...e){t.error(...e)}class ie{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),s=function(t){return t[Xt]||se}(t);s(this._console,"ERROR",t),e&&s(this._console,"ORIGINAL ERROR",e),n&&s(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?ee(t)?ee(t):this._findContext(ne(t)):null}_findOriginalError(t){let e=ne(t);for(;e&&ne(e);)e=ne(e);return e}}let re=!0,oe=!1;function le(){return oe=!0,re}class ae{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),this.inertBodyElement=this.inertDocument.createElement("body"),t.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t=""+t+"";try{t=encodeURI(t)}catch(s){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t=""+t+"";try{const n=(new window.DOMParser).parseFromString(t,"text/html").body;return n.removeChild(n.firstChild),n}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(t){const e=t.attributes;for(let s=e.length-1;0he(t.trim())).join(", ")),this.buf.push(" ",e,'="',ke(o),'"')}var s;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();ve.hasOwnProperty(e)&&!fe.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(ke(t))}checkClobberedElement(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}}const Se=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ee=/([^\#-~ |!])/g;function ke(t){return t.replace(/&/g,"&").replace(Se,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ee,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let Te;function Oe(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const Ie=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}();class Re{}const Pe=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ae=/^url\(([^)]+)\)$/,Me=/([A-Z])/g;function Ne(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function De(t){return!!t&&"function"==typeof t.then}function Ve(t){return!!t&&"function"==typeof t.subscribe}let $e=null;function Le(){if(!$e){const t=St.Symbol;if(t&&t.iterator)$e=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e{class t{}return t.NULL=new Qe,t})();class Ke{constructor(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(let s=0;s{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=(()=>rn(t)),t})(),rn=nn;class on{}class ln{}const an=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}(),cn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>un()),t})(),un=nn;class hn{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const dn=new hn("8.0.0");class pn{constructor(){}supports(t){return Fe(t)}create(t){return new gn(t)}}const fn=(t,e)=>e;class gn{constructor(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||fn}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,s=0,i=null;for(;e||n;){const r=!n||e&&e.currentIndex{s=this._trackByFn(e,t),null!==i&&je(i.trackById,s)?(r&&(i=this._verifyReinsertion(i,t,s,e)),je(i.item,t)||this._addIdentityChange(i,t)):(i=this._mismatch(i,t,s,e),r=!0),i=i._next,e++}),this.length=e;return this._truncate(i),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;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}}_mismatch(t,e,n,s){let i;return null===t?i=this._itTail:(i=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,s))?(je(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,i,s)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(je(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,i,s)):t=this._addAfter(new mn(e,n),i,s),t}_verifyReinsertion(t,e,n,s){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==i?t=this._reinsertAfter(i,t._prev,s):t.currentIndex!=s&&(t.currentIndex=s,this._addToMoves(t,s)),t}_truncate(t){for(;null!==t;){const 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)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const s=t._prevRemoved,i=t._nextRemoved;return null===s?this._removalsHead=i:s._nextRemoved=i,null===i?this._removalsTail=s:i._prevRemoved=s,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const s=null===e?this._itHead:e._next;return t._next=s,t._prev=e,null===s?this._itTail=t:s._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new vn),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e?t:(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t,t)}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new vn),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}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class mn{constructor(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}}class _n{constructor(){this._head=null,this._tail=null}add(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)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&je(n.trackById,t))return n;return null}remove(t){const 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}}class vn{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _n,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function yn(t,e,n){const s=t.previousIndex;if(null===s)return s;let i=0;return n&&s{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const s=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,s)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const 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}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const s=n._prev,i=n._next;return s&&(s._next=i),i&&(i._prev=s),n._next=null,n._prev=null,n}const n=new Cn(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;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}}_maybeAddToChanges(t,e){je(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Cn{constructor(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}}const xn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new pn])}),t})(),Sn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new wn])}),t})(),En=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>kn()),t})(),kn=(...t)=>{},Tn=[new wn],On=new xn([new pn]),In=new Sn(Tn),Rn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Pn(t,sn)),t})(),Pn=nn,An=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Mn(t,sn)),t})(),Mn=nn;function Nn(t,e,n,s){let i=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${e}'. Current value: '${n}'.`;return s&&(i+=" 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){const n=new Error(t);return Dn(n,e),n}(i,t)}function Dn(t,e){t[Zt]=e,t[Xt]=e.logError.bind(e)}function Vn(t){return new Error(`ViewDestroyedError: Attempt to use a destroyed view: ${t}`)}function $n(t,e,n){const s=t.state,i=1792&s;return i===e?(t.state=-1793&s|n,t.initIndex=-1,!0):i===n}function Ln(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function jn(t,e){return t.nodes[e]}function Un(t,e){return t.nodes[e]}function zn(t,e){return t.nodes[e]}function Fn(t,e){return t.nodes[e]}function Hn(t,e){return t.nodes[e]}const Bn={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},Gn=()=>{},Wn=new Map;function Yn(t){let e=Wn.get(t);return e||(e=yt(t)+"_"+Wn.size,Wn.set(t,e)),e}function qn(t,e,n,s){if(ze.isWrapped(s)){s=ze.unwrap(s);const i=t.def.nodes[e].bindingIndex+n,r=ze.unwrap(t.oldValues[i]);t.oldValues[i]=new ze(r)}return s}const Zn="$$undefined",Qn="$$empty";function Xn(t){return{id:Zn,styles:t.styles,encapsulation:t.encapsulation,data:t.data}}let Kn=0;function Jn(t,e,n,s){return!(!(2&t.state)&&je(t.oldValues[e.bindingIndex+n],s))}function ts(t,e,n,s){return!!Jn(t,e,n,s)&&(t.oldValues[e.bindingIndex+n]=s,!0)}function es(t,e,n,s){const i=t.oldValues[e.bindingIndex+n];if(1&t.state||!Ue(i,s)){const r=e.bindings[n].name;throw Nn(Bn.createDebugContext(t,e.nodeIndex),`${r}: ${i}`,`${r}: ${s}`,0!=(1&t.state))}}function ns(t){let e=t;for(;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function ss(t,e){let n=t;for(;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function is(t,e,n,s){try{return ns(33554432&t.def.nodes[e].flags?Un(t,e).componentView:t),Bn.handleEvent(t,e,n,s)}catch(i){t.root.errorHandler.handleError(i)}}function rs(t){return t.parent?Un(t.parent,t.parentNodeDef.nodeIndex):null}function os(t){return t.parent?t.parentNodeDef.parent:null}function ls(t,e){switch(201347067&e.flags){case 1:return Un(t,e.nodeIndex).renderElement;case 2:return jn(t,e.nodeIndex).renderText}}function as(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function cs(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function us(t){return 1<{"number"==typeof t?(e[t]=i,n|=us(t)):s[t]=i}),{matchedQueries:e,references:s,matchedQueryIds:n}}function ds(t,e){return t.map(t=>{let n,s;return Array.isArray(t)?[s,n]=t:(s=0,n=t),n&&("function"==typeof n||"object"==typeof n)&&e&&Object.defineProperty(n,Pt,{value:e,configurable:!0}),{flags:s,token:n,tokenKey:Yn(n)}})}function ps(t,e,n){let s=n.renderParent;return s?0==(1&s.flags)||0==(33554432&s.flags)||s.element.componentRendererType&&s.element.componentRendererType.encapsulation===Jt.Native?Un(t,n.renderParent.nodeIndex).renderElement:void 0:e}const fs=new WeakMap;function gs(t){let e=fs.get(t);return e||((e=t(()=>Gn)).factory=t,fs.set(t,e)),e}function ms(t,e,n,s,i){3===e&&(n=t.renderer.parentNode(ls(t,t.def.lastRenderRootNode))),_s(t,e,0,t.def.nodes.length-1,n,s,i)}function _s(t,e,n,s,i,r,o){for(let l=n;l<=s;l++){const n=t.def.nodes[l];11&n.flags&&ys(t,n,e,i,r,o),l+=n.childCount}}function vs(t,e,n,s,i,r){let o=t;for(;o&&!as(o);)o=o.parent;const l=o.parent,a=os(o),c=a.nodeIndex+a.childCount;for(let u=a.nodeIndex+1;u<=c;u++){const t=l.def.nodes[u];t.ngContentIndex===e&&ys(l,t,n,s,i,r),u+=t.childCount}if(!l.parent){const o=t.root.projectableNodes[e];if(o)for(let e=0;e-1}(i)||"root"===r.providedIn&&i._def.isRoot))){const n=t._providers.length;return t._def.providers[n]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:n,token:e.token},t._providers[n]=Es,t._providers[n]=Ps(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Tt(s)}var i,r}function Ps(t,e){let n;switch(201347067&e.flags){case 512:n=function(t,e,n){const s=n.length;switch(s){case 0:return new e;case 1:return new e(Rs(t,n[0]));case 2:return new e(Rs(t,n[0]),Rs(t,n[1]));case 3:return new e(Rs(t,n[0]),Rs(t,n[1]),Rs(t,n[2]));default:const i=new Array(s);for(let e=0;e=n.length)&&(e=n.length-1),e<0)return null;const s=n[e];return s.viewContainerParent=null,Vs(n,e),Bn.dirtyParentQueries(s),Ns(s),s}function Ms(t,e,n){const s=e?ls(e,e.def.lastRenderRootNode):t.renderElement,i=n.renderer.parentNode(s),r=n.renderer.nextSibling(s);ms(n,2,i,r,void 0)}function Ns(t){ms(t,3,null,null,void 0)}function Ds(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Vs(t,e){e>=t.length-1?t.pop():t.splice(e,1)}const $s=new Object;function Ls(t,e,n,s,i,r){return new js(t,e,n,s,i,r)}class js extends Ye{constructor(t,e,n,s,i,r){super(),this.selector=t,this.componentType=e,this._inputs=s,this._outputs=i,this.ngContentSelectors=r,this.viewDefFactory=n}get inputs(){const t=[],e=this._inputs;for(let n in e)t.push({propName:n,templateName:e[n]});return t}get outputs(){const t=[];for(let e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t}create(t,e,n,s){if(!s)throw new Error("ngModule should be provided");const i=gs(this.viewDefFactory),r=i.nodes[0].element.componentProvider.nodeIndex,o=Bn.createRootView(t,e||[],n,i,s,$s),l=zn(o,r).instance;return n&&o.renderer.setAttribute(Un(o,0).renderElement,"ng-version",dn.full),new Us(o,new Bs(o),l)}}class Us extends We{constructor(t,e,n){super(),this._view=t,this._viewRef=e,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=e,this.changeDetectorRef=e,this.instance=n}get location(){return new sn(Un(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new qs(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(t){this._viewRef.onDestroy(t)}}function zs(t,e,n){return new Fs(t,e,n)}class Fs{constructor(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}get element(){return new sn(this._data.renderElement)}get injector(){return new qs(this._view,this._elDef)}get parentInjector(){let t=this._view,e=this._elDef.parent;for(;!e&&t;)e=os(t),t=t.parent;return t?new qs(t,e):new qs(this._view,null)}clear(){for(let t=this._embeddedViews.length-1;t>=0;t--){const e=As(this._data,t);Bn.destroyView(e)}}get(t){const e=this._embeddedViews[t];if(e){const t=new Bs(e);return t.attachToViewContainerRef(this),t}return null}get length(){return this._embeddedViews.length}createEmbeddedView(t,e,n){const s=t.createEmbeddedView(e||{});return this.insert(s,n),s}createComponent(t,e,n,s,i){const r=n||this.parentInjector;i||t instanceof Je||(i=r.get(tn));const o=t.create(r,s,void 0,i);return this.insert(o.hostView,e),o}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=t;return function(t,e,n,s){let i=e.viewContainer._embeddedViews;null==n&&(n=i.length),s.viewContainerParent=t,Ds(i,n,s),function(t,e){const n=rs(e);if(!n||n===t||16&e.state)return;e.state|=16;let s=n.template._projectedViews;s||(s=n.template._projectedViews=[]),s.push(e),function(t,n){if(4&n.flags)return;e.parent.def.nodeFlags|=4,n.flags|=4;let s=n.parent;for(;s;)s.childFlags|=4,s=s.parent}(0,e.parentNodeDef)}(e,s),Bn.dirtyParentQueries(s),Ms(e,n>0?i[n-1]:null,s)}(this._view,this._data,e,n._view),n.attachToViewContainerRef(this),t}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(t._view);return function(t,e,s){const i=t.viewContainer._embeddedViews,r=i[n];Vs(i,n),null==s&&(s=i.length),Ds(i,s,r),Bn.dirtyParentQueries(r),Ns(r),Ms(t,s>0?i[s-1]:null,r)}(this._data,0,e),t}indexOf(t){return this._embeddedViews.indexOf(t._view)}remove(t){const e=As(this._data,t);e&&Bn.destroyView(e)}detach(t){const e=As(this._data,t);return e?new Bs(e):null}}function Hs(t){return new Bs(t)}class Bs{constructor(t){this._view=t,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(t){const e=[];return ms(t,0,void 0,void 0,e),e}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){ns(this._view)}detach(){this._view.state&=-5}detectChanges(){const t=this._view.root.rendererFactory;t.begin&&t.begin();try{Bn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}}checkNoChanges(){Bn.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Bn.destroyView(this._view)}detachFromAppRef(){this._appRef=null,Ns(this._view),Bn.dirtyParentQueries(this._view)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}}function Gs(t,e){return new Ws(t,e)}class Ws extends Rn{constructor(t,e){super(),this._parentView=t,this._def=e}createEmbeddedView(t){return new Bs(Bn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))}get elementRef(){return new sn(Un(this._parentView,this._def.nodeIndex).renderElement)}}function Ys(t,e){return new qs(t,e)}class qs{constructor(t,e){this.view=t,this.elDef=e}get(t,e=Dt.THROW_IF_NOT_FOUND){return Bn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:Yn(t)},e)}}function Zs(t,e){const n=t.def.nodes[e];if(1&n.flags){const e=Un(t,n.nodeIndex);return n.element.template?e.template:e.renderElement}if(2&n.flags)return jn(t,n.nodeIndex).renderText;if(20240&n.flags)return zn(t,n.nodeIndex).instance;throw new Error(`Illegal state: read nodeValue for node index ${e}`)}function Qs(t){return new Xs(t.renderer)}class Xs{constructor(t){this.delegate=t}selectRootElement(t){return this.delegate.selectRootElement(t)}createElement(t,e){const[n,s]=Cs(e),i=this.delegate.createElement(s,n);return t&&this.delegate.appendChild(t,i),i}createViewRoot(t){return t}createTemplateAnchor(t){const e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e}createText(t,e){const n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n}projectNodes(t,e){for(let n=0;nt())}onDestroy(t){this._destroyListeners.push(t)}}const ti=Yn(on),ei=Yn(cn),ni=Yn(sn),si=Yn(An),ii=Yn(Rn),ri=Yn(En),oi=Yn(Dt),li=Yn(Mt);function ai(t,e,n,s,i,r,o,l){const a=[];if(o)for(let u in o){const[t,e]=o[u];a[t]={flags:8,name:u,nonMinifiedName:e,ns:null,securityContext:null,suffix:null}}const c=[];if(l)for(let u in l)c.push({type:1,propName:u,target:null,eventName:l[u]});return hi(t,e|=16384,n,s,i,i,r,a,c)}function ci(t,e,n){return hi(-1,t|=16,null,0,e,e,n)}function ui(t,e,n,s,i){return hi(-1,t,e,0,n,s,i)}function hi(t,e,n,s,i,r,o,l,a){const{matchedQueries:c,references:u,matchedQueryIds:h}=hs(n);a||(a=[]),l||(l=[]),r=Ct(r);const d=ds(o,yt(i));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:h,references:u,ngContentIndex:-1,childCount:s,bindings:l,bindingFlags:xs(l),outputs:a,element:null,provider:{token:i,value:r,deps:d},text:null,query:null,ngContent:null}}function di(t,e){return mi(t,e)}function pi(t,e){let n=t;for(;n.parent&&!as(n);)n=n.parent;return _i(n.parent,os(n),!0,e.provider.value,e.provider.deps)}function fi(t,e){const n=_i(t,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(let s=0;sis(t,e,n,s)}function mi(t,e){const n=(8192&e.flags)>0,s=e.provider;switch(201347067&e.flags){case 512:return _i(t,e.parent,n,s.value,s.deps);case 1024:return function(t,e,n,s,i){const r=i.length;switch(r){case 0:return s();case 1:return s(yi(t,e,n,i[0]));case 2:return s(yi(t,e,n,i[0]),yi(t,e,n,i[1]));case 3:return s(yi(t,e,n,i[0]),yi(t,e,n,i[1]),yi(t,e,n,i[2]));default:const o=Array(r);for(let s=0;ste});class ki extends T{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let s,i=t=>null,r=()=>null;t&&"object"==typeof t?(s=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(i=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(r=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(i=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(r=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(s,i,r);return t instanceof d&&t.add(o),o}}class Ti{constructor(){this.dirty=!0,this._results=[],this.changes=new ki,this.length=0}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}[Le()](){return this._results[Le()]()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let s=0;s(class{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}))(),Pi=new Rt("AppId");function Ai(){return`${Mi()}${Mi()}${Mi()}`}function Mi(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const Ni=new Rt("Platform Initializer"),Di=new Rt("Platform ID"),Vi=new Rt("appBootstrapListener"),$i=(()=>(class{log(t){console.log(t)}warn(t){console.warn(t)}}))();function Li(){throw new Error("Runtime compiler is not loaded")}const ji=Li,Ui=Li,zi=Li,Fi=Li,Hi=(()=>(class{constructor(){this.compileModuleSync=ji,this.compileModuleAsync=Ui,this.compileModuleAndAllComponentsSync=zi,this.compileModuleAndAllComponentsAsync=Fi}clearCache(){}clearCacheFor(t){}getModuleId(t){}}))();class Bi{}let Gi,Wi;function Yi(){const t=St.wtf;return!(!t||!(Gi=t.trace)||(Wi=Gi.events,0))}const qi=Yi(),Zi=qi?function(t,e=null){return Wi.createScope(t,e)}:(t,e)=>(function(t,e){return null}),Qi=qi?function(t,e){return Gi.leaveScope(t,e),e}:(t,e)=>e,Xi=(()=>Promise.resolve(0))();function Ki(t){"undefined"==typeof Zone?Xi.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Ji{constructor({enableLongStackTrace:t=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new ki(!1),this.onMicrotaskEmpty=new ki(!1),this.onStable=new ki(!1),this.onError=new ki(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var e;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)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,n,s,i,r,o)=>{try{return sr(e),t.invokeTask(s,i,r,o)}finally{ir(e)}},onInvoke:(t,n,s,i,r,o,l)=>{try{return sr(e),t.invoke(s,i,r,o,l)}finally{ir(e)}},onHasTask:(t,n,s,i)=>{t.hasTask(s,i),n===s&&("microTask"==i.change?(e.hasPendingMicrotasks=i.microTask,nr(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(t,n,s,i)=>(t.handleError(s,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Ji.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Ji.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,s){const i=this._inner,r=i.scheduleEventTask("NgZoneEvent: "+s,t,er,tr,tr);try{return i.runTask(r,e,n)}finally{i.cancelTask(r)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function tr(){}const er={};function nr(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(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function sr(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ir(t){t._nesting--,nr(t)}class rr{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new ki,this.onMicrotaskEmpty=new ki,this.onStable=new ki,this.onError=new ki}run(t){return t()}runGuarded(t){return t()}runOutsideAngular(t){return t()}runTask(t){return t()}}const or=(()=>(class{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Ji.assertNotInAngularZone(),Ki(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Ki(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let s=-1;e&&e>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==s),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:s,updateCb:n})}whenStable(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()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}))(),lr=(()=>{class t{constructor(){this._applications=new Map,ur.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return ur.findTestabilityInTree(this,t,e)}}return t.ctorParameters=(()=>[]),t})();class ar{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let cr,ur=new ar,hr=function(t){return t instanceof Je};const dr=new Rt("AllowMultipleToken");class pr{constructor(t,e){this.name=t,this.token=e}}function fr(t,e,n=[]){const s=`Platform: ${e}`,i=new Rt(s);return(e=[])=>{let r=gr();if(!r||r.injector.get(dr,!1))if(t)t(n.concat(e).concat({provide:i,useValue:!0}));else{const t=n.concat(e).concat({provide:i,useValue:!0});!function(t){if(cr&&!cr.destroyed&&!cr.injector.get(dr,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");cr=t.get(mr);const e=t.get(Ni,null);e&&e.forEach(t=>t())}(Dt.create({providers:t,name:s}))}return function(t){const e=gr();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}(i)}}function gr(){return cr&&!cr.destroyed?cr:null}const mr=(()=>(class{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n="noop"===(i=e?e.ngZone:void 0)?new rr:("zone.js"===i?void 0:i)||new Ji({enableLongStackTrace:le()}),s=[{provide:Ji,useValue:n}];var i;return n.run(()=>{const e=Dt.create({providers:s,parent:this.injector,name:t.moduleType.name}),i=t.create(e),r=i.injector.get(ie,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return i.onDestroy(()=>yr(this._modules,i)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{r.handleError(t)}})),function(t,e,n){try{const i=n();return De(i)?i.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):i}catch(s){throw e.runOutsideAngular(()=>t.handleError(s)),s}}(r,n,()=>{const t=i.injector.get(Ri);return t.runInitializers(),t.donePromise.then(()=>(this._moduleDoBootstrap(i),i))})})}bootstrapModule(t,e=[]){const n=_r({},e);return function(t,e,n){return t.get(Bi).createCompiler([e]).compileModuleAsync(n)}(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(vr);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${yt(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)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}))();function _r(t,e){return Array.isArray(e)?e.reduce(_r,t):Object.assign({},t,e)}const vr=(()=>{class t{constructor(t,e,n,s,i,r){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=s,this._componentFactoryResolver=i,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=le(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new b(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new b(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Ji.assertNotInAngularZone(),Ki(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Ji.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=K(o,l.pipe(t=>J()(rt(lt)(t))))}bootstrap(t,e){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.");let n;n=t instanceof Ye?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const s=hr(n)?null:this._injector.get(tn),i=n.create(Dt.NULL,[],e||n.selector,s);i.onDestroy(()=>{this._unloadComponent(i)});const r=i.injector.get(or,null);return r&&i.injector.get(lr).registerApplication(i.location.nativeElement,r),this._loadComponent(i),le()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const e=t._tickScope();try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,Qi(e)}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;yr(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Vi,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),yr(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t._tickScope=Zi("ApplicationRef#tick()"),t})();function yr(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class wr{}const br={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Cr=(()=>(class{constructor(t,e){this._compiler=t,this._config=e||br}load(t){return this._compiler instanceof Hi?this.loadFactory(t):this.loadAndCompile(t)}loadAndCompile(t){let[e,s]=t.split("#");return void 0===s&&(s="default"),n("zn8P")(e).then(t=>t[s]).then(t=>xr(t,e,s)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,s]=t.split("#"),i="NgFactory";return void 0===s&&(s="default",i=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[s+i]).then(t=>xr(t,e,s))}}))();function xr(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}class Sr{constructor(t,e){this.name=t,this.callback=e}}class Er{constructor(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof kr&&e.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class kr extends Er{constructor(t,e,n){super(t,e,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=t}addChild(t){t&&(this.childNodes.push(t),t.parent=this)}removeChild(t){const e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))}insertChildrenAfter(t,e){const n=this.childNodes.indexOf(t);-1!==n&&(this.childNodes.splice(n+1,0,...e),e.forEach(e=>{e.parent&&e.parent.removeChild(e),t.parent=this}))}insertBefore(t,e){const 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))}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return function t(e,n,s){e.childNodes.forEach(e=>{e instanceof kr&&(n(e)&&s.push(e),t(e,n,s))})}(this,t,e),e}queryAllNodes(t){const e=[];return function t(e,n,s){e instanceof kr&&e.childNodes.forEach(e=>{n(e)&&s.push(e),e instanceof kr&&t(e,n,s)})}(this,t,e),e}get children(){return this.childNodes.filter(t=>t instanceof kr)}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name==t&&n.callback(e)})}}const Tr=new Map,Or=function(t){return Tr.get(t)||null};function Ir(t){Tr.set(t.nativeNode,t)}const Rr=fr(null,"core",[{provide:Di,useValue:"unknown"},{provide:mr,deps:[Dt]},{provide:lr,deps:[]},{provide:$i,deps:[]}]),Pr=new Rt("LocaleId");function Ar(){return On}function Mr(){return In}function Nr(t){return t||"en-US"}function Dr(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}const Vr=(()=>(class{constructor(t){}}))();function $r(t,e,n,s,i,r){t|=1;const{matchedQueries:o,references:l,matchedQueryIds:a}=hs(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:o,matchedQueryIds:a,references:l,ngContentIndex:n,childCount:s,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:r?gs(r):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:i||Gn},provider:null,text:null,query:null,ngContent:null}}function Lr(t,e,n,s,i,r,o=[],l,a,c,u,h){c||(c=Gn);const{matchedQueries:d,references:p,matchedQueryIds:f}=hs(n);let g=null,m=null;r&&([g,m]=Cs(r)),l=l||[];const _=new Array(l.length);for(let w=0;w{const[n,s]=Cs(t);return[n,s,e]});return h=function(t){if(t&&t.id===Zn){const e=null!=t.encapsulation&&t.encapsulation!==Jt.None||t.styles.length||Object.keys(t.data).length;t.id=e?`c${Kn++}`:Qn}return t&&t.id===Qn&&(t=null),t||null}(h),u&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:d,matchedQueryIds:f,references:p,ngContentIndex:s,childCount:i,bindings:_,bindingFlags:xs(_),outputs:v,element:{ns:g,name:m,attrs:y,template:null,componentProvider:null,componentView:u||null,componentRendererType:h,publicProviders:null,allProviders:null,handleEvent:c||Gn},provider:null,text:null,query:null,ngContent:null}}function jr(t,e,n){const s=n.element,i=t.root.selectorOrNode,r=t.renderer;let o;if(t.parent||!i){o=s.name?r.createElement(s.name,s.ns):r.createComment("");const i=ps(t,e,n);i&&r.appendChild(i,o)}else o=r.selectRootElement(i,!!s.componentRendererType&&s.componentRendererType.encapsulation===Jt.ShadowDom);if(s.attrs)for(let l=0;lis(t,e,n,s)}function Fr(t,e,n,s){if(!ts(t,e,n,s))return!1;const i=e.bindings[n],r=Un(t,e.nodeIndex),o=r.renderElement,l=i.name;switch(15&i.flags){case 1:!function(t,e,n,s,i,r){const o=e.securityContext;let l=o?t.root.sanitizer.sanitize(o,r):r;l=null!=l?l.toString():null;const a=t.renderer;null!=r?a.setAttribute(n,i,l,s):a.removeAttribute(n,i,s)}(t,i,o,i.ns,l,s);break;case 2:!function(t,e,n,s){const i=t.renderer;s?i.addClass(e,n):i.removeClass(e,n)}(t,o,l,s);break;case 4:!function(t,e,n,s,i){let r=t.root.sanitizer.sanitize(Ie.STYLE,i);if(null!=r){r=r.toString();const t=e.suffix;null!=t&&(r+=t)}else r=null;const o=t.renderer;null!=r?o.setStyle(n,s,r):o.removeStyle(n,s)}(t,i,o,l,s);break;case 8:!function(t,e,n,s,i){const r=e.securityContext;let o=r?t.root.sanitizer.sanitize(r,i):i;t.renderer.setProperty(n,s,o)}(33554432&e.flags&&32&i.flags?r.componentView:t,i,o,l,s)}return!0}function Hr(t,e,n){let s=[];for(let i in n)s.push({propName:i,bindingType:n[i]});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:us(e),bindings:s},ngContent:null}}function Br(t){const e=t.def.nodeMatchedQueries;for(;t.parent&&cs(t);){let n=t.parentNodeDef;t=t.parent;const s=n.nodeIndex+n.childCount;for(let i=0;i<=s;i++){const s=t.def.nodes[i];67108864&s.flags&&536870912&s.flags&&(s.query.filterId&e)===s.query.filterId&&Hn(t,i).setDirty(),!(1&s.flags&&i+s.childCount0)c=t,eo(t)||(u=t);else for(;c&&f===c.nodeIndex+c.childCount;){const t=c.parent;t&&(t.childFlags|=c.childFlags,t.childMatchedQueries|=c.childMatchedQueries),u=(c=t)&&eo(c)?c.renderParent:c}}return{factory:null,nodeFlags:o,rootNodeFlags:l,nodeMatchedQueries:a,flags:t,nodes:e,updateDirectives:n||Gn,updateRenderer:s||Gn,handleEvent:(t,n,s,i)=>e[n].element.handleEvent(t,s,i),bindingCount:i,outputCount:r,lastRenderRootNode:p}}function eo(t){return 0!=(1&t.flags)&&null===t.element.name}function no(t,e,n){const s=e.element&&e.element.template;if(s){if(!s.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(s.lastRenderRootNode&&16777216&s.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){const s=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=s&&e.nodeIndex+e.childCount>s)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${e.nodeIndex}!`)}}function so(t,e,n,s){const i=oo(t.root,t.renderer,t,e,n);return lo(i,t.component,s),ao(i),i}function io(t,e,n){const s=oo(t,t.renderer,null,null,e);return lo(s,n,n),ao(s),s}function ro(t,e,n,s){const i=e.element.componentRendererType;let r;return r=i?t.root.rendererFactory.createRenderer(s,i):t.root.renderer,oo(t.root,r,t,e.element.componentProvider,n)}function oo(t,e,n,s,i){const r=new Array(i.nodes.length),o=i.outputCount?new Array(i.outputCount):null;return{def:i,parent:n,viewContainerParent:null,parentNodeDef:s,context:null,component:null,nodes:r,state:13,root:t,renderer:e,oldValues:new Array(i.bindingCount),disposables:o,initIndex:-1}}function lo(t,e,n){t.component=e,t.context=n}function ao(t){let e;as(t)&&(e=Un(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);const n=t.def,s=t.nodes;for(let i=0;i0&&Fr(t,e,0,n)&&(p=!0),d>1&&Fr(t,e,1,s)&&(p=!0),d>2&&Fr(t,e,2,i)&&(p=!0),d>3&&Fr(t,e,3,r)&&(p=!0),d>4&&Fr(t,e,4,o)&&(p=!0),d>5&&Fr(t,e,5,l)&&(p=!0),d>6&&Fr(t,e,6,a)&&(p=!0),d>7&&Fr(t,e,7,c)&&(p=!0),d>8&&Fr(t,e,8,u)&&(p=!0),d>9&&Fr(t,e,9,h)&&(p=!0),p}(t,e,n,s,i,r,o,l,a,c,u,h);case 2:return function(t,e,n,s,i,r,o,l,a,c,u,h){let d=!1;const p=e.bindings,f=p.length;if(f>0&&ts(t,e,0,n)&&(d=!0),f>1&&ts(t,e,1,s)&&(d=!0),f>2&&ts(t,e,2,i)&&(d=!0),f>3&&ts(t,e,3,r)&&(d=!0),f>4&&ts(t,e,4,o)&&(d=!0),f>5&&ts(t,e,5,l)&&(d=!0),f>6&&ts(t,e,6,a)&&(d=!0),f>7&&ts(t,e,7,c)&&(d=!0),f>8&&ts(t,e,8,u)&&(d=!0),f>9&&ts(t,e,9,h)&&(d=!0),d){let d=e.text.prefix;f>0&&(d+=Jr(n,p[0])),f>1&&(d+=Jr(s,p[1])),f>2&&(d+=Jr(i,p[2])),f>3&&(d+=Jr(r,p[3])),f>4&&(d+=Jr(o,p[4])),f>5&&(d+=Jr(l,p[5])),f>6&&(d+=Jr(a,p[6])),f>7&&(d+=Jr(c,p[7])),f>8&&(d+=Jr(u,p[8])),f>9&&(d+=Jr(h,p[9]));const g=jn(t,e.nodeIndex).renderText;t.renderer.setValue(g,d)}return d}(t,e,n,s,i,r,o,l,a,c,u,h);case 16384:return function(t,e,n,s,i,r,o,l,a,c,u,h){const d=zn(t,e.nodeIndex),p=d.instance;let f=!1,g=void 0;const m=e.bindings.length;return m>0&&Jn(t,e,0,n)&&(f=!0,g=bi(t,d,e,0,n,g)),m>1&&Jn(t,e,1,s)&&(f=!0,g=bi(t,d,e,1,s,g)),m>2&&Jn(t,e,2,i)&&(f=!0,g=bi(t,d,e,2,i,g)),m>3&&Jn(t,e,3,r)&&(f=!0,g=bi(t,d,e,3,r,g)),m>4&&Jn(t,e,4,o)&&(f=!0,g=bi(t,d,e,4,o,g)),m>5&&Jn(t,e,5,l)&&(f=!0,g=bi(t,d,e,5,l,g)),m>6&&Jn(t,e,6,a)&&(f=!0,g=bi(t,d,e,6,a,g)),m>7&&Jn(t,e,7,c)&&(f=!0,g=bi(t,d,e,7,c,g)),m>8&&Jn(t,e,8,u)&&(f=!0,g=bi(t,d,e,8,u,g)),m>9&&Jn(t,e,9,h)&&(f=!0,g=bi(t,d,e,9,h,g)),g&&p.ngOnChanges(g),65536&e.flags&&Ln(t,256,e.nodeIndex)&&p.ngOnInit(),262144&e.flags&&p.ngDoCheck(),f}(t,e,n,s,i,r,o,l,a,c,u,h);case 32:case 64:case 128:return function(t,e,n,s,i,r,o,l,a,c,u,h){const d=e.bindings;let p=!1;const f=d.length;if(f>0&&ts(t,e,0,n)&&(p=!0),f>1&&ts(t,e,1,s)&&(p=!0),f>2&&ts(t,e,2,i)&&(p=!0),f>3&&ts(t,e,3,r)&&(p=!0),f>4&&ts(t,e,4,o)&&(p=!0),f>5&&ts(t,e,5,l)&&(p=!0),f>6&&ts(t,e,6,a)&&(p=!0),f>7&&ts(t,e,7,c)&&(p=!0),f>8&&ts(t,e,8,u)&&(p=!0),f>9&&ts(t,e,9,h)&&(p=!0),p){const p=Fn(t,e.nodeIndex);let g;switch(201347067&e.flags){case 32:g=new Array(d.length),f>0&&(g[0]=n),f>1&&(g[1]=s),f>2&&(g[2]=i),f>3&&(g[3]=r),f>4&&(g[4]=o),f>5&&(g[5]=l),f>6&&(g[6]=a),f>7&&(g[7]=c),f>8&&(g[8]=u),f>9&&(g[9]=h);break;case 64:g={},f>0&&(g[d[0].name]=n),f>1&&(g[d[1].name]=s),f>2&&(g[d[2].name]=i),f>3&&(g[d[3].name]=r),f>4&&(g[d[4].name]=o),f>5&&(g[d[5].name]=l),f>6&&(g[d[6].name]=a),f>7&&(g[d[7].name]=c),f>8&&(g[d[8].name]=u),f>9&&(g[d[9].name]=h);break;case 128:const t=n;switch(f){case 1:g=t.transform(n);break;case 2:g=t.transform(s);break;case 3:g=t.transform(s,i);break;case 4:g=t.transform(s,i,r);break;case 5:g=t.transform(s,i,r,o);break;case 6:g=t.transform(s,i,r,o,l);break;case 7:g=t.transform(s,i,r,o,l,a);break;case 8:g=t.transform(s,i,r,o,l,a,c);break;case 9:g=t.transform(s,i,r,o,l,a,c,u);break;case 10:g=t.transform(s,i,r,o,l,a,c,u,h)}}p.value=g}return p}(t,e,n,s,i,r,o,l,a,c,u,h);default:throw"unreachable"}}(t,e,s,i,r,o,l,a,c,u,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){let s=!1;for(let i=0;i0&&es(t,e,0,n),d>1&&es(t,e,1,s),d>2&&es(t,e,2,i),d>3&&es(t,e,3,r),d>4&&es(t,e,4,o),d>5&&es(t,e,5,l),d>6&&es(t,e,6,a),d>7&&es(t,e,7,c),d>8&&es(t,e,8,u),d>9&&es(t,e,9,h)}(t,e,s,i,r,o,l,a,c,u,h,d):function(t,e,n){for(let s=0;s{const s=Ro.get(t.token);3840&t.flags&&s&&(e=!0,n=n||s.deprecatedBehavior)}),t.modules.forEach(t=>{Po.forEach((s,i)=>{_t(i).providedIn===t&&(e=!0,n=n||s.deprecatedBehavior)})}),{hasOverrides:e,hasDeprecatedOverrides:n})}(t);return e?(function(t){for(let e=0;e0){let e=new Set(t.modules);Po.forEach((s,i)=>{if(e.has(_t(i).providedIn)){let e={token:i,flags:s.flags|(n?4096:0),deps:ds(s.deps),value:s.value,index:t.providers.length};t.providers.push(e),t.providersByKey[Yn(i)]=e}})}}(t=t.factory(()=>Gn)),t):t}(s))}const Ro=new Map,Po=new Map,Ao=new Map;function Mo(t){let e;Ro.set(t.token,t),"function"==typeof t.token&&(e=_t(t.token))&&"function"==typeof e.providedIn&&Po.set(t.token,t)}function No(t,e){const n=gs(e.viewDefFactory),s=gs(n.nodes[0].element.componentView);Ao.set(t,s)}function Do(){Ro.clear(),Po.clear(),Ao.clear()}function Vo(t){if(0===Ro.size)return t;const e=function(t){const e=[];let n=null;for(let s=0;sGn);for(let s=0;s"-"+t[1].toLowerCase())}`)]=Ne(l))}const s=e.parent,l=Un(t,s.nodeIndex).renderElement;if(s.element.name)for(let e in n){const s=n[e];null!=s?t.renderer.setAttribute(l,e,s):t.renderer.removeAttribute(l,e)}else t.renderer.setValue(l,`bindings=${JSON.stringify(n,null,2)}`)}}var i,r}function Xo(t,e,n,s){fo(t,e,n,...s)}function Ko(t,e){for(let n=e;n++r===i?t.error.bind(t,...e):Gn),rnew tl(t,e),handleEvent:Yo,updateDirectives:qo,updateRenderer:Zo}:{setCurrentNode:()=>{},createRootView:So,createEmbeddedView:so,createComponentView:ro,createNgModuleRef:Ks,overrideProvider:Gn,overrideComponentView:Gn,clearOverrides:Gn,checkAndUpdateView:uo,checkNoChangesView:co,destroyView:mo,createDebugContext:(t,e)=>new tl(t,e),handleEvent:(t,e,n,s)=>t.def.handleEvent(t,e,n,s),updateDirectives:(t,e)=>t.def.updateDirectives(0===e?$o:Lo,t),updateRenderer:(t,e)=>t.def.updateRenderer(0===e?$o:Lo,t)};Bn.setCurrentNode=t.setCurrentNode,Bn.createRootView=t.createRootView,Bn.createEmbeddedView=t.createEmbeddedView,Bn.createComponentView=t.createComponentView,Bn.createNgModuleRef=t.createNgModuleRef,Bn.overrideProvider=t.overrideProvider,Bn.overrideComponentView=t.overrideComponentView,Bn.clearOverrides=t.clearOverrides,Bn.checkAndUpdateView=t.checkAndUpdateView,Bn.checkNoChangesView=t.checkNoChangesView,Bn.destroyView=t.destroyView,Bn.resolveDep=yi,Bn.createDebugContext=t.createDebugContext,Bn.handleEvent=t.handleEvent,Bn.updateDirectives=t.updateDirectives,Bn.updateRenderer=t.updateRenderer,Bn.dirtyParentQueries=Br}();const e=function(t){const e=Array.from(t.providers),n=Array.from(t.modules),s={};for(const i in t.providersByKey)s[i]=t.providersByKey[i];return{factory:t.factory,isRoot:t.isRoot,providers:e,modules:n,providersByKey:s}}(gs(this._ngModuleDefFactory));return Bn.createNgModuleRef(this.moduleType,t||Dt.NULL,this._bootstrapComponents,e)}}const al="Test Runner";function cl(t){let e="";if(t)for(const n in t)t.hasOwnProperty(n)&&null!=t[n]&&(e+=`${e?"&":""}${n}=${t[n]}`);return e}function ul(t,e){const n=t.shift();return e[n]?t.length>0?ul(t,e[n]):e[n]:null}var hl=n("Wgwc");const dl=(()=>{class t{constructor(){if(this.build=hl(),!t.init){const e=hl();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][APP] ${al} - ${t} | ${e}`):console[n](`%c[ACA]%c[APP] %c${al} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0",t.init=!1,t})();class pl{constructor(){this.show_menu=!0}}class fl{}const gl=new Rt("Location Initialized");class ml{}const _l=new Rt("appBaseHref"),vl=(()=>{class t{constructor(e,n){this._subject=new ki,this._urlChangeListeners=[],this._platformStrategy=e;const s=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=t.stripTrailingSlash(yl(s)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(e,n=""){return this.path()==this.normalize(e+t.normalizeQueryParams(n))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,yl(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(e,n="",s=null){this._platformStrategy.pushState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}replaceState(e,n="",s=null){this._platformStrategy.replaceState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}static normalizeQueryParams(t){return t&&"?"!==t[0]?"?"+t:t}static joinWithSlash(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}static stripTrailingSlash(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}}return t})();function yl(t){return t.replace(/\/index.html$/,"")}const wl=(()=>(class extends ml{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=vl.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,s){let i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));0==i.length&&(i=this._platformLocation.pathname),this._platformLocation.pushState(t,e,i)}replaceState(t,e,n,s){let i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));0==i.length&&(i=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,i)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),bl=(()=>(class extends ml{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)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.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return vl.joinWithSlash(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+vl.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,s){const i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));this._platformLocation.pushState(t,e,i)}replaceState(t,e,n,s){const i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));this._platformLocation.replaceState(t,e,i)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),Cl=void 0;var xl=["en",[["a","p"],["AM","PM"],Cl],[["AM","PM"],Cl,Cl],[["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"]],Cl,[["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"]],Cl,[["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}",Cl,"{1} 'at' {0}",Cl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];const Sl={},El=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),kl=new Rt("UseV4Plurals");class Tl{}const Ol=(()=>(class extends Tl{constructor(t,e){super(),this.locale=t,this.deprecatedPluralFn=e}getPluralCategory(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){const e=t.toLowerCase().replace(/_/g,"-");let n=Sl[e];if(n)return n;const s=e.split("-")[0];if(n=Sl[s])return n;if("en"===s)return xl;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[18]}(e||this.locale)(t)){case El.Zero:return"zero";case El.One:return"one";case El.Two:return"two";case El.Few:return"few";case El.Many:return"many";default:return"other"}}}))();function Il(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[s,i]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(s.trim()===e)return decodeURIComponent(i)}return null}const Rl=(()=>(class{constructor(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}ngOnChanges(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){const e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){const t=e.get(tn);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(t.injector)}else this._moduleRef=null;const n=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(Xe)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(n,this._viewContainerRef.length,e,this.ngComponentOutletContent)}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}))();class Pl{constructor(t,e,n,s){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=s}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}const Al=(()=>(class{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){le()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,s)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Pl(null,this._ngForOf,-1,-1),s),i=new Ml(t,n);e.push(i)}else if(null==s)this._viewContainer.remove(n);else{const i=this._viewContainer.get(n);this._viewContainer.move(i,s);const r=new Ml(t,i);e.push(r)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}))();class Ml{constructor(t,e){this.record=t,this.view=e}}const Nl=(()=>(class{constructor(t,e){this._viewContainer=t,this._context=new Dl,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){Vl("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Vl("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){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)))}static ngTemplateGuard_ngIf(t,e){return!0}}))();class Dl{constructor(){this.$implicit=null,this.ngIf=null}}function Vl(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${yt(e)}'.`)}class $l{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}const Ll=(()=>(class{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const 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}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e(class{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new $l(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}))(),Ul=(()=>(class{constructor(t,e,n){n._addDefault(new $l(t,e))}}))(),zl=(()=>(class{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){this._shouldRecreateView(t)?(this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))):this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)}_shouldRecreateView(t){const e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)}_hasContextShapeChanged(t){const e=Object.keys(t.previousValue||{}),n=Object.keys(t.currentValue||{});if(e.length===n.length){for(let t of n)if(-1===e.indexOf(t))return!0;return!1}return!0}_updateExistingContext(t){for(let e of Object.keys(t))this._viewRef.context[e]=this.ngTemplateOutletContext[e]}}))(),Fl=(()=>(class{}))(),Hl=new Rt("DocumentToken"),Bl="browser";function Gl(t){return t===Bl}const Wl=(()=>{class t{}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new Yl(Ot(Hl),window,Ot(ie))}),t})();class Yl{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=(()=>[0,0])}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const n=this.document.querySelector(`#${t}`);if(n)return void this.scrollToElement(n);const s=this.document.querySelector(`[name='${t}']`);if(s)return void this.scrollToElement(s)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,s=e.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(n-i[0],s-i[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}const ql=new b(t=>t.complete());function Zl(t){return t?function(t){return new b(e=>t.schedule(()=>e.complete()))}(t):ql}function Ql(t){const e=new b(e=>{e.next(t),e.complete()});return e._isScalar=!0,e.value=t,e}function Xl(...t){let e=t[t.length-1];switch(I(e)?t.pop():e=void 0,t.length){case 0:return Zl(e);case 1:return e?G(t,e):Ql(t[0]);default:return G(t,e)}}class Kl extends T{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new S;return this._value}next(t){super.next(this._value=t)}}function Jl(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}Jl.prototype=Object.create(Error.prototype);const ta=Jl,ea={};class na{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new sa(t,this.resultSelector))}}class sa extends z{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(ea),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{let n;try{n=t()}catch(s){return void e.error(s)}return(n?W(n):Zl()).subscribe(e)})}function ra(){return X(1)}function oa(t,e){return function(n){return n.lift(new la(t,e))}}class la{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new aa(t,this.predicate,this.thisArg))}}class aa extends g{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}function ca(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}ca.prototype=Object.create(Error.prototype);const ua=ca;function ha(t){return function(e){return 0===t?Zl():e.lift(new da(t))}}class da{constructor(t){if(this.total=t,this.total<0)throw new ua}call(t,e){return e.subscribe(new pa(t,this.total))}}class pa extends g{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,s=this.count++;e.length0){const n=this.count>=this.total?this.total:this.count,s=this.ring;for(let i=0;ifa({hasValue:!1,next(){this.hasValue=!0},complete(){if(!this.hasValue)throw t()}});function va(t=null){return e=>e.lift(new ya(t))}class ya{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new wa(t,this.defaultValue))}}class wa extends g{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}function ba(t,e){const n=arguments.length>=2;return s=>s.pipe(t?oa((e,n)=>t(e,n,s)):Q,ha(1),n?va(e):_a(()=>new ta))}function Ca(t){return function(e){const n=new xa(t),s=e.lift(n);return n.caught=s}}class xa{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Sa(t,this.selector,this.caught))}}class Sa extends z{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const s=new R(this,void 0,void 0);this.add(s),U(this,n,void 0,void 0,s)}}}function Ea(t){return e=>0===t?Zl():e.lift(new ka(t))}class ka{constructor(t){if(this.total=t,this.total<0)throw new ua}call(t,e){return e.subscribe(new Ta(t,this.total))}}class Ta extends g{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}function Oa(t,e){const n=arguments.length>=2;return s=>s.pipe(t?oa((e,n)=>t(e,n,s)):Q,Ea(1),n?va(e):_a(()=>new ta))}class Ia{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new Ra(t,this.predicate,this.thisArg,this.source))}}class Ra extends g{constructor(t,e,n,s){super(t),this.predicate=e,this.thisArg=n,this.source=s,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}function Pa(t,e){return"function"==typeof e?n=>n.pipe(Pa((n,s)=>W(t(n,s)).pipe(F((t,i)=>e(n,t,s,i))))):e=>e.lift(new Aa(t))}class Aa{constructor(t){this.project=t}call(t,e){return e.subscribe(new Ma(t,this.project))}}class Ma extends z{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(s){return void this.destination.error(s)}this._innerSub(e,t,n)}_innerSub(t,e,n){const s=this.innerSubscription;s&&s.unsubscribe();const i=new R(this,void 0,void 0);this.destination.add(i),this.innerSubscription=U(this,t,e,n,i)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,s,i){this.destination.next(e)}}function Na(...t){return ra()(Xl(...t))}function Da(...t){return e=>{let n=t[t.length-1];I(n)?t.pop():n=null;const s=t.length;return Na(1!==s||n?s>0?G(t,n):Zl(n):Ql(t[0]),e)}}function Va(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(s){return s.lift(new $a(t,e,n))}}class $a{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new La(t,this.accumulator,this.seed,this.hasSeed))}}class La extends g{constructor(t,e,n,s){super(t),this.accumulator=e,this._seed=n,this.hasSeed=s,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(s){this.destination.error(s)}this.seed=n,this.destination.next(n)}}function ja(t,e){return Y(t,e,1)}class Ua{constructor(t){this.callback=t}call(t,e){return e.subscribe(new za(t,this.callback))}}class za extends g{constructor(t,e){super(t),this.add(new d(e))}}let Fa=null;function Ha(){return Fa}class Ba{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(t){this._attrToPropMap=t}}class Ga extends Ba{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const e=this.createElement("div",document);if(null!=this.getStyle(e,"animationName"))this._animationPrefix="";else{const t=["Webkit","Moz","O","ms"];for(let n=0;n{null!=this.getStyle(e,t)&&(this._transitionEnd=n[t])})}catch(t){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(t){return t.getDistributedNodes()}resolveAndSetHref(t,e,n){t.href=null==n?e:e+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}const Wa={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},Ya=3,qa={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Za={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},Qa=(()=>{if(St.Node)return St.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))}})();class Xa extends Ga{parse(t){throw new Error("parse not implemented")}static makeCurrent(){var t;t=new Xa,Fa||(Fa=t)}hasProperty(t,e){return e in t}setProperty(t,e,n){t[e]=n}getProperty(t,e){return t[e]}invoke(t,e,n){t[e](...n)}logError(t){window.console&&(console.error?console.error(t):console.log(t))}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return Wa}contains(t,e){return Qa.call(t,e)}querySelector(t,e){return t.querySelector(e)}querySelectorAll(t,e){return t.querySelectorAll(e)}on(t,e,n){t.addEventListener(e,n,!1)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}createMouseEvent(t){const e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(t,!0,!0),e}createEvent(t){const e=this.getDefaultDocument().createEvent("Event");return e.initEvent(t,!0,!0),e}preventDefault(t){t.preventDefault(),t.returnValue=!1}isPrevented(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue}getInnerHTML(t){return t.innerHTML}getTemplateContent(t){return"content"in t&&this.isTemplateElement(t)?t.content:null}getOuterHTML(t){return t.outerHTML}nodeName(t){return t.nodeName}nodeValue(t){return t.nodeValue}type(t){return t.type}content(t){return this.hasProperty(t,"content")?t.content:t}firstChild(t){return t.firstChild}nextSibling(t){return t.nextSibling}parentElement(t){return t.parentNode}childNodes(t){return t.childNodes}childNodesAsList(t){const e=t.childNodes,n=new Array(e.length);for(let s=0;st.insertBefore(n,e))}insertAfter(t,e,n){t.insertBefore(n,e.nextSibling)}setInnerHTML(t,e){t.innerHTML=e}getText(t){return t.textContent}setText(t,e){t.textContent=e}getValue(t){return t.value}setValue(t,e){t.value=e}getChecked(t){return t.checked}setChecked(t,e){t.checked=e}createComment(t){return this.getDefaultDocument().createComment(t)}createTemplate(t){const e=this.getDefaultDocument().createElement("template");return e.innerHTML=t,e}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createElementNS(t,e,n){return(n=n||this.getDefaultDocument()).createElementNS(t,e)}createTextNode(t,e){return(e=e||this.getDefaultDocument()).createTextNode(t)}createScriptTag(t,e,n){const s=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return s.setAttribute(t,e),s}createStyleElement(t,e){const n=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(t,e)),n}createShadowRoot(t){return t.createShadowRoot()}getShadowRoot(t){return t.shadowRoot}getHost(t){return t.host}clone(t){return t.cloneNode(!0)}getElementsByClassName(t,e){return t.getElementsByClassName(e)}getElementsByTagName(t,e){return t.getElementsByTagName(e)}classList(t){return Array.prototype.slice.call(t.classList,0)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}hasClass(t,e){return t.classList.contains(e)}setStyle(t,e,n){t.style[e]=n}removeStyle(t,e){t.style[e]=""}getStyle(t,e){return t.style[e]}hasStyle(t,e,n){const s=this.getStyle(t,e)||"";return n?s==n:s.length>0}tagName(t){return t.tagName}attributeMap(t){const e=new Map,n=t.attributes;for(let s=0;s{class t extends fl{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=Ha().getLocation(),this._history=Ha().getHistory()}getBaseHrefFromDOM(){return Ha().getBaseHref(this._doc)}onPopState(t){Ha().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){Ha().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){tc()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){tc()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return t.ctorParameters=(()=>[{type:void 0,decorators:[{type:ut,args:[Hl]}]}]),t})(),nc=new Rt("TRANSITION_ID"),sc=[{provide:Ii,useFactory:function(t,e,n){return()=>{n.get(Ri).donePromise.then(()=>{const n=Ha();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(e=>n.getAttribute(e,"ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[nc,Hl,Dt],multi:!0}];class ic{static init(){var t;t=new ic,ur=t}addToWindow(t){St.getAngularTestability=((e,n=!0)=>{const s=t.findTestabilityInTree(e,n);if(null==s)throw new Error("Could not find testability for element.");return s}),St.getAllAngularTestabilities=(()=>t.getAllTestabilities()),St.getAllAngularRootElements=(()=>t.getAllRootElements()),St.frameworkStabilizers||(St.frameworkStabilizers=[]),St.frameworkStabilizers.push(t=>{const e=St.getAllAngularTestabilities();let n=e.length,s=!1;const i=function(e){s=s||e,0==--n&&t(s)};e.forEach(function(t){t.whenStable(i)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const s=t.getTestability(e);return null!=s?s:n?Ha().isShadowRoot(e)?this.findTestabilityInTree(t,Ha().getHost(e),!0):this.findTestabilityInTree(t,Ha().parentElement(e),!0):null}}function rc(t,e){"undefined"!=typeof COMPILED&&COMPILED||((St.ng=St.ng||{})[t]=e)}const oc=(()=>({ApplicationRef:vr,NgZone:Ji}))();function lc(t){return Or(t)}const ac=new Rt("EventManagerPlugins"),cc=(()=>(class{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let s=0;s(class{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}))(),dc=(()=>(class extends hc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>Ha().remove(t))}}))(),pc={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/"},fc=/%COMP%/g,gc="_nghost-%COMP%",mc="_ngcontent-%COMP%";function _c(t,e,n){for(let s=0;s{!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}const yc=(()=>(class{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new wc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case Jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new xc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case Jt.Native:case Jt.ShadowDom:return new Sc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=_c(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}))();class wc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(pc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let 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}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,s){if(s){e=`${s}:${e}`;const i=pc[s];i?t.setAttributeNS(i,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const s=pc[n];s?t.removeAttributeNS(s,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&an.DashCase?t.style.setProperty(e,n,s&an.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&an.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){Cc(e,"property"),t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return Cc(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,vc(n)):this.eventManager.addEventListener(t,e,vc(n))}}const bc=(()=>"@".charCodeAt(0))();function Cc(t,e){if(t.charCodeAt(0)===bc)throw new Error(`Found the synthetic ${e} ${t}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class xc extends wc{constructor(t,e,n,s){super(t),this.component=n;const i=_c(s+"-"+n.id,n.styles,[]);e.addStyles(i),this.contentAttr=mc.replace(fc,s+"-"+n.id),this.hostAttr=gc.replace(fc,s+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Sc extends wc{constructor(t,e,n,s){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=s,this.shadowRoot=s.encapsulation===Jt.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const i=_c(s.id,s.styles,[]);for(let r=0;r"undefined"!=typeof Zone&&Zone.__symbol__||function(t){return"__zone_symbol__"+t})(),kc=Ec("addEventListener"),Tc=Ec("removeEventListener"),Oc={},Ic="__zone_symbol__propagationStopped",Rc=(()=>{const t="undefined"!=typeof Zone&&Zone[Ec("BLACK_LISTED_EVENTS")];if(t){const e={};return t.forEach(t=>{e[t]=t}),e}})(),Pc=function(t){return!!Rc&&Rc.hasOwnProperty(t)},Ac=function(t){const e=Oc[t.type];if(!e)return;const n=this[e];if(!n)return;const s=[t];if(1===n.length){const t=n[0];return t.zone!==Zone.current?t.zone.run(t.handler,this,s):t.handler.apply(this,s)}{const e=n.slice();for(let n=0;n(class extends uc{constructor(t,e,n){super(t),this.ngZone=e,n&&function(t){return"server"===t}(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const t=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[Ic]=!0),t&&t.apply(this,arguments)}}supports(t){return!0}addEventListener(t,e,n){let s=n;if(!t[kc]||Ji.isInAngularZone()&&!Pc(e))t.addEventListener(e,s,!1);else{let n=Oc[e];n||(n=Oc[e]=Ec("ANGULAR"+e+"FALSE"));let i=t[n];const r=i&&i.length>0;i||(i=t[n]=[]);const o=Pc(e)?Zone.root:Zone.current;if(0===i.length)i.push({zone:o,handler:s});else{let t=!1;for(let e=0;ethis.removeEventListener(t,e,s)}removeEventListener(t,e,n){let s=t[Tc];if(!s)return t.removeEventListener.apply(t,[e,n,!1]);let i=Oc[e],r=i&&t[i];if(!r)return t.removeEventListener.apply(t,[e,n,!1]);let o=!1;for(let l=0;l(class{constructor(){this.events=[],this.overrides={}}buildHammer(t){const e=new Hammer(t,this.options);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(const n in this.overrides)e.get(n).set(this.overrides[n]);return e}}))(),Lc=(()=>(class extends uc{constructor(t,e,n,s){super(t),this._config=e,this.console=n,this.loader=s}supports(t){return!(!Nc.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))}addEventListener(t,e,n){const s=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){let s=!1,i=()=>{s=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(i=(()=>{}));s||(i=this.addEventListener(t,e,n))}).catch(()=>{this.console.warn(`The "${e}" event cannot be bound because the custom `+"Hammer.JS loader failed."),i=(()=>{})}),()=>{i()}}return s.runOutsideAngular(()=>{const i=this._config.buildHammer(t),r=function(t){s.runGuarded(function(){n(t)})};return i.on(e,r),()=>{i.off(e,r),"function"==typeof i.destroy&&i.destroy()}})}isCustomEvent(t){return this._config.events.indexOf(t)>-1}}))(),jc=["alt","control","meta","shift"],Uc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},zc=(()=>{class t extends uc{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,s){const i=t.parseEventName(n),r=t.eventCallback(i.fullKey,s,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ha().onAndCancel(e,i.domEventName,r))}static parseEventName(e){const n=e.toLowerCase().split("."),s=n.shift();if(0===n.length||"keydown"!==s&&"keyup"!==s)return null;const i=t._normalizeKey(n.pop());let r="";if(jc.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),r+=t+".")}),r+=i,0!=n.length||0===i.length)return null;const o={};return o.domEventName=s,o.fullKey=r,o}static getEventFullKey(t){let e="",n=Ha().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),jc.forEach(s=>{s!=n&&(0,Uc[s])(t)&&(e+=s+".")}),e+=n}static eventCallback(e,n,s){return i=>{t.getEventFullKey(i)===e&&s.runGuarded(()=>n(i))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t})();class Fc{}const Hc=(()=>(class extends Fc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case Ie.NONE:return e;case Ie.HTML:return e instanceof Gc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){let n=null;try{Te=Te||new ae(t);let s=e?String(e):"";n=Te.getInertBodyElement(s);let i=5,r=s;do{if(0===i)throw new Error("Failed to sanitize html because the input is unstable");i--,s=r,r=n.innerHTML,n=Te.getInertBodyElement(s)}while(s!==r);const o=new xe,l=o.sanitizeChildren(Oe(n)||n);return le()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),l}finally{if(n){const t=Oe(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e)));case Ie.STYLE:return e instanceof Wc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";const e=t.match(Ae);return e&&he(e[1])===e[1]||t.match(Pe)&&function(t){let e=!0,n=!0;for(let s=0;s{class t{constructor(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.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Pi,useValue:e.appId},{provide:nc,useExisting:Pi},sc]}}}return t})();function Jc(){return new tu(Ot(Hl))}const tu=(()=>{class t{constructor(t){this._doc=t}getTitle(){return Ha().getTitle(this._doc)}setTitle(t){Ha().setTitle(this._doc,t)}}return t.ngInjectableDef=mt({factory:Jc,token:t,providedIn:"root"}),t})();"undefined"!=typeof window&&window;class eu{constructor(t,e){this.id=t,this.url=e}}class nu extends eu{constructor(t,e,n="imperative",s=null){super(t,e),this.navigationTrigger=n,this.restoredState=s}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class su extends eu{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class iu extends eu{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class ru extends eu{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ou extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class lu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class au extends eu{constructor(t,e,n,s,i){super(t,e),this.urlAfterRedirects=n,this.state=s,this.shouldActivate=i}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class cu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class uu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class hu{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class du{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class pu{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class fu{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class gu{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class mu{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class _u{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const vu=(()=>(class{}))(),yu="primary";class wu{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function bu(t){return new wu(t)}const Cu="ngNavigationCancelingError";function xu(t){const e=Error("NavigationCancelingError: "+t);return e[Cu]=!0,e}function Su(t,e,n){const s=n.path.split("/");if(s.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||s.length0?t[t.length-1]:null}function Mu(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Nu(t){return Ve(t)?t:De(t)?W(Promise.resolve(t)):Xl(t)}function Du(t,e,n){return n?function(t,e){return Ru(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!ju(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const s in n.children){if(!e.children[s])return!1;if(!t(e.children[s],n.children[s]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>e[n]===t[n])}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,s,i){if(n.segments.length>i.length){return!!ju(n.segments.slice(0,i.length),i)&&!s.hasChildren()}if(n.segments.length===i.length){if(!ju(n.segments,i))return!1;for(const e in s.children){if(!n.children[e])return!1;if(!t(n.children[e],s.children[e]))return!1}return!0}{const t=i.slice(0,n.segments.length),r=i.slice(n.segments.length);return!!ju(n.segments,t)&&!!n.children[yu]&&e(n.children[yu],s,r)}}(e,n,n.segments)}(t.root,e.root)}class Vu{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=bu(this.queryParams)),this._queryParamMap}toString(){return Hu.serialize(this)}}class $u{constructor(t,e){this.segments=t,this.children=e,this.parent=null,Mu(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Bu(this)}}class Lu{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=bu(this.parameters)),this._parameterMap}toString(){return Qu(this)}}function ju(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Uu(t,e){let n=[];return Mu(t.children,(t,s)=>{s===yu&&(n=n.concat(e(t,s)))}),Mu(t.children,(t,s)=>{s!==yu&&(n=n.concat(e(t,s)))}),n}class zu{}class Fu{parse(t){const e=new eh(t);return new Vu(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){var e;return`${`/${function t(e,n){if(!e.hasChildren())return Bu(e);if(n){const n=e.children[yu]?t(e.children[yu],!1):"",s=[];return Mu(e.children,(e,n)=>{n!==yu&&s.push(`${n}:${t(e,!1)}`)}),s.length>0?`${n}(${s.join("//")})`:n}{const n=Uu(e,(n,s)=>s===yu?[t(e.children[yu],!1)]:[`${s}:${t(n,!1)}`]);return`${Bu(e)}/(${n.join("//")})`}}(t.root,!0)}`}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Wu(e)}=${Wu(t)}`).join("&"):`${Wu(e)}=${Wu(n)}`});return e.length?`?${e.join("&")}`:""}(t.queryParams)}${"string"==typeof t.fragment?`#${e=t.fragment,encodeURI(e)}`:""}`}}const Hu=new Fu;function Bu(t){return t.segments.map(t=>Qu(t)).join("/")}function Gu(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Wu(t){return Gu(t).replace(/%3B/gi,";")}function Yu(t){return Gu(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function qu(t){return decodeURIComponent(t)}function Zu(t){return qu(t.replace(/\+/g,"%20"))}function Qu(t){return`${Yu(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Yu(t)}=${Yu(e[t])}`).join("")}`;var e}const Xu=/^[^\/()?;=#]+/;function Ku(t){const e=t.match(Xu);return e?e[0]:""}const Ju=/^[^=?&#]+/,th=/^[^?&#]+/;class eh{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new $u([],{}):new $u([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[yu]=new $u(t,e)),n}parseSegment(){const t=Ku(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Lu(qu(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Ku(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Ku(this.remaining);t&&this.capture(n=t)}t[qu(e)]=qu(n)}parseQueryParam(t){const e=function(t){const e=t.match(Ju);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(th);return e?e[0]:""}(this.remaining);t&&this.capture(n=t)}const s=Zu(e),i=Zu(n);if(t.hasOwnProperty(s)){let e=t[s];Array.isArray(e)||(t[s]=e=[e]),e.push(i)}else t[s]=i}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Ku(this.remaining),s=this.remaining[n.length];if("/"!==s&&")"!==s&&";"!==s)throw new Error(`Cannot parse url '${this.url}'`);let i=void 0;n.indexOf(":")>-1?(i=n.substr(0,n.indexOf(":")),this.capture(i),this.capture(":")):t&&(i=yu);const r=this.parseChildren();e[i]=1===Object.keys(r).length?r[yu]:new $u([],r),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class nh{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=sh(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=sh(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=ih(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return ih(t,this._root).map(t=>t.value)}}function sh(t,e){if(t===e.value)return e;for(const n of e.children){const e=sh(t,n);if(e)return e}return null}function ih(t,e){if(t===e.value)return[e];for(const n of e.children){const s=ih(t,n);if(s.length)return s.unshift(e),s}return[]}class rh{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function oh(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class lh extends nh{constructor(t,e){super(t),this.snapshot=e,ph(this,t)}toString(){return this.snapshot.toString()}}function ah(t,e){const n=function(t,e){const n=new hh([],{},{},"",{},yu,e,null,t.root,-1,{});return new dh("",new rh(n,[]))}(t,e),s=new Kl([new Lu("",{})]),i=new Kl({}),r=new Kl({}),o=new Kl({}),l=new Kl(""),a=new ch(s,i,o,l,r,yu,e,n.root);return a.snapshot=n.root,new lh(new rh(a,[]),n)}class ch{constructor(t,e,n,s,i,r,o,l){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=i,this.outlet=r,this.component=o,this._futureSnapshot=l}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(F(t=>bu(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(F(t=>bu(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function uh(t,e="emptyOnly"){const n=t.pathFromRoot;let s=0;if("always"!==e)for(s=n.length-1;s>=1;){const t=n[s],e=n[s-1];if(t.routeConfig&&""===t.routeConfig.path)s--;else{if(e.component)break;s--}}return function(t){return t.reduce((t,e)=>({params:Object.assign({},t.params,e.params),data:Object.assign({},t.data,e.data),resolve:Object.assign({},t.resolve,e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(s))}class hh{constructor(t,e,n,s,i,r,o,l,a,c,u){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=i,this.outlet=r,this.component=o,this.routeConfig=l,this._urlSegment=a,this._lastPathIndex=c,this._resolve=u}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=bu(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=bu(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class dh extends nh{constructor(t,e){super(e),this.url=t,ph(this,e)}toString(){return fh(this._root)}}function ph(t,e){e.value._routerState=t,e.children.forEach(e=>ph(t,e))}function fh(t){const e=t.children.length>0?` { ${t.children.map(fh).join(", ")} } `:"";return`${t.value}${e}`}function gh(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Ru(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Ru(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nRu(t.parameters,s[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||mh(t.parent,e.parent))}function _h(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function vh(t,e,n,s,i){let r={};return s&&Mu(s,(t,e)=>{r[e]=Array.isArray(t)?t.map(t=>`${t}`):`${t}`}),new Vu(n.root===t?e:function t(e,n,s){const i={};return Mu(e.children,(e,r)=>{i[r]=e===n?s:t(e,n,s)}),new $u(e.segments,i)}(n.root,t,e),r,i)}class yh{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&_h(n[0]))throw new Error("Root segment cannot have matrix parameters");const s=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(s&&s!==Au(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class wh{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function bh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[yu]:`${t}`}function Ch(t,e,n){if(t||(t=new $u([],{})),0===t.segments.length&&t.hasChildren())return xh(t,e,n);const s=function(t,e,n){let s=0,i=e;const r={match:!1,pathIndex:0,commandIndex:0};for(;i=n.length)return r;const e=t.segments[i],o=bh(n[s]),l=s0&&void 0===o)break;if(o&&l&&"object"==typeof l&&void 0===l.outlets){if(!Th(o,l,e))return r;s+=2}else{if(!Th(o,{},e))return r;s++}i++}return{match:!0,pathIndex:i,commandIndex:s}}(t,e,n),i=n.slice(s.commandIndex);if(s.match&&s.pathIndex{null!==n&&(i[s]=Ch(t.children[s],e,n))}),Mu(t.children,(t,e)=>{void 0===s[e]&&(i[e]=t)}),new $u(t.segments,i)}}function Sh(t,e,n){const s=t.segments.slice(0,e);let i=0;for(;i{null!==t&&(e[n]=Sh(new $u([],{}),0,t))}),e}function kh(t){const e={};return Mu(t,(t,n)=>e[n]=`${t}`),e}function Th(t,e,n){return t==n.path&&Ru(e,n.parameters)}const Oh=(t,e,n)=>F(s=>(new Ih(e,s.targetRouterState,s.currentRouterState,n).activate(t),s));class Ih{constructor(t,e,n,s){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=s}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),gh(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const s=oh(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,s[e],n),delete s[e]}),Mu(s,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const s=t.value,i=e?e.value:null;if(s===i)if(s.component){const i=n.getContext(s.outlet);i&&this.deactivateChildRoutes(t,e,i.children)}else this.deactivateChildRoutes(t,e,n);else i&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),s=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:s})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const s=oh(t),i=t.value.component?n.children:e;Mu(s,(t,e)=>this.deactivateRouteAndItsChildren(t,i)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const s=oh(e);t.children.forEach(t=>{this.activateRoutes(t,s[t.value.outlet],n),this.forwardEvent(new mu(t.value.snapshot))}),t.children.length&&this.forwardEvent(new fu(t.value.snapshot))}activateRoutes(t,e,n){const s=t.value,i=e?e.value:null;if(gh(s),s===i)if(s.component){const i=n.getOrCreateContext(s.outlet);this.activateChildRoutes(t,e,i.children)}else this.activateChildRoutes(t,e,n);else if(s.component){const e=n.getOrCreateContext(s.outlet);if(this.routeReuseStrategy.shouldAttach(s.snapshot)){const t=this.routeReuseStrategy.retrieve(s.snapshot);this.routeReuseStrategy.store(s.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),Rh(t.route)}else{const n=function(t){for(let e=s.snapshot.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(),i=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=s,e.resolver=i,e.outlet&&e.outlet.activateWith(s,i),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Rh(t){gh(t.value),t.children.forEach(Rh)}function Ph(t){return"function"==typeof t}function Ah(t){return t instanceof Vu}class Mh{constructor(t){this.segmentGroup=t||null}}class Nh{constructor(t){this.urlTree=t}}function Dh(t){return new b(e=>e.error(new Mh(t)))}function Vh(t){return new b(e=>e.error(new Nh(t)))}function $h(t){return new b(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class Lh{constructor(t,e,n,s,i){this.configLoader=e,this.urlSerializer=n,this.urlTree=s,this.config=i,this.allowRedirects=!0,this.ngModule=t.get(tn)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,yu).pipe(F(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(Ca(t=>{if(t instanceof Nh)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof Mh)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,yu).pipe(F(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(Ca(t=>{if(t instanceof Mh)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const s=t.segments.length>0?new $u([],{[yu]:t}):t;return new Vu(s,e,n)}expandSegmentGroup(t,e,n,s){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(F(t=>new $u([],t))):this.expandSegment(t,n,e,n.segments,s,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Xl({});const n=[],s=[],i={};return Mu(t,(t,r)=>{const o=e(r,t).pipe(F(t=>i[r]=t));r===yu?n.push(o):s.push(o)}),Xl.apply(null,n.concat(s)).pipe(ra(),ba(),F(()=>i))}(n.children,(n,s)=>this.expandSegmentGroup(t,e,s,n))}expandSegment(t,e,n,s,i,r){return Xl(...n).pipe(F(o=>this.expandSegmentAgainstRoute(t,e,n,o,s,i,r).pipe(Ca(t=>{if(t instanceof Mh)return Xl(null);throw t}))),ra(),Oa(t=>!!t),Ca((t,n)=>{if(t instanceof ta||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,s,i))return Xl(new $u([],{}));throw new Mh(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,s,i,r,o){return Fh(s)!==r?Dh(e):void 0===s.redirectTo?this.matchSegmentAgainstRoute(t,e,s,i):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r):Dh(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r){return"**"===s.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,s,r):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,s){const i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Vh(i):this.lineralizeSegments(n,i).pipe(Y(n=>{const i=new $u(n,{});return this.expandSegment(t,i,e,n,s,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r){const{matched:o,consumedSegments:l,lastChild:a,positionalParamSegments:c}=jh(e,s,i);if(!o)return Dh(e);const u=this.applyRedirectCommands(l,s.redirectTo,c);return s.redirectTo.startsWith("/")?Vh(u):this.lineralizeSegments(s,u).pipe(Y(s=>this.expandSegment(t,e,n,s.concat(i.slice(a)),r,!1)))}matchSegmentAgainstRoute(t,e,n,s){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(F(t=>(n._loadedConfig=t,new $u(s,{})))):Xl(new $u(s,{}));const{matched:i,consumedSegments:r,lastChild:o}=jh(e,n,s);if(!i)return Dh(e);const l=s.slice(o);return this.getChildConfig(t,n,s).pipe(Y(t=>{const n=t.module,s=t.routes,{segmentGroup:i,slicedSegments:o}=function(t,e,n,s){return n.length>0&&function(t,e,n){return s.some(n=>zh(t,e,n)&&Fh(n)!==yu)}(t,n)?{segmentGroup:Uh(new $u(e,function(t,e){const n={};n[yu]=e;for(const s of t)""===s.path&&Fh(s)!==yu&&(n[Fh(s)]=new $u([],{}));return n}(s,new $u(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return s.some(n=>zh(t,e,n))}(t,n)?{segmentGroup:Uh(new $u(t.segments,function(t,e,n,s){const i={};for(const r of n)zh(t,e,r)&&!s[Fh(r)]&&(i[Fh(r)]=new $u([],{}));return Object.assign({},s,i)}(t,n,s,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,r,l,s);return 0===o.length&&i.hasChildren()?this.expandChildren(n,s,i).pipe(F(t=>new $u(r,t))):0===s.length&&0===o.length?Xl(new $u(r,{})):this.expandSegment(n,i,s,o,yu,!0).pipe(F(t=>new $u(r.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Xl(new Eu(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Xl(e._loadedConfig):function(t,e,n){const s=e.canLoad;return s&&0!==s.length?W(s).pipe(F(s=>{const i=t.get(s);let r;if(function(t){return t&&Ph(t.canLoad)}(i))r=i.canLoad(e,n);else{if(!Ph(i))throw new Error("Invalid CanLoad guard");r=i(e,n)}return Nu(r)})).pipe(ra(),(i=(t=>!0===t),t=>t.lift(new Ia(i,void 0,t)))):Xl(!0);var i}(t.injector,e,n).pipe(Y(n=>n?this.configLoader.load(t.injector,e).pipe(F(t=>(e._loadedConfig=t,t))):function(t){return new b(e=>e.error(xu(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Xl(new Eu([],t))}lineralizeSegments(t,e){let n=[],s=e.root;for(;;){if(n=n.concat(s.segments),0===s.numberOfChildren)return Xl(n);if(s.numberOfChildren>1||!s.children[yu])return $h(t.redirectTo);s=s.children[yu]}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,s){const i=this.createSegmentGroup(t,e.root,n,s);return new Vu(i,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return Mu(t,(t,s)=>{if("string"==typeof t&&t.startsWith(":")){const i=t.substring(1);n[s]=e[i]}else n[s]=t}),n}createSegmentGroup(t,e,n,s){const i=this.createSegments(t,e.segments,n,s);let r={};return Mu(e.children,(e,i)=>{r[i]=this.createSegmentGroup(t,e,n,s)}),new $u(i,r)}createSegments(t,e,n,s){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,s):this.findOrReturn(e,n))}findPosParam(t,e,n){const s=n[e.path.substring(1)];if(!s)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return s}findOrReturn(t,e){let n=0;for(const s of e){if(s.path===t.path)return e.splice(n),s;n++}return t}}function jh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const s=(e.matcher||Su)(n,t,e);return s?{matched:!0,consumedSegments:s.consumed,lastChild:s.consumed.length,positionalParamSegments:s.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Uh(t){if(1===t.numberOfChildren&&t.children[yu]){const e=t.children[yu];return new $u(t.segments.concat(e.segments),e.children)}return t}function zh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Fh(t){return t.outlet||yu}class Hh{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Bh{constructor(t,e){this.component=t,this.route=e}}function Gh(t,e,n){const s=t._root;return function t(e,n,s,i,r={canDeactivateChecks:[],canActivateChecks:[]}){const o=oh(n);return e.children.forEach(e=>{!function(e,n,s,i,r={canDeactivateChecks:[],canActivateChecks:[]}){const o=e.value,l=n?n.value:null,a=s?s.getContext(e.value.outlet):null;if(l&&o.routeConfig===l.routeConfig){const c=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!ju(t.url,e.url);case"pathParamsOrQueryParamsChange":return!ju(t.url,e.url)||!Ru(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!mh(t,e)||!Ru(t.queryParams,e.queryParams);case"paramsChange":default:return!mh(t,e)}}(l,o,o.routeConfig.runGuardsAndResolvers);if(c?r.canActivateChecks.push(new Hh(i)):(o.data=l.data,o._resolvedData=l._resolvedData),t(e,n,o.component?a?a.children:null:s,i,r),c){r.canDeactivateChecks.push(new Bh(a&&a.outlet&&a.outlet.component||null,l))}}else l&&Yh(n,a,r),r.canActivateChecks.push(new Hh(i)),t(e,null,o.component?a?a.children:null:s,i,r)}(e,o[e.value.outlet],s,i.concat([e.value]),r),delete o[e.value.outlet]}),Mu(o,(t,e)=>Yh(t,s.getContext(e),r)),r}(s,e?e._root:null,n,[s.value])}function Wh(t,e,n){const s=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(s?s.module.injector:n).get(t)}function Yh(t,e,n){const s=oh(t),i=t.value;Mu(s,(t,s)=>{Yh(t,i.component?e?e.children.getContext(s):null:e,n)}),n.canDeactivateChecks.push(new Bh(i.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,i))}const qh=Symbol("INITIAL_VALUE");function Zh(){return Pa(t=>(function(...t){let e=null,n=null;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&a(t[0])&&(t=t[0]),G(t,n).lift(new na(e))})(...t.map(t=>t.pipe(Ea(1),Da(qh)))).pipe(Va((t,e)=>{let n=!1;return e.reduce((t,s,i)=>{if(t!==qh)return t;if(s===qh&&(n=!0),!n){if(!1===s)return s;if(i===e.length-1||Ah(s))return s}return t},t)},qh),oa(t=>t!==qh),F(t=>Ah(t)?t:!0===t),Ea(1)))}function Qh(t,e){return null!==t&&e&&e(new gu(t)),Xl(!0)}function Xh(t,e){return null!==t&&e&&e(new pu(t)),Xl(!0)}function Kh(t,e,n){const s=e.routeConfig?e.routeConfig.canActivate:null;return s&&0!==s.length?Xl(s.map(s=>ia(()=>{const i=Wh(s,e,n);let r;if(function(t){return t&&Ph(t.canActivate)}(i))r=Nu(i.canActivate(e,t));else{if(!Ph(i))throw new Error("Invalid CanActivate guard");r=Nu(i(e,t))}return r.pipe(Oa())}))).pipe(Zh()):Xl(!0)}function Jh(t,e,n){const s=e[e.length-1],i=e.slice(0,e.length-1).reverse().map(t=>(function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null})(t)).filter(t=>null!==t).map(e=>ia(()=>Xl(e.guards.map(i=>{const r=Wh(i,e.node,n);let o;if(function(t){return t&&Ph(t.canActivateChild)}(r))o=Nu(r.canActivateChild(s,t));else{if(!Ph(r))throw new Error("Invalid CanActivateChild guard");o=Nu(r(s,t))}return o.pipe(Oa())})).pipe(Zh())));return Xl(i).pipe(Zh())}class td{}class ed{constructor(t,e,n,s,i,r){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=s,this.paramsInheritanceStrategy=i,this.relativeLinkResolution=r}recognize(){try{const e=id(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,n=this.processSegmentGroup(this.config,e,yu),s=new hh([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},yu,this.rootComponentType,null,this.urlTree.root,-1,{}),i=new rh(s,n),r=new dh(this.url,i);return this.inheritParamsAndData(r._root),Xl(r)}catch(t){return new b(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=uh(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Uu(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};n.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),s=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${s}'.`)}e[t.value.outlet]=t.value})}(),n.sort((t,e)=>t.value.outlet===yu?-1:e.value.outlet===yu?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,s){for(const r of t)try{return this.processSegmentAgainstRoute(r,e,n,s)}catch(i){if(!(i instanceof td))throw i}if(this.noLeftoversInUrl(e,n,s))return[];throw new td}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,s){if(t.redirectTo)throw new td;if((t.outlet||yu)!==s)throw new td;let i,r=[],o=[];if("**"===t.path){const r=n.length>0?Au(n).parameters:{};i=new hh(n,r,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,ld(t),s,t.component,t,nd(e),sd(e)+n.length,ad(t))}else{const l=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new td;return{consumedSegments:[],lastChild:0,parameters:{}}}const s=(e.matcher||Su)(n,t,e);if(!s)throw new td;const i={};Mu(s.posParams,(t,e)=>{i[e]=t.path});const r=s.consumed.length>0?Object.assign({},i,s.consumed[s.consumed.length-1].parameters):i;return{consumedSegments:s.consumed,lastChild:s.consumed.length,parameters:r}}(e,t,n);r=l.consumedSegments,o=n.slice(l.lastChild),i=new hh(r,l.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,ld(t),s,t.component,t,nd(e),sd(e)+r.length,ad(t))}const l=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:a,slicedSegments:c}=id(e,r,o,l,this.relativeLinkResolution);if(0===c.length&&a.hasChildren()){const t=this.processChildren(l,a);return[new rh(i,t)]}if(0===l.length&&0===c.length)return[new rh(i,[])];const u=this.processSegment(l,a,c,yu);return[new rh(i,u)]}}function nd(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function sd(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function id(t,e,n,s,i){if(n.length>0&&function(t,e,n){return s.some(n=>rd(t,e,n)&&od(n)!==yu)}(t,n)){const i=new $u(e,function(t,e,n,s){const i={};i[yu]=s,s._sourceSegment=t,s._segmentIndexShift=e.length;for(const r of n)if(""===r.path&&od(r)!==yu){const n=new $u([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,i[od(r)]=n}return i}(t,e,s,new $u(n,t.children)));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return s.some(n=>rd(t,e,n))}(t,n)){const r=new $u(t.segments,function(t,e,n,s,i,r){const o={};for(const l of s)if(rd(t,n,l)&&!i[od(l)]){const n=new $u([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===r?t.segments.length:e.length,o[od(l)]=n}return Object.assign({},i,o)}(t,e,n,s,t.children,i));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:n}}const r=new $u(t.segments,t.children);return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:n}}function rd(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function od(t){return t.outlet||yu}function ld(t){return t.data||{}}function ad(t){return t.resolve||{}}function cd(t,e,n,s){const i=Wh(t,e,s);return Nu(i.resolve?i.resolve(e,n):i(e,n))}function ud(t){return function(e){return e.pipe(Pa(e=>{const n=t(e);return n?W(n).pipe(F(()=>e)):W([e])}))}}class hd{}class dd{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const pd=new Rt("ROUTES");class fd{constructor(t,e,n,s){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=s}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(F(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const s=n.create(t);return new Eu(Pu(s.injector.get(pd)).map(Iu),s)}))}loadModuleFactory(t){return"string"==typeof t?W(this.loader.load(t)):Nu(t()).pipe(Y(t=>t instanceof en?Xl(t):W(this.compiler.compileModuleAsync(t))))}}class gd{}class md{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function _d(t){throw t}function vd(t,e,n){return e.parse("/")}function yd(t,e){return Xl(null)}class wd{constructor(t,e,n,s,i,r,o,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=s,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new T,this.errorHandler=_d,this.malformedUriErrorHandler=vd,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:yd,afterPreactivation:yd},this.urlHandlingStrategy=new md,this.routeReuseStrategy=new dd,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=i.get(tn),this.console=i.get($i);const a=i.get(Ji);this.isNgZoneEnabled=a instanceof Ji,this.resetConfig(l),this.currentUrlTree=new Vu(new $u([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new fd(r,o,t=>this.triggerEvent(new hu(t)),t=>this.triggerEvent(new du(t))),this.routerState=ah(this.currentUrlTree,this.rootComponentType),this.transitions=new Kl({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(oa(t=>0!==t.id),F(t=>Object.assign({},t,{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Pa(t=>{let n=!1,s=!1;return Xl(t).pipe(fa(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign({},this.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Pa(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Xl(t).pipe(Pa(t=>{const n=this.transitions.getValue();return e.next(new nu(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?ql:[t]}),Pa(t=>Promise.resolve(t)),function(t,e,n,s){return function(i){return i.pipe(Pa(i=>(function(t,e,n,s,r){return new Lh(t,e,n,i.extractedUrl,r).apply()})(t,e,n,0,s).pipe(F(t=>Object.assign({},i,{urlAfterRedirects:t})))))}}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),fa(t=>{this.currentNavigation=Object.assign({},this.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,e,n,s,i){return function(r){return r.pipe(Y(r=>(function(t,e,n,s,i="emptyOnly",r="legacy"){return new ed(t,e,n,s,i,r).recognize()})(t,e,r.urlAfterRedirects,n(r.urlAfterRedirects),s,i).pipe(F(t=>Object.assign({},r,{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),fa(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),fa(t=>{const n=new ou(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:s,source:i,restoredState:r,extras:o}=t,l=new nu(n,this.serializeUrl(s),i,r);e.next(l);const a=ah(s,this.rootComponentType).snapshot;return Xl(Object.assign({},t,{targetSnapshot:a,urlAfterRedirects:s,extras:Object.assign({},o,{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),ql}),ud(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:i,extras:{skipLocationChange:r,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:i,skipLocationChange:!!r,replaceUrl:!!o})}),fa(t=>{const e=new lu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),F(t=>Object.assign({},t,{guards:Gh(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,currentSnapshot:i,guards:{canActivateChecks:r,canDeactivateChecks:o}}=n;return 0===o.length&&0===r.length?Xl(Object.assign({},n,{guardsResult:!0})):function(t,e,n,s){return W(o).pipe(Y(t=>(function(t,e,n,s,i){const r=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return r&&0!==r.length?Xl(r.map(r=>{const o=Wh(r,e,i);let l;if(function(t){return t&&Ph(t.canDeactivate)}(o))l=Nu(o.canDeactivate(t,e,n,s));else{if(!Ph(o))throw new Error("Invalid CanDeactivate guard");l=Nu(o(t,e,n,s))}return l.pipe(Oa())})).pipe(Zh()):Xl(!0)})(t.component,t.route,n,e,s)),Oa(t=>!0!==t,!0))}(0,s,i,t).pipe(Y(n=>n&&function(t){return"boolean"==typeof n}()?function(t,e,n,s){return W(r).pipe(ja(e=>W([Xh(e.route.parent,s),Qh(e.route,s),Jh(t,e.path,n),Kh(t,e.route,n)]).pipe(ra(),Oa(t=>!0!==t,!0))),Oa(t=>!0!==t,!0))}(s,0,t,e):Xl(n)),F(t=>Object.assign({},n,{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),fa(t=>{if(Ah(t.guardsResult)){const e=xu(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),fa(t=>{const e=new au(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),oa(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new iu(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),ud(t=>{if(t.guards.canActivateChecks.length)return Xl(t).pipe(fa(t=>{const e=new cu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,guards:{canActivateChecks:i}}=n;return i.length?W(i).pipe(ja(n=>(function(t,e,n,i){return function(t,e,n,s){const i=Object.keys(t);if(0===i.length)return Xl({});if(1===i.length){const r=i[0];return cd(t[r],e,n,s).pipe(F(t=>({[r]:t})))}const r={};return W(i).pipe(Y(i=>cd(t[i],e,n,s).pipe(F(t=>(r[i]=t,t))))).pipe(ba(),F(()=>r))}(t._resolve,t,s,i).pipe(F(e=>(t._resolvedData=e,t.data=Object.assign({},t.data,uh(t,n).resolve),null)))})(n.route,0,t,e)),function(t,e){return arguments.length>=2?function(e){return y(Va(t,void 0),ha(1),va(void 0))(e)}:function(e){return y(Va((e,n,s)=>t(e)),ha(1))(e)}}((t,e)=>t),F(t=>n)):Xl(n)}))}}(this.paramsInheritanceStrategy,this.ngModule.injector),fa(t=>{const e=new uu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}))}),ud(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:i,extras:{skipLocationChange:r,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:i,skipLocationChange:!!r,replaceUrl:!!o})}),F(t=>{const e=function(t,e,n){const s=function t(e,n,s){if(s&&e.shouldReuseRoute(n.value,s.value.snapshot)){const i=s.value;i._futureSnapshot=n.value;const r=function(e,n,s){return n.children.map(n=>{for(const i of s.children)if(e.shouldReuseRoute(i.value.snapshot,n.value))return t(e,n,i);return t(e,n)})}(e,n,s);return new rh(i,r)}{const s=e.retrieve(n.value);if(s){const t=s.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let s=0;st(e,n));return new rh(s,r)}}var i}(t,e._root,n?n._root:void 0);return new lh(s,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign({},t,{targetRouterState:e})}),fa(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),Oh(this.rootContexts,this.routeReuseStrategy,t=>this.triggerEvent(t)),fa({next(){n=!0},complete(){n=!0}}),function(t){return e=>e.lift(new Ua(t))}(()=>{if(!n&&!s){this.resetUrlToCurrentUrlTree();const n=new iu(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null}),Ca(n=>{if(s=!0,function(t){return n&&n[Cu]}()){const s=Ah(n.url);s||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const i=new iu(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(i),t.resolve(!1),s&&this.navigateByUrl(n.url)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const s=new ru(t.id,this.serializeUrl(t.extractedUrl),n);e.next(s);try{t.resolve(this.errorHandler(n))}catch(i){t.reject(i)}}return ql}))}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign({},this.getTransition(),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",s=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,s,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){ku(t),this.config=t.map(Iu),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:s,fragment:i,preserveQueryParams:r,queryParamsHandling:o,preserveFragment:l}=e;le()&&r&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const a=n||this.routerState.root,c=l?this.currentUrlTree.fragment:i;let u=null;if(o)switch(o){case"merge":u=Object.assign({},this.currentUrlTree.queryParams,s);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=s||null}else u=r?this.currentUrlTree.queryParams:s||null;return null!==u&&(u=this.removeEmptyProps(u)),function(t,e,n,s,i){if(0===n.length)return vh(e.root,e.root,e,s,i);const r=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new yh(!0,0,t);let e=0,n=!1;const s=t.reduce((t,s,i)=>{if("object"==typeof s&&null!=s){if(s.outlets){const e={};return Mu(s.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(s.segmentPath)return[...t,s.segmentPath]}return"string"!=typeof s?[...t,s]:0===i?(s.split("/").forEach((s,i)=>{0==i&&"."===s||(0==i&&""===s?n=!0:".."===s?e++:""!=s&&t.push(s))}),t):[...t,s]},[]);return new yh(n,e,s)}(n);if(r.toRoot())return vh(e.root,new $u([],{}),e,s,i);const o=function(t,n,s){if(t.isAbsolute)return new wh(e.root,!0,0);if(-1===s.snapshot._lastPathIndex)return new wh(s.snapshot._urlSegment,!0,0);const i=_h(t.commands[0])?0:1;return function(e,n,r){let o=s.snapshot._urlSegment,l=s.snapshot._lastPathIndex+i,a=t.numberOfDoubleDots;for(;a>l;){if(a-=l,!(o=o.parent))throw new Error("Invalid number of '../'");l=o.segments.length}return new wh(o,!1,l-a)}()}(r,0,t),l=o.processChildren?xh(o.segmentGroup,o.index,r.commands):Ch(o.segmentGroup,o.index,r.commands);return vh(o.segmentGroup,l,e,s,i)}(a,this.currentUrlTree,t,u,c)}navigateByUrl(t,e={skipLocationChange:!1}){le()&&this.isNgZoneEnabled&&!Ji.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=Ah(t)?t:this.parseUrl(t),s=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(s,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const s=t[n];return null!=s&&(e[n]=s),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new su(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,s){const i=this.getTransition();if(i&&"imperative"!==e&&"imperative"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(i&&"hashchange"==e&&"popstate"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(i&&"popstate"==e&&"hashchange"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);let r=null,o=null;const l=new Promise((t,e)=>{r=t,o=e}),a=++this.navigationId;return this.setTransition({id:a,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:s,resolve:r,reject:o,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,s){const i=this.urlSerializer.serialize(t);s=s||{},this.location.isCurrentPathEqualTo(i)||e?this.location.replaceState(i,"",Object.assign({},s,{navigationId:n})):this.location.go(i,"",Object.assign({},s,{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}class bd{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new Cd,this.attachRef=null}}class Cd{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new bd,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}const xd=(()=>(class{constructor(t,e,n,s,i){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=i,this.activated=null,this._activatedRoute=null,this.activateEvents=new ki,this.deactivateEvents=new ki,this.name=s||yu,t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),s=this.parentContexts.getOrCreateContext(this.name).children,i=new Sd(t,s,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,i),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}))();class Sd{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===ch?this.route:t===Cd?this.childContexts:this.parent.get(t,e)}}class Ed{}class kd{preload(t,e){return e().pipe(Ca(()=>Xl(null)))}}class Td{preload(t,e){return Xl(null)}}const Od=(()=>(class{constructor(t,e,n,s,i){this.router=t,this.injector=s,this.preloadingStrategy=i,this.loader=new fd(e,n,e=>t.triggerEvent(new hu(e)),e=>t.triggerEvent(new du(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(oa(t=>t instanceof su),ja(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(tn);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const s of e)if(s.loadChildren&&!s.canLoad&&s._loadedConfig){const t=s._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else s.loadChildren&&!s.canLoad?n.push(this.preloadConfig(t,s)):s.children&&n.push(this.processRoutes(t,s.children));return W(n).pipe(X(),F(t=>void 0))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Y(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}))();class Id{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof nu?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof su&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof _u&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new _u(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}const Rd=new Rt("ROUTER_CONFIGURATION"),Pd=new Rt("ROUTER_FORROOT_GUARD"),Ad=[vl,{provide:zu,useClass:Fu},{provide:wd,useFactory:jd,deps:[vr,zu,Cd,vl,Dt,Oi,Hi,pd,Rd,[gd,new ht],[hd,new ht]]},Cd,{provide:ch,useFactory:Ud,deps:[wd]},{provide:Oi,useClass:Cr},Od,Td,kd,{provide:Rd,useValue:{enableTracing:!1}}];function Md(){return new pr("Router",wd)}const Nd=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[Ad,Ld(e),{provide:Pd,useFactory:$d,deps:[[wd,new ht,new pt]]},{provide:Rd,useValue:n||{}},{provide:ml,useFactory:Vd,deps:[fl,[new ut(_l),new ht],Rd]},{provide:Id,useFactory:Dd,deps:[wd,Wl,Rd]},{provide:Ed,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:Td},{provide:pr,multi:!0,useFactory:Md},[zd,{provide:Ii,multi:!0,useFactory:Fd,deps:[zd]},{provide:Bd,useFactory:Hd,deps:[zd]},{provide:Vi,multi:!0,useExisting:Bd}]]}}static forChild(e){return{ngModule:t,providers:[Ld(e)]}}}return t})();function Dd(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Id(t,e,n)}function Vd(t,e,n={}){return n.useHash?new wl(t,e):new bl(t,e)}function $d(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function Ld(t){return[{provide:Kt,multi:!0,useValue:t},{provide:pd,multi:!0,useValue:t}]}function jd(t,e,n,s,i,r,o,l,a={},c,u){const h=new wd(null,e,n,s,i,r,o,Pu(l));if(c&&(h.urlHandlingStrategy=c),u&&(h.routeReuseStrategy=u),a.errorHandler&&(h.errorHandler=a.errorHandler),a.malformedUriErrorHandler&&(h.malformedUriErrorHandler=a.malformedUriErrorHandler),a.enableTracing){const t=Ha();h.events.subscribe(e=>{t.logGroup(`Router Event: ${e.constructor.name}`),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return a.onSameUrlNavigation&&(h.onSameUrlNavigation=a.onSameUrlNavigation),a.paramsInheritanceStrategy&&(h.paramsInheritanceStrategy=a.paramsInheritanceStrategy),a.urlUpdateStrategy&&(h.urlUpdateStrategy=a.urlUpdateStrategy),a.relativeLinkResolution&&(h.relativeLinkResolution=a.relativeLinkResolution),h}function Ud(t){return t.routerState.root}const zd=(()=>(class{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new T}appInitializer(){return this.injector.get(gl,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(wd),s=this.injector.get(Rd);if(this.isLegacyDisabled(s)||this.isLegacyEnabled(s))t(!0);else if("disabled"===s.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==s.initialNavigation)throw new Error(`Invalid initialNavigation options: '${s.initialNavigation}'`);n.hooks.afterPreactivation=(()=>this.initNavigation?Xl(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone)),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(Rd),n=this.injector.get(Od),s=this.injector.get(Id),i=this.injector.get(wd),r=this.injector.get(vr);t===r.components[0]&&(this.isLegacyEnabled(e)?i.initialNavigation():this.isLegacyDisabled(e)&&i.setUpLocationChangeListener(),n.setUpPreloading(),s.init(),i.resetRootComponentType(r.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}))();function Fd(t){return t.appInitializer.bind(t)}function Hd(t){return t.bootstrapListener.bind(t)}const Bd=new Rt("Router Initializer");var Gd=Xn({encapsulation:2,styles:[],data:{}});function Wd(t){return to(0,[(t()(),Lr(0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),ai(1,212992,null,0,xd,[Cd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,1,0)},null)}function Yd(t){return to(0,[(t()(),Lr(0,0,null,null,1,"ng-component",[],null,null,null,Wd,Gd)),ai(1,49152,null,0,vu,[],null,null)],null,null)}var qd=Ls("ng-component",vu,Yd,{},{},[]);const Zd="Dropdowns",Qd=(()=>(class{constructor(){this.klass="default",this.items=[],this.placeholder="Select item",this.searchChange=new ki,this.font_size=16,this.width=128,this.filtered_items=[]}ngOnChanges(t){t.items&&(this.list=this.items.map(t=>t instanceof Object?t:{id:t,name:t}),this.longest=this.list.reduce((t,e)=>e.name.length>t.name.length?e:t,{id:"",name:""}),this.filter())}ngAfterViewInit(){this.resize()}trackByFn(t,e){return e?"string"==typeof e?e:e.id:t}resize(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)}filter(){if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(t=>("string"==typeof t?t:t.name).toLowerCase().indexOf(this.search.toLowerCase())>=0)),this.options&&this.options.hide_active&&this.selected)){const t="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(e=>("string"==typeof e?e:e.id).indexOf(t)<0)}}toggleShow(){this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(()=>{this.input&&this.input.nativeElement.focus()},100)}updateScroll(){if(!this.viewport||!this.scroll_el)return setTimeout(()=>this.updateScroll(),50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;const t="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(e=>("string"==typeof e?e:e.id)===t))}select(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)}change(t){const e="string"==typeof this.selected?this.selected:this.selected.id,n=this.filtered_items.findIndex(t=>("string"==typeof t?t:t.id)==e)+t;n>=0&&nthis.updateScroll(),100))}close(){this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null),this.close_timer=setTimeout(()=>this.show=!1,100)}cancelClose(){setTimeout(()=>{this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null)},50)}writeValue(t){this.selected=t,this.show=!1}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Xd=hl,Kd=(()=>{class t{constructor(){if(this.build=Xd(),!t.init){const e=Xd();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Zd} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Zd} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();function Jd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function tp(t){return Array.isArray(t)?t:[t]}function ep(t){return null==t?"":"string"==typeof t?t:`${t}px`}function np(t,e,n,i){return s(n)&&(i=n,n=void 0),i?np(t,e,n).pipe(F(t=>a(t)?i(...t):i(t))):new b(s=>{!function t(e,n,s,i,r){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,s,r),o=(()=>t.removeEventListener(n,s,r))}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,s),o=(()=>t.off(n,s))}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,s),o=(()=>t.removeListener(n,s))}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,l=e.length;o1?Array.prototype.slice.call(arguments):t)},s,n)})}class sp extends d{constructor(t,e){super()}schedule(t,e=0){return this}}class ip extends sp{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,s=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(s,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(s,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,s=void 0;try{this.work(t)}catch(i){n=!0,s=!!i&&i||new Error(i)}if(n)return this.unsubscribe(),s}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,s=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==s&&n.splice(s,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}class rp extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}const op=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=(()=>Date.now()),t})();class lp extends op{constructor(t,e=op.now){super(t,()=>lp.delegate&&lp.delegate!==this?lp.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return lp.delegate&&lp.delegate!==this?lp.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let 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}}}class ap extends lp{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,i=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s(function(t){const e=hp[t];e&&e()})(e)),e},clearImmediate(t){delete hp[t]}};class pp extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=dp.setImmediate(t.flush.bind(t,null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(dp.clearImmediate(e),t.scheduled=void 0)}}class fp extends lp{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,i=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s=0}function Cp(t){const{index:e,period:n,subscriber:s}=t;if(s.next(e),!s.closed){if(-1===n)return s.complete();t.index=e+1,this.schedule(t,n)}}function xp(t,e=vp){return n=(()=>(function(t=0,e,n){let s=-1;return bp(e)?s=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=vp),new b(e=>{const i=bp(t)?t:+t-n.now();return n.schedule(Cp,i,{index:0,period:s,subscriber:e})})})(t,e)),function(t){return t.lift(new yp(n))};var n}function Sp(t){return e=>e.lift(new Ep(t))}class Ep{constructor(t){this.notifier=t}call(t,e){const n=new kp(t),s=U(n,this.notifier);return s&&!n.seenValue?(n.add(s),e.subscribe(n)):n}}class kp extends z{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,s,i){this.seenValue=!0,this.complete()}notifyComplete(){}}class Tp{call(t,e){return e.subscribe(new Op(t))}}class Op extends g{constructor(t){super(t),this.hasPrev=!1}_next(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t}}class Ip extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}class Rp extends lp{}const Pp=new Rp(Ip);function Ap(t,e){return new b(e?n=>e.schedule(Mp,0,{error:t,subscriber:n}):e=>e.error(t))}function Mp({error:t,subscriber:e}){e.error(t)}var Np;!function(t){t.NEXT="N",t.ERROR="E",t.COMPLETE="C"}(Np||(Np={}));const Dp=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(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()}}do(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()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Xl(this.value);case"E":return Ap(this.error);case"C":return Zl()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})();class Vp extends g{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(Vp.dispatch,this.delay,new $p(t,this.destination)))}_next(t){this.scheduleMessage(Dp.createNext(t))}_error(t){this.scheduleMessage(Dp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(Dp.createComplete()),this.unsubscribe()}}class $p{constructor(t,e){this.notification=t,this.destination=e}}class Lp extends T{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift(),super.next(t)}nextTimeWindow(t){this._events.push(new jp(this._getNow(),t)),this._trimBufferThenGetEvents(),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),s=this.scheduler,i=n.length;let r;if(this.closed)throw new S;if(this.isStopped||this.hasError?r=d.EMPTY:(this.observers.push(t),r=new E(this,t)),s&&t.add(t=new Vp(t,s)),e)for(let o=0;oe&&(r=Math.max(r,i-e)),r>0&&s.splice(0,r),s}}class jp{constructor(t,e){this.time=t,this.value=e}}let Up;try{Up="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Lv){Up=!1}const zp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Gl(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&&!Up)&&"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.ngInjectableDef=mt({factory:function(){return new t(Ot(Di,8))},token:t,providedIn:"root"}),t})(),Fp=(()=>(class{}))(),Hp=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();let Bp;function Gp(){if("object"!=typeof document||!document)return Hp.NORMAL;if(!Bp){const 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";const n=document.createElement("div"),s=n.style;s.width="2px",s.height="1px",t.appendChild(n),document.body.appendChild(t),Bp=Hp.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Bp=0===t.scrollLeft?Hp.NEGATED:Hp.INVERTED),t.parentNode.removeChild(t)}return Bp}class Wp{}class Yp extends Wp{constructor(t){super(),this._data=t}connect(){return this._data instanceof b?this._data:Xl(this._data)}disconnect(){}}const qp=new Rt("VIRTUAL_SCROLL_STRATEGY");class Zp{constructor(t,e,n){this._scrolledIndexChange=new T,this.scrolledIndexChange=this._scrolledIndexChange.pipe(t=>t.lift(new mp(void 0,void 0))),this._viewport=null,this._itemSize=t,this._minBufferPx=e,this._maxBufferPx=n}attach(t){this._viewport=t,this._updateTotalContentSize(),this._updateRenderedRange()}detach(){this._scrolledIndexChange.complete(),this._viewport=null}updateItemAndBufferSize(t,e,n){if(n0&&(s.end=Math.min(r,s.end+t),s.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(s),this._viewport.setRenderedContentOffset(this._itemSize*s.start),this._scrolledIndexChange.next(Math.floor(e))}}function Qp(t){return t._scrollStrategy}const Xp=(()=>(class{constructor(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Zp(this.itemSize,this.minBufferPx,this.maxBufferPx)}get itemSize(){return this._itemSize}set itemSize(t){this._itemSize=Jd(t)}get minBufferPx(){return this._minBufferPx}set minBufferPx(t){this._minBufferPx=Jd(t)}get maxBufferPx(){return this._maxBufferPx}set maxBufferPx(t){this._maxBufferPx=Jd(t)}ngOnChanges(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}}))(),Kp=20,Jp=(()=>{class t{constructor(t,e){this._ngZone=t,this._platform=e,this._scrolled=new T,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=Kp){return this._platform.isBrowser?new b(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(xp(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Xl()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(oa(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,s)=>{this._scrollableContainsElement(s,t)&&e.push(s)}),e}_scrollableContainsElement(t,e){let n=e.nativeElement,s=t.getElementRef().nativeElement;do{if(n==s)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>np(window.document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Ji),Ot(zp))},token:t,providedIn:"root"}),t})(),tf=(()=>(class{constructor(t,e,n,s){this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=s,this._destroyed=new T,this._elementScrolled=new b(t=>this.ngZone.runOutsideAngular(()=>np(this.elementRef.nativeElement,"scroll").pipe(Sp(this._destroyed)).subscribe(t)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(t){const e=this.elementRef.nativeElement,n=this.dir&&"rtl"==this.dir.value;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Gp()!=Hp.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Gp()==Hp.INVERTED?t.left=t.right:Gp()==Hp.NEGATED&&(t.left=t.right?-t.right:t.right)):null!=t.right&&(t.left=e.scrollWidth-e.clientWidth-t.right),this._applyScrollToOptions(t)}_applyScrollToOptions(t){const e=this.elementRef.nativeElement;"object"==typeof document&&"scrollBehavior"in document.documentElement.style?e.scrollTo(t):(null!=t.top&&(e.scrollTop=t.top),null!=t.left&&(e.scrollLeft=t.left))}measureScrollOffset(t){const e=this.elementRef.nativeElement;if("top"==t)return e.scrollTop;if("bottom"==t)return e.scrollHeight-e.clientHeight-e.scrollTop;const n=this.dir&&"rtl"==this.dir.value;return"start"==t?t=n?"right":"left":"end"==t&&(t=n?"left":"right"),n&&Gp()==Hp.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Gp()==Hp.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft}}))(),ef="undefined"!=typeof requestAnimationFrame?cp:gp,nf=(()=>(class extends tf{constructor(t,e,n,s,i,r){if(super(t,r,n,i),this.elementRef=t,this._changeDetectorRef=e,this._scrollStrategy=s,this._detachedSubject=new T,this._renderedRangeSubject=new T,this.orientation="vertical",this.scrolledIndexChange=new b(t=>this._scrollStrategy.scrolledIndexChange.subscribe(e=>Promise.resolve().then(()=>this.ngZone.run(()=>t.next(e))))),this.renderedRangeStream=this._renderedRangeSubject.asObservable(),this._totalContentSizeTransform="",this._totalContentSize=0,this._renderedRange={start:0,end:0},this._dataLength=0,this._viewportSize=0,this._renderedContentOffset=0,this._renderedContentOffsetNeedsRewrite=!1,this._isChangeDetectionPending=!1,this._runAfterChangeDetection=[],!s)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.')}ngOnInit(){super.ngOnInit(),this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._measureViewportSize(),this._scrollStrategy.attach(this),this.elementScrolled().pipe(Da(null),xp(0,ef)).subscribe(()=>this._scrollStrategy.onContentScrolled()),this._markChangeDetectionNeeded()}))}ngOnDestroy(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),super.ngOnDestroy()}attach(t){if(this._forOf)throw Error("CdkVirtualScrollViewport is already attached.");this.ngZone.runOutsideAngular(()=>{this._forOf=t,this._forOf.dataStream.pipe(Sp(this._detachedSubject)).subscribe(t=>{const e=t.length;e!==this._dataLength&&(this._dataLength=e,this._scrollStrategy.onDataLengthChanged()),this._doChangeDetection()})})}detach(){this._forOf=null,this._detachedSubject.next()}getDataLength(){return this._dataLength}getViewportSize(){return this._viewportSize}getRenderedRange(){return this._renderedRange}setTotalContentSize(t){this._totalContentSize!==t&&(this._totalContentSize=t,this._totalContentSizeTransform=`scale${"horizontal"==this.orientation?"X":"Y"}(${this._totalContentSize})`,this._markChangeDetectionNeeded())}setRenderedRange(t){var e,n;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(()=>this._scrollStrategy.onContentRendered()))}getOffsetToRenderedContentStart(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}setRenderedContentOffset(t,e="to-start"){const n="horizontal"==this.orientation,s=n?"X":"Y";let i=`translate${s}(${Number((n&&this.dir&&"rtl"==this.dir.value?-1:1)*t)}px)`;this._renderedContentOffset=t,"to-end"===e&&(i+=` translate${s}(-100%)`,this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,this._markChangeDetectionNeeded(()=>{this._renderedContentOffsetNeedsRewrite?(this._renderedContentOffset-=this.measureRenderedContentSize(),this._renderedContentOffsetNeedsRewrite=!1,this.setRenderedContentOffset(this._renderedContentOffset)):this._scrollStrategy.onRenderedOffsetChanged()}))}scrollToOffset(t,e="auto"){const n={behavior:e};"horizontal"===this.orientation?n.start=t:n.top=t,this.scrollTo(n)}scrollToIndex(t,e="auto"){this._scrollStrategy.scrollToIndex(t,e)}measureScrollOffset(t){return super.measureScrollOffset(t||("horizontal"===this.orientation?"start":"top"))}measureRenderedContentSize(){const t=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?t.offsetWidth:t.offsetHeight}measureRangeSize(t){return this._forOf?this._forOf.measureRangeSize(t,this.orientation):0}checkViewportSize(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}_measureViewportSize(){const t=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?t.clientWidth:t.clientHeight}_markChangeDetectionNeeded(t){t&&this._runAfterChangeDetection.push(t),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._doChangeDetection()})))}_doChangeDetection(){this._isChangeDetectionPending=!1,this.ngZone.run(()=>this._changeDetectorRef.markForCheck()),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;const t=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(const e of t)e()}}))();function sf(t,e){if(!e.getBoundingClientRect)return 0;const n=e.getBoundingClientRect();return"horizontal"==t?n.width:n.height}const rf=(()=>(class{constructor(t,e,n,s,i){this._viewContainerRef=t,this._template=e,this._differs=n,this._viewport=s,this.viewChange=new T,this._dataSourceChanges=new T,this.cdkVirtualForTemplateCacheSize=20,this.dataStream=this._dataSourceChanges.pipe(Da(null),t=>t.lift(new Tp),Pa(([t,e])=>this._changeDataSource(t,e)),function(t,e,n){let s;return s={bufferSize:1,windowTime:void 0,refCount:!1,scheduler:void 0},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:s}){let i,r,o=0,l=!1,a=!1;return function(c){o++,i&&!l||(l=!1,i=new Lp(t,e,s),r=c.subscribe({next(t){i.next(t)},error(t){l=!0,i.error(t)},complete(){a=!0,i.complete()}}));const u=i.subscribe(this);this.add(()=>{o--,u.unsubscribe(),r&&!a&&n&&0===o&&(r.unsubscribe(),r=void 0,i=void 0)})}}(s))}()),this._differ=null,this._templateCache=[],this._needsUpdate=!1,this._destroyed=new T,this.dataStream.subscribe(t=>{this._data=t,this._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe(Sp(this._destroyed)).subscribe(t=>{this._renderedRange=t,i.run(()=>this.viewChange.next(this._renderedRange)),this._onRenderedDataChange()}),this._viewport.attach(this)}get cdkVirtualForOf(){return this._cdkVirtualForOf}set cdkVirtualForOf(t){this._cdkVirtualForOf=t;const e=function(t){return t&&"function"==typeof t.connect}(t)?t:new Yp(t instanceof b?t:Array.prototype.slice.call(t||[]));this._dataSourceChanges.next(e)}get cdkVirtualForTrackBy(){return this._cdkVirtualForTrackBy}set cdkVirtualForTrackBy(t){this._needsUpdate=!0,this._cdkVirtualForTrackBy=t?(e,n)=>t(e+(this._renderedRange?this._renderedRange.start:0),n):void 0}set cdkVirtualForTemplate(t){t&&(this._needsUpdate=!0,this._template=t)}measureRangeSize(t,e){if(t.start>=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");const n=t.start-this._renderedRange.start;let s=0,i=t.end-t.start;for(;i--;){const t=this._viewContainerRef.get(i+n);let r=t?t.rootNodes.length:0;for(;r--;)s+=sf(e,t.rootNodes[r])}return s}ngDoCheck(){if(this._differ&&this._needsUpdate){const t=this._differ.diff(this._renderedItems);t?this._applyChanges(t):this._updateContext(),this._needsUpdate=!1}}ngOnDestroy(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(let t of this._templateCache)t.destroy()}_onRenderedDataChange(){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)}_changeDataSource(t,e){return t&&t.disconnect(this),this._needsUpdate=!0,e?e.connect(this):Xl()}_updateContext(){const t=this._data.length;let e=this._viewContainerRef.length;for(;e--;){let n=this._viewContainerRef.get(e);n.context.index=this._renderedRange.start+e,n.context.count=t,this._updateComputedContextProperties(n.context),n.detectChanges()}}_applyChanges(t){t.forEachOperation((t,e,n)=>{if(null==t.previousIndex)this._insertViewForNewItem(n).context.$implicit=t.item;else if(null==n)this._cacheView(this._detachView(e));else{const s=this._viewContainerRef.get(e);this._viewContainerRef.move(s,n),s.context.$implicit=t.item}}),t.forEachIdentityChange(t=>{this._viewContainerRef.get(t.currentIndex).context.$implicit=t.item});const e=this._data.length;let n=this._viewContainerRef.length;for(;n--;){const t=this._viewContainerRef.get(n);t.context.index=this._renderedRange.start+n,t.context.count=e,this._updateComputedContextProperties(t.context)}}_cacheView(t){if(this._templateCache.length(class{}))(),lf=20,af=(()=>{class t{constructor(t,e){this._platform=t,e.runOutsideAngular(()=>{this._change=t.isBrowser?K(np(window,"resize"),np(window,"orientationchange")):Xl(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=document.documentElement,e=t.getBoundingClientRect();return{top:-e.top||document.body.scrollTop||window.scrollY||t.scrollTop||0,left:-e.left||document.body.scrollLeft||window.scrollX||t.scrollLeft||0}}change(t=lf){return t>0?this._change.pipe(xp(t)):this._change}_updateViewportSize(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zp),Ot(Ji))},token:t,providedIn:"root"}),t})();function cf(){throw Error("Host already has a portal attached")}class uf{attach(t){return null==t&&function(){throw Error("Attempting to attach a portal to a null PortalOutlet")}(),t.hasAttached()&&cf(),this._attachedHost=t,t.attach(this)}detach(){let 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())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class hf extends uf{constructor(t,e,n,s){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=s}}class df extends uf{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class pf{constructor(){this._isDisposed=!1}hasAttached(){return!!this._attachedPortal}attach(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&cf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof hf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof df?(this._attachedPortal=t,this.attachTemplatePortal(t)):void function(){throw Error("Attempting to attach an unknown Portal type. BasePortalOutlet accepts either a ComponentPortal or a TemplatePortal.")}()}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class ff extends pf{constructor(t,e,n,s){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=s}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.detectChanges(),n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}const gf=(()=>(class{}))();class mf{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=ep(-this._previousScrollPosition.left),t.style.top=ep(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,s=e.scrollBehavior||"",i=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=s,n.scrollBehavior=i}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}function _f(){return Error("Scroll strategy has already been attached.")}class vf{constructor(t,e,n,s){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=s,this._scrollSubscription=null,this._detach=(()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())})}attach(t){if(this._overlayRef)throw _f();this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class yf{enable(){}disable(){}attach(){}}function wf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function bf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class Cf{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=s,this._scrollSubscription=null}attach(t){if(this._overlayRef)throw _f();this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();wf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}const xf=(()=>{class t{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=(()=>new yf),this.close=(t=>new vf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t)),this.block=(()=>new mf(this._viewportRuler,this._document)),this.reposition=(t=>new Cf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t)),this._document=s}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Jp),Ot(af),Ot(Ji),Ot(Hl))},token:t,providedIn:"root"}),t})();class Sf{constructor(t){this.scrollStrategy=new yf,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(e=>{void 0!==t[e]&&(this[e]=t[e])})}}class Ef{constructor(t,e,n,s,i){this.offsetX=n,this.offsetY=s,this.panelClass=i,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}const kf=(()=>(class{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}))();function Tf(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "top", "bottom" or "center".')}function Of(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "start", "end" or "center".')}const If=(()=>{class t{constructor(t){this._attachedOverlays=[],this._keydownListener=(t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEventSubscriptions>0){e[n]._keydownEvents.next(t);break}}),this._document=t}ngOnDestroy(){this._detach()}add(t){this.remove(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this._detach()}_detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Hl))},token:t,providedIn:"root"}),t})(),Rf=(()=>{class t{constructor(t){this._document=t}ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Hl))},token:t,providedIn:"root"}),t})();class Pf{constructor(t,e,n,s,i,r,o,l){this._portalOutlet=t,this._host=e,this._pane=n,this._config=s,this._ngZone=i,this._keyboardDispatcher=r,this._document=o,this._location=l,this._backdropElement=null,this._backdropClick=new T,this._attachments=new T,this._detachments=new T,this._locationChanges=d.EMPTY,this._keydownEventsObservable=new b(t=>{const e=this._keydownEvents.subscribe(t);return this._keydownEventSubscriptions++,()=>{e.unsubscribe(),this._keydownEventSubscriptions--}}),this._keydownEvents=new T,this._keydownEventSubscriptions=0,s.scrollStrategy&&(this._scrollStrategy=s.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=s.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return this._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Ea(1)).subscribe(()=>{this.hasAttached()&&this.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(()=>this.dispose())),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),t}dispose(){const 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()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick.asObservable()}attachments(){return this._attachments.asObservable()}detachments(){return this._detachments.asObservable()}keydownEvents(){return this._keydownEventsObservable}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign({},this._config,t),this._updateElementSize()}setDirection(t){this._config=Object.assign({},this._config,{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){const t=this._pane.style;t.width=ep(this._config.width),t.height=ep(this._config.height),t.minWidth=ep(this._config.minWidth),t.minHeight=ep(this._config.minHeight),t.maxWidth=ep(this._config.maxWidth),t.maxHeight=ep(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"auto":"none"}_attachBackdrop(){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",t=>this._backdropClick.next(t)),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add("cdk-overlay-backdrop-showing")})}):this._backdropElement.classList.add("cdk-overlay-backdrop-showing")}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t,e=this._backdropElement;if(!e)return;let n=()=>{e&&e.parentNode&&e.parentNode.removeChild(e),this._backdropElement==e&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(e,this._config.backdropClass,!1),clearTimeout(t)};e.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{e.addEventListener("transitionend",n)}),e.style.pointerEvents="none",t=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const s=t.classList;tp(e).forEach(t=>{n?s.add(t):s.remove(t)})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.asObservable().pipe(Sp(K(this._attachments,this._detachments))).subscribe(()=>{this._pane&&this._host&&0!==this._pane.children.length||(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const Af="cdk-overlay-connected-position-bounding-box";class Mf{constructor(t,e,n,s,i){this._viewportRuler=e,this._document=n,this._platform=s,this._overlayContainer=i,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 T,this._resizeSubscription=d.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges.asObservable(),this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){if(this._overlayRef&&t!==this._overlayRef)throw Error("This position strategy is already attached to an overlay");this._validatePositions(),t.hostElement.classList.add(Af),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(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,s=[];let i;for(let r of this._preferredPositions){let o=this._getOriginPoint(t,r),l=this._getOverlayPoint(o,e,r),a=this._getOverlayFit(l,e,n,r);if(a.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(r,o);this._canFitWithFlexibleDimensions(a,l,n)?s.push({position:r,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,r)}):(!i||i.overlayFit.visibleAreae&&(e=s,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(i.position,i.originPoint);this._applyPosition(i.position,i.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&Nf(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Af),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,s;if("center"==e.originX)n=t.left+t.width/2;else{const s=this._isRtl()?t.right:t.left,i=this._isRtl()?t.left:t.right;n="start"==e.originX?s:i}return{x:n,y:s="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom}}_getOverlayPoint(t,e,n){let s,i;return s="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+s,y:t.y+(i="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}}_getOverlayFit(t,e,n,s){let{x:i,y:r}=t,o=this._getOffset(s,"x"),l=this._getOffset(s,"y");o&&(i+=o),l&&(r+=l);let a=0-r,c=r+e.height-n.height,u=this._subtractOverflows(e.width,0-i,i+e.width-n.width),h=this._subtractOverflows(e.height,a,c),d=u*h;return{visibleArea:d,isCompletelyWithinViewport:e.width*e.height===d,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:u==e.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const s=n.bottom-e.y,i=n.right-e.x,r=this._overlayRef.getConfig().minHeight,o=this._overlayRef.getConfig().minWidth,l=t.fitsInViewportHorizontally||null!=o&&o<=i;return(t.fitsInViewportVertically||null!=r&&r<=s)&&l}}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const s=this._viewportRect,i=Math.max(t.x+e.width-s.right,0),r=Math.max(t.y+e.height-s.bottom,0),o=Math.max(s.top-n.top-t.y,0),l=Math.max(s.left-n.left-t.x,0);let a=0,c=0;return this._previousPushAmount={x:a=e.width<=s.width?l||-i:t.xs&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-s/2)}if("end"===e.overlayX&&!s||"start"===e.overlayX&&s)c=n.right-t.x+this._viewportMargin,l=t.x-n.left;else if("start"===e.overlayX&&!s||"end"===e.overlayX&&s)a=t.x,l=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),s=this._lastBoundingBoxSize.width;a=t.x-e,(l=2*e)>s&&!this._isInitialRender&&!this._growAfterOpen&&(a=t.x-s/2)}return{top:r,left:a,bottom:o,right:c,width:l,height:i}}_setBoundingBoxStyles(t,e){const 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));const s={};if(this._hasExactPosition())s.top=s.left="0",s.bottom=s.right="",s.width=s.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;s.height=ep(n.height),s.top=ep(n.top),s.bottom=ep(n.bottom),s.width=ep(n.width),s.left=ep(n.left),s.right=ep(n.right),s.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",s.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(s.maxHeight=ep(t)),i&&(s.maxWidth=ep(i))}this._lastBoundingBoxSize=n,Nf(this._boundingBox.style,s)}_resetBoundingBoxStyles(){Nf(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){Nf(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={};if(this._hasExactPosition()){const s=this._viewportRuler.getViewportScrollPosition();Nf(n,this._getExactOverlayY(e,t,s)),Nf(n,this._getExactOverlayX(e,t,s))}else n.position="static";let s="",i=this._getOffset(e,"x"),r=this._getOffset(e,"y");i&&(s+=`translateX(${i}px) `),r&&(s+=`translateY(${r}px)`),n.transform=s.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Nf(this._pane.style,n)}_getExactOverlayY(t,e,n){let s={top:null,bottom:null},i=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(i=this._pushOverlayOnScreen(i,this._overlayRect,n));let r=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return i.y-=r,"bottom"===t.overlayY?s.bottom=`${this._document.documentElement.clientHeight-(i.y+this._overlayRect.height)}px`:s.top=ep(i.y),s}_getExactOverlayX(t,e,n){let s,i={left:null,right:null},r=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n)),"right"==(s=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?i.right=`${this._document.documentElement.clientWidth-(r.x+this._overlayRect.width)}px`:i.left=ep(r.x),i}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:bf(t,n),isOriginOutsideView:wf(t,n),isOverlayClipped:bf(e,n),isOverlayOutsideView:wf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const 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}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){if(!this._preferredPositions.length)throw Error("FlexibleConnectedPositionStrategy: At least one position is required.");this._preferredPositions.forEach(t=>{Of("originX",t.originX),Tf("originY",t.originY),Of("overlayX",t.overlayX),Tf("overlayY",t.overlayY)})}_addPanelClasses(t){this._pane&&tp(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;return t instanceof sn?t.nativeElement.getBoundingClientRect():t instanceof HTMLElement?t.getBoundingClientRect():{top:t.y,bottom:t.y,left:t.x,right:t.x,height:0,width:0}}}function Nf(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}class Df{constructor(t,e,n,s,i,r,o){this._preferredPositions=[],this._positionStrategy=new Mf(n,s,i,r,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e)}get _isRtl(){return"rtl"===this._overlayRef.getDirection()}get onPositionChange(){return this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,s){const i=new Ef(t,e,n,s);return this._preferredPositions.push(i),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Vf="cdk-global-overlay-wrapper";class $f{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const 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(Vf),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig();t.position=this._cssPosition,t.marginLeft="100%"===n.width?"0":this._leftOffset,t.marginTop="100%"===n.height?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,"100%"===n.width?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="100%"===n.height?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Vf),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}const Lf=(()=>{class t{constructor(t,e,n,s){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=s}global(){return new $f}connectedTo(t,e,n){return new Df(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new Mf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(af),Ot(Hl),Ot(zp),Ot(Rf))},token:t,providedIn:"root"}),t})();let jf=0;const Uf=(()=>(class{constructor(t,e,n,s,i,r,o,l,a,c){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=s,this._keyboardDispatcher=i,this._injector=r,this._ngZone=o,this._document=l,this._directionality=a,this._location=c}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),s=this._createPortalOutlet(n),i=new Sf(t);return i.direction=i.direction||this._directionality.value,new Pf(s,e,n,i,this._ngZone,this._keyboardDispatcher,this._document,this._location)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id=`cdk-overlay-${jf++}`,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(vr)),new ff(t,this._componentFactoryResolver,this._appRef,this._injector)}}))(),zf=new Rt("cdk-connected-overlay-scroll-strategy");function Ff(t){return()=>t.scrollStrategies.reposition()}const Hf=(()=>(class{}))(),Bf="Pipes";function Gf(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}class Wf{constructor(t,e){this._parentInjector=t,this._customTokens=e}get(t,e){const n=this._customTokens.get(t);return void 0!==n?n:this._parentInjector.get(t,e)}}const Yf=(()=>(class{constructor(t){this.injector=t,this.klass="default",this._overlay=t.get(qf)}ngOnInit(){setTimeout(()=>{this.offset=this._overlay.details.offset,this.setMethod()},1)}setMethod(){this.method="component",this.content=this._overlay.content,this.klass=this._overlay.details.klass||"default","string"==typeof this.content?this.method="text":this.content instanceof Rn&&(this.method="template",this.context=Object.assign({},this._overlay.details.data||{},{event:this._overlay.post.bind(this._overlay),close:this._overlay.close.bind(this._overlay)}),Object.defineProperty(this.context,"position",{get:()=>this._overlay.position}))}}))();class qf{constructor(t,e,n,s,i){this.id=t,this.service=e,this.injector=n,this.overlay=s,this.details=i,this.onClose=new T,this.event=new T,this.position_subject=new Kl(null),this.subs=[],this._overlay=this.overlay.create(this.details.config),this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null))}open(t,e){this._overlay&&this._close("reopen",null),e&&(delete this._overlay,this._overlay=this.overlay.create(e),this.details.config=e,this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null)));const n=this._createInjector(this,this.injector);this.onClose=new T,this.event=new T,this._overlay.attach(new hf(Yf,null,n)),this.set(t)}set(t,e=!0){this._data=t,e&&setTimeout(()=>this.updatePosition(),100)}get data(){return this._data||this.details.data||null}get content(){return this.details.content}get ID(){return this.id}listen(t){const e=this.event.subscribe(t);return this.subs.push(e),e}post(t,e){this.event.next({type:t,data:e})}get position(){return this.position_subject?this.position_subject.getValue():null}close(t){this._close("close",t)}_close(t,e){this._overlay&&this._overlay.dispose(),"reopen"!==t&&this.onClose.next({type:t,data:e}),this.onClose.complete(),this.event.complete(),this.subs=[]}_createInjector(t,e){const n=new WeakMap([[qf,t]]);return new Wf(e,n)}updatePosition(){const t=this.details.config;this._overlay.updatePosition();const e=t.positionStrategy;e instanceof Mf&&setTimeout(()=>{e._lastPosition&&this.position_subject.next({x:e._lastPosition.originX,y:e._lastPosition.originY})},1)}}const Zf=(()=>(class{constructor(t,e){this.overlay=t,this.renderer=e,this.events=[],this.displayed_events=[],this.subs={},this.delay=5e3,this.offset=0}ngOnInit(){this.context=this.overlay.details.data,this.subs.add=this.context.add.subscribe(t=>this.add(t)),this.subs.remove=this.context.remove.subscribe(t=>this.remove(t)),this.subs.delay=this.context.delay.subscribe(t=>this.delay=t)}ngOnDestroy(){for(const t in this.subs)this.subs[t]&&this.subs[t]instanceof d&&this.subs[t].unsubscribe()}add(t){this.events.findIndex(e=>e.id===t.id)<0&&(t.method="component","string"==typeof t.content?t.method="text":t.content instanceof Rn&&(t.method="template",t.context={close:()=>this.remove(t.id)}),this.events=this.events&&this.events.length>0?[...this.events,t]:[t],this.displayed_events=this.events.slice(-8),t.close=(()=>this.remove(t.id)),0!==t.delay&&setTimeout(()=>this.remove(t.id),t.delay||this.delay||5e3))}remove(t){this.events=this.events.filter(e=>e.id!==t),this.displayed_events=this.events.slice(-8)}action(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)}grab(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=n,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",e=>this.pull(t,e)),touchmove:this.renderer.listen("window","touchmove",e=>this.pull(t,e)),mouseup:this.renderer.listen("window","mouseup",e=>this.release(t)),touchend:this.renderer.listen("window","touchend",e=>this.release(t))}}pull(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)}release(t){t.offset>128&&this.remove(t.id);for(const e in t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0}trackByFn(t,e){return(t?t.id:null)||e}}))(),Qf=(()=>{class t{constructor(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new T,this._notify.remove=new T,this._notify.delay=new T,this.registerPreset("default",new Sf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new Sf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}register(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new qf(t,this,this.injector,this.overlay,e),this._refs[t]}open(t,e,n,s){if(e.config?e.config instanceof Sf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error(`No content set for the overlay ${t}`);const i=this._refs[t],r=i.details.config instanceof Sf?i.details.config:this.preset(i.details.config);i.open(e.data,e.config||r||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),s&&this._refs[t].onClose.subscribe(s))}update(t,e){this._refs[t]&&this._refs[t].set(e)}close(t){this._refs[t]&&this._refs[t].close(null)}remove(t){this._refs[t]&&(this._refs[t]=null)}registerPreset(t,e){this._presets[t]=e}preset(t="default"){return this._presets[t]||this._presets.default}loadNotificationsOutlet(){this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(()=>{this.registerPreset("ACA_NOTIFICATIONS_OUTLET",new Sf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:this.overlay.position().global().bottom("0").right("0"),scrollStrategy:this.overlay.scrollStrategies.noop()})),this.open("ACA_NOTIFICATIONS_OUTLET",{content:Zf,data:this._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)}notify(t,e,n,s,i){let r=null;return this._notify.add&&(r=`notification-${Math.floor(999999*Math.random())}`,this._notify.add.next({id:r,content:t,action:e,on_action:n,type:s,delay:i,event:t=>n?n(t):null})),r}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Uf),Ot(Mt))},token:t,providedIn:"root"}),t})(),Xf=(()=>(class{constructor(t,e,n,s){this.el=t,this.service=e,this.overlay=n,this.renderer=s,this.id=`tooltip-${Math.floor(9999999*Math.random())}`,this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new ki,this.event=new ki,this.close=new ki,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}ngOnInit(){this.updateConfig(),this.el&&this.listenForScroll()}ngOnDestroy(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()}ngOnChanges(t){if(t.config&&this.updateConfig(),t.reposition){const t=this.overlay.scrollStrategies;this.strategy=this.reposition?t.reposition():t.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(()=>this.open(),10):this.closeTooltip(t.show.previousValue))}open(){this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},t=>this.event.emit(t),t=>{this.show=!1,this.showChange.emit(!1),this.close.emit(t),this.clearListeners()})}getOverlayPosition(t){const e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)}getPositions(){const t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}}updateConfig(){this.service.registerPreset(this.id,new Sf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))}listenForScroll(){if(this.show){let t=this.el.nativeElement.parentElement;for(;t;t=t.parentElement)this.listeners.push(this.renderer.listen(t,"scroll",()=>this.update()))}}clearListeners(){for(const t of this.listeners)t();this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)}update(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))}listenForHover(){this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",t=>{this.show=!0,this.showChange.emit(this.show),this._leave_listener=this.renderer.listen(this.el.nativeElement,"mouseleave",t=>{this.show=!1,this.showChange.emit(this.show),this.closeTooltip(this.show)}),this.open()})}closeTooltip(t){!this.content&&this.el?function(t,e,n,s="debug",i){if(window.debug){const t=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Gf()?console[s](`%c[${Bf}]%c[Tooltip] %c${e}`,...t,n):console[s](`[${Bf}][Tooltip] ${e}`,n):Gf()?console[s](`%c[${Bf}]%c[Tooltip] %c${e}`,...t):console[s](`[${Bf}][Tooltip] ${e}`)}}(0,"No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()}}))(),Kf=(()=>(class{constructor(t,e){this.item=t,this.service=e}ngOnInit(){setTimeout(()=>{this.text=this.item.details.data.text,this.center=this.item.details.data.center},10),setTimeout(()=>this.service.close(this.item.ID),1e3)}}))(),Jf=hl,tg=(()=>{class t{constructor(){if(this.build=Jf(),!t.init){const e=Jf();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){Gf()?console[n](`%c[ACA]%c[LIB] %c${Bf} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"):console[n](`[ACA][LIB] ${Bf} - ${t} | ${e}`)}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),eg=new Rt("cdk-dir-doc",{providedIn:"root",factory:function(){return It(Hl)}}),ng=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new ki,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(eg,8))},token:t,providedIn:"root"}),t})(),sg=(()=>(class{}))();var ig=Xn({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function rg(t){return to(0,[(t()(),Lr(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function og(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function lg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,og)),ai(2,540672,null,0,zl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function ag(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function cg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,ag)),ai(2,671744,null,0,Rl,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ug(t){return to(0,[(t()(),Lr(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Lr(1,0,null,null,7,null,null,null,null,null,null,null)),ai(2,16384,null,0,Ll,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),$r(16777216,null,null,1,null,rg)),ai(4,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,lg)),ai(6,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,cg)),ai(8,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function hg(t){return to(0,[(t()(),$r(16777216,null,null,1,null,ug)),ai(1,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function dg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"overlay-outlet",[],null,null,null,hg,ig)),ai(1,114688,null,0,Yf,[Dt],null,null)],function(t,e){t(e,1,0)},null)}var pg=Ls("overlay-outlet",Yf,dg,{},{},[]),fg=Xn({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function gg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Xr(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function mg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"a-floating-text",[],null,null,null,gg,fg)),ai(1,114688,null,0,Kf,[qf,Qf],null,null)],function(t,e){t(e,1,0)},null)}var _g=Ls("a-floating-text",Kf,mg,{},{},[]),vg=Xn({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function yg(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function wg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,yg)),ai(2,540672,null,0,zl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function bg(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Cg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,bg)),ai(2,671744,null,0,Rl,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function xg(t){return to(0,[(t()(),Lr(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function Sg(t){return to(0,[(t()(),Lr(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Xr(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function Eg(t){return to(0,[(t()(),Lr(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function kg(t){return to(0,[(t()(),Lr(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Lr(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==i.grab(t.context.$implicit,n)&&s),"touchstart"===e&&(s=!1!==i.grab(t.context.$implicit,n)&&s),s},null,null)),(t()(),Lr(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Lr(4,0,null,null,7,null,null,null,null,null,null,null)),ai(5,16384,null,0,Ll,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),$r(16777216,null,null,1,null,wg)),ai(7,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,Cg)),ai(9,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,xg)),ai(11,16384,null,0,Ul,[An,Rn,Ll],null,null),(t()(),Lr(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var s=!0,i=t.component;return"click"===e&&(i.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),"touchend"===e&&(i.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),s},null,null)),(t()(),$r(16777216,null,null,1,null,Sg)),ai(14,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),$r(16777216,null,null,1,null,Eg)),ai(16,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function Tg(t){return to(0,[(t()(),Lr(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,kg)),ai(2,278528,null,0,Al,[An,Rn,xn],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function Og(t){return to(0,[(t()(),Lr(0,0,null,null,1,"notification-outlet",[],null,null,null,Tg,vg)),ai(1,245760,null,0,Zf,[qf,cn],null,null)],function(t,e){t(e,1,0)},null)}var Ig=Ls("notification-outlet",Zf,Og,{},{},[]);class Rg extends z{constructor(t,e){super(t),this.sources=e,this.completed=0,this.haveValues=0;const n=e.length;this.values=new Array(n);for(let s=0;s(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Mg=new Rt("CompositionEventMode"),Ng=(()=>(class{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Ha()?Ha().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}))();class Dg{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class Vg extends Dg{get formDirective(){return null}get path(){return null}}function $g(){throw new Error("unimplemented")}class Lg extends Dg{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return $g()}get asyncValidator(){return $g()}}const jg=(()=>(class extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}))();function Ug(t){return null==t||0===t.length}const zg=/^(?=.{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])?)*$/;class Fg{static min(t){return e=>{if(Ug(e.value)||Ug(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(Ug(e.value)||Ug(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return Ug(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return Ug(t.value)?null:zg.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(Ug(e.value))return null;const n=e.value?e.value.length:0;return n{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return Fg.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(Ug(t.value))return null;const s=t.value;return e.test(s)?null:{pattern:{requiredPattern:n,actualValue:s}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(Hg);return 0==e.length?null:function(t){return Gg(function(t,n){return e.map(e=>e(t))}(t))}}static composeAsync(t){if(!t)return null;const e=t.filter(Hg);return 0==e.length?null:function(t){return function t(...e){let n;return"function"==typeof e[e.length-1]&&(n=e.pop()),1===e.length&&a(e[0])&&(e=e[0]),0===e.length?ql:n?t(e).pipe(F(t=>n(...t))):new b(t=>new Rg(t,e))}(function(t,n){return e.map(e=>e(t))}(t).map(Bg)).pipe(F(Gg))}}}function Hg(t){return null!=t}function Bg(t){const e=De(t)?W(t):t;if(!Ve(e))throw new Error("Expected validator to return Promise or Observable.");return e}function Gg(t){const e=t.reduce((t,e)=>null!=e?Object.assign({},t,e):t,{});return 0===Object.keys(e).length?null:e}function Wg(t){return t.validate?e=>t.validate(e):t}function Yg(t){return t.validate?e=>t.validate(e):t}const qg=(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Zg=(()=>(class{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}))(),Qg=(()=>(class{constructor(t,e,n,s){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=s,this.onChange=(()=>{}),this.onTouched=(()=>{})}ngOnInit(){this._control=this._injector.get(Lg),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=(()=>{t(this.value),this._registry.select(this)})}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}))(),Xg={formControlName:'\n

\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',formGroupName:'\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',formArrayName:'\n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });',ngModelGroup:'\n
\n
\n \n
\n
',ngModelWithFormGroup:'\n
\n \n \n
\n '};function Kg(t,e){return[...e.path,t]}function Jg(t,e){t||em(e,"Cannot find control with"),e.valueAccessor||em(e,"No value accessor for form control with"),t.validator=Fg.compose([t.validator,e.validator]),t.asyncValidator=Fg.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&tm(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&tm(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function tm(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function em(t,e){let 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 nm(t){return null!=t?Fg.compose(t.map(Wg)):null}function sm(t){return null!=t?Fg.composeAsync(t.map(Yg)):null}const im=[Ag,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),qg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?`${e}`:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=(e=>{this.value=this._getOptionValue(e),t(this.value)})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}))(),(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=((t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)})}else e=((t,e)=>{t._setSelected(!1)});this._optionMap.forEach(e)}registerOnChange(t){this.onChange=(e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e{}),this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return this.status===rm}get invalid(){return this.status===om}get pending(){return this.status==lm}get disabled(){return this.status===am}get enabled(){return this.status!==am}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=cm(t)}setAsyncValidators(t){this.asyncValidator=um(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=lm,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=am,this.errors=null,this._forEachChild(e=>{e.disable(Object.assign({},t,{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=rm,this._forEachChild(e=>{e.enable(Object.assign({},t,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==rm&&this.status!==lm||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)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?am:rm}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=lm;const e=Bg(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(".")),e instanceof Array&&0===e.length?null:e.reduce((t,e)=>t instanceof fm?t.controls.hasOwnProperty(e)?t.controls[e]:null:t instanceof gm&&t.at(e)||null,t))}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new ki,this.statusChanges=new ki}_calculateStatus(){return this._allControlsDisabled()?am:this.errors?om:this._anyControlsHaveStatus(lm)?lm:this._anyControlsHaveStatus(om)?om:rm}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){hm(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class pm extends dm{constructor(t=null,e,n){super(cm(e),um(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=(()=>{})}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(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}}class fm extends dm{constructor(t,e,n){super(cm(e),um(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof pm?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,s)=>{e=e||this.contains(s)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,s)=>{n=e(n,t,s)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class gm extends dm{constructor(t,e,n){super(cm(e),um(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof pm?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}`)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const mm=(()=>Promise.resolve(null))(),_m=(()=>(class extends Vg{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new ki,this.form=new fm({},nm(t),sm(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){mm.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Jg(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){mm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),function(e,n){const s=e.indexOf(t);s>-1&&e.splice(s,1)}(this._directives)})}addFormGroup(t){mm.then(()=>{const e=this._findContainer(t.path),n=new fm({});(function(t,e){null==t&&em(e,"Cannot find control with"),t.validator=Fg.compose([t.validator,e.validator]),t.asyncValidator=Fg.composeAsync([t.asyncValidator,e.asyncValidator])})(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){mm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){mm.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,e=this._directives,this.form._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}))();class vm{static modelParentException(){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 ${Xg.formControlName}\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 ${Xg.ngModelWithFormGroup}`)}static formGroupNameException(){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 ${Xg.formGroupName}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Xg.ngModelGroup}`)}static missingNameException(){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: \n Example 2: ')}static modelGroupParentException(){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 ${Xg.formGroupName}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Xg.ngModelGroup}`)}static ngFormWarning(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")}}const ym=new Rt("NgFormSelectorWarning");class wm extends Vg{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Kg(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return nm(this._validators)}get asyncValidator(){return sm(this._asyncValidators)}_checkParentType(){}}const bm=(()=>{class t extends wm{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof _m||vm.modelGroupParentException()}}return t})(),Cm=(()=>Promise.resolve(null))(),xm=(()=>(class extends Lg{constructor(t,e,n,s){super(),this.control=new pm,this._registered=!1,this.update=new ki,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||em(t,"Value accessor was not provided as an array for form control with");let n=void 0,s=void 0,i=void 0;return e.forEach(e=>{e.constructor===Ng?n=e:function(t){return im.some(e=>t.constructor===e)}(e)?(s&&em(t,"More than one built-in value accessor matches form control with"),s=e):(i&&em(t,"More than one custom value accessor matches form control with"),i=e)}),i||s||n||(em(t,"No valid value accessor for form control with"),null)}(this,s)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!je(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Kg(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return nm(this._rawValidators)}get asyncValidator(){return sm(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Jg(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof bm)&&this._parent instanceof wm?vm.formGroupNameException():this._parent instanceof bm||this._parent instanceof _m||vm.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||vm.missingNameException()}_updateValue(t){Cm.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;Cm.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}))(),Sm=new Rt("NgModelWithFormControlWarning"),Em=(()=>(class{}))(),km=(()=>(class{group(t,e=null){const n=this._reduceControls(t);let s=null,i=null,r=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(s=null!=e.validators?e.validators:null,i=null!=e.asyncValidators?e.asyncValidators:null,r=null!=e.updateOn?e.updateOn:void 0):(s=null!=e.validator?e.validator:null,i=null!=e.asyncValidator?e.asyncValidator:null)),new fm(n,{asyncValidators:i,updateOn:r,validators:s})}control(t,e,n){return new pm(t,e,n)}array(t,e,n){const s=t.map(t=>this._createControl(t));return new gm(s,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof pm||t instanceof fm||t instanceof gm?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}))(),Tm=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:ym,useValue:e.warnOnDeprecatedNgFormSelector}]}}}return t})(),Om=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Sm,useValue:e.warnOnNgModelWithFormControl}]}}}return t})();var Im=Xn({encapsulation:2,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:0}.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:0}.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}"],data:{}});function Rm(t){return to(2,[Hr(402653184,1,{_contentWrapper:0}),(t()(),Lr(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),qr(null,0),(t()(),Lr(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Pm=Xn({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function Am(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,i=t.component;return"input"===e&&(s=!1!==Zs(t,5)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==Zs(t,5).onTouched()&&s),"compositionstart"===e&&(s=!1!==Zs(t,5)._compositionStart()&&s),"compositionend"===e&&(s=!1!==Zs(t,5)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(i.search=n)&&s),"ngModelChange"===e&&(i.searchChange.emit(n),s=!1!==i.filter()&&s),s},null,null)),ai(5,16384,null,0,Ng,[cn,sn,[2,Mg]],null,null),ui(1024,null,Pg,function(t){return[t]},[Ng]),ai(7,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(9,16384,null,0,jg,[[4,Lg]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,Zs(e,9).ngClassUntouched,Zs(e,9).ngClassTouched,Zs(e,9).ngClassPristine,Zs(e,9).ngClassDirty,Zs(e,9).ngClassValid,Zs(e,9).ngClassInvalid,Zs(e,9).ngClassPending)})}function Mm(t){return to(0,[(t()(),Lr(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.select(t.context.$implicit)&&s),s},null,null)),(t()(),Lr(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Nm(t){return to(0,[(t()(),Lr(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,Rm,Im)),ui(6144,null,tf,null,[nf]),ai(3,540672,null,0,Xp,[],{itemSize:[0,"itemSize"]},null),ui(1024,null,qp,Qp,[Xp]),ai(5,245760,[[4,4],[5,4],["viewport",4]],0,nf,[sn,En,Ji,[2,qp],[2,ng],Jp],null,null),(t()(),$r(16777216,[[2,2]],0,1,null,Mm)),ai(7,409600,null,0,rf,[An,Rn,xn,[1,nf],Ji],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===Zs(e,5).orientation,"horizontal"!==Zs(e,5).orientation)})}function Dm(t){return to(0,[(t()(),Lr(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Vm(t){return to(0,[(t()(),Lr(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.cancelClose()&&s),s},null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var s=!0,i=t.component;return"click"===e&&(s=0!=(i.show=!i.show)&&s),s},null,null)),(t()(),Lr(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),$r(16777216,[[2,2]],null,1,null,Am)),ai(7,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),$r(16777216,[[2,2]],null,1,null,Nm)),ai(10,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),$r(0,[[2,2],["noItems",2]],null,0,null,Dm))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,Zs(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function $m(t){return to(0,[Hr(402653184,1,{reference:0}),Hr(402653184,2,{dropdown_tooltip:0}),Hr(402653184,3,{input:0}),Hr(402653184,4,{viewport:0}),Hr(402653184,5,{scroll_el:0}),(t()(),Lr(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var s=!0,i=t.component;return"keyup.enter"===e&&(s=!1!==i.toggleShow()&&s),"keydown.arrowup"===e&&(s=!1!==n.preventDefault()&&s),"keydown.arrowdown"===e&&(s=!1!==n.preventDefault()&&s),"keyup.arrowup"===e&&(s=!1!==(i.focus?i.change(-1):"")&&s),"keyup.arrowdown"===e&&(s=!1!==(i.focus?i.change(1):"")&&s),"focus"===e&&(s=0!=(i.focus=!0)&&s),"blur"===e&&(s=0!=(i.focus=!1)&&s),"window:resize"===e&&(s=!1!==i.resize()&&s),"window:click"===e&&(s=!1!==(i.show?i.close():"")&&s),s},null,null)),(t()(),Lr(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Lr(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var s=!0,i=t.component;return"showChange"===e&&(s=!1!==(i.show=n)&&s),"showChange"===e&&(s=!1!==i.updateScroll()&&s),"click"===e&&(s=!1!==i.toggleShow()&&s),s},null,null)),ai(8,737280,null,0,Xf,[sn,Qf,Uf,cn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Lr(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),Xr(10,null,["",""])),(t()(),Lr(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Lr(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Lr(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(15,null,["",""])),(t()(),Lr(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),$r(0,[[2,2],["dropdown",2]],null,0,null,Vm))],function(t,e){t(e,8,0,e.component.show,Zs(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}const Lm="Checkbox",jm=(()=>(class{constructor(){this.klass="default"}toggle(){this.state=!this.state,this.onChange&&this.onChange(this.state)}writeValue(t){this.state=t}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouch=t}}))(),Um=hl,zm=(()=>{class t{constructor(){if(this.build=Um(),!t.init){const e=Um();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Lm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Lm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Fm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}handleMouse(t){this.handleEvent(t)}handleTouch(t){this.handleEvent(t)}ngOnInit(){}ngAfterViewInit(){setTimeout(()=>{this.element&&this.element.nativeElement&&(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width)))})}ngOnDestroy(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}handleEvent(t){this.cancelled=!1;const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,n=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:`${n-this.cached_box.top}px`,left:`${e-this.cached_box.left}px`},this.mouse_release_cancel=this.renderer.listen("window","mouseup",t=>this.handleRelease(t)),this.touch_release_cancel=this.renderer.listen("window","touchend",t=>this.handleRelease(t)),this.transitioning=!0,setTimeout(()=>{this.transitioning=!1,this.cancelled&&(this.show=!1)},350)}handleRelease(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}}))(),Hm=(()=>(class{constructor(t,e){this.el=t,this.renderer=e,this.tapped=new ki,this.touchrelease=new ki,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}ngAfterViewInit(){this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",t=>this.handleHold(t)),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",t=>this.handleHold(t)))}ngOnDestroy(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}}remove(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)}handleHold(t){const e={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=e,this.mouse_listener=this.renderer.listen(window,"mouseup",t=>this.handleRelease(t)),this.touch_listener=this.renderer.listen(window,"touchend",t=>this.handleRelease(t)),this.timer=setTimeout(()=>this.remove(),this.max_delay)}handleRelease(t){this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(()=>{const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(e-this.start.x,2)+2){this.tapped.emit(t),this.touchrelease.emit(t)},100)),this.start={x:-999,y:-999}},50)}}))(),Bm="Custom Events",Gm=hl,Wm=(()=>{class t{constructor(){if(this.build=Gm(),!t.init){const e=Gm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Bm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Bm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var Ym=Xn({encapsulation:0,styles:["[_nghost-%COMP%]{position:relative;overflow:hidden}.event-feedback[_ngcontent-%COMP%]{position:absolute;border-radius:100%;background-color:rgba(0,0,0,.1);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;pointer-events:none}.event-feedback.show[_ngcontent-%COMP%]{-webkit-animation:.5s feedback;animation:.5s feedback;opacity:1}.event-feedback.hide[_ngcontent-%COMP%]{-webkit-animation:.5s fadeout;animation:.5s fadeout}.event-feedback.light[_ngcontent-%COMP%]{background-color:rgba(255,255,255,.1)}@-webkit-keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@-webkit-keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}@keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}"],data:{}});function qm(t){return to(0,[qr(null,0),(t()(),Lr(1,0,null,null,0,"div",[],[[8,"className",0],[4,"top",null],[4,"left",null],[4,"height",null],[4,"width",null],[2,"show",null],[2,"hide",null]],null,null,null,null))],null,function(t,e){var n=e.component;t(e,1,0,"event-feedback"+(n.klass?" "+n.klass:""),n.position.top,n.position.left,n.size+"px",n.size+"px",n.show,!1===n.show)})}var Zm=Xn({encapsulation:0,styles:[".checkbox[_ngcontent-%COMP%]{display:flex;align-items:center}.box[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;margin:.25em;font-size:.8em;height:1.5em;width:1.5em;border-radius:4px;padding:0;border:2px solid #ccc;cursor:pointer;outline:0;transition:background-color .2s,border-color .2s}.box[_ngcontent-%COMP%]:hover{background-color:#ccc}.box[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function Qm(t){return to(0,[(t()(),Lr(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.toggle()&&s),s},null,null)),ai(1,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Xr(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Xm(t){return to(0,[(t()(),Lr(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Lr(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,2).handleTouch(n)&&s),"keyup.enter"===e&&(s=!1!==i.toggle()&&s),"tapped"===e&&(s=!1!==i.toggle()&&s),s},qm,Ym)),ai(2,4440064,null,0,Fm,[sn,cn],{center:[0,"center"]},null),ai(3,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,Qm)),ai(6,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}const Km="Buttons",Jm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new ki,this.id=`button-${Math.floor(999999*Math.random())}`}ngOnChanges(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()}ngAfterViewInit(){this.setClass(this.klass)}setClass(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))}setGroup(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")}setState(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")}tap(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))}writeValue(t){this.state=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),t_=hl,e_=(()=>{class t{constructor(){if(this.build=t_(),!t.init){const e=t_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Km} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Km} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var n_=Xn({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function s_(t){return to(0,[(t()(),Lr(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,1).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,1).handleTouch(n)&&s),"tapped"===e&&(s=!1!==i.tap()&&s),s},qm,Ym)),ai(1,4440064,null,0,Fm,[sn,cn],null,null),ai(2,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),qr(0,0)],function(t,e){t(e,1,0)},null)}const i_=(()=>(class{constructor(t){this.sanitizer=t}transform(t,e="html"){switch(e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}}}))(),r_="Pipes",o_=hl,l_=(()=>{class t{constructor(){if(this.build=o_(),!t.init){const e=o_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${r_} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${r_} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();class a_{constructor(){this._timers={},this._intervals={},this._subscriptions={}}timeout(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(()=>{e(),this._timers[t]=null},n)}clearTimeout(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)}interval(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(()=>e(),n)}clearInterval(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)}subscription(t,e){this.unsub(t),this._subscriptions[t]=e}unsub(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof d?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)}}class c_ extends a_{ngOnDestroy(){for(const t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(const t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(const t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)}}function u_(t,e,n,s){return new(n||(n=Promise))(function(i,r){function o(t){try{a(s.next(t))}catch(e){r(e)}}function l(t){try{a(s.throw(t))}catch(e){r(e)}}function a(t){t.done?i(t.value):new n(function(e){e(t.value)}).then(o,l)}a((s=s.apply(t,e||[])).next())})}class h_{}class d_{}class p_{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),s=n.toLowerCase(),i=t.slice(e+1).trim();this.maybeSetNormalizedName(n,s),this.headers.has(s)?this.headers.get(s).push(i):this.headers.set(s,[i])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const s=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(s,n),this.maybeSetNormalizedName(e,s))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof p_?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new p_;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof p_?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const s=("a"===t.op?this.headers.get(e):void 0)||[];s.push(...n),this.headers.set(e,s);break;case"d":const i=t.value;if(i){let t=this.headers.get(e);if(!t)return;0===(t=t.filter(t=>-1===i.indexOf(t))).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class f_{encodeKey(t){return g_(t)}encodeValue(t){return g_(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function g_(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class m_{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new f_,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const s=t.indexOf("="),[i,r]=-1==s?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,s)),e.decodeValue(t.slice(s+1))],o=n.get(i)||[];o.push(r),n.set(i,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).join("&")}clone(t){const e=new m_({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function __(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function v_(t){return"undefined"!=typeof Blob&&t instanceof Blob}function y_(t){return"undefined"!=typeof FormData&&t instanceof FormData}class w_{constructor(t,e,n,s){let i;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||s?(this.body=void 0!==n?n:null,i=s):i=n,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.params&&(this.params=i.params)),this.headers||(this.headers=new p_),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),l)),t.setParams&&(a=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),a)),new w_(e,n,i,{params:a,headers:l,reportProgress:o,responseType:s,withCredentials:r})}}const b_=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class C_{constructor(t,e=200,n="OK"){this.headers=t.headers||new p_,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class x_ extends C_{constructor(t={}){super(t),this.type=b_.ResponseHeader}clone(t={}){return new x_({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class S_ extends C_{constructor(t={}){super(t),this.type=b_.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new S_({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class E_ extends C_{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function k_(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}const T_=(()=>(class{constructor(t){this.handler=t}request(t,e,n={}){let s;if(t instanceof w_)s=t;else{let i=void 0;i=n.headers instanceof p_?n.headers:new p_(n.headers);let r=void 0;n.params&&(r=n.params instanceof m_?n.params:new m_({fromObject:n.params})),s=new w_(t,e,void 0!==n.body?n.body:null,{headers:i,params:r,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const i=Xl(s).pipe(ja(t=>this.handler.handle(t)));if(t instanceof w_||"events"===n.observe)return i;const r=i.pipe(oa(t=>t instanceof S_));switch(n.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return r.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return r.pipe(F(t=>t.body))}case"response":return r;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new m_).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,k_(n,e))}post(t,e,n={}){return this.request("POST",t,k_(n,e))}put(t,e,n={}){return this.request("PUT",t,k_(n,e))}}))();class O_{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const I_=new Rt("HTTP_INTERCEPTORS"),R_=(()=>(class{intercept(t,e){return e.handle(t)}}))(),P_=/^\)\]\}',?\n/;class A_{}const M_=(()=>(class{constructor(){}build(){return new XMLHttpRequest}}))(),N_=(()=>(class{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new b(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const s=t.serializeBody();let i=null;const r=()=>{if(null!==i)return i;const e=1223===n.status?204:n.status,s=n.statusText||"OK",r=new p_(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return i=new x_({headers:r,status:e,statusText:s,url:o})},o=()=>{let{headers:s,status:i,statusText:o,url:l}=r(),a=null;204!==i&&(a=void 0===n.response?n.responseText:n.response),0===i&&(i=a?200:0);let c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof a){const t=a;a=a.replace(P_,"");try{a=""!==a?JSON.parse(a):null}catch(u){a=t,c&&(c=!1,a={error:u,text:a})}}c?(e.next(new S_({body:a,headers:s,status:i,statusText:o,url:l||void 0})),e.complete()):e.error(new E_({error:a,headers:s,status:i,statusText:o,url:l||void 0}))},l=t=>{const{url:s}=r(),i=new E_({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:s||void 0});e.error(i)};let a=!1;const c=s=>{a||(e.next(r()),a=!0);let i={type:b_.DownloadProgress,loaded:s.loaded};s.lengthComputable&&(i.total=s.total),"text"===t.responseType&&n.responseText&&(i.partialText=n.responseText),e.next(i)},u=t=>{let n={type:b_.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",l),t.reportProgress&&(n.addEventListener("progress",c),null!==s&&n.upload&&n.upload.addEventListener("progress",u)),n.send(s),e.next({type:b_.Sent}),()=>{n.removeEventListener("error",l),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",c),null!==s&&n.upload&&n.upload.removeEventListener("progress",u)),n.abort()}})}}))(),D_=new Rt("XSRF_COOKIE_NAME"),V_=new Rt("XSRF_HEADER_NAME");class $_{}const L_=(()=>(class{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Il(t,this.cookieName),this.lastCookieString=t),this.lastToken}}))(),j_=(()=>(class{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const s=this.tokenService.getToken();return null===s||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,s)})),e.handle(t)}}))(),U_=(()=>(class{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(I_,[]);this.chain=t.reduceRight((t,e)=>new O_(t,e),this.backend)}return this.chain.handle(t)}}))(),z_=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:j_,useClass:R_}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:D_,useValue:e.cookieName}:[],e.headerName?{provide:V_,useValue:e.headerName}:[]]}}}return t})(),F_=(()=>(class{}))(),H_=(()=>{class t{constructor(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new Kl(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}init(){return u_(this,void 0,void 0,function*(){yield this.loadFromFile("api"),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete()})}get setup(){return this._setup}get app_name(){return this._app_name}isSetup(t){return this._is_setup_observer.subscribe(t)}log(t,e,n,s="debug",i=!1){if(window.debug||i){const i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...i,n):console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...i)}}get(t){const e=t.split(".");let n=null;return"session"===e[0]?(e.shift(),n=ul(e,this._settings.session)):"local"===e[0]?(e.shift(),n=ul(e,this._settings.local)):n=ul(e,this._settings.api)||ul(e,this._settings.session)||ul(e,this._settings.local),n}loadStore(t,e){if(e)for(let n=0;n5)return Promise.resolve();const s=`load|${t}|${e}`;return this._promises[s]||(this._promises[s]=new Promise((i,r)=>{this.http.get(e).subscribe(e=>{this._settings[t]=Object.assign({},this._settings[t]||{},e||{})},r=>{this.log("Settings",`Failed to load settings from "${e}"`),this._promises[s]=null,this.loadFromFile(t,e,++n).then(()=>i())},()=>i())})),this._promises[s]})}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),B_=["control","shift","alt","meta","os"],G_=(()=>{class t{constructor(){this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.last_down!==e&&(this.keydown_states[e]||(this.keydown_states[e]=new Kl(null),this.keydown_observers[e]=this.keydown_states[e].asObservable()),this.keydown_states[e].next(this.counter++),this.combo_end.indexOf(e)>=0&&t.preventDefault(),this.last_down=e)}),window.addEventListener("keyup",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.keydown_states[e].next(null),this.last_down===e&&(this.last_down=null)})}listen(t,e){const n=(t=t instanceof Array?t:t.split("+")).map(t=>this.mapKey(t.toLowerCase()));if(n.length>0&&this.validCombination(n)){this.registered_combos.push(n);const t=n[n.length-1];return this.keydown_states[t]||(this.keydown_states[t]=new Kl(null),this.keydown_observers[t]=this.keydown_states[t].asObservable()),this.updateCombinationEndList(),this.keydown_observers[t].subscribe(t=>{if(t){const t=[];if(n.length>1){for(const e of n){const n=this.keydown_states[e];t.push(n&&n.getValue()||-1)}for(let e=0;et[e+1])return}e()}})}return null}mapKey(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t}updateCombinationEndList(){for(const t of this.registered_combos)this.combo_end.push(t[t.length-1]);this.combo_end=function(t,e=""){return[].filter((t,n,s)=>s.indexOf(s.find(e?n=>n[e]===t[e]:e=>e===t))===n)}()}validCombination(t){let e=0;for(const n of t)B_.indexOf(n)<0&&e++;return e>0}}return t.ngInjectableDef=mt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),W_=[],Y_=(()=>{class t extends a_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=cl(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let i;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>i=t,t=>{s(t),delete this._promises[n]},()=>{t(i),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}repositories(){const t="repositories";return this._promises[t]||(this._promises[t]=new Promise((e,n)=>{let s;this.http.get(`${this.api_route}/repositories`).subscribe(t=>s=t,e=>{n(e),delete this._promises[t]},()=>{e(s),this.timeout(t,()=>delete this._promises[t],1e3)})})),this._promises[t]}commits(t){const e=`commits|${cl(t)}`;return this._promises[e]||(this._promises[e]=new Promise((t,n)=>{let s;this.http.get(`${this.api_route}/repositories_commits`).subscribe(t=>s=t,t=>{n(t),delete this._promises[e]},()=>{t(s),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}versions(t){const e=`versions|${t}`;return this._promises[e]||(this._promises[e]=new Promise((n,s)=>{const i=`${this.api_route}/${encodeURIComponent(t)}`;let r;this.http.get(i).subscribe(t=>r=t,t=>{s(t),delete this._promises[e]},()=>{n(r),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}driverCommits(t,e){const n=cl(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const i=`${this.api_route}/${encodeURIComponent(t)}/commits`;let r;this.http.get(i).subscribe(t=>r=t,t=>{n(t),delete this._promises[s]},()=>{e(r),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}build(t){const e=cl(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{this.http.post(`${this.api_route}`,e).subscribe(t=>null,t=>{s(t),delete this._promises[n]},()=>{t(),delete this._promises[n]})})),this._promises[n]}clean(t,e){const n=cl(e),s=`clean|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((t,e)=>{this.http.delete(`${this.api_route}${n?"?"+n:""}`).subscribe(t=>null,t=>{e(t),delete this._promises[s]},()=>{t(),delete this._promises[s]})})),this._promises[s]}get api_route(){return this.parent?`${this.parent.endpoint}/build`:"/build"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),q_=(()=>{class t extends a_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=cl(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let i;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>i=t,t=>{s(t),delete this._promises[n]},()=>{t(i),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}specCommits(t,e){const n=cl(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const i=`${this.api_route}/${encodeURIComponent(t)}/commits`;let r;this.http.get(i).subscribe(t=>r=t,t=>{n(t),delete this._promises[s]},()=>{e(r),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}run(t){for(const s in t)null==t[s]&&delete t[s];const e=cl(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((s,i)=>{let r;this.http.post(`${this.api_route}${e?"?"+e:""}`,t,{responseType:"text"}).subscribe(t=>r=t,t=>{i(t),delete this._promises[n]},()=>{s(r),delete this._promises[n]})})),this._promises[n]}get api_route(){return this.parent?`${this.parent.endpoint}/test`:"/test"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),Z_=new b(v);class Q_{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new X_(t,this.delay,this.scheduler))}}class X_ extends g{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,s=t.scheduler,i=t.destination;for(;n.length>0&&n[0].time-s.now()<=0;)n.shift().notification.observe(i);if(n.length>0){const e=Math.max(0,n[0].time-s.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(X_.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new K_(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Dp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Dp.createComplete()),this.unsubscribe()}}class K_{constructor(t,e){this.time=t,this.notification=e}}const J_="Service workers are disabled or not supported by this browser";class tv{constructor(t){if(this.serviceWorker=t,t){const e=np(t,"controllerchange").pipe(F(()=>t.controller)),n=Na(ia(()=>Xl(t.controller)),e);this.worker=n.pipe(oa(t=>!!t)),this.registration=this.worker.pipe(Pa(()=>t.getRegistration()));const s=np(t,"message").pipe(F(t=>t.data)).pipe(oa(t=>t&&t.type)).pipe(rt(new T));s.connect(),this.events=s}else this.worker=this.events=this.registration=(e=J_,ia(()=>Ap(new Error(e))));var e}postMessage(t,e){return this.worker.pipe(Ea(1),fa(n=>{n.postMessage(Object.assign({action:t},e))})).toPromise().then(()=>void 0)}postMessageWithStatus(t,e,n){const s=this.waitForStatus(n),i=this.postMessage(t,e);return Promise.all([s,i]).then(()=>void 0)}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(t){return this.events.pipe(oa(e=>e.type===t))}nextEventOfType(t){return this.eventsOfType(t).pipe(Ea(1))}waitForStatus(t){return this.eventsOfType("STATUS").pipe(oa(e=>e.nonce===t),Ea(1),F(t=>{if(!t.status)throw new Error(t.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}const ev=(()=>(class{constructor(t){if(this.sw=t,this.subscriptionChanges=new T,!t.isEnabled)return this.messages=Z_,this.notificationClicks=Z_,void(this.subscription=Z_);this.messages=this.sw.eventsOfType("PUSH").pipe(F(t=>t.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(F(t=>t.data)),this.pushManager=this.sw.registration.pipe(F(t=>t.pushManager));const e=this.pushManager.pipe(Pa(t=>t.getSubscription()));this.subscription=K(e,this.subscriptionChanges)}get isEnabled(){return this.sw.isEnabled}requestSubscription(t){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const e={userVisibleOnly:!0};let n=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),s=new Uint8Array(new ArrayBuffer(n.length));for(let i=0;it.subscribe(e)),Ea(1)).toPromise().then(t=>(this.subscriptionChanges.next(t),t))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe(Ea(1),Pa(t=>{if(null===t)throw new Error("Not subscribed to push notifications.");return t.unsubscribe().then(t=>{if(!t)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(J_))}decodeBase64(t){return atob(t)}}))(),nv=(()=>(class{constructor(t){if(this.sw=t,!t.isEnabled)return this.available=Z_,void(this.activated=Z_);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED")}get isEnabled(){return this.sw.isEnabled}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:t},t)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:t},t)}}))();class sv{}const iv=new Rt("NGSW_REGISTER_SCRIPT");function rv(t,e,n,s){return()=>{if(!(Gl(s)&&"serviceWorker"in navigator&&!1!==n.enabled))return;let i;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof n.registrationStrategy)i=n.registrationStrategy();else{const[e,...s]=(n.registrationStrategy||"registerWhenStable").split(":");switch(e){case"registerImmediately":i=Xl(null);break;case"registerWithDelay":i=Xl(null).pipe(function(t,e=vp){var n;const s=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new Q_(s,e))}(+s[0]||0));break;case"registerWhenStable":i=t.get(vr).isStable.pipe(oa(t=>t));break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${n.registrationStrategy}`)}}i.pipe(Ea(1)).subscribe(()=>navigator.serviceWorker.register(e,{scope:n.scope}))}}function ov(t,e){return new tv(Gl(e)&&!1!==t.enabled?navigator.serviceWorker:void 0)}const lv=(()=>{class t{static register(e,n={}){return{ngModule:t,providers:[{provide:iv,useValue:e},{provide:sv,useValue:n},{provide:tv,useFactory:ov,deps:[sv,Di]},{provide:Ii,useFactory:rv,deps:[Dt,iv,sv,Di],multi:!0}]}}}return t})(),av="Google Analytics";function cv(t,e,n,s="debug",i){if(window.debug){const r=["color: #0288D1",`color:${i||"#009688"}`,"color:rgba(0,0,0,0.87)"];n?uv()?console[s](`%c[${av}]%c[${t}] %c${e}`,...r,n):console[s](`[${av}][${t}] ${e}`,n):uv()?console[s](`%c[${av}]%c[${t}] %c${e}`,...r):console[s](`[${av}][${t}] ${e}`)}}function uv(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}const hv=(()=>{class t{constructor(t){var e,n,s,i,r;this.title=t,this.enabled=!0,this.app_name="GA_APP",this.timers={},e=window,n=document,s="script",e.GoogleAnalyticsObject="ga",e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,i=n.createElement(s),r=n.getElementsByTagName(s)[0],i.async=1,i.src="https://www.google-analytics.com/analytics.js",r.parentNode.insertBefore(i,r),cv("Service","Injected Google Analytics into page"),this.service=window.ga}load(t){if(!this.enabled)throw new Error("Google Analytics needs to be enabled before being initialised");if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.service("create",t,"auto"),this.service("send","pageview")}setUser(t){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`user|${t}`,()=>{cv("Service",`Set user ID: ${t}`),this.service("set","userId",t),this.event("authentication","user-id available")},100)}event(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`event|${t}|${e}|${n}|${s}`,()=>{cv("Service",`Event: ${t}, ${e}${n?", "+n:""}${s?", "+s:""}`),this.service("send","event",`${this.app_prefix?this.app_prefix+"_":""}${t}`,e,n,s)},100)}screen(t,e){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");t&&this.enabled&&this.timeout(`event|${t}|${e||this.app_name}`,()=>{cv("Service",`Screen: ${t}${e?", "+e:""}`),this.service("send","screenview",{appName:e||this.app_name,screenName:t})},100)}page(t,e=!1){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&(this.last_route=t||"/",this.timeout(`page|${t}`,()=>{cv("Service",`Page: ${t}`),this.service("send","pageview",`${e?location.origin:""}${t}`)},100))}timing(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`page|${t}|${e}|${n}|${s}`,()=>{cv("Service",`Timing: ${t}, ${e}, ${n}${s?", "+s:""}`),this.service("send","timing",t,e,n,s)},100)}timeout(t,e,n=300){this.timers[t]&&(clearTimeout(this.timers[t]),this.timers[t]=null),this.timers[t]=setTimeout(()=>{e instanceof Function&&e(),this.timers[t]=null},n)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(tu))},token:t,providedIn:"root"}),t})(),dv=(()=>{class t extends a_{constructor(t,e,n,s,i,r,o,l,a){super(),this._title=t,this._router=e,this._version=n,this._settings=s,this._overlay=i,this._analytics=r,this._hotkeys=o,this._build=l,this._test=a,this._route_trail=[],this._subjects={},this._observers={},this.set("system",null),this._build.parent=this._test.parent=this,this.init(),this.registerOverlays()}get Overlay(){return this._overlay}get Analytics(){return this._analytics}get Hotkeys(){return this._hotkeys}get Build(){return this._build}get Test(){return this._test}setting(t){return this._settings.get(t)}get name(){return this._settings.app_name}set title(t){const e=this.setting("app.title");this._title.setTitle(`${t?t+" | ":""}${e}`)}get title(){return this._title.getTitle()}get endpoint(){return`${location.origin}`}get engine_endpoint(){return"/control/api/"}get is_ready(){return this._settings.setup}notify(t,e,n,s){this._overlay.notify(`
${e}
`,n,s,t)}notifySuccess(t,e,n){this.notify("success",t,e,n)}notifyError(t,e,n){this.notify("error",t,e,n)}notifyInfo(t,e,n){this.notify("info",t,e,n)}log(t,e,n,s="debug",i=!1){this._settings.log(t,e,n,s,i)}navigate(t,e){const n=t instanceof Array?[...t]:[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})}navigateBack(){if(this._route_trail&&this._route_trail.length>0){const t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])}get(t){return this._subjects[t]&&this._subjects[t]instanceof Kl?this._subjects[t].getValue():null}listen(t,e){return this._observers[t]?this._observers[t].subscribe(e):null}set(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new Kl(e),this._observers[t]=this._subjects[t].asObservable())}init(){if(!this._settings.setup)return this.timeout("init",()=>this.init());this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(t=>{this.log("CACHE",`Update available: ${`current version is ${t.current.hash}`} ${`available version is ${t.available.hash}`}`),this.notifyInfo("Newer version of the app is available","Refresh",()=>location.reload())}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],()=>{this.navigate("bootstrap",{clear:!0})})}registerOverlays(){if(W_)for(const t of W_)this._overlay.register(t.id,t.config)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(tu),Ot(wd),Ot(nv),Ot(H_),Ot(Qf),Ot(hv),Ot(G_),Ot(Y_),Ot(q_))},token:t,providedIn:"root"}),t})();class pv extends c_{constructor(t,e){super(),this.service=t,this.route=e,this.commit_list=[],this.spec_list=[],this.spec_commit_list=[]}ngOnInit(){this.subscription("route.query",this.route.queryParamMap.subscribe(t=>{t.has("filter")&&(console.log("Filter:",t.get("filter")),this.timeout("filter_update",()=>{this.service.set("TEST.filter",t.get("filter")),console.log("Update filter")}))})),this.subscription("route.params",this.route.paramMap.subscribe(t=>{t.has("repo")&&(this.repo=t.get("repo"),this.timeout("repo_update",()=>this.service.set("TEST.repository",this.repo))),t.has("driver")?(this.driver=t.get("driver"),this.timeout("driver_update",()=>this.service.set("TEST.driver",this.driver)),this.test_results="",this.commit=null,this.updateCommits(),this.spec=null,this.spec_commit=null,this.updateSpecs(),this.show=!1):this.timeout("driver_update",()=>this.service.set("TEST.driver",""))})),this.updateCommits(),this.updateSpecs(),this.updateSpecCommits(),this.interval("update",()=>{this.updateCommits(),this.updateSpecs(),this.updateSpecCommits()},6e4)}updateCommits(){this.driver&&(this.loading_commits=!0,this.service.Build.driverCommits(this.driver,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:hl(t.date).format("DD MMM YYYY h:mm A")})),this.commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecs(){this.driver&&(this.loading_commits=!0,this.service.Test.query({repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_list=(t||[]).map(t=>({id:t,name:t})),this.spec||(this.spec=this.spec_list.reduce((t,e)=>t&&this.driver.localeCompare(t.id)>this.driver.localeCompare(e.id)?t:e,null),this.updateSpecCommits()),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecCommits(){this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:hl(t.date).format("DD MMM YYYY h:mm A")})),this.spec_commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}test(){if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";const t=t=>{t instanceof Object&&(t=t.error),this.test_results=this.styleResults(t||"");const e=this.service.get("TEST.results")||{},n=t.indexOf("exited with 0")>=0;e[`${this.repo}|${this.driver}`]=n?"passed":"failed",this.service.set("TEST.results",e),this.testing=!1,this.timeout("scroll",()=>this.body.nativeElement.scrollTo(0,this.body.nativeElement.scrollHeight),10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(t,t)}}styleResults(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')}}var fv=Xn({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function gv(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Spec Commit:"])),(t()(),Lr(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.spec_commit=n)&&s),s},$m,Pm)),ai(5,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(7,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(9,16384,null,0,jg,[[4,Lg]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,Zs(e,9).ngClassUntouched,Zs(e,9).ngClassTouched,Zs(e,9).ngClassPristine,Zs(e,9).ngClassDirty,Zs(e,9).ngClassValid,Zs(e,9).ngClassInvalid,Zs(e,9).ngClassPending)})}function mv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),Qr(1,2)],null,function(t,e){var n=e.component,s=qn(e,0,0,t(e,1,0,Zs(e.parent.parent,0),n.test_results,"html"));t(e,0,0,s)})}function _v(t){return to(0,[(t()(),Lr(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Repository:"])),(t()(),Lr(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Xr(6,null,["",""])),(t()(),Lr(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Driver:"])),(t()(),Lr(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Xr(11,null,["",""])),(t()(),Lr(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Commit:"])),(t()(),Lr(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.commit=n)&&s),s},$m,Pm)),ai(17,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(19,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(21,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Spec:"])),(t()(),Lr(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,i=t.component;return"ngModelChange"===e&&(s=!1!==(i.spec=n)&&s),"ngModelChange"===e&&(s=!1!==i.updateSpecCommits()&&s),s},$m,Pm)),ai(27,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(29,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(31,16384,null,0,jg,[[4,Lg]],null,null),(t()(),$r(16777216,null,null,1,null,gv)),ai(33,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Lr(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Lr(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Lr(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.force=n)&&s),s},Xm,Zm)),ai(38,49152,null,0,jm,[],{klass:[0,"klass"],label:[1,"label"]},null),ui(1024,null,Pg,function(t){return[t]},[jm]),ai(40,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(42,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Lr(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.debug=n)&&s),s},Xm,Zm)),ai(45,49152,null,0,jm,[],{klass:[0,"klass"],label:[1,"label"]},null),ui(1024,null,Pg,function(t){return[t]},[jm]),ai(47,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(49,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Lr(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Lr(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.test()&&s),s},s_,n_)),ui(5120,null,Pg,function(t){return[t]},[Jm]),ai(55,4767744,null,0,Jm,[sn,cn],null,{tapped:"tapped"}),ai(56,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Xr(-1,0,["Run!"])),(t()(),Lr(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),Xr(59,null,[" "," "])),(t()(),$r(16777216,null,null,1,null,mv)),ai(61,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,63).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,63).handleTouch(n)&&s),"tapped"===e&&(s=0!=(i.show=!i.show)&&s),s},qm,Ym)),ai(63,4440064,null,0,Fm,[sn,cn],{klass:[0,"klass"],center:[1,"center"]},null),ai(64,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,Zs(e,21).ngClassUntouched,Zs(e,21).ngClassTouched,Zs(e,21).ngClassPristine,Zs(e,21).ngClassDirty,Zs(e,21).ngClassValid,Zs(e,21).ngClassInvalid,Zs(e,21).ngClassPending),t(e,26,0,Zs(e,31).ngClassUntouched,Zs(e,31).ngClassTouched,Zs(e,31).ngClassPristine,Zs(e,31).ngClassDirty,Zs(e,31).ngClassValid,Zs(e,31).ngClassInvalid,Zs(e,31).ngClassPending),t(e,37,0,Zs(e,42).ngClassUntouched,Zs(e,42).ngClassTouched,Zs(e,42).ngClassPristine,Zs(e,42).ngClassDirty,Zs(e,42).ngClassValid,Zs(e,42).ngClassInvalid,Zs(e,42).ngClassPending),t(e,44,0,Zs(e,49).ngClassUntouched,Zs(e,49).ngClassTouched,Zs(e,49).ngClassPristine,Zs(e,49).ngClassDirty,Zs(e,49).ngClassValid,Zs(e,49).ngClassInvalid,Zs(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_down":"keyboard_arrow_up")})}function vv(t){return to(0,[(t()(),Lr(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["arrow_back"])),(t()(),Lr(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(-1,null,["Select a driver from the sidebar"]))],null,null)}function yv(t){return to(0,[ci(0,i_,[Fc]),Hr(671088640,1,{body:0}),(t()(),Lr(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,_v)),ai(4,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),$r(0,[["select",2]],null,0,null,vv))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,Zs(e,5))},null)}function wv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"app-workspace",[],null,null,null,yv,fv)),ai(1,245760,null,0,pv,[dv,ch],null,null)],function(t,e){t(e,1,0)},null)}var bv=Ls("app-workspace",pv,wv,{},{},[]);class Cv{constructor(){this.menu=!0,this.menuChange=new ki}toggleMenu(){this.menu=!this.menu,this.menuChange.emit(this.menu)}}var xv=Xn({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function Sv(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,2).handleTouch(n)&&s),"tapped"===e&&(s=!1!==i.toggleMenu()&&s),s},qm,Ym)),ai(2,4440064,null,0,Fm,[sn,cn],{klass:[0,"klass"]},null),ai(3,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["menu"])),(t()(),Lr(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Lr(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Lr(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),Xr(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}class Ev{transform(t){if(t.indexOf("/")>=0){const e=t.split("/");return e.splice(0,1),`
${e.map(t=>`
${t}
`).join('
keyboard_arrow_right
')}
`}return t}}class kv extends c_{constructor(t){super(),this.service=t,this.repository_list=[],this.status={}}ngOnInit(){this.service.set("TEST.repository",""),this.service.set("TEST.filter",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",()=>this.updateRepositoryList(),6e4),this.subscription("test_results",this.service.listen("TEST.filter",t=>{console.log("Filter:",t),this.search_str=t||"",this.filter(this.search_str)})),this.subscription("test_results",this.service.listen("TEST.results",t=>{this.status=t||{}})),this.subscription("repository",this.service.listen("TEST.repository",t=>{t&&(this.repo={id:t,name:t},this.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",t=>{this.driver=t}))}setRepository(t){this.service.navigate([t],{filter:this.search_str}),this.search_str="",this.updateDriverList()}setDriver(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t],{filter:this.search_str})}filter(t){this.filtered_list=(this.driver_list||[]).filter(e=>e.toLowerCase().indexOf(t.toLowerCase())>=0)}updateDriverList(){this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(t=>{this.driver_list=t||[],this.filter(this.search_str),this.loading=!1},t=>this.loading=!1)}updateRepositoryList(){this.service.Build.repositories().then(t=>{this.repository_list=(t||[]).map(t=>({id:t,name:t})),this.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),this.updateDriverList()})}}var Tv=Xn({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function Ov(t){return to(0,[(t()(),Lr(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.setDriver(t.context.$implicit)&&s),s},null,null)),ai(1,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Lr(3,0,null,null,1,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null)),Qr(4,1)],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]);var s=qn(e,3,0,t(e,4,0,Zs(e.parent,0),e.context.$implicit));t(e,3,0,s)})}function Iv(t){return to(0,[(t()(),Lr(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function Rv(t){return to(0,[ci(0,Ev,[]),(t()(),Lr(1,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,i=t.component;return"ngModelChange"===e&&(s=!1!==(i.repo=n)&&s),"ngModelChange"===e&&(s=!1!==i.setRepository(n.id)&&s),s},$m,Pm)),ai(4,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(6,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(8,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(9,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Lr(10,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(11,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["search"])),(t()(),Lr(13,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,i=t.component;return"input"===e&&(s=!1!==Zs(t,14)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==Zs(t,14).onTouched()&&s),"compositionstart"===e&&(s=!1!==Zs(t,14)._compositionStart()&&s),"compositionend"===e&&(s=!1!==Zs(t,14)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(i.search_str=n)&&s),"ngModelChange"===e&&(s=!1!==i.filter(n)&&s),s},null,null)),ai(14,16384,null,0,Ng,[cn,sn,[2,Mg]],null,null),ui(1024,null,Pg,function(t){return[t]},[Ng]),ai(16,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(18,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(19,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,Ov)),ai(21,278528,null,0,Al,[An,Rn,xn],{ngForOf:[0,"ngForOf"]},null),(t()(),$r(16777216,null,null,1,null,Iv)),ai(23,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,4,0,"simple",n.repository_list||Ss,"ACA Drivers"),t(e,6,0,n.repo),t(e,16,0,n.search_str),t(e,21,0,n.filtered_list),t(e,23,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,3,0,Zs(e,8).ngClassUntouched,Zs(e,8).ngClassTouched,Zs(e,8).ngClassPristine,Zs(e,8).ngClassDirty,Zs(e,8).ngClassValid,Zs(e,8).ngClassInvalid,Zs(e,8).ngClassPending),t(e,13,0,Zs(e,18).ngClassUntouched,Zs(e,18).ngClassTouched,Zs(e,18).ngClassPristine,Zs(e,18).ngClassDirty,Zs(e,18).ngClassValid,Zs(e,18).ngClassInvalid,Zs(e,18).ngClassPending)})}var Pv=Xn({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:20em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}.formatted-driver-name{display:flex;align-items:center}.formatted-driver-name .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:1.5em}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:28em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Av(t){return to(0,[(t()(),Lr(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var s=!0;return"menuChange"===e&&(s=!1!==(t.component.show_menu=n)&&s),s},Sv,xv)),ai(3,49152,null,0,Cv,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Lr(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Lr(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(6,0,null,null,1,"sidebar",[],null,null,null,Rv,Tv)),ai(7,245760,null,0,kv,[dv],null,null),(t()(),Lr(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Lr(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),ai(10,212992,null,0,xd,[Cd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function Mv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"app-root",[],null,null,null,Av,Pv)),ai(1,49152,null,0,pl,[],null,null)],null,null)}var Nv=Ls("app-root",pl,Mv,{},{},[]);class Dv{}class Vv{}var $v=ol(dl,[pl],function(t){return function(t){const e={},n=[];let s=!1;for(let i=0;i(t[e.name]=e.token,t),{}))),()=>lc),Fd(e),rv(n,s,i,r)];var o},[[2,pr],zd,Dt,iv,sv,Di]),Is(512,Ri,Ri,[[2,Ii]]),Is(131584,vr,vr,[Ji,$i,Dt,ie,Xe,Ri]),Is(1073742336,Vr,Vr,[vr]),Is(1073742336,Kc,Kc,[[3,Kc]]),Is(1024,Pd,$d,[[3,wd]]),Is(512,zu,Fu,[]),Is(512,Cd,Cd,[]),Is(256,Rd,{useHash:!0},[]),Is(1024,ml,Vd,[fl,[2,_l],Rd]),Is(512,vl,vl,[ml,fl]),Is(512,Hi,Hi,[]),Is(512,Oi,Cr,[Hi,[2,wr]]),Is(1024,pd,function(){return[[{path:"",component:pv},{path:":repo",component:pv},{path:":repo/:driver",component:pv}]]},[]),Is(1024,wd,jd,[vr,zu,Cd,vl,Dt,Oi,Hi,pd,Rd,[2,gd],[2,hd]]),Is(1073742336,Nd,Nd,[[2,Pd],[2,wd]]),Is(1073742336,Dv,Dv,[]),Is(1073742336,lv,lv,[]),Is(1073742336,Em,Em,[]),Is(1073742336,Tm,Tm,[]),Is(1073742336,Om,Om,[]),Is(1073742336,Wm,Wm,[]),Is(1073742336,e_,e_,[]),Is(1073742336,zm,zm,[]),Is(1073742336,sg,sg,[]),Is(1073742336,gf,gf,[]),Is(1073742336,Fp,Fp,[]),Is(1073742336,of,of,[]),Is(1073742336,Hf,Hf,[]),Is(1073742336,tg,tg,[]),Is(1073742336,l_,l_,[]),Is(1073742336,Kd,Kd,[]),Is(1073742336,Vv,Vv,[]),Is(1073742336,z_,z_,[]),Is(1073742336,F_,F_,[]),Is(1073742336,dl,dl,[]),Is(256,Ge,!0,[]),Is(256,D_,"XSRF-TOKEN",[]),Is(256,V_,"X-XSRF-TOKEN",[])])});(function(){if(oe)throw new Error("Cannot enable prod mode after platform setup.");re=!1})(),Qc().bootstrapModuleFactory($v).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file diff --git a/www/main-es5.33cf6bf03f100d29adae.js b/www/main-es5.33cf6bf03f100d29adae.js deleted file mode 100644 index c7187d06c31..00000000000 --- a/www/main-es5.33cf6bf03f100d29adae.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",r="hour",o="day",i="week",s="month",a="quarter",l="year",u=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,c=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},p={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+h(r,2,"0")+":"+h(o,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,s),o=e-r<0,i=t.clone().add(n+(o?-1:1),s);return Number(-(n+(e-r)/(o?r-i:i-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(u){return{M:s,y:l,w:i,d:o,h:r,m:n,s:e,ms:t,Q:a}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},d={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=d;var v=function(t){return t instanceof b},y=function(t,e,n){var r;if(!t)return null;if("string"==typeof t)g[t]&&(r=t),e&&(g[t]=e,r=t);else{var o=t.name;g[o]=t,r=o}return n||(f=r),r},m=function(t,e,n){if(v(t))return t.clone();var r=e?"string"==typeof e?{format:e,pl:n}:e:{};return r.date=t,new b(r)},_=p;_.l=y,_.i=v,_.w=function(t,e){return m(t,{locale:e.$L,utc:e.$u})};var b=function(){function h(t){this.$L=this.$L||y(t.locale,null,!0)||f,this.parse(t)}var p=h.prototype;return p.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(_.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(u);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},p.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},p.$utils=function(){return _},p.isValid=function(){return!("Invalid Date"===this.$d.toString())},p.isSame=function(t,e){var n=m(t);return this.startOf(e)<=n&&n<=this.endOf(e)},p.isAfter=function(t,e){return m(t)=0;a--)(o=t[a])&&(s=(i<3?o(s):i>3?o(e,n,s):o(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}function a(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function l(t,e,n,r){return new(n||(n=Promise))(function(o,i){function s(t){try{l(r.next(t))}catch(e){i(e)}}function a(t){try{l(r.throw(t))}catch(e){i(e)}}function l(t){t.done?o(t.value):new n(function(e){e(t.value)}).then(s,a)}l((r=r.apply(t,e||[])).next())})}function u(t,e){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,r=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function h(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(a){o={error:a}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function p(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(X);function st(t){return t}function at(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),rt(st,t)}function lt(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof o&&(n=t.pop()),null===r&&1===t.length&&t[0]instanceof R?t[0]:at(n)(et(t,r))}function ut(){return function(t){return t.lift(new ct(t))}}var ct=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var r=new ht(t,n),o=e.subscribe(r);return r.closed||(r.connection=n.connect()),o},t}(),ht=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},e}(E),pt=function(t){function e(e,n){var r=t.call(this)||this;return r.source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return o(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 m).add(this.source.subscribe(new ft(this.getSubject(),this))),t.closed?(this._connection=null,t=m.EMPTY):this._connection=t),t},e.prototype.refCount=function(){return ut()(this)},e}(R).prototype,dt={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:pt._subscribe},_isComplete:{value:pt._isComplete,writable:!0},getSubject:{value:pt.getSubject},connect:{value:pt.connect},refCount:{value:pt.refCount}},ft=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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}(j);function gt(t,e){return function(n){var r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new vt(r,e));var o=Object.create(n,dt);return o.source=n,o.subjectFactory=r,o}}var vt=function(){function t(t,e){this.subjectFactory=t,this.selector=e}return t.prototype.call=function(t,e){var n=this.selector,r=this.subjectFactory(),o=n(r).subscribe(t);return o.add(e.subscribe(r)),o},t}();function yt(){return new V}var mt="__parameters__";function _t(t,e,n){var r=function(t){return function(){for(var e=[],n=0;n ");else if("object"==typeof e){var i=[];for(var s in e)if(e.hasOwnProperty(s)){var a=e[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):Tt(a)))}o="{"+i.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+o+"]: "+t.replace(Xt,"\n ")}function ne(t,e){return new Error(ee(t,e,"StaticInjectorError"))}var re="ngDebugContext",oe="ngOriginalError",ie="ngErrorLogger",se=new Ut("AnalyzeForEntryComponents"),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({}),le=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt)}();function ue(t){return t[re]}function ce(t){return t[oe]}function he(t){for(var e=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return t.prototype.getInertBodyElement_XHR=function(t){t=""+t+"";try{t=encodeURI(t)}catch(r){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=""+t+"";try{var e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(n){return null}},t.prototype.getInertBodyElement_InertDocument=function(t){var e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},t.prototype.stripCustomNsAttrs=function(t){for(var e=t.attributes,n=e.length-1;0"),!0},t.prototype.endElement=function(t){var e=t.nodeName.toLowerCase();ke.hasOwnProperty(e)&&!xe.hasOwnProperty(e)&&(this.buf.push(""))},t.prototype.chars=function(t){this.buf.push(De(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}(),Me=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ne=/([^\#-~ |!])/g;function De(t){return t.replace(/&/g,"&").replace(Me,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ne,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}function je(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Ve=function(t){return 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",t}({}),Le=function(){return function(){}}(),ze=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ue=/^url\(([^)]+)\)$/,Fe=/([A-Z])/g;function He(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function Be(t){return!!t&&"function"==typeof t.then}function We(t){return!!t&&"function"==typeof t.subscribe}var Ge=null;function Ye(){if(!Ge){var t=Dt.Symbol;if(t&&t.iterator)Ge=t.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),n=0;n-1}(r)||"root"===o.providedIn&&r._def.isRoot))){var c=t._providers.length;return t._def.providers[c]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:c,token:e.token},t._providers[c]=Rr,t._providers[c]=Vr(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Vt(i)}}function Vr(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(jr(t,n[0]));case 2:return new e(jr(t,n[0]),jr(t,n[1]));case 3:return new e(jr(t,n[0]),jr(t,n[1]),jr(t,n[2]));default:for(var o=new Array(r),i=0;i=n.length)&&(e=n.length-1),e<0)return null;var r=n[e];return r.viewContainerParent=null,Hr(n,e),Xn.dirtyParentQueries(r),Ur(r),r}function zr(t,e,n){var r=e?dr(e,e.def.lastRenderRootNode):t.renderElement,o=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);Cr(n,2,o,i,void 0)}function Ur(t){Cr(t,3,null,null,void 0)}function Fr(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Hr(t,e){e>=t.length-1?t.pop():t.splice(e,1)}var Br=new Object;function Wr(t,e,n,r,o,i){return new Gr(t,e,n,r,o,i)}var Gr=function(t){function e(e,n,r,o,i,s){var a=t.call(this)||this;return a.selector=e,a.componentType=n,a._inputs=o,a._outputs=i,a.ngContentSelectors=s,a.viewDefFactory=r,a}return o(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){var t=[],e=this._inputs;for(var n in e)t.push({propName:n,templateName:e[n]});return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var t=[];for(var e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,r){if(!r)throw new Error("ngModule should be provided");var o=wr(this.viewDefFactory),i=o.nodes[0].element.componentProvider.nodeIndex,s=Xn.createRootView(t,e||[],n,o,r,Br),a=Zn(s,i).instance;return n&&s.renderer.setAttribute(qn(s,0).renderElement,"ng-version",_n.full),new Yr(s,new Qr(s),a)},e}(en),Yr=function(t){function e(e,n,r){var o=t.call(this)||this;return o._view=e,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o.hostView=n,o.changeDetectorRef=n,o.instance=r,o}return o(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return new pn(qn(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new to(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}(tn);function qr(t,e,n){return new Zr(t,e,n)}var Zr=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 pn(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new to(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=pr(t),t=t.parent;return t?new to(t,e):new to(this._view,null)},enumerable:!0,configurable:!0}),t.prototype.clear=function(){for(var t=this._embeddedViews.length-1;t>=0;t--){var e=Lr(this._data,t);Xn.destroyView(e)}},t.prototype.get=function(t){var e=this._embeddedViews[t];if(e){var n=new Qr(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 r=t.createEmbeddedView(e||{});return this.insert(r,n),r},t.prototype.createComponent=function(t,e,n,r,o){var i=n||this.parentInjector;o||t instanceof ln||(o=i.get(un));var s=t.create(i,r,void 0,o);return this.insert(s.hostView,e),s},t.prototype.insert=function(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n,r,o,i,s=t;return i=(n=this._data).viewContainer._embeddedViews,null==(r=e)&&(r=i.length),(o=s._view).viewContainerParent=this._view,Fr(i,r,o),function(t,e){var n=hr(e);if(n&&n!==t&&!(16&e.state)){e.state|=16;var r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(e),function(t,n){if(!(4&n.flags)){e.parent.def.nodeFlags|=4,n.flags|=4;for(var r=n.parent;r;)r.childFlags|=4,r=r.parent}}(0,e.parentNodeDef)}}(n,o),Xn.dirtyParentQueries(o),zr(n,r>0?i[r-1]:null,o),s.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,r,o,i,s,a=this._embeddedViews.indexOf(t._view);return o=e,s=(i=(n=this._data).viewContainer._embeddedViews)[r=a],Hr(i,r),null==o&&(o=i.length),Fr(i,o,s),Xn.dirtyParentQueries(s),Ur(s),zr(n,o>0?i[o-1]:null,s),t},t.prototype.indexOf=function(t){return this._embeddedViews.indexOf(t._view)},t.prototype.remove=function(t){var e=Lr(this._data,t);e&&Xn.destroyView(e)},t.prototype.detach=function(t){var e=Lr(this._data,t);return e?new Qr(e):null},t}();function $r(t){return new Qr(t)}var Qr=function(){function t(t){this._view=t,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){return Cr(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(){lr(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{Xn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}},t.prototype.checkNoChanges=function(){Xn.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)),Xn.destroyView(this._view)},t.prototype.detachFromAppRef=function(){this._appRef=null,Ur(this._view),Xn.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 Xr(t,e){return new Kr(t,e)}var Kr=function(t){function e(e,n){var r=t.call(this)||this;return r._parentView=e,r._def=n,r}return o(e,t),e.prototype.createEmbeddedView=function(t){return new Qr(Xn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new pn(qn(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),e}(Vn);function Jr(t,e){return new to(t,e)}var to=function(){function t(t,e){this.view=t,this.elDef=e}return t.prototype.get=function(t,e){return void 0===e&&(e=Gt.THROW_IF_NOT_FOUND),Xn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:tr(t)},e)},t}();function eo(t,e){var n=t.def.nodes[e];if(1&n.flags){var r=qn(t,n.nodeIndex);return n.element.template?r.template:r.renderElement}if(2&n.flags)return Yn(t,n.nodeIndex).renderText;if(20240&n.flags)return Zn(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function no(t){return new ro(t.renderer)}var ro=function(){function t(t){this.delegate=t}return t.prototype.selectRootElement=function(t){return this.delegate.selectRootElement(t)},t.prototype.createElement=function(t,e){var n=h(Pr(e),2),r=this.delegate.createElement(n[1],n[0]);return t&&this.delegate.appendChild(t,r),r},t.prototype.createViewRoot=function(t){return t},t.prototype.createTemplateAnchor=function(t){var e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e},t.prototype.createText=function(t,e){var n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n},t.prototype.projectNodes=function(t,e){for(var n=0;n0,e.provider.value,e.provider.deps);if(e.outputs.length)for(var r=0;r0,r=e.provider;switch(201347067&e.flags){case 512:return xo(t,e.parent,n,r.value,r.deps);case 1024:return function(t,e,n,r,o){var i=o.length;switch(i){case 0:return r();case 1:return r(Eo(t,e,n,o[0]));case 2:return r(Eo(t,e,n,o[0]),Eo(t,e,n,o[1]));case 3:return r(Eo(t,e,n,o[0]),Eo(t,e,n,o[1]),Eo(t,e,n,o[2]));default:for(var s=Array(i),a=0;a0&&(o=setTimeout(function(){r._callbacks=r._callbacks.filter(function(t){return t.timeoutId!==o}),t(r._didWork,r.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:o,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}(),gi=function(){function t(){this._applications=new Map,vi.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),vi.findTestabilityInTree(this,t,e)},s([a("design:paramtypes",[])],t)}(),vi=new(function(){function t(){}return t.prototype.addToWindow=function(t){},t.prototype.findTestabilityInTree=function(t,e,n){return null},t}()),yi=new Ut("AllowMultipleToken"),mi=function(){return function(t,e){this.name=t,this.token=e}}();function _i(t,e,n){void 0===n&&(n=[]);var r="Platform: "+e,o=new Ut(r);return function(e){void 0===e&&(e=[]);var i=bi();if(!i||i.injector.get(yi,!1))if(t)t(n.concat(e).concat({provide:o,useValue:!0}));else{var s=n.concat(e).concat({provide:o,useValue:!0});!function(t){if(pi&&!pi.destroyed&&!pi.injector.get(yi,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");pi=t.get(wi);var e=t.get(Uo,null);e&&e.forEach(function(t){return t()})}(Gt.create({providers:s,name:r}))}return function(t){var e=bi();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}(o)}}function bi(){return pi&&!pi.destroyed?pi:null}var wi=function(){function t(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return t.prototype.bootstrapModuleFactory=function(t,e){var n,r=this,o="noop"===(n=e?e.ngZone:void 0)?new di:("zone.js"===n?void 0:n)||new si({enableLongStackTrace:ge()}),i=[{provide:si,useValue:o}];return o.run(function(){var e=Gt.create({providers:i,parent:r.injector,name:t.moduleType.name}),n=t.create(e),s=n.injector.get(pe,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy(function(){return Si(r._modules,n)}),o.runOutsideAngular(function(){return o.onError.subscribe({next:function(t){s.handleError(t)}})}),function(t,e,o){try{var i=((s=n.injector.get(jo)).runInitializers(),s.donePromise.then(function(){return r._moduleDoBootstrap(n),n}));return Be(i)?i.catch(function(n){throw e.runOutsideAngular(function(){return t.handleError(n)}),n}):i}catch(a){throw e.runOutsideAngular(function(){return t.handleError(a)}),a}var s}(s,o)})},t.prototype.bootstrapModule=function(t,e){var n=this;void 0===e&&(e=[]);var r=Ci({},e);return function(t,e,n){return t.get(Ko).createCompiler([e]).compileModuleAsync(n)}(this.injector,r,t).then(function(t){return n.bootstrapModuleFactory(t,r)})},t.prototype._moduleDoBootstrap=function(t){var e=t.injector.get(xi);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(function(t){return e.bootstrap(t)});else{if(!t.instance.ngDoBootstrap)throw new Error("The module "+Tt(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}();function Ci(t,e){return Array.isArray(e)?e.reduce(Ci,t):i({},t,e)}var xi=function(){function t(t,e,n,r,o,i){var s=this;this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ge(),this._zone.onMicrotaskEmpty.subscribe({next:function(){s._zone.run(function(){s.tick()})}});var a=new R(function(t){s._stable=s._zone.isStable&&!s._zone.hasPendingMacrotasks&&!s._zone.hasPendingMicrotasks,s._zone.runOutsideAngular(function(){t.next(s._stable),t.complete()})}),l=new R(function(t){var e;s._zone.runOutsideAngular(function(){e=s._zone.onStable.subscribe(function(){si.assertNotInAngularZone(),ii(function(){s._stable||s._zone.hasPendingMacrotasks||s._zone.hasPendingMicrotasks||(s._stable=!0,t.next(!0))})})});var n=s._zone.onUnstable.subscribe(function(){si.assertInAngularZone(),s._stable&&(s._stable=!1,s._zone.runOutsideAngular(function(){t.next(!1)}))});return function(){e.unsubscribe(),n.unsubscribe()}});this.isStable=lt(a,l.pipe(function(t){return ut()(gt(yt)(t))}))}var e;return e=t,t.prototype.bootstrap=function(t,e){var n,r=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 en?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);var o=n instanceof ln?null:this._injector.get(un),i=n.create(Gt.NULL,[],e||n.selector,o);i.onDestroy(function(){r._unloadComponent(i)});var s=i.injector.get(fi,null);return s&&i.injector.get(gi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ge()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i},t.prototype.tick=function(){var t,n,r,o,i=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var s=e._tickScope();try{this._runningTick=!0;try{for(var a=c(this._views),l=a.next();!l.done;l=a.next())l.value.detectChanges()}catch(p){t={error:p}}finally{try{l&&!l.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}if(this._enforceNoNewChanges)try{for(var u=c(this._views),h=u.next();!h.done;h=u.next())h.value.checkNoChanges()}catch(d){r={error:d}}finally{try{h&&!h.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}catch(f){this._zone.runOutsideAngular(function(){return i._exceptionHandler.handleError(f)})}finally{this._runningTick=!1,ri(s)}},t.prototype.attachView=function(t){var e=t;this._views.push(e),e.attachToAppRef(this)},t.prototype.detachView=function(t){var e=t;Si(this._views,e),e.detachFromAppRef()},t.prototype._loadComponent=function(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Ho,[]).concat(this._bootstrapListeners).forEach(function(e){return e(t)})},t.prototype._unloadComponent=function(t){this.detachView(t.hostView),Si(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._tickScope=ni("ApplicationRef#tick()"),t}();function Si(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}var Ei=function(){return function(){}}(),Oi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},ki=function(){function t(t,e){this._compiler=t,this._config=e||Oi}return t.prototype.load=function(t){return this._compiler instanceof Xo?this.loadFactory(t):this.loadAndCompile(t)},t.prototype.loadAndCompile=function(t){var e=this,r=h(t.split("#"),2),o=r[0],i=r[1];return void 0===i&&(i="default"),n("zn8P")(o).then(function(t){return t[i]}).then(function(t){return Pi(t,o,i)}).then(function(t){return e._compiler.compileModuleAsync(t)})},t.prototype.loadFactory=function(t){var e=h(t.split("#"),2),r=e[0],o=e[1],i="NgFactory";return void 0===o&&(o="default",i=""),n("zn8P")(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(t){return t[o+i]}).then(function(t){return Pi(t,r,o)})},t}();function Pi(t,e,n){if(!t)throw new Error("Cannot find '"+n+"' in '"+e+"'");return t}var Ti=function(){return function(t,e){this.name=t,this.callback=e}}(),Ii=function(){function t(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Ri&&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}(),Ri=function(t){function e(e,n,r){var o=t.call(this,e,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=e,o}return o(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,p([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,r){e.childNodes.forEach(function(e){e instanceof Ri&&(n(e)&&r.push(e),t(e,n,r))})}(this,t,e),e},e.prototype.queryAllNodes=function(t){var e=[];return function t(e,n,r){e instanceof Ri&&e.childNodes.forEach(function(e){n(e)&&r.push(e),e instanceof Ri&&t(e,n,r)})}(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}(Ii),Ai=new Map,Mi=function(t){return Ai.get(t)||null};function Ni(t){Ai.set(t.nativeNode,t)}var Di=_i(null,"core",[{provide:Fo,useValue:"unknown"},{provide:wi,deps:[Gt]},{provide:gi,deps:[]},{provide:Bo,deps:[]}]),ji=new Ut("LocaleId");function Vi(){return Dn}function Li(){return jn}function zi(t){return t||"en-US"}function Ui(t){var e=[];return t.onStable.subscribe(function(){for(;e.length;)e.pop()()}),function(t){e.push(t)}}var Fi=function(){return function(t){}}();function Hi(t,e,n,r,o,i){t|=1;var s=yr(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s.matchedQueries,matchedQueryIds:s.matchedQueryIds,references:s.references,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?wr(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Kn},provider:null,text:null,query:null,ngContent:null}}function Bi(t,e,n,r,o,i,s,a,l,u,c,p){var d;void 0===s&&(s=[]),u||(u=Kn);var f=yr(n),g=f.matchedQueries,v=f.references,y=f.matchedQueryIds,m=null,_=null;i&&(m=(d=h(Pr(i),2))[0],_=d[1]),a=a||[];for(var b=new Array(a.length),w=0;w0)u=g,ss(g)||(c=g);else for(;u&&f===u.nodeIndex+u.childCount;){var m=u.parent;m&&(m.childFlags|=u.childFlags,m.childMatchedQueries|=u.childMatchedQueries),c=(u=m)&&ss(u)?u.renderParent:u}}return{factory:null,nodeFlags:s,rootNodeFlags:a,nodeMatchedQueries:l,flags:t,nodes:e,updateDirectives:n||Kn,updateRenderer:r||Kn,handleEvent:function(t,n,r,o){return e[n].element.handleEvent(t,r,o)},bindingCount:o,outputCount:i,lastRenderRootNode:d}}function ss(t){return 0!=(1&t.flags)&&null===t.element.name}function as(t,e,n){var r=e.element&&e.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.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 o=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=o&&e.nodeIndex+e.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.nodeIndex+"!")}}function ls(t,e,n,r){var o=hs(t.root,t.renderer,t,e,n);return ps(o,t.component,r),ds(o),o}function us(t,e,n){var r=hs(t,t.renderer,null,null,e);return ps(r,n,n),ds(r),r}function cs(t,e,n,r){var o,i=e.element.componentRendererType;return o=i?t.root.rendererFactory.createRenderer(r,i):t.root.renderer,hs(t.root,o,t,e.element.componentProvider,n)}function hs(t,e,n,r,o){var i=new Array(o.nodes.length),s=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(o.bindingCount),disposables:s,initIndex:-1}}function ps(t,e,n){t.component=e,t.context=n}function ds(t){var e;fr(t)&&(e=qn(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);for(var n=t.def,r=t.nodes,o=0;o0&&qi(t,e,0,n)&&(d=!0),p>1&&qi(t,e,1,r)&&(d=!0),p>2&&qi(t,e,2,o)&&(d=!0),p>3&&qi(t,e,3,i)&&(d=!0),p>4&&qi(t,e,4,s)&&(d=!0),p>5&&qi(t,e,5,a)&&(d=!0),p>6&&qi(t,e,6,l)&&(d=!0),p>7&&qi(t,e,7,u)&&(d=!0),p>8&&qi(t,e,8,c)&&(d=!0),p>9&&qi(t,e,9,h)&&(d=!0),d}(t,e,n,r,o,i,s,a,l,u,c,h);case 2:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=!1,d=e.bindings,f=d.length;if(f>0&&sr(t,e,0,n)&&(p=!0),f>1&&sr(t,e,1,r)&&(p=!0),f>2&&sr(t,e,2,o)&&(p=!0),f>3&&sr(t,e,3,i)&&(p=!0),f>4&&sr(t,e,4,s)&&(p=!0),f>5&&sr(t,e,5,a)&&(p=!0),f>6&&sr(t,e,6,l)&&(p=!0),f>7&&sr(t,e,7,u)&&(p=!0),f>8&&sr(t,e,8,c)&&(p=!0),f>9&&sr(t,e,9,h)&&(p=!0),p){var g=e.text.prefix;f>0&&(g+=os(n,d[0])),f>1&&(g+=os(r,d[1])),f>2&&(g+=os(o,d[2])),f>3&&(g+=os(i,d[3])),f>4&&(g+=os(s,d[4])),f>5&&(g+=os(a,d[5])),f>6&&(g+=os(l,d[6])),f>7&&(g+=os(u,d[7])),f>8&&(g+=os(c,d[8])),f>9&&(g+=os(h,d[9]));var v=Yn(t,e.nodeIndex).renderText;t.renderer.setValue(v,g)}return p}(t,e,n,r,o,i,s,a,l,u,c,h);case 16384:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=Zn(t,e.nodeIndex),d=p.instance,f=!1,g=void 0,v=e.bindings.length;return v>0&&ir(t,e,0,n)&&(f=!0,g=ko(t,p,e,0,n,g)),v>1&&ir(t,e,1,r)&&(f=!0,g=ko(t,p,e,1,r,g)),v>2&&ir(t,e,2,o)&&(f=!0,g=ko(t,p,e,2,o,g)),v>3&&ir(t,e,3,i)&&(f=!0,g=ko(t,p,e,3,i,g)),v>4&&ir(t,e,4,s)&&(f=!0,g=ko(t,p,e,4,s,g)),v>5&&ir(t,e,5,a)&&(f=!0,g=ko(t,p,e,5,a,g)),v>6&&ir(t,e,6,l)&&(f=!0,g=ko(t,p,e,6,l,g)),v>7&&ir(t,e,7,u)&&(f=!0,g=ko(t,p,e,7,u,g)),v>8&&ir(t,e,8,c)&&(f=!0,g=ko(t,p,e,8,c,g)),v>9&&ir(t,e,9,h)&&(f=!0,g=ko(t,p,e,9,h,g)),g&&d.ngOnChanges(g),65536&e.flags&&Gn(t,256,e.nodeIndex)&&d.ngOnInit(),262144&e.flags&&d.ngDoCheck(),f}(t,e,n,r,o,i,s,a,l,u,c,h);case 32:case 64:case 128:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=e.bindings,d=!1,f=p.length;if(f>0&&sr(t,e,0,n)&&(d=!0),f>1&&sr(t,e,1,r)&&(d=!0),f>2&&sr(t,e,2,o)&&(d=!0),f>3&&sr(t,e,3,i)&&(d=!0),f>4&&sr(t,e,4,s)&&(d=!0),f>5&&sr(t,e,5,a)&&(d=!0),f>6&&sr(t,e,6,l)&&(d=!0),f>7&&sr(t,e,7,u)&&(d=!0),f>8&&sr(t,e,8,c)&&(d=!0),f>9&&sr(t,e,9,h)&&(d=!0),d){var g=$n(t,e.nodeIndex),v=void 0;switch(201347067&e.flags){case 32:v=new Array(p.length),f>0&&(v[0]=n),f>1&&(v[1]=r),f>2&&(v[2]=o),f>3&&(v[3]=i),f>4&&(v[4]=s),f>5&&(v[5]=a),f>6&&(v[6]=l),f>7&&(v[7]=u),f>8&&(v[8]=c),f>9&&(v[9]=h);break;case 64:v={},f>0&&(v[p[0].name]=n),f>1&&(v[p[1].name]=r),f>2&&(v[p[2].name]=o),f>3&&(v[p[3].name]=i),f>4&&(v[p[4].name]=s),f>5&&(v[p[5].name]=a),f>6&&(v[p[6].name]=l),f>7&&(v[p[7].name]=u),f>8&&(v[p[8].name]=c),f>9&&(v[p[9].name]=h);break;case 128:var y=n;switch(f){case 1:v=y.transform(n);break;case 2:v=y.transform(r);break;case 3:v=y.transform(r,o);break;case 4:v=y.transform(r,o,i);break;case 5:v=y.transform(r,o,i,s);break;case 6:v=y.transform(r,o,i,s,a);break;case 7:v=y.transform(r,o,i,s,a,l);break;case 8:v=y.transform(r,o,i,s,a,l,u);break;case 9:v=y.transform(r,o,i,s,a,l,u,c);break;case 10:v=y.transform(r,o,i,s,a,l,u,c,h)}}g.value=v}return d}(t,e,n,r,o,i,s,a,l,u,c,h);default:throw"unreachable"}}(t,e,r,o,i,s,a,l,u,c,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){for(var r=!1,o=0;o0&&ar(t,e,0,n),p>1&&ar(t,e,1,r),p>2&&ar(t,e,2,o),p>3&&ar(t,e,3,i),p>4&&ar(t,e,4,s),p>5&&ar(t,e,5,a),p>6&&ar(t,e,6,l),p>7&&ar(t,e,7,u),p>8&&ar(t,e,8,c),p>9&&ar(t,e,9,h)}(t,e,r,o,i,s,a,l,u,c,h,p):function(t,e,n){for(var r=0;r0){var i=new Set(t.modules);Ds.forEach(function(e,r){if(i.has(kt(r).providedIn)){var o={token:r,flags:e.flags|(n?4096:0),deps:mr(e.deps),value:e.value,index:t.providers.length};t.providers.push(o),t.providersByKey[tr(r)]=o}})}}(t=t.factory(function(){return Kn})),t):t}(r))}var Ns=new Map,Ds=new Map,js=new Map;function Vs(t){var e;Ns.set(t.token,t),"function"==typeof t.token&&(e=kt(t.token))&&"function"==typeof e.providedIn&&Ds.set(t.token,t)}function Ls(t,e){var n=wr(e.viewDefFactory),r=wr(n.nodes[0].element.componentView);js.set(t,r)}function zs(){Ns.clear(),Ds.clear(),js.clear()}function Us(t){if(0===Ns.size)return t;var e=function(t){for(var e=[],n=null,r=0;r0?fa(t,e[n]):e[n]:null}var ga=n("Wgwc"),va=function(){function t(){if(this.build=ga(),!t.init){var e=ga();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][APP] "+pa+" - "+t+" | "+e):console[n].apply(console,["%c[ACA]%c[APP] %c"+pa+" - "+t+" | "+e].concat(["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0",t.init=!1,t}(),ya=function(){return function(){this.show_menu=!0}}(),ma=function(){return function(){}}(),_a=new Ut("Location Initialized"),ba=function(){return function(){}}(),wa=new Ut("appBaseHref"),Ca=function(){function t(t,n){var r=this;this._subject=new Ao,this._urlChangeListeners=[],this._platformStrategy=t;var o=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=e.stripTrailingSlash(xa(o)),this._platformStrategy.onPopState(function(t){r._subject.emit({url:r.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,n){return void 0===n&&(n=""),this.path()==this.normalize(t+e.normalizeQueryParams(n))},t.prototype.normalize=function(t){return e.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,xa(t)))},t.prototype.prepareExternalUrl=function(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)},t.prototype.go=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.pushState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},t.prototype.replaceState=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.replaceState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},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=function(t){return t&&"?"!==t[0]?"?"+t:t},t.joinWithSlash=function(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},t.stripTrailingSlash=function(t){var e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)},t}();function xa(t){return t.replace(/\/index.html$/,"")}var Sa=function(t){function e(e,n){var r=t.call(this)||this;return r._platformLocation=e,r._baseHref="",null!=n&&(r._baseHref=n),r}return o(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=Ca.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(ba),Ea=function(t){function e(e,n){var r=t.call(this)||this;if(r._platformLocation=e,null==n&&(n=r._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 r._baseHref=n,r}return o(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 Ca.joinWithSlash(this._baseHref,t)},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.pathname+Ca.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?""+e+n:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Ca.normalizeQueryParams(r));this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(ba),Oa=void 0,ka=["en",[["a","p"],["AM","PM"],Oa],[["AM","PM"],Oa,Oa],[["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"]],Oa,[["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"]],Oa,[["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}",Oa,"{1} 'at' {0}",Oa],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}],Pa={},Ta=function(t){return 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",t}({}),Ia=new Ut("UseV4Plurals"),Ra=function(){return function(){}}(),Aa=function(t){function e(e,n){var r=t.call(this)||this;return r.locale=e,r.deprecatedPluralFn=n,r}return o(e,t),e.prototype.getPluralCategory=function(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){var e=t.toLowerCase().replace(/_/g,"-"),n=Pa[e];if(n)return n;var r=e.split("-")[0];if(n=Pa[r])return n;if("en"===r)return ka;throw new Error('Missing locale data for the locale "'+t+'".')}(t)[18]}(e||this.locale)(t)){case Ta.Zero:return"zero";case Ta.One:return"one";case Ta.Two:return"two";case Ta.Few:return"few";case Ta.Many:return"many";default:return"other"}},e}(Ra);function Ma(t,e){var n,r;e=encodeURIComponent(e);try{for(var o=c(t.split(";")),i=o.next();!i.done;i=o.next()){var s=i.value,a=s.indexOf("="),l=h(-1==a?[s,""]:[s.slice(0,a),s.slice(a+1)],2),u=l[1];if(l[0].trim()===e)return decodeURIComponent(u)}}catch(p){n={error:p}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}var Na=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(un);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(n.injector)}else this._moduleRef=null;var r=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(sn)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(r,this._viewContainerRef.length,e,this.ngComponentOutletContent)}},t.prototype.ngOnDestroy=function(){this._moduleRef&&this._moduleRef.destroy()},t}(),Da=function(){function t(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}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}(),ja=function(){function t(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,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){ge()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(t)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#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(r){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;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,r,o){if(null==t.previousIndex){var i=e._viewContainer.createEmbeddedView(e._template,new Da(null,e._ngForOf,-1,-1),o),s=new Va(t,i);n.push(s)}else null==o?e._viewContainer.remove(r):(i=e._viewContainer.get(r),e._viewContainer.move(i,o),s=new Va(t,i),n.push(s))});for(var r=0;r0)for(var n=this.count>=this.total?this.total:this.count,r=this.ring,o=0;o=2;return function(r){return r.pipe(t?hl(function(e,n){return t(e,n,r)}):st,vl(1),n?Sl(e):Cl(function(){return new il}))}}function Pl(t){return function(e){var n=new Tl(t),r=e.lift(n);return n.caught=r}}var Tl=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new Il(t,this.selector,this.caught))},t}(),Il=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.selector=n,o.caught=r,o}return o(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(o){return void t.prototype.error.call(this,o)}this._unsubscribeAndRecycle();var r=new U(this,void 0,void 0);this.add(r),Q(this,n,void 0,void 0,r)}},e}(X);function Rl(t){return function(e){return 0===t?tl():e.lift(new Al(t))}}var Al=function(){function t(t){if(this.total=t,this.total<0)throw new gl}return t.prototype.call=function(t,e){return e.subscribe(new Ml(t,this.total))},t}(),Ml=function(t){function e(e,n){var r=t.call(this,e)||this;return r.total=n,r.count=0,r}return o(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}(E);function Nl(t,e){var n=arguments.length>=2;return function(r){return r.pipe(t?hl(function(e,n){return t(e,n,r)}):st,Rl(1),n?Sl(e):Cl(function(){return new il}))}}var Dl=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new jl(t,this.predicate,this.thisArg,this.source))},t}(),jl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.predicate=n,i.thisArg=r,i.source=o,i.index=0,i.thisArg=r||i,i}return o(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(E);function Vl(t,e){return"function"==typeof e?function(n){return n.pipe(Vl(function(n,r){return nt(t(n,r)).pipe(K(function(t,o){return e(n,t,r,o)}))}))}:function(e){return e.lift(new Ll(t))}}var Ll=function(){function t(t){this.project=t}return t.prototype.call=function(t,e){return e.subscribe(new zl(t,this.project))},t}(),zl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.project=n,r.index=0,r}return o(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(r){return void this.destination.error(r)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var r=this.innerSubscription;r&&r.unsubscribe();var o=new U(this,void 0,void 0);this.destination.add(o),this.innerSubscription=Q(this,t,e,n,o)},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,r,o){this.destination.next(e)},e}(X);function Ul(){for(var t=[],e=0;e0?et(t,n):tl(n):el(t[0]),e)}}function Hl(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new Bl(t,e,n))}}var Bl=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new Wl(t,this.accumulator,this.seed,this.hasSeed))},t}(),Wl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.accumulator=n,i._seed=r,i.hasSeed=o,i.index=0,i}return o(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(r){this.destination.error(r)}this.seed=e,this.destination.next(e)},e}(E);function Gl(t,e){return rt(t,e,1)}var Yl=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new ql(t,this.callback))},t}(),ql=function(t){function e(e,n){var r=t.call(this,e)||this;return r.add(new m(n)),r}return o(e,t),e}(E),Zl=null;function $l(){return Zl}var Ql,Xl=function(t){function e(){var e=t.call(this)||this;e._animationPrefix=null,e._transitionEnd=null;try{var n=e.createElement("div",document);if(null!=e.getStyle(n,"animationName"))e._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o0},e.prototype.tagName=function(t){return t.tagName},e.prototype.attributeMap=function(t){for(var e=new Map,n=t.attributes,r=0;r0;s||(s=t[i]=[]);var l=Du(e)?Zone.root:Zone.current;if(0===s.length)s.push({zone:l,handler:o});else{for(var u=!1,c=0;c-1},e}(fu),Bu=["alt","control","meta","shift"],Wu={alt:function(t){return t.altKey},control:function(t){return t.ctrlKey},meta:function(t){return t.metaKey},shift:function(t){return t.shiftKey}},Gu=function(t){function e(e){return t.call(this,e)||this}var n;return o(e,t),n=e,e.prototype.supports=function(t){return null!=n.parseEventName(t)},e.prototype.addEventListener=function(t,e,r){var o=n.parseEventName(e),i=n.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return $l().onAndCancel(t,o.domEventName,i)})},e.parseEventName=function(t){var e=t.toLowerCase().split("."),r=e.shift();if(0===e.length||"keydown"!==r&&"keyup"!==r)return null;var o=n._normalizeKey(e.pop()),i="";if(Bu.forEach(function(t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),i+=t+".")}),i+=o,0!=e.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s},e.getEventFullKey=function(t){var e="",n=$l().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),Bu.forEach(function(r){r!=n&&(0,Wu[r])(t)&&(e+=r+".")}),e+=n},e.eventCallback=function(t,e,r){return function(o){n.getEventFullKey(o)===t&&r.runGuarded(function(){return e(o)})}},e._normalizeKey=function(t){switch(t){case"esc":return"escape";default:return t}},e}(fu),Yu=function(){return function(){}}(),qu=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n}return o(e,t),e.prototype.sanitize=function(t,e){if(null==e)return null;switch(t){case Ve.NONE:return e;case Ve.HTML:return e instanceof $u?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){var n=null;try{Ce=Ce||new ve(t);var r=e?String(e):"";n=Ce.getInertBodyElement(r);var o=5,i=r;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=Ce.getInertBodyElement(r)}while(r!==i);var s=new Ae,a=s.sanitizeChildren(je(n)||n);return ge()&&s.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n)for(var l=je(n)||n;l.firstChild;)l.removeChild(l.firstChild)}}(this._doc,String(e)));case Ve.STYLE:return e instanceof Qu?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";var e=t.match(Ue);return e&&_e(e[1])===e[1]||t.match(ze)&&function(t){for(var e=!0,n=!0,r=0;rt.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||r.length0?t[t.length-1]:null}function Vc(t,e){for(var n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Lc(t){return We(t)?t:Be(t)?nt(Promise.resolve(t)):nl(t)}function zc(t,e,n){return n?function(t,e){return Nc(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!Bc(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(var r in n.children){if(!e.children[r])return!1;if(!t(e.children[r],n.children[r]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(function(n){return e[n]===t[n]})}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,r,o){if(n.segments.length>o.length)return!!Bc(s=n.segments.slice(0,o.length),o)&&!r.hasChildren();if(n.segments.length===o.length){if(!Bc(n.segments,o))return!1;for(var i in r.children){if(!n.children[i])return!1;if(!t(n.children[i],r.children[i]))return!1}return!0}var s=o.slice(0,n.segments.length),a=o.slice(n.segments.length);return!!Bc(n.segments,s)&&!!n.children[xc]&&e(n.children[xc],r,a)}(e,n,n.segments)}(t.root,e.root)}var Uc=function(){function t(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}return Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=Ec(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return qc.serialize(this)},t}(),Fc=function(){function t(t,e){var n=this;this.segments=t,this.children=e,this.parent=null,Vc(e,function(t,e){return t.parent=n})}return t.prototype.hasChildren=function(){return this.numberOfChildren>0},Object.defineProperty(t.prototype,"numberOfChildren",{get:function(){return Object.keys(this.children).length},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return Zc(this)},t}(),Hc=function(){function t(t,e){this.path=t,this.parameters=e}return Object.defineProperty(t.prototype,"parameterMap",{get:function(){return this._parameterMap||(this._parameterMap=Ec(this.parameters)),this._parameterMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return th(this)},t}();function Bc(t,e){return t.length===e.length&&t.every(function(t,n){return t.path===e[n].path})}function Wc(t,e){var n=[];return Vc(t.children,function(t,r){r===xc&&(n=n.concat(e(t,r)))}),Vc(t.children,function(t,r){r!==xc&&(n=n.concat(e(t,r)))}),n}var Gc=function(){return function(){}}(),Yc=function(){function t(){}return t.prototype.parse=function(t){var e=new ih(t);return new Uc(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())},t.prototype.serialize=function(t){var e,n;return"/"+function t(e,n){if(!e.hasChildren())return Zc(e);if(n){var r=e.children[xc]?t(e.children[xc],!1):"",o=[];return Vc(e.children,function(e,n){n!==xc&&o.push(n+":"+t(e,!1))}),o.length>0?r+"("+o.join("//")+")":r}var i=Wc(e,function(n,r){return r===xc?[t(e.children[xc],!1)]:[r+":"+t(n,!1)]});return Zc(e)+"/("+i.join("//")+")"}(t.root,!0)+(e=t.queryParams,(n=Object.keys(e).map(function(t){var n=e[t];return Array.isArray(n)?n.map(function(e){return Qc(t)+"="+Qc(e)}).join("&"):Qc(t)+"="+Qc(n)})).length?"?"+n.join("&"):"")+("string"==typeof t.fragment?"#"+encodeURI(t.fragment):"")},t}(),qc=new Yc;function Zc(t){return t.segments.map(function(t){return th(t)}).join("/")}function $c(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Qc(t){return $c(t).replace(/%3B/gi,";")}function Xc(t){return $c(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Kc(t){return decodeURIComponent(t)}function Jc(t){return Kc(t.replace(/\+/g,"%20"))}function th(t){return""+Xc(t.path)+(e=t.parameters,Object.keys(e).map(function(t){return";"+Xc(t)+"="+Xc(e[t])}).join(""));var e}var eh=/^[^\/()?;=#]+/;function nh(t){var e=t.match(eh);return e?e[0]:""}var rh=/^[^=?&#]+/,oh=/^[^?&#]+/,ih=function(){function t(t){this.url=t,this.remaining=t}return t.prototype.parseRootSegment=function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Fc([],{}):new Fc([],this.parseChildren())},t.prototype.parseQueryParams=function(){var t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t},t.prototype.parseFragment=function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null},t.prototype.parseChildren=function(){if(""===this.remaining)return{};this.consumeOptional("/");var t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());var e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));var n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[xc]=new Fc(t,e)),n},t.prototype.parseSegment=function(){var t=nh(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '"+this.remaining+"'.");return this.capture(t),new Hc(Kc(t),this.parseMatrixParams())},t.prototype.parseMatrixParams=function(){for(var t={};this.consumeOptional(";");)this.parseParam(t);return t},t.prototype.parseParam=function(t){var e=nh(this.remaining);if(e){this.capture(e);var n="";if(this.consumeOptional("=")){var r=nh(this.remaining);r&&this.capture(n=r)}t[Kc(e)]=Kc(n)}},t.prototype.parseQueryParam=function(t){var e,n=(e=this.remaining.match(rh))?e[0]:"";if(n){this.capture(n);var r="";if(this.consumeOptional("=")){var o=function(t){var e=t.match(oh);return e?e[0]:""}(this.remaining);o&&this.capture(r=o)}var i=Jc(n),s=Jc(r);if(t.hasOwnProperty(i)){var a=t[i];Array.isArray(a)||(t[i]=a=[a]),a.push(s)}else t[i]=s}},t.prototype.parseParens=function(t){var e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var n=nh(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error("Cannot parse url '"+this.url+"'");var o=void 0;n.indexOf(":")>-1?(o=n.substr(0,n.indexOf(":")),this.capture(o),this.capture(":")):t&&(o=xc);var i=this.parseChildren();e[o]=1===Object.keys(i).length?i[xc]:new Fc([],i),this.consumeOptional("//")}return e},t.prototype.peekStartsWith=function(t){return this.remaining.startsWith(t)},t.prototype.consumeOptional=function(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)},t.prototype.capture=function(t){if(!this.consumeOptional(t))throw new Error('Expected "'+t+'".')},t}(),sh=function(){function t(t){this._root=t}return Object.defineProperty(t.prototype,"root",{get:function(){return this._root.value},enumerable:!0,configurable:!0}),t.prototype.parent=function(t){var e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null},t.prototype.children=function(t){var e=ah(t,this._root);return e?e.children.map(function(t){return t.value}):[]},t.prototype.firstChild=function(t){var e=ah(t,this._root);return e&&e.children.length>0?e.children[0].value:null},t.prototype.siblings=function(t){var e=lh(t,this._root);return e.length<2?[]:e[e.length-2].children.map(function(t){return t.value}).filter(function(e){return e!==t})},t.prototype.pathFromRoot=function(t){return lh(t,this._root).map(function(t){return t.value})},t}();function ah(t,e){var n,r;if(t===e.value)return e;try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=ah(t,i.value);if(s)return s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}function lh(t,e){var n,r;if(t===e.value)return[e];try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=lh(t,i.value);if(s.length)return s.unshift(e),s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return[]}var uh=function(){function t(t,e){this.value=t,this.children=e}return t.prototype.toString=function(){return"TreeNode("+this.value+")"},t}();function ch(t){var e={};return t&&t.children.forEach(function(t){return e[t.value.outlet]=t}),e}var hh=function(t){function e(e,n){var r=t.call(this,e)||this;return r.snapshot=n,yh(r,e),r}return o(e,t),e.prototype.toString=function(){return this.snapshot.toString()},e}(sh);function ph(t,e){var n=function(t,e){var n=new gh([],{},{},"",{},xc,e,null,t.root,-1,{});return new vh("",new uh(n,[]))}(t,e),r=new rl([new Hc("",{})]),o=new rl({}),i=new rl({}),s=new rl({}),a=new rl(""),l=new dh(r,o,s,a,i,xc,e,n.root);return l.snapshot=n.root,new hh(new uh(l,[]),n)}var dh=function(){function t(t,e,n,r,o,i,s,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this._futureSnapshot=a}return Object.defineProperty(t.prototype,"routeConfig",{get:function(){return this._futureSnapshot.routeConfig},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=this.params.pipe(K(function(t){return Ec(t)}))),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(function(t){return Ec(t)}))),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return this.snapshot?this.snapshot.toString():"Future("+this._futureSnapshot+")"},t}();function fh(t,e){void 0===e&&(e="emptyOnly");var n=t.pathFromRoot,r=0;if("always"!==e)for(r=n.length-1;r>=1;){var o=n[r],s=n[r-1];if(o.routeConfig&&""===o.routeConfig.path)r--;else{if(s.component)break;r--}}return function(t){return t.reduce(function(t,e){return{params:i({},t.params,e.params),data:i({},t.data,e.data),resolve:i({},t.resolve,e._resolvedData)}},{params:{},data:{},resolve:{}})}(n.slice(r))}var gh=function(){function t(t,e,n,r,o,i,s,a,l,u,c){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this.routeConfig=a,this._urlSegment=l,this._lastPathIndex=u,this._resolve=c}return Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=Ec(this.params)),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=Ec(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return"Route(url:'"+this.url.map(function(t){return t.toString()}).join("/")+"', path:'"+(this.routeConfig?this.routeConfig.path:"")+"')"},t}(),vh=function(t){function e(e,n){var r=t.call(this,n)||this;return r.url=e,yh(r,n),r}return o(e,t),e.prototype.toString=function(){return mh(this._root)},e}(sh);function yh(t,e){e.value._routerState=t,e.children.forEach(function(e){return yh(t,e)})}function mh(t){var e=t.children.length>0?" { "+t.children.map(mh).join(", ")+" } ":"";return""+t.value+e}function _h(t){if(t.snapshot){var e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Nc(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Nc(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(var n=0;n0&&wh(n[0]))throw new Error("Root segment cannot have matrix parameters");var r=n.find(function(t){return"object"==typeof t&&null!=t&&t.outlets});if(r&&r!==jc(n))throw new Error("{outlets:{}} has to be the last command")}return t.prototype.toRoot=function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]},t}(),Sh=function(){return function(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}();function Eh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[xc]:""+t}function Oh(t,e,n){if(t||(t=new Fc([],{})),0===t.segments.length&&t.hasChildren())return kh(t,e,n);var r=function(t,e,n){for(var r=0,o=e,i={match:!1,pathIndex:0,commandIndex:0};o=n.length)return i;var s=t.segments[o],a=Eh(n[r]),l=r0&&void 0===a)break;if(a&&l&&"object"==typeof l&&void 0===l.outlets){if(!Rh(a,l,s))return i;r+=2}else{if(!Rh(a,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(t,e,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndex0?new Fc([],((r={})[xc]=t,r)):t;return new Uc(o,e,n)},t.prototype.expandSegmentGroup=function(t,e,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(K(function(t){return new Fc([],t)})):this.expandSegment(t,n,e,n.segments,r,!0)},t.prototype.expandChildren=function(t,e,n){var r=this;return function(n,o){if(0===Object.keys(n).length)return nl({});var i=[],s=[],a={};return Vc(n,function(n,o){var l,u,c=(l=o,u=n,r.expandSegmentGroup(t,e,u,l)).pipe(K(function(t){return a[o]=t}));o===xc?i.push(c):s.push(c)}),nl.apply(null,i.concat(s)).pipe(cl(),kl(),K(function(){return a}))}(n.children)},t.prototype.expandSegment=function(t,e,n,r,o,i){var s=this;return nl.apply(void 0,p(n)).pipe(K(function(a){return s.expandSegmentAgainstRoute(t,e,n,a,r,o,i).pipe(Pl(function(t){if(t instanceof jh)return nl(null);throw t}))}),cl(),Nl(function(t){return!!t}),Pl(function(t,n){if(t instanceof il||"EmptyError"===t.name){if(s.noLeftoversInUrl(e,r,o))return nl(new Fc([],{}));throw new jh(e)}throw t}))},t.prototype.noLeftoversInUrl=function(t,e,n){return 0===e.length&&!t.children[n]},t.prototype.expandSegmentAgainstRoute=function(t,e,n,r,o,i,s){return Gh(r)!==i?Lh(e):void 0===r.redirectTo?this.matchSegmentAgainstRoute(t,e,r,o):s&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i):Lh(e)},t.prototype.expandSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,r,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i)},t.prototype.expandWildCardWithParamsAgainstRouteUsingRedirect=function(t,e,n,r){var o=this,i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?zh(i):this.lineralizeSegments(n,i).pipe(rt(function(n){var i=new Fc(n,{});return o.expandSegment(t,i,e,n,r,!1)}))},t.prototype.expandRegularSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){var s=this,a=Hh(e,r,o),l=a.consumedSegments,u=a.lastChild,c=a.positionalParamSegments;if(!a.matched)return Lh(e);var h=this.applyRedirectCommands(l,r.redirectTo,c);return r.redirectTo.startsWith("/")?zh(h):this.lineralizeSegments(r,h).pipe(rt(function(r){return s.expandSegment(t,e,n,r.concat(o.slice(u)),i,!1)}))},t.prototype.matchSegmentAgainstRoute=function(t,e,n,r){var o=this;if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(K(function(t){return n._loadedConfig=t,new Fc(r,{})})):nl(new Fc(r,{}));var s=Hh(e,n,r),a=s.consumedSegments,l=s.lastChild;if(!s.matched)return Lh(e);var u=r.slice(l);return this.getChildConfig(t,n,r).pipe(rt(function(t){var n=t.module,r=t.routes,s=function(t,e,n,r){return n.length>0&&function(t,e,n){return r.some(function(n){return Wh(t,e,n)&&Gh(n)!==xc})}(t,n)?{segmentGroup:Bh(new Fc(e,function(t,e){var n,r,o={};o[xc]=e;try{for(var i=c(t),s=i.next();!s.done;s=i.next()){var a=s.value;""===a.path&&Gh(a)!==xc&&(o[Gh(a)]=new Fc([],{}))}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o}(r,new Fc(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return r.some(function(n){return Wh(t,e,n)})}(t,n)?{segmentGroup:Bh(new Fc(t.segments,function(t,e,n,r){var o,s,a={};try{for(var l=c(n),u=l.next();!u.done;u=l.next()){var h=u.value;Wh(t,e,h)&&!r[Gh(h)]&&(a[Gh(h)]=new Fc([],{}))}}catch(p){o={error:p}}finally{try{u&&!u.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}return i({},r,a)}(t,n,r,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,a,u,r),l=s.segmentGroup,h=s.slicedSegments;return 0===h.length&&l.hasChildren()?o.expandChildren(n,r,l).pipe(K(function(t){return new Fc(a,t)})):0===r.length&&0===h.length?nl(new Fc(a,{})):o.expandSegment(n,l,r,h,xc,!0).pipe(K(function(t){return new Fc(a.concat(t.segments),t.children)}))}))},t.prototype.getChildConfig=function(t,e,n){var r=this;return e.children?nl(new Tc(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?nl(e._loadedConfig):function(t,e,n){var r,o=e.canLoad;return o&&0!==o.length?nt(o).pipe(K(function(r){var o,i=t.get(r);if(function(t){return t&&Nh(t.canLoad)}(i))o=i.canLoad(e,n);else{if(!Nh(i))throw new Error("Invalid CanLoad guard");o=i(e,n)}return Lc(o)})).pipe(cl(),(r=function(t){return!0===t},function(t){return t.lift(new Dl(r,void 0,t))})):nl(!0)}(t.injector,e,n).pipe(rt(function(n){return n?r.configLoader.load(t.injector,e).pipe(K(function(t){return e._loadedConfig=t,t})):function(t){return new R(function(e){return e.error(kc("Cannot load children because the guard of the route \"path: '"+t.path+"'\" returned false"))})}(e)})):nl(new Tc([],t))},t.prototype.lineralizeSegments=function(t,e){for(var n=[],r=e.root;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return nl(n);if(r.numberOfChildren>1||!r.children[xc])return Uh(t.redirectTo);r=r.children[xc]}},t.prototype.applyRedirectCommands=function(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)},t.prototype.applyRedirectCreatreUrlTree=function(t,e,n,r){var o=this.createSegmentGroup(t,e.root,n,r);return new Uc(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)},t.prototype.createQueryParams=function(t,e){var n={};return Vc(t,function(t,r){if("string"==typeof t&&t.startsWith(":")){var o=t.substring(1);n[r]=e[o]}else n[r]=t}),n},t.prototype.createSegmentGroup=function(t,e,n,r){var o=this,i=this.createSegments(t,e.segments,n,r),s={};return Vc(e.children,function(e,i){s[i]=o.createSegmentGroup(t,e,n,r)}),new Fc(i,s)},t.prototype.createSegments=function(t,e,n,r){var o=this;return e.map(function(e){return e.path.startsWith(":")?o.findPosParam(t,e,r):o.findOrReturn(e,n)})},t.prototype.findPosParam=function(t,e,n){var r=n[e.path.substring(1)];if(!r)throw new Error("Cannot redirect to '"+t+"'. Cannot find '"+e.path+"'.");return r},t.prototype.findOrReturn=function(t,e){var n,r,o=0;try{for(var i=c(e),s=i.next();!s.done;s=i.next()){var a=s.value;if(a.path===t.path)return e.splice(o),a;o++}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return t},t}();function Hh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};var r=(e.matcher||Pc)(n,t,e);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Bh(t){if(1===t.numberOfChildren&&t.children[xc]){var e=t.children[xc];return new Fc(t.segments.concat(e.segments),e.children)}return t}function Wh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Gh(t){return t.outlet||xc}var Yh=function(){return function(t){this.path=t,this.route=this.path[this.path.length-1]}}(),qh=function(){return function(t,e){this.component=t,this.route=e}}();function Zh(t,e,n){var r=function(t){if(!t)return null;for(var e=t.parent;e;e=e.parent){var n=e.routeConfig;if(n&&n._loadedConfig)return n._loadedConfig}return null}(e);return(r?r.module.injector:n).get(t)}function $h(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=ch(e);return t.children.forEach(function(t){!function(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=t.value,s=e?e.value:null,a=n?n.getContext(t.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){var l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!Bc(t.url,e.url);case"pathParamsOrQueryParamsChange":return!Bc(t.url,e.url)||!Nc(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!bh(t,e)||!Nc(t.queryParams,e.queryParams);case"paramsChange":default:return!bh(t,e)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Yh(r)):(i.data=s.data,i._resolvedData=s._resolvedData),$h(t,e,i.component?a?a.children:null:n,r,o),l&&o.canDeactivateChecks.push(new qh(a&&a.outlet&&a.outlet.component||null,s))}else s&&Qh(e,a,o),o.canActivateChecks.push(new Yh(r)),$h(t,null,i.component?a?a.children:null:n,r,o)}(t,i[t.value.outlet],n,r.concat([t.value]),o),delete i[t.value.outlet]}),Vc(i,function(t,e){return Qh(t,n.getContext(e),o)}),o}function Qh(t,e,n){var r=ch(t),o=t.value;Vc(r,function(t,r){Qh(t,o.component?e?e.children.getContext(r):null:e,n)}),n.canDeactivateChecks.push(new qh(o.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,o))}var Xh=Symbol("INITIAL_VALUE");function Kh(){return Vl(function(t){return(function(){for(var t=[],e=0;e0?jc(n).parameters:{};o=new gh(n,l,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,cp(t),r,t.component,t,ip(e),sp(e)+n.length,hp(t))}else{var u=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new rp;return{consumedSegments:[],lastChild:0,parameters:{}}}var r=(e.matcher||Pc)(n,t,e);if(!r)throw new rp;var o={};Vc(r.posParams,function(t,e){o[e]=t.path});var s=r.consumed.length>0?i({},o,r.consumed[r.consumed.length-1].parameters):o;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:s}}(e,t,n);s=u.consumedSegments,a=n.slice(u.lastChild),o=new gh(s,u.parameters,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,cp(t),r,t.component,t,ip(e),sp(e)+s.length,hp(t))}var c=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),h=ap(e,s,a,c,this.relativeLinkResolution),p=h.segmentGroup,d=h.slicedSegments;if(0===d.length&&p.hasChildren()){var f=this.processChildren(c,p);return[new uh(o,f)]}if(0===c.length&&0===d.length)return[new uh(o,[])];var g=this.processSegment(c,p,d,xc);return[new uh(o,g)]},t}();function ip(t){for(var e=t;e._sourceSegment;)e=e._sourceSegment;return e}function sp(t){for(var e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function ap(t,e,n,r,o){if(n.length>0&&function(t,e,n){return r.some(function(n){return lp(t,e,n)&&up(n)!==xc})}(t,n)){var s=new Fc(e,function(t,e,n,r){var o,i,s={};s[xc]=r,r._sourceSegment=t,r._segmentIndexShift=e.length;try{for(var a=c(n),l=a.next();!l.done;l=a.next()){var u=l.value;if(""===u.path&&up(u)!==xc){var h=new Fc([],{});h._sourceSegment=t,h._segmentIndexShift=e.length,s[up(u)]=h}}}catch(p){o={error:p}}finally{try{l&&!l.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return s}(t,e,r,new Fc(n,t.children)));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return r.some(function(n){return lp(t,e,n)})}(t,n)){var a=new Fc(t.segments,function(t,e,n,r,o,s){var a,l,u={};try{for(var h=c(r),p=h.next();!p.done;p=h.next()){var d=p.value;if(lp(t,n,d)&&!o[up(d)]){var f=new Fc([],{});f._sourceSegment=t,f._segmentIndexShift="legacy"===s?t.segments.length:e.length,u[up(d)]=f}}}catch(g){a={error:g}}finally{try{p&&!p.done&&(l=h.return)&&l.call(h)}finally{if(a)throw a.error}}return i({},o,u)}(t,e,n,r,t.children,o));return a._sourceSegment=t,a._segmentIndexShift=e.length,{segmentGroup:a,slicedSegments:n}}var l=new Fc(t.segments,t.children);return l._sourceSegment=t,l._segmentIndexShift=e.length,{segmentGroup:l,slicedSegments:n}}function lp(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function up(t){return t.outlet||xc}function cp(t){return t.data||{}}function hp(t){return t.resolve||{}}function pp(t,e,n,r){var o=Zh(t,e,r);return Lc(o.resolve?o.resolve(e,n):o(e,n))}function dp(t){return function(e){return e.pipe(Vl(function(e){var n=t(e);return n?nt(n).pipe(K(function(){return e})):nt([e])}))}}var fp=function(){return function(){}}(),gp=function(){function t(){}return t.prototype.shouldDetach=function(t){return!1},t.prototype.store=function(t,e){},t.prototype.shouldAttach=function(t){return!1},t.prototype.retrieve=function(t){return null},t.prototype.shouldReuseRoute=function(t,e){return t.routeConfig===e.routeConfig},t}(),vp=new Ut("ROUTES"),yp=function(){function t(t,e,n,r){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=r}return t.prototype.load=function(t,e){var n=this;return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(K(function(r){n.onLoadEndListener&&n.onLoadEndListener(e);var o=r.create(t);return new Tc(Dc(o.injector.get(vp)).map(Mc),o)}))},t.prototype.loadModuleFactory=function(t){var e=this;return"string"==typeof t?nt(this.loader.load(t)):Lc(t()).pipe(rt(function(t){return t instanceof cn?nl(t):nt(e.compiler.compileModuleAsync(t))}))},t}(),mp=function(){return function(){}}(),_p=function(){function t(){}return t.prototype.shouldProcessUrl=function(t){return!0},t.prototype.extract=function(t){return t},t.prototype.merge=function(t,e){return t},t}();function bp(t){throw t}function wp(t,e,n){return e.parse("/")}function Cp(t,e){return nl(null)}var xp=function(){function t(t,e,n,r,o,i,s,a){var l=this;this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=r,this.config=a,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new V,this.errorHandler=bp,this.malformedUriErrorHandler=wp,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Cp,afterPreactivation:Cp},this.urlHandlingStrategy=new _p,this.routeReuseStrategy=new gp,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=o.get(un),this.console=o.get(Bo);var u=o.get(si);this.isNgZoneEnabled=u instanceof si,this.resetConfig(a),this.currentUrlTree=new Uc(new Fc([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new yp(i,s,function(t){return l.triggerEvent(new gc(t))},function(t){return l.triggerEvent(new vc(t))}),this.routerState=ph(this.currentUrlTree,this.rootComponentType),this.transitions=new rl({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return t.prototype.setupNavigations=function(t){var e=this,n=this.events;return t.pipe(hl(function(t){return 0!==t.id}),K(function(t){return i({},t,{extractedUrl:e.urlHandlingStrategy.extract(t.rawUrl)})}),Vl(function(t){var r,o,s,a,l=!1,u=!1;return nl(t).pipe(_l(function(t){e.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:e.lastSuccessfulNavigation?i({},e.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Vl(function(t){var r,o,s,a,l=!e.navigated||t.extractedUrl.toString()!==e.browserUrlTree.toString();if(("reload"===e.onSameUrlNavigation||l)&&e.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return nl(t).pipe(Vl(function(t){var r=e.transitions.getValue();return n.next(new sc(t.id,e.serializeUrl(t.extractedUrl),t.source,t.restoredState)),r!==e.transitions.getValue()?Ja:[t]}),Vl(function(t){return Promise.resolve(t)}),(r=e.ngModule.injector,o=e.configLoader,s=e.urlSerializer,a=e.config,function(t){return t.pipe(Vl(function(t){return function(e,n,r,o,i){return new Fh(e,n,r,t.extractedUrl,i).apply()}(r,o,s,0,a).pipe(K(function(e){return i({},t,{urlAfterRedirects:e})}))}))}),_l(function(t){e.currentNavigation=i({},e.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,n,r,o,s){return function(r){return r.pipe(rt(function(r){return function(t,e,n,r,o,i){return void 0===o&&(o="emptyOnly"),void 0===i&&(i="legacy"),new op(t,e,n,r,o,i).recognize()}(t,n,r.urlAfterRedirects,(a=r.urlAfterRedirects,e.serializeUrl(a)),o,s).pipe(K(function(t){return i({},r,{targetSnapshot:t})}));var a}))}}(e.rootComponentType,e.config,0,e.paramsInheritanceStrategy,e.relativeLinkResolution),_l(function(t){"eager"===e.urlUpdateStrategy&&(t.extras.skipLocationChange||e.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),e.browserUrlTree=t.urlAfterRedirects)}),_l(function(t){var r=new cc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);n.next(r)}));if(l&&e.rawUrlTree&&e.urlHandlingStrategy.shouldProcessUrl(e.rawUrlTree)){var u=t.extractedUrl,c=t.source,h=t.restoredState,p=t.extras,d=new sc(t.id,e.serializeUrl(u),c,h);n.next(d);var f=ph(u,e.rootComponentType).snapshot;return nl(i({},t,{targetSnapshot:f,urlAfterRedirects:u,extras:i({},p,{skipLocationChange:!1,replaceUrl:!1})}))}return e.rawUrlTree=t.rawUrl,e.browserUrlTree=t.urlAfterRedirects,t.resolve(null),Ja}),dp(function(t){var n=t.extras;return e.hooks.beforePreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),_l(function(t){var n=new hc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),K(function(t){return i({},t,{guards:(n=t.targetSnapshot,r=t.currentSnapshot,o=e.rootContexts,s=n._root,$h(s,r?r._root:null,o,[s.value]))});var n,r,o,s}),function(t,e){return function(n){return n.pipe(rt(function(n){var r=n.targetSnapshot,o=n.currentSnapshot,s=n.guards,a=s.canActivateChecks,l=s.canDeactivateChecks;return 0===l.length&&0===a.length?nl(i({},n,{guardsResult:!0})):function(t,e,n,r){return nt(l).pipe(rt(function(t){return function(t,e,n,r,o){var i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?nl(i.map(function(i){var s,a=Zh(i,e,o);if(function(t){return t&&Nh(t.canDeactivate)}(a))s=Lc(a.canDeactivate(t,e,n,r));else{if(!Nh(a))throw new Error("Invalid CanDeactivate guard");s=Lc(a(t,e,n,r))}return s.pipe(Nl())})).pipe(Kh()):nl(!0)}(t.component,t.route,n,e,r)}),Nl(function(t){return!0!==t},!0))}(0,r,o,t).pipe(rt(function(n){return n&&"boolean"==typeof n?function(t,e,n,r){return nt(a).pipe(Gl(function(e){return nt([tp(e.route.parent,r),Jh(e.route,r),np(t,e.path,n),ep(t,e.route,n)]).pipe(cl(),Nl(function(t){return!0!==t},!0))}),Nl(function(t){return!0!==t},!0))}(r,0,t,e):nl(n)}),K(function(t){return i({},n,{guardsResult:t})}))}))}}(e.ngModule.injector,function(t){return e.triggerEvent(t)}),_l(function(t){if(Dh(t.guardsResult)){var n=kc('Redirecting to "'+e.serializeUrl(t.guardsResult)+'"');throw n.url=t.guardsResult,n}}),_l(function(t){var n=new pc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);e.triggerEvent(n)}),hl(function(t){if(!t.guardsResult){e.resetUrlToCurrentUrlTree();var r=new lc(t.id,e.serializeUrl(t.extractedUrl),"");return n.next(r),t.resolve(!1),!1}return!0}),dp(function(t){if(t.guards.canActivateChecks.length)return nl(t).pipe(_l(function(t){var n=new dc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),(n=e.paramsInheritanceStrategy,r=e.ngModule.injector,function(t){return t.pipe(rt(function(t){var e=t.targetSnapshot,o=t.guards.canActivateChecks;return o.length?nt(o).pipe(Gl(function(t){return function(t,n,r,o){return function(t,e,n,r){var o=Object.keys(t);if(0===o.length)return nl({});if(1===o.length){var i=o[0];return pp(t[i],e,n,r).pipe(K(function(t){var e;return(e={})[i]=t,e}))}var s={};return nt(o).pipe(rt(function(o){return pp(t[o],e,n,r).pipe(K(function(t){return s[o]=t,t}))})).pipe(kl(),K(function(){return s}))}(t._resolve,t,e,o).pipe(K(function(e){return t._resolvedData=e,t.data=i({},t.data,fh(t,r).resolve),null}))}(t.route,0,n,r)}),function(t,e){return arguments.length>=2?function(e){return T(Hl(t,void 0),vl(1),Sl(void 0))(e)}:function(e){return T(Hl(function(e,n,r){return t(e)}),vl(1))(e)}}(function(t,e){return t}),K(function(e){return t})):nl(t)}))}),_l(function(t){var n=new fc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}));var n,r}),dp(function(t){var n=t.extras;return e.hooks.afterPreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),K(function(t){var n,r,o,s=(o=function t(e,n,r){if(r&&e.shouldReuseRoute(n.value,r.value.snapshot)){(l=r.value)._futureSnapshot=n.value;var o=function(e,n,r){return n.children.map(function(n){var o,i;try{for(var s=c(r.children),a=s.next();!a.done;a=s.next()){var l=a.value;if(e.shouldReuseRoute(l.value.snapshot,n.value))return t(e,n,l)}}catch(u){o={error:u}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(o)throw o.error}}return t(e,n)})}(e,n,r);return new uh(l,o)}var i=e.retrieve(n.value);if(i){var s=i.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(var r=0;ra;){if(l-=a,!(s=s.parent))throw new Error("Invalid number of '../'");a=s.segments.length}return new Sh(s,!1,a-l)}()}(i,0,t),a=s.processChildren?kh(s.segmentGroup,s.index,i.commands):Oh(s.segmentGroup,s.index,i.commands);return Ch(s.segmentGroup,a,e,r,o)}(u,this.currentUrlTree,t,h,c)},t.prototype.navigateByUrl=function(t,e){void 0===e&&(e={skipLocationChange:!1}),ge()&&this.isNgZoneEnabled&&!si.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");var n=Dh(t)?t:this.parseUrl(t),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,e)},t.prototype.navigate=function(t,e){return void 0===e&&(e={skipLocationChange:!1}),function(t){for(var e=0;et.name.length?e:t},{id:"",name:""}),this.filter())},t.prototype.ngAfterViewInit=function(){this.resize()},t.prototype.trackByFn=function(t,e){return e?"string"==typeof e?e:e.id:t},t.prototype.resize=function(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)},t.prototype.filter=function(){var t=this;if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(function(e){return("string"==typeof e?e:e.name).toLowerCase().indexOf(t.search.toLowerCase())>=0})),this.options&&this.options.hide_active&&this.selected)){var e="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(function(t){return("string"==typeof t?t:t.id).indexOf(e)<0})}},t.prototype.toggleShow=function(){var t=this;this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(function(){t.input&&t.input.nativeElement.focus()},100)},t.prototype.updateScroll=function(){var t=this;if(!this.viewport||!this.scroll_el)return setTimeout(function(){return t.updateScroll()},50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;var e="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)===e}))},t.prototype.select=function(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)},t.prototype.change=function(t){var e=this,n="string"==typeof this.selected?this.selected:this.selected.id,r=this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)==n})+t;r>=0&&r1?Array.prototype.slice.call(arguments):t)},r,n)})}var sd=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r.pending=!1,r}return o(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,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(r,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,r=void 0;try{this.work(t)}catch(o){n=!0,r=!!o&&o||new Error(o)}if(n)return this.unsubscribe(),r},e.prototype._unsubscribe=function(){var t=this.id,e=this.scheduler,n=e.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,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 o(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(m)),ad=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(e,t),e.prototype.requestAsyncId=function(e,n,r){return void 0===r&&(r=0),null!==r&&r>0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame(function(){return e.flush(null)})))},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(cancelAnimationFrame(n),e.scheduled=void 0)},e}(sd),ld=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}(),ud=function(t){function e(n,r){void 0===r&&(r=ld.now);var o=t.call(this,n,function(){return e.delegate&&e.delegate!==o?e.delegate.now():r()})||this;return o.actions=[],o.active=!1,o.scheduled=void 0,o}return o(e,t),e.prototype.schedule=function(n,r,o){return void 0===r&&(r=0),e.delegate&&e.delegate!==this?e.delegate.schedule(n,r,o):t.prototype.schedule.call(this,n,r,o)},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}(ld),cd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=(o=e.flush.bind(e,null),i=hd++,pd[i]=o,Promise.resolve().then(function(){return function(t){var e=pd[t];e&&e()}(i)}),i)));var o,i},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(delete pd[n],e.scheduled=void 0)},e}(sd),fd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r=0}function wd(t){var e=t.index,n=t.period,r=t.subscriber;if(r.next(e),!r.closed){if(-1===n)return r.complete();t.index=e+1,this.schedule(t,n)}}function Cd(t,e){return void 0===e&&(e=yd),n=function(){return function(t,e,n){void 0===t&&(t=0);var r=-1;return bd(e)?r=Number(e)<1?1:Number(e):z(e)&&(n=e),z(n)||(n=yd),new R(function(e){var o=bd(t)?t:+t-n.now();return n.schedule(wd,o,{index:0,period:r,subscriber:e})})}(t,e)},function(t){return t.lift(new md(n))};var n}function xd(t){return function(e){return e.lift(new Ed(t))}}var Sd,Ed=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new Od(t),r=Q(n,this.notifier);return r&&!n.seenValue?(n.add(r),e.subscribe(n)):n},t}(),Od=function(t){function e(e){var n=t.call(this,e)||this;return n.seenValue=!1,n}return o(e,t),e.prototype.notifyNext=function(t,e,n,r,o){this.seenValue=!0,this.complete()},e.prototype.notifyComplete=function(){},e}(X),kd=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new Pd(t))},t}(),Pd=function(t){function e(e){var n=t.call(this,e)||this;return n.hasPrev=!1,n}return o(e,t),e.prototype._next=function(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t},e}(E),Td=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(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,r){return void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,r):e.flush(this)},e}(sd),Id=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e}(ud))(Td);function Rd(t,e){return new R(e?function(n){return e.schedule(Ad,0,{error:t,subscriber:n})}:function(e){return e.error(t)})}function Ad(t){t.subscriber.error(t.error)}Sd||(Sd={});var Md,Nd=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 nl(this.value);case"E":return Rd(this.error);case"C":return tl()}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}(),Dd=function(t){function e(e,n,r){void 0===r&&(r=0);var o=t.call(this,e)||this;return o.scheduler=n,o.delay=r,o}return o(e,t),e.dispatch=function(t){t.notification.observe(t.destination),this.unsubscribe()},e.prototype.scheduleMessage=function(t){this.destination.add(this.scheduler.schedule(e.dispatch,this.delay,new jd(t,this.destination)))},e.prototype._next=function(t){this.scheduleMessage(Nd.createNext(t))},e.prototype._error=function(t){this.scheduleMessage(Nd.createError(t)),this.unsubscribe()},e.prototype._complete=function(){this.scheduleMessage(Nd.createComplete()),this.unsubscribe()},e}(E),jd=function(){return function(t,e){this.notification=t,this.destination=e}}(),Vd=function(t){function e(e,n,r){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=Number.POSITIVE_INFINITY);var o=t.call(this)||this;return o.scheduler=r,o._events=[],o._infiniteTimeWindow=!1,o._bufferSize=e<1?1:e,o._windowTime=n<1?1:n,n===Number.POSITIVE_INFINITY?(o._infiniteTimeWindow=!0,o.next=o.nextInfiniteTimeWindow):o.next=o.nextTimeWindow,o}return o(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 Ld(this._getNow(),e)),this._trimBufferThenGetEvents(),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,n=this._infiniteTimeWindow,r=n?this._events:this._trimBufferThenGetEvents(),o=this.scheduler,i=r.length;if(this.closed)throw new N;if(this.isStopped||this.hasError?e=m.EMPTY:(this.observers.push(t),e=new D(this,t)),o&&t.add(t=new Dd(t,o)),n)for(var s=0;se&&(i=Math.max(i,o-e)),i>0&&r.splice(0,i),r},e}(V),Ld=function(){return function(t,e){this.time=t,this.value=e}}();try{Md="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Em){Md=!1}var zd,Ud=function(){function t(t){this._platformId=t,this.isBrowser=this._platformId?Qa(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&&!Md)&&"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.ngInjectableDef=Ot({factory:function(){return new t(Lt(Fo,8))},token:t,providedIn:"root"}),t}(),Fd=function(){return function(){}}(),Hd=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();function Bd(){if("object"!=typeof document||!document)return Hd.NORMAL;if(!zd){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"),r=n.style;r.width="2px",r.height="1px",t.appendChild(n),document.body.appendChild(t),zd=Hd.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,zd=0===t.scrollLeft?Hd.NEGATED:Hd.INVERTED),t.parentNode.removeChild(t)}return zd}var Wd=function(t){function e(e){var n=t.call(this)||this;return n._data=e,n}return o(e,t),e.prototype.connect=function(){return this._data instanceof R?this._data:nl(this._data)},e.prototype.disconnect=function(){},e}(function(){return function(){}}()),Gd=new Ut("VIRTUAL_SCROLL_STRATEGY"),Yd=function(){function t(t,e,n){this._scrolledIndexChange=new V,this.scrolledIndexChange=this._scrolledIndexChange.pipe(function(t){return t.lift(new gd(void 0,void 0))}),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(n0&&(r.end=Math.min(i,r.end+u),r.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(r),this._viewport.setRenderedContentOffset(this._itemSize*r.start),this._scrolledIndexChange.next(Math.floor(e))}},t}();function qd(t){return t._scrollStrategy}var Zd=function(){function t(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Yd(this.itemSize,this.minBufferPx,this.maxBufferPx)}return Object.defineProperty(t.prototype,"itemSize",{get:function(){return this._itemSize},set:function(t){this._itemSize=nd(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minBufferPx",{get:function(){return this._minBufferPx},set:function(t){this._minBufferPx=nd(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxBufferPx",{get:function(){return this._maxBufferPx},set:function(t){this._maxBufferPx=nd(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)},t}(),$d=function(){function t(t,e){this._ngZone=t,this._platform=e,this._scrolled=new V,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}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 R(function(n){e._globalSubscription||e._addGlobalListener();var r=t>0?e._scrolled.pipe(Cd(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){r.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):nl()},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(hl(function(t){return!t||n.indexOf(t)>-1}))},t.prototype.getAncestorScrollContainers=function(t){var e=this,n=[];return this.scrollContainers.forEach(function(r,o){e._scrollableContainsElement(o,t)&&n.push(o)}),n},t.prototype._scrollableContainsElement=function(t,e){var n=e.nativeElement,r=t.getElementRef().nativeElement;do{if(n==r)return!0}while(n=n.parentElement);return!1},t.prototype._addGlobalListener=function(){var t=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){return id(window.document,"scroll").subscribe(function(){return t._scrolled.next()})})},t.prototype._removeGlobalListener=function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(si),Lt(Ud))},token:t,providedIn:"root"}),t}(),Qd=function(){function t(t,e,n,r){var o=this;this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=r,this._destroyed=new V,this._elementScrolled=new R(function(t){return o.ngZone.runOutsideAngular(function(){return id(o.elementRef.nativeElement,"scroll").pipe(xd(o._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;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Bd()!=Hd.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Bd()==Hd.INVERTED?t.left=t.right:Bd()==Hd.NEGATED&&(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"==typeof document&&"scrollBehavior"in document.documentElement.style?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&&Bd()==Hd.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Bd()==Hd.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft},t}(),Xd="undefined"!=typeof requestAnimationFrame?cd:fd,Kd=function(t){function e(e,n,r,o,i,s){var a=t.call(this,e,s,r,i)||this;if(a.elementRef=e,a._changeDetectorRef=n,a._scrollStrategy=o,a._detachedSubject=new V,a._renderedRangeSubject=new V,a.orientation="vertical",a.scrolledIndexChange=new R(function(t){return a._scrollStrategy.scrolledIndexChange.subscribe(function(e){return Promise.resolve().then(function(){return a.ngZone.run(function(){return t.next(e)})})})}),a.renderedRangeStream=a._renderedRangeSubject.asObservable(),a._totalContentSizeTransform="",a._totalContentSize=0,a._renderedRange={start:0,end:0},a._dataLength=0,a._viewportSize=0,a._renderedContentOffset=0,a._renderedContentOffsetNeedsRewrite=!1,a._isChangeDetectionPending=!1,a._runAfterChangeDetection=[],!o)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.');return a}return o(e,t),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(Fl(null),Cd(0,Xd)).subscribe(function(){return e._scrollStrategy.onContentScrolled()}),e._markChangeDetectionNeeded()})})},e.prototype.ngOnDestroy=function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),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(xd(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._totalContentSizeTransform="scale"+("horizontal"==this.orientation?"X":"Y")+"("+this._totalContentSize+")",this._markChangeDetectionNeeded())},e.prototype.setRenderedRange=function(t){var e,n,r=this;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(function(){return r._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 r="horizontal"==this.orientation,o=r?"X":"Y",i="translate"+o+"("+Number((r&&this.dir&&"rtl"==this.dir.value?-1:1)*t)+"px)";this._renderedContentOffset=t,"to-end"===e&&(i+=" translate"+o+"(-100%)",this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,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 t.prototype.measureScrollOffset.call(this,e||("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=this;this._isChangeDetectionPending=!1,this.ngZone.run(function(){return t._changeDetectorRef.markForCheck()}),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;var e=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(var n=0,r=e;n=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");for(var n=t.start-this._renderedRange.start,r=0,o=t.end-t.start;o--;)for(var i=this._viewContainerRef.get(o+n),s=i?i.rootNodes.length:0;s--;)r+=Jd(e,i.rootNodes[s]);return r},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(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(var t=0,e=this._templateCache;t0?this._change.pipe(Cd(t)):this._change},t.prototype._updateViewportSize=function(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Ud),Lt(si))},token:t,providedIn:"root"}),t}();function rf(){throw Error("Host already has a portal attached")}var of=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()&&rf(),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}(),sf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.component=e,i.viewContainerRef=n,i.injector=r,i.componentFactoryResolver=o,i}return o(e,t),e}(of),af=function(t){function e(e,n,r){var o=t.call(this)||this;return o.templateRef=e,o.viewContainerRef=n,o.context=r,o}return o(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}(of),lf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.outletElement=e,i._componentFactoryResolver=n,i._appRef=r,i._defaultInjector=o,i}return o(e,t),e.prototype.attachComponentPortal=function(t){var e,n=this,r=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);return t.viewContainerRef?(e=t.viewContainerRef.createComponent(r,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(function(){return e.destroy()})):(e=r.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,r=n.createEmbeddedView(t.templateRef,t.context);return r.detectChanges(),r.rootNodes.forEach(function(t){return e.outletElement.appendChild(t)}),this.setDisposeFn(function(){var t=n.indexOf(r);-1!==t&&n.remove(t)}),r},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}(function(){function t(){this._isDisposed=!1}return t.prototype.hasAttached=function(){return!!this._attachedPortal},t.prototype.attach=function(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&rf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof sf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof af?(this._attachedPortal=t,this.attachTemplatePortal(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}()),uf=function(){return function(){}}(),cf=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=od(-this._previousScrollPosition.left),t.style.top=od(-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=t.style,n=this._document.body.style,r=e.scrollBehavior||"",o=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=r,n.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}();function hf(){return Error("Scroll strategy has already been attached.")}var pf=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return t.prototype.attach=function(t){if(this._overlayRef)throw hf();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}(),df=function(){function t(){}return t.prototype.enable=function(){},t.prototype.disable=function(){},t.prototype.attach=function(){},t}();function ff(t,e){return e.some(function(e){return t.bottome.bottom||t.righte.right})}function gf(t,e){return e.some(function(e){return t.tope.bottom||t.lefte.right})}var vf=function(){function t(t,e,n,r){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=r,this._scrollSubscription=null}return t.prototype.attach=function(t){if(this._overlayRef)throw hf();this._overlayRef=t},t.prototype.enable=function(){var t=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(t._overlayRef.updatePosition(),t._config&&t._config.autoClose){var e=t._overlayRef.overlayElement.getBoundingClientRect(),n=t._viewportRuler.getViewportSize(),r=n.width,o=n.height;ff(e,[{width:r,height:o,bottom:o,right:r,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}(),yf=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=function(){return new df},this.close=function(t){return new pf(o._scrollDispatcher,o._ngZone,o._viewportRuler,t)},this.block=function(){return new cf(o._viewportRuler,o._document)},this.reposition=function(t){return new vf(o._scrollDispatcher,o._viewportRuler,o._ngZone,t)},this._document=r}return t.ngInjectableDef=Ot({factory:function(){return new t(Lt($d),Lt(nf),Lt(si),Lt(qa))},token:t,providedIn:"root"}),t}(),mf=function(){return function(t){var e=this;this.scrollStrategy=new df,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(function(n){void 0!==t[n]&&(e[n]=t[n])})}}(),_f=function(){return function(t,e,n,r,o){this.offsetX=n,this.offsetY=r,this.panelClass=o,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}(),bf=function(){return function(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}();function wf(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "top", "bottom" or "center".')}function Cf(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "start", "end" or "center".')}var xf=function(){function t(t){var e=this;this._attachedOverlays=[],this._keydownListener=function(t){for(var n=e._attachedOverlays,r=n.length-1;r>-1;r--)if(n[r]._keydownEventSubscriptions>0){n[r]._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.ngInjectableDef=Ot({factory:function(){return new t(Lt(qa))},token:t,providedIn:"root"}),t}(),Sf=function(){function t(t){this._document=t}return t.prototype.ngOnDestroy=function(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)},t.prototype.getContainerElement=function(){return this._containerElement||this._createContainer(),this._containerElement},t.prototype._createContainer=function(){var t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(qa))},token:t,providedIn:"root"}),t}(),Ef=function(){function t(t,e,n,r,o,i,s,a){var l=this;this._portalOutlet=t,this._host=e,this._pane=n,this._config=r,this._ngZone=o,this._keyboardDispatcher=i,this._document=s,this._location=a,this._backdropElement=null,this._backdropClick=new V,this._attachments=new V,this._detachments=new V,this._locationChanges=m.EMPTY,this._keydownEventsObservable=new R(function(t){var e=l._keydownEvents.subscribe(t);return l._keydownEventSubscriptions++,function(){e.unsubscribe(),l._keydownEventSubscriptions--}}),this._keydownEvents=new V,this._keydownEventSubscriptions=0,r.scrollStrategy&&(this._scrollStrategy=r.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=r.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._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Rl(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=i({},this._config,t),this._updateElementSize()},t.prototype.setDirection=function(t){this._config=i({},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(){var t=this._pane.style;t.width=od(this._config.width),t.height=od(this._config.height),t.minWidth=od(this._config.minWidth),t.minHeight=od(this._config.minHeight),t.maxWidth=od(this._config.maxWidth),t.maxHeight=od(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",function(e){return t._backdropClick.next(e)}),"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,r=function(){e&&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",r)}),e.style.pointerEvents="none",n=this._ngZone.runOutsideAngular(function(){return setTimeout(r,500)})}},t.prototype._toggleClasses=function(t,e,n){var r=t.classList;rd(e).forEach(function(t){n?r.add(t):r.remove(t)})},t.prototype._detachContentWhenStable=function(){var t=this;this._ngZone.runOutsideAngular(function(){var e=t._ngZone.onStable.asObservable().pipe(xd(lt(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}(),Of=function(){function t(t,e,n,r,o){this._viewportRuler=e,this._document=n,this._platform=r,this._overlayContainer=o,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 V,this._resizeSubscription=m.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(){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();for(var t,e=this._originRect,n=this._overlayRect,r=this._viewportRect,o=[],i=0,s=this._preferredPositions;ip&&(p=v,h=g)}return this._isPushed=!1,void this._applyPosition(h.position,h.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(t.position,t.originPoint);this._applyPosition(t.position,t.originPoint)}},t.prototype.detach=function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()},t.prototype.dispose=function(){this._isDisposed||(this._boundingBox&&kf(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 r=this._isRtl()?t.right:t.left,o=this._isRtl()?t.left:t.right;n="start"==e.originX?r:o}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 r;return r="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+r,y:t.y+("center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}},t.prototype._getOverlayFit=function(t,e,n,r){var o=t.x,i=t.y,s=this._getOffset(r,"x"),a=this._getOffset(r,"y");s&&(o+=s),a&&(i+=a);var l=0-i,u=i+e.height-n.height,c=this._subtractOverflows(e.width,0-o,o+e.width-n.width),h=this._subtractOverflows(e.height,l,u),p=c*h;return{visibleArea:p,isCompletelyWithinViewport:e.width*e.height===p,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:c==e.width}},t.prototype._canFitWithFlexibleDimensions=function(t,e,n){if(this._hasFlexibleDimensions){var r=n.bottom-e.y,o=n.right-e.x,i=this._overlayRef.getConfig().minHeight,s=this._overlayRef.getConfig().minWidth;return(t.fitsInViewportVertically||null!=i&&i<=r)&&(t.fitsInViewportHorizontally||null!=s&&s<=o)}},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 r,o,i=this._viewportRect,s=Math.max(t.x+e.width-i.right,0),a=Math.max(t.y+e.height-i.bottom,0),l=Math.max(i.top-n.top-t.y,0),u=Math.max(i.left-n.left-t.x,0);return this._previousPushAmount={x:r=e.width<=i.width?u||-s:t.xh&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-h/2)}if("end"===e.overlayX&&!u||"start"===e.overlayX&&u)a=l.right-t.x+this._viewportMargin,i=t.x-l.left;else if("start"===e.overlayX&&!u||"end"===e.overlayX&&u)s=t.x,i=l.right-t.x;else{c=Math.min(l.right-t.x+l.left,t.x);var p=this._lastBoundingBoxSize.width;s=t.x-c,(i=2*c)>p&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.x-p/2)}return{top:r,left:s,bottom:o,right:a,width:i,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 r={};if(this._hasExactPosition())r.top=r.left="0",r.bottom=r.right="",r.width=r.height="100%";else{var o=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;r.height=od(n.height),r.top=od(n.top),r.bottom=od(n.bottom),r.width=od(n.width),r.left=od(n.left),r.right=od(n.right),r.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",r.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",o&&(r.maxHeight=od(o)),i&&(r.maxWidth=od(i))}this._lastBoundingBoxSize=n,kf(this._boundingBox.style,r)},t.prototype._resetBoundingBoxStyles=function(){kf(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})},t.prototype._resetOverlayElementStyles=function(){kf(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})},t.prototype._setOverlayElementStyles=function(t,e){var n={};if(this._hasExactPosition()){var r=this._viewportRuler.getViewportScrollPosition();kf(n,this._getExactOverlayY(e,t,r)),kf(n,this._getExactOverlayX(e,t,r))}else n.position="static";var o="",i=this._getOffset(e,"x"),s=this._getOffset(e,"y");i&&(o+="translateX("+i+"px) "),s&&(o+="translateY("+s+"px)"),n.transform=o.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),kf(this._pane.style,n)},t.prototype._getExactOverlayY=function(t,e,n){var r={top:null,bottom:null},o=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n));var i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return o.y-=i,"bottom"===t.overlayY?r.bottom=this._document.documentElement.clientHeight-(o.y+this._overlayRect.height)+"px":r.top=od(o.y),r},t.prototype._getExactOverlayX=function(t,e,n){var r={left:null,right:null},o=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n)),"right"==(this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=this._document.documentElement.clientWidth-(o.x+this._overlayRect.width)+"px":r.left=od(o.x),r},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:gf(t,n),isOriginOutsideView:ff(t,n),isOverlayClipped:gf(e,n),isOverlayOutsideView:ff(e,n)}},t.prototype._subtractOverflows=function(t){for(var e=[],n=1;n0?p(this.events,[t]):[t],this.displayed_events=this.events.slice(-8),t.close=function(){return e.remove(t.id)},0!==t.delay&&setTimeout(function(){return e.remove(t.id)},t.delay||this.delay||5e3))},t.prototype.remove=function(t){this.events=this.events.filter(function(e){return e.id!==t}),this.displayed_events=this.events.slice(-8)},t.prototype.action=function(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)},t.prototype.grab=function(t,e){var n=this,r=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=r,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",function(e){return n.pull(t,e)}),touchmove:this.renderer.listen("window","touchmove",function(e){return n.pull(t,e)}),mouseup:this.renderer.listen("window","mouseup",function(e){return n.release(t)}),touchend:this.renderer.listen("window","touchend",function(e){return n.release(t)})}},t.prototype.pull=function(t,e){var n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)},t.prototype.release=function(t){for(var e in t.offset>128&&this.remove(t.id),t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0},t.prototype.trackByFn=function(t,e){return(t?t.id:null)||e},t}(),Hf=function(){function t(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new V,this._notify.remove=new V,this._notify.delay=new V,this.registerPreset("default",new mf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new mf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}return t.prototype.register=function(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Uf(t,this,this.injector,this.overlay,e),this._refs[t]},t.prototype.open=function(t,e,n,r){if(e.config?e.config instanceof mf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error("No content set for the overlay "+t);var o=this._refs[t],i=o.details.config instanceof mf?o.details.config:this.preset(o.details.config);o.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),r&&this._refs[t].onClose.subscribe(r))},t.prototype.update=function(t,e){this._refs[t]&&this._refs[t].set(e)},t.prototype.close=function(t){this._refs[t]&&this._refs[t].close(null)},t.prototype.remove=function(t){this._refs[t]&&(this._refs[t]=null)},t.prototype.registerPreset=function(t,e){this._presets[t]=e},t.prototype.preset=function(t){return void 0===t&&(t="default"),this._presets[t]||this._presets.default},t.prototype.loadNotificationsOutlet=function(){var t=this;this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(function(){t.registerPreset("ACA_NOTIFICATIONS_OUTLET",new mf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:t.overlay.position().global().bottom("0").right("0"),scrollStrategy:t.overlay.scrollStrategies.noop()})),t.open("ACA_NOTIFICATIONS_OUTLET",{content:Ff,data:t._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)},t.prototype.notify=function(t,e,n,r,o){var i=null;return this._notify.add&&(i="notification-"+Math.floor(999999*Math.random()),this._notify.add.next({id:i,content:t,action:e,on_action:n,type:r,delay:o,event:function(t){return n?n(t):null}})),i},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Af),Lt(Bt))},token:t,providedIn:"root"}),t}(),Bf=function(){function t(t,e,n,r){this.el=t,this.service=e,this.overlay=n,this.renderer=r,this.id="tooltip-"+Math.floor(9999999*Math.random()),this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new Ao,this.event=new Ao,this.close=new Ao,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}return t.prototype.ngOnInit=function(){this.updateConfig(),this.el&&this.listenForScroll()},t.prototype.ngOnDestroy=function(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()},t.prototype.ngOnChanges=function(t){var e=this;if(t.config&&this.updateConfig(),t.reposition){var n=this.overlay.scrollStrategies;this.strategy=this.reposition?n.reposition():n.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(function(){return e.open()},10):this.closeTooltip(t.show.previousValue))},t.prototype.open=function(){var t=this;this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},function(e){return t.event.emit(e)},function(e){t.show=!1,t.showChange.emit(!1),t.close.emit(e),t.clearListeners()})},t.prototype.getOverlayPosition=function(t){var e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)},t.prototype.getPositions=function(){var t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}},t.prototype.updateConfig=function(){this.service.registerPreset(this.id,new mf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))},t.prototype.listenForScroll=function(){var t=this;if(this.show)for(var e=this.el.nativeElement.parentElement;e;e=e.parentElement)this.listeners.push(this.renderer.listen(e,"scroll",function(){return t.update()}))},t.prototype.clearListeners=function(){var t,e;try{for(var n=c(this.listeners),r=n.next();!r.done;r=n.next())(0,r.value)()}catch(o){t={error:o}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)},t.prototype.update=function(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))},t.prototype.listenForHover=function(){var t=this;this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",function(e){t.show=!0,t.showChange.emit(t.show),t._leave_listener=t.renderer.listen(t.el.nativeElement,"mouseleave",function(e){t.show=!1,t.showChange.emit(t.show),t.closeTooltip(t.show)}),t.open()})},t.prototype.closeTooltip=function(t){!this.content&&this.el?function(t,e,n,r,o){if(void 0===r&&(r="debug"),window.debug){var i=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Vf()?console[r].apply(console,p(["%c["+jf+"]%c["+t+"] %c"+e],i,[n])):console[r]("["+jf+"]["+t+"] "+e,n):Vf()?console[r].apply(console,p(["%c["+jf+"]%c["+t+"] %c"+e],i)):console[r]("["+jf+"]["+t+"] "+e)}}("Tooltip","No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()},t}(),Wf=function(){function t(t,e){this.item=t,this.service=e}return t.prototype.ngOnInit=function(){var t=this;setTimeout(function(){t.text=t.item.details.data.text,t.center=t.item.details.data.center},10),setTimeout(function(){return t.service.close(t.item.ID)},1e3)},t}(),Gf=ga,Yf=function(){function t(){if(this.build=Gf(),!t.init){var e=Gf();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),Vf()?console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+jf+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"])):console[n]("[ACA][LIB] "+jf+" - "+t+" | "+e)}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),qf=new Ut("cdk-dir-doc",{providedIn:"root",factory:function(){return zt(qa)}}),Zf=function(){function t(t){if(this.value="ltr",this.change=new Ao,t){var e=(t.body?t.body.dir:null)||(t.documentElement?t.documentElement.dir:null);this.value="ltr"===e||"rtl"===e?e:"ltr"}}return t.prototype.ngOnDestroy=function(){this.change.complete()},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(qf,8))},token:t,providedIn:"root"}),t}(),$f=function(){return function(){}}(),Qf=rr({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function Xf(t){return is(0,[(t()(),Bi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function Kf(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Jf(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,Kf)),go(2,540672,null,0,Ga,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function tg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function eg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,tg)),go(2,671744,null,0,Na,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ng(t){return is(0,[(t()(),Bi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Bi(1,0,null,null,7,null,null,null,null,null,null,null)),go(2,16384,null,0,Ha,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Hi(16777216,null,null,1,null,Xf)),go(4,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,Jf)),go(6,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,eg)),go(8,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function rg(t){return is(0,[(t()(),Hi(16777216,null,null,1,null,ng)),go(1,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function og(t){return is(0,[(t()(),Bi(0,0,null,null,1,"overlay-outlet",[],null,null,null,rg,Qf)),go(1,114688,null,0,zf,[Gt],null,null)],function(t,e){t(e,1,0)},null)}var ig=Wr("overlay-outlet",zf,og,{},{},[]),sg=rr({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function ag(t){return is(0,[(t()(),Bi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),ns(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function lg(t){return is(0,[(t()(),Bi(0,0,null,null,1,"a-floating-text",[],null,null,null,ag,sg)),go(1,114688,null,0,Wf,[Uf,Hf],null,null)],function(t,e){t(e,1,0)},null)}var ug=Wr("a-floating-text",Wf,lg,{},{},[]),cg=rr({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function hg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function pg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,hg)),go(2,540672,null,0,Ga,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function dg(t){return is(0,[(t()(),Bi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function fg(t){return is(0,[(t()(),Bi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,dg)),go(2,671744,null,0,Na,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Hi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function gg(t){return is(0,[(t()(),Bi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function vg(t){return is(0,[(t()(),Bi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),ns(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function yg(t){return is(0,[(t()(),Bi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function mg(t){return is(0,[(t()(),Bi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Bi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),"touchstart"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),r},null,null)),(t()(),Bi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Bi(4,0,null,null,7,null,null,null,null,null,null,null)),go(5,16384,null,0,Ha,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Hi(16777216,null,null,1,null,pg)),go(7,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,fg)),go(9,278528,null,0,Ba,[zn,Vn,Ha],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Hi(16777216,null,null,1,null,gg)),go(11,16384,null,0,Wa,[zn,Vn,Ha],null,null),(t()(),Bi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),"touchend"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),r},null,null)),(t()(),Hi(16777216,null,null,1,null,vg)),go(14,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Hi(16777216,null,null,1,null,yg)),go(16,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function _g(t){return is(0,[(t()(),Bi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,mg)),go(2,278528,null,0,ja,[zn,Vn,In],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function bg(t){return is(0,[(t()(),Bi(0,0,null,null,1,"notification-outlet",[],null,null,null,_g,cg)),go(1,245760,null,0,Ff,[Uf,yn],null,null)],function(t,e){t(e,1,0)},null)}var wg=Wr("notification-outlet",Ff,bg,{},{},[]),Cg=function(t){function e(e,n){var r=t.call(this,e)||this;r.sources=n,r.completed=0,r.haveValues=0;var o=n.length;r.values=new Array(o);for(var i=0;it?{max:{max:t,actual:e.value}}:null}},t.required=function(t){return Ag(t.value)?{required:!0}:null},t.requiredTrue=function(t){return!0===t.value?null:{required:!0}},t.email=function(t){return Ag(t.value)?null:Mg.test(t.value)?null:{email:!0}},t.minLength=function(t){return function(e){if(Ag(e.value))return null;var n=e.value?e.value.length:0;return nt?{maxlength:{requiredLength:t,actualLength:n}}:null}},t.pattern=function(e){return e?("string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),n=new RegExp(r)):(r=e.toString(),n=e),function(t){if(Ag(t.value))return null;var e=t.value;return n.test(e)?null:{pattern:{requiredPattern:r,actualValue:e}}}):t.nullValidator;var n,r},t.nullValidator=function(t){return null},t.compose=function(t){if(!t)return null;var e=t.filter(Dg);return 0==e.length?null:function(t){return Vg(function(t,n){return e.map(function(e){return e(t)})}(t))}},t.composeAsync=function(t){if(!t)return null;var e=t.filter(Dg);return 0==e.length?null:function(t){return function t(){for(var e,n=[],r=0;r=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}(),Hg=function(){function t(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return t.prototype.ngOnInit=function(){this._control=this._injector.get(Ig),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: \n ')},t}(),Bg='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Wg='\n
\n
\n \n
\n
';function Gg(t,e){return p(e.path,[t])}function Yg(t,e){t||Zg(e,"Cannot find control with"),e.valueAccessor||Zg(e,"No value accessor for form control with"),t.validator=Ng.compose([t.validator,e.validator]),t.asyncValidator=Ng.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&&qg(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&&qg(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 qg(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Zg(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 $g(t){return null!=t?Ng.compose(t.map(Lg)):null}function Qg(t){return null!=t?Ng.composeAsync(t.map(zg)):null}var Xg=[Sg,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}(),Ug,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=qe}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=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}(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=c(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var i=o.value;if(this._compareWith(this._optionMap.get(i),t))return i}}catch(s){e={error:s}}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},t}(),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=qe}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 r=t.map(function(t){return n._getOptionId(t)});e=function(t,e){t._setSelected(r.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 r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i0||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}(ev),ov=function(t){function e(e,n,r){var o=t.call(this,Kg(n),Jg(r,n))||this;return o.controls=e,o._initObservables(),o._setUpdateStrategy(n),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return o(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,r){n._throwIfControlMissing(r),n.at(r).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,r){n.at(r)&&n.at(r).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,r){n.reset(t[r],{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 nv?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=c(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(o){t={error:o}}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}(ev),iv=function(){return Promise.resolve(null)}(),sv=function(t){function e(e,n){var r=t.call(this)||this;return r.submitted=!1,r._directives=[],r.ngSubmit=new Ao,r.form=new rv({},$g(e),Qg(n)),r}return o(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;iv.then(function(){var n=e._findContainer(t.path);t.control=n.registerControl(t.name,t.control),Yg(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;iv.then(function(){var n,r,o=e._findContainer(t.path);o&&o.removeControl(t.name),(r=(n=e._directives).indexOf(t))>-1&&n.splice(r,1)})},e.prototype.addFormGroup=function(t){var e=this;iv.then(function(){var n=e._findContainer(t.path),r=new rv({});(function(t,e){null==t&&Zg(e,"Cannot find control with"),t.validator=Ng.compose([t.validator,e.validator]),t.asyncValidator=Ng.composeAsync([t.asyncValidator,e.asyncValidator])})(r,t),n.registerControl(t.name,r),r.updateValueAndValidity({emitEvent:!1})})},e.prototype.removeFormGroup=function(t){var e=this;iv.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;iv.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,e=this._directives,this.form._syncPendingControls(),e.forEach(function(t){var e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e},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},e}(Pg),av=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 \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\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
\n \n \n
\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 "+Bg+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+Wg)},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: \n Example 2: ')},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 "+Bg+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+Wg)},t.ngFormWarning=function(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")},t}(),lv=new Ut("NgFormSelectorWarning"),uv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(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 Gg(this.name,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 $g(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Qg(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){},e}(Pg),cv=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}var n;return o(e,t),n=e,e.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof sv||av.modelGroupParentException()},e}(uv),hv=function(){return Promise.resolve(null)}(),pv=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.control=new nv,i._registered=!1,i.update=new Ao,i._parent=e,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Zg(t,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,o=void 0;return e.forEach(function(e){var i;e.constructor===Og?n=e:(i=e,Xg.some(function(t){return i.constructor===t})?(r&&Zg(t,"More than one built-in value accessor matches form control with"),r=e):(o&&Zg(t,"More than one custom value accessor matches form control with"),o=e))}),o||r||n||(Zg(t,"No valid value accessor for form control with"),null)}(i,o),i}return o(e,t),e.prototype.ngOnChanges=function(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;var n=t.model;return!!n.isFirstChange()||!qe(e,n.currentValue)}(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?Gg(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 $g(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Qg(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(){Yg(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 cv)&&this._parent instanceof uv?av.formGroupNameException():this._parent instanceof cv||this._parent instanceof sv||av.modelParentException()},e.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||av.missingNameException()},e.prototype._updateValue=function(t){var e=this;hv.then(function(){e.control.setValue(t,{emitViewToModelChange:!1})})},e.prototype._updateDisabled=function(t){var e=this,n=t.isDisabled.currentValue,r=""===n||n&&"false"!==n;hv.then(function(){r&&!e.control.disabled?e.control.disable():!r&&e.control.disabled&&e.control.enable()})},e}(Ig),dv=new Ut("NgModelWithFormControlWarning"),fv=function(){return function(){}}(),gv=function(){function t(){}return t.prototype.group=function(t,e){void 0===e&&(e=null);var n=this._reduceControls(t),r=null,o=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(r=null!=e.validators?e.validators:null,o=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(r=null!=e.validator?e.validator:null,o=null!=e.asyncValidator?e.asyncValidator:null)),new rv(n,{asyncValidators:o,updateOn:i,validators:r})},t.prototype.control=function(t,e,n){return new nv(t,e,n)},t.prototype.array=function(t,e,n){var r=this,o=t.map(function(t){return r._createControl(t)});return new ov(o,e,n)},t.prototype._reduceControls=function(t){var e=this,n={};return Object.keys(t).forEach(function(r){n[r]=e._createControl(t[r])}),n},t.prototype._createControl=function(t){return t instanceof nv||t instanceof rv||t instanceof ov?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)},t}(),vv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:lv,useValue:t.warnOnDeprecatedNgFormSelector}]}},t}(),yv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:dv,useValue:t.warnOnNgModelWithFormControl}]}},t}(),mv=rr({encapsulation:2,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:0}.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:0}.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}"],data:{}});function _v(t){return is(2,[Zi(402653184,1,{_contentWrapper:0}),(t()(),Bi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),Ji(null,0),(t()(),Bi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var bv=rr({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function wv(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Bi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==eo(t,5)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==eo(t,5).onTouched()&&r),"compositionstart"===e&&(r=!1!==eo(t,5)._compositionStart()&&r),"compositionend"===e&&(r=!1!==eo(t,5)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search=n)&&r),"ngModelChange"===e&&(o.searchChange.emit(n),r=!1!==o.filter()&&r),r},null,null)),go(5,16384,null,0,Og,[yn,pn,[2,Eg]],null,null),vo(1024,null,xg,function(t){return[t]},[Og]),go(7,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(9,16384,null,0,Rg,[[4,Ig]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,eo(e,9).ngClassUntouched,eo(e,9).ngClassTouched,eo(e,9).ngClassPristine,eo(e,9).ngClassDirty,eo(e,9).ngClassValid,eo(e,9).ngClassInvalid,eo(e,9).ngClassPending)})}function Cv(t){return is(0,[(t()(),Bi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.select(t.context.$implicit)&&r),r},null,null)),(t()(),Bi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function xv(t){return is(0,[(t()(),Bi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,_v,mv)),vo(6144,null,Qd,null,[Kd]),go(3,540672,null,0,Zd,[],{itemSize:[0,"itemSize"]},null),vo(1024,null,Gd,qd,[Zd]),go(5,245760,[[4,4],[5,4],["viewport",4]],0,Kd,[pn,An,si,[2,Gd],[2,Zf],$d],null,null),(t()(),Hi(16777216,[[2,2]],0,1,null,Cv)),go(7,409600,null,0,tf,[zn,Vn,In,[1,Kd],si],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===eo(e,5).orientation,"horizontal"!==eo(e,5).orientation)})}function Sv(t){return is(0,[(t()(),Bi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Ev(t){return is(0,[(t()(),Bi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.cancelClose()&&r),r},null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(r=0!=(o.show=!o.show)&&r),r},null,null)),(t()(),Bi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Hi(16777216,[[2,2]],null,1,null,wv)),go(7,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Hi(16777216,[[2,2]],null,1,null,xv)),go(10,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Hi(0,[[2,2],["noItems",2]],null,0,null,Sv))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,eo(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Ov(t){return is(0,[Zi(402653184,1,{reference:0}),Zi(402653184,2,{dropdown_tooltip:0}),Zi(402653184,3,{input:0}),Zi(402653184,4,{viewport:0}),Zi(402653184,5,{scroll_el:0}),(t()(),Bi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var r=!0,o=t.component;return"keyup.enter"===e&&(r=!1!==o.toggleShow()&&r),"keydown.arrowup"===e&&(r=!1!==n.preventDefault()&&r),"keydown.arrowdown"===e&&(r=!1!==n.preventDefault()&&r),"keyup.arrowup"===e&&(r=!1!==(o.focus?o.change(-1):"")&&r),"keyup.arrowdown"===e&&(r=!1!==(o.focus?o.change(1):"")&&r),"focus"===e&&(r=0!=(o.focus=!0)&&r),"blur"===e&&(r=0!=(o.focus=!1)&&r),"window:resize"===e&&(r=!1!==o.resize()&&r),"window:click"===e&&(r=!1!==(o.show?o.close():"")&&r),r},null,null)),(t()(),Bi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Bi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"showChange"===e&&(r=!1!==(o.show=n)&&r),"showChange"===e&&(r=!1!==o.updateScroll()&&r),"click"===e&&(r=!1!==o.toggleShow()&&r),r},null,null)),go(8,737280,null,0,Bf,[pn,Hf,Af,yn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Bi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),ns(10,null,["",""])),(t()(),Bi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Bi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Bi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Bi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(15,null,["",""])),(t()(),Bi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Hi(0,[[2,2],["dropdown",2]],null,0,null,Ev))],function(t,e){t(e,8,0,e.component.show,eo(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}var kv="Checkbox",Pv=function(){function t(){this.klass="default"}return t.prototype.toggle=function(){this.state=!this.state,this.onChange&&this.onChange(this.state)},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouch=t},t}(),Tv=ga,Iv=function(){function t(){if(this.build=Tv(),!t.init){var e=Tv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+kv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+kv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Rv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}return t.prototype.handleMouse=function(t){this.handleEvent(t)},t.prototype.handleTouch=function(t){this.handleEvent(t)},t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;setTimeout(function(){t.element&&t.element.nativeElement&&(t.cached_box=t.element.nativeElement.getBoundingClientRect(),t.size=Math.ceil(1.5*Math.max(t.cached_box.height,t.cached_box.width)))})},t.prototype.ngOnDestroy=function(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t.prototype.handleEvent=function(t){var e=this;this.cancelled=!1;var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,r=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:r-this.cached_box.top+"px",left:n-this.cached_box.left+"px"},this.mouse_release_cancel=this.renderer.listen("window","mouseup",function(t){return e.handleRelease(t)}),this.touch_release_cancel=this.renderer.listen("window","touchend",function(t){return e.handleRelease(t)}),this.transitioning=!0,setTimeout(function(){e.transitioning=!1,e.cancelled&&(e.show=!1)},350)},t.prototype.handleRelease=function(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t}(),Av=function(){function t(t,e){this.el=t,this.renderer=e,this.tapped=new Ao,this.touchrelease=new Ao,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}return t.prototype.ngAfterViewInit=function(){var t=this;this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",function(e){return t.handleHold(e)}),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",function(e){return t.handleHold(e)}))},t.prototype.ngOnDestroy=function(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}},t.prototype.remove=function(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)},t.prototype.handleHold=function(t){var e=this,n={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=n,this.mouse_listener=this.renderer.listen(window,"mouseup",function(t){return e.handleRelease(t)}),this.touch_listener=this.renderer.listen(window,"touchend",function(t){return e.handleRelease(t)}),this.timer=setTimeout(function(){return e.remove()},this.max_delay)},t.prototype.handleRelease=function(t){var e=this;this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(function(){var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(n-e.start.x,2)+2) div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function zv(t){return is(0,[(t()(),Bi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.toggle()&&r),r},null,null)),go(1,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),ns(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Uv(t){return is(0,[(t()(),Bi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Bi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,2).handleTouch(n)&&r),"keyup.enter"===e&&(r=!1!==o.toggle()&&r),"tapped"===e&&(r=!1!==o.toggle()&&r),r},Vv,jv)),go(2,4440064,null,0,Rv,[pn,yn],{center:[0,"center"]},null),go(3,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,zv)),go(6,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}var Fv="Buttons",Hv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new Ao,this.id="button-"+Math.floor(999999*Math.random())}return t.prototype.ngOnChanges=function(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()},t.prototype.ngAfterViewInit=function(){this.setClass(this.klass)},t.prototype.setClass=function(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))},t.prototype.setGroup=function(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")},t.prototype.setState=function(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")},t.prototype.tap=function(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this._onChange=t},t.prototype.registerOnTouched=function(t){this._onTouch=t},t}(),Bv=ga,Wv=function(){function t(){if(this.build=Bv(),!t.init){var e=Bv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Fv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Fv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Gv=rr({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function Yv(t){return is(0,[(t()(),Bi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,1).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,1).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.tap()&&r),r},Vv,jv)),go(1,4440064,null,0,Rv,[pn,yn],null,null),go(2,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),Ji(0,0)],function(t,e){t(e,1,0)},null)}var qv=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t,e){switch(void 0===e&&(e="html"),e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}},t}(),Zv="Pipes",$v=ga,Qv=function(){function t(){if(this.build=$v(),!t.init){var e=$v();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Zv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Zv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Xv=function(){function t(){this._timers={},this._intervals={},this._subscriptions={}}return t.prototype.timeout=function(t,e,n){var r=this;if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(function(){e(),r._timers[t]=null},n)},t.prototype.clearTimeout=function(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)},t.prototype.interval=function(t,e,n){if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(function(){return e()},n)},t.prototype.clearInterval=function(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)},t.prototype.subscription=function(t,e){this.unsub(t),this._subscriptions[t]=e},t.prototype.unsub=function(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof m?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)},t}(),Kv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.ngOnDestroy=function(){for(var t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(var t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(var t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)},e}(Xv),Jv=function(){return function(){}}(),ty=function(){return function(){}}(),ey=function(){function t(t){var e=this;this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?function(){e.headers=new Map,t.split("\n").forEach(function(t){var n=t.indexOf(":");if(n>0){var r=t.slice(0,n),o=r.toLowerCase(),i=t.slice(n+1).trim();e.maybeSetNormalizedName(r,o),e.headers.has(o)?e.headers.get(o).push(i):e.headers.set(o,[i])}})}:function(){e.headers=new Map,Object.keys(t).forEach(function(n){var r=t[n],o=n.toLowerCase();"string"==typeof r&&(r=[r]),r.length>0&&(e.headers.set(o,r),e.maybeSetNormalizedName(n,o))})}:this.headers=new Map}return t.prototype.has=function(t){return this.init(),this.headers.has(t.toLowerCase())},t.prototype.get=function(t){this.init();var e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null},t.prototype.keys=function(){return this.init(),Array.from(this.normalizedNames.values())},t.prototype.getAll=function(t){return this.init(),this.headers.get(t.toLowerCase())||null},t.prototype.append=function(t,e){return this.clone({name:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({name:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({name:t,value:e,op:"d"})},t.prototype.maybeSetNormalizedName=function(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)},t.prototype.init=function(){var e=this;this.lazyInit&&(this.lazyInit instanceof t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(t){return e.applyUpdate(t)}),this.lazyUpdate=null))},t.prototype.copyFrom=function(t){var e=this;t.init(),Array.from(t.headers.keys()).forEach(function(n){e.headers.set(n,t.headers.get(n)),e.normalizedNames.set(n,t.normalizedNames.get(n))})},t.prototype.clone=function(e){var n=new t;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([e]),n},t.prototype.applyUpdate=function(t){var e=t.name.toLowerCase();switch(t.op){case"a":case"s":var n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);var r=("a"===t.op?this.headers.get(e):void 0)||[];r.push.apply(r,p(n)),this.headers.set(e,r);break;case"d":var o=t.value;if(o){var i=this.headers.get(e);if(!i)return;0===(i=i.filter(function(t){return-1===o.indexOf(t)})).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,i)}else this.headers.delete(e),this.normalizedNames.delete(e)}},t.prototype.forEach=function(t){var e=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return t(e.normalizedNames.get(n),e.headers.get(n))})},t}(),ny=function(){function t(){}return t.prototype.encodeKey=function(t){return ry(t)},t.prototype.encodeValue=function(t){return ry(t)},t.prototype.decodeKey=function(t){return decodeURIComponent(t)},t.prototype.decodeValue=function(t){return decodeURIComponent(t)},t}();function ry(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}var oy=function(){function t(t){var e,n,r,o=this;if(void 0===t&&(t={}),this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new ny,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=(e=t.fromString,n=this.encoder,r=new Map,e.length>0&&e.split("&").forEach(function(t){var e=t.indexOf("="),o=h(-1==e?[n.decodeKey(t),""]:[n.decodeKey(t.slice(0,e)),n.decodeValue(t.slice(e+1))],2),i=o[0],s=o[1],a=r.get(i)||[];a.push(s),r.set(i,a)}),r)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(function(e){var n=t.fromObject[e];o.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}return t.prototype.has=function(t){return this.init(),this.map.has(t)},t.prototype.get=function(t){this.init();var e=this.map.get(t);return e?e[0]:null},t.prototype.getAll=function(t){return this.init(),this.map.get(t)||null},t.prototype.keys=function(){return this.init(),Array.from(this.map.keys())},t.prototype.append=function(t,e){return this.clone({param:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({param:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({param:t,value:e,op:"d"})},t.prototype.toString=function(){var t=this;return this.init(),this.keys().map(function(e){var n=t.encoder.encodeKey(e);return t.map.get(e).map(function(e){return n+"="+t.encoder.encodeValue(e)}).join("&")}).join("&")},t.prototype.clone=function(e){var n=new t({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat([e]),n},t.prototype.init=function(){var t=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(e){return t.map.set(e,t.cloneFrom.map.get(e))}),this.updates.forEach(function(e){switch(e.op){case"a":case"s":var n=("a"===e.op?t.map.get(e.param):void 0)||[];n.push(e.value),t.map.set(e.param,n);break;case"d":if(void 0===e.value){t.map.delete(e.param);break}var r=t.map.get(e.param)||[],o=r.indexOf(e.value);-1!==o&&r.splice(o,1),r.length>0?t.map.set(e.param,r):t.map.delete(e.param)}}),this.cloneFrom=this.updates=null)},t}();function iy(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function sy(t){return"undefined"!=typeof Blob&&t instanceof Blob}function ay(t){return"undefined"!=typeof FormData&&t instanceof FormData}var ly=function(){function t(t,e,n,r){var o;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,o=r):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.params&&(this.params=o.params)),this.headers||(this.headers=new ey),this.params){var i=this.params.toString();if(0===i.length)this.urlWithParams=e;else{var s=e.indexOf("?");this.urlWithParams=e+(-1===s?"?":s=200&&this.status<300}}(),hy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=uy.ResponseHeader,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(cy),py=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=uy.Response,n.body=void 0!==e.body?e.body:null,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(cy),dy=function(t){function e(e){var n=t.call(this,e,0,"Unknown Error")||this;return n.name="HttpErrorResponse",n.ok=!1,n.message=n.status>=200&&n.status<300?"Http failure during parsing for "+(e.url||"(unknown url)"):"Http failure response for "+(e.url||"(unknown url)")+": "+e.status+" "+e.statusText,n.error=e.error||null,n}return o(e,t),e}(cy);function fy(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}var gy=function(){function t(t){this.handler=t}return t.prototype.request=function(t,e,n){var r,o=this;if(void 0===n&&(n={}),t instanceof ly)r=t;else{var i;i=n.headers instanceof ey?n.headers:new ey(n.headers);var s=void 0;n.params&&(s=n.params instanceof oy?n.params:new oy({fromObject:n.params})),r=new ly(t,e,void 0!==n.body?n.body:null,{headers:i,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}var a=nl(r).pipe(Gl(function(t){return o.handler.handle(t)}));if(t instanceof ly||"events"===n.observe)return a;var l=a.pipe(hl(function(t){return t instanceof py}));switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return l.pipe(K(function(t){if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return l.pipe(K(function(t){return t.body}))}case"response":return l;default:throw new Error("Unreachable: unhandled observe type "+n.observe+"}")}},t.prototype.delete=function(t,e){return void 0===e&&(e={}),this.request("DELETE",t,e)},t.prototype.get=function(t,e){return void 0===e&&(e={}),this.request("GET",t,e)},t.prototype.head=function(t,e){return void 0===e&&(e={}),this.request("HEAD",t,e)},t.prototype.jsonp=function(t,e){return this.request("JSONP",t,{params:(new oy).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})},t.prototype.options=function(t,e){return void 0===e&&(e={}),this.request("OPTIONS",t,e)},t.prototype.patch=function(t,e,n){return void 0===n&&(n={}),this.request("PATCH",t,fy(n,e))},t.prototype.post=function(t,e,n){return void 0===n&&(n={}),this.request("POST",t,fy(n,e))},t.prototype.put=function(t,e,n){return void 0===n&&(n={}),this.request("PUT",t,fy(n,e))},t}(),vy=function(){function t(t,e){this.next=t,this.interceptor=e}return t.prototype.handle=function(t){return this.interceptor.intercept(t,this.next)},t}(),yy=new Ut("HTTP_INTERCEPTORS"),my=function(){function t(){}return t.prototype.intercept=function(t,e){return e.handle(t)},t}(),_y=/^\)\]\}',?\n/,by=function(){return function(){}}(),wy=function(){function t(){}return t.prototype.build=function(){return new XMLHttpRequest},t}(),Cy=function(){function t(t){this.xhrFactory=t}return t.prototype.handle=function(t){var e=this;if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new R(function(n){var r=e.xhrFactory.build();if(r.open(t.method,t.urlWithParams),t.withCredentials&&(r.withCredentials=!0),t.headers.forEach(function(t,e){return r.setRequestHeader(t,e.join(","))}),t.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){var o=t.detectContentTypeHeader();null!==o&&r.setRequestHeader("Content-Type",o)}if(t.responseType){var i=t.responseType.toLowerCase();r.responseType="json"!==i?i:"text"}var s=t.serializeBody(),a=null,l=function(){if(null!==a)return a;var e=1223===r.status?204:r.status,n=r.statusText||"OK",o=new ey(r.getAllResponseHeaders()),i=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(r)||t.url;return a=new hy({headers:o,status:e,statusText:n,url:i})},u=function(){var e=l(),o=e.headers,i=e.status,s=e.statusText,a=e.url,u=null;204!==i&&(u=void 0===r.response?r.responseText:r.response),0===i&&(i=u?200:0);var c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof u){var h=u;u=u.replace(_y,"");try{u=""!==u?JSON.parse(u):null}catch(p){u=h,c&&(c=!1,u={error:p,text:u})}}c?(n.next(new py({body:u,headers:o,status:i,statusText:s,url:a||void 0})),n.complete()):n.error(new dy({error:u,headers:o,status:i,statusText:s,url:a||void 0}))},c=function(t){var e=l().url,o=new dy({error:t,status:r.status||0,statusText:r.statusText||"Unknown Error",url:e||void 0});n.error(o)},h=!1,p=function(e){h||(n.next(l()),h=!0);var o={type:uy.DownloadProgress,loaded:e.loaded};e.lengthComputable&&(o.total=e.total),"text"===t.responseType&&r.responseText&&(o.partialText=r.responseText),n.next(o)},d=function(t){var e={type:uy.UploadProgress,loaded:t.loaded};t.lengthComputable&&(e.total=t.total),n.next(e)};return r.addEventListener("load",u),r.addEventListener("error",c),t.reportProgress&&(r.addEventListener("progress",p),null!==s&&r.upload&&r.upload.addEventListener("progress",d)),r.send(s),n.next({type:uy.Sent}),function(){r.removeEventListener("error",c),r.removeEventListener("load",u),t.reportProgress&&(r.removeEventListener("progress",p),null!==s&&r.upload&&r.upload.removeEventListener("progress",d)),r.abort()}})},t}(),xy=new Ut("XSRF_COOKIE_NAME"),Sy=new Ut("XSRF_HEADER_NAME"),Ey=function(){return function(){}}(),Oy=function(){function t(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return t.prototype.getToken=function(){if("server"===this.platform)return null;var t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Ma(t,this.cookieName),this.lastCookieString=t),this.lastToken},t}(),ky=function(){function t(t,e){this.tokenService=t,this.headerName=e}return t.prototype.intercept=function(t,e){var n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);var r=this.tokenService.getToken();return null===r||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,r)})),e.handle(t)},t}(),Py=function(){function t(t,e){this.backend=t,this.injector=e,this.chain=null}return t.prototype.handle=function(t){if(null===this.chain){var e=this.injector.get(yy,[]);this.chain=e.reduceRight(function(t,e){return new vy(t,e)},this.backend)}return this.chain.handle(t)},t}(),Ty=function(){function t(){}var e;return e=t,t.disable=function(){return{ngModule:e,providers:[{provide:ky,useClass:my}]}},t.withOptions=function(t){return void 0===t&&(t={}),{ngModule:e,providers:[t.cookieName?{provide:xy,useValue:t.cookieName}:[],t.headerName?{provide:Sy,useValue:t.headerName}:[]]}},t}(),Iy=function(){return function(){}}(),Ry=function(){function t(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new rl(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}return t.prototype.init=function(){return l(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.loadFromFile("api")];case 1:return t.sent(),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete(),[2]}})})},Object.defineProperty(t.prototype,"setup",{get:function(){return this._setup},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"app_name",{get:function(){return this._app_name},enumerable:!0,configurable:!0}),t.prototype.isSetup=function(t){return this._is_setup_observer.subscribe(t)},t.prototype.log=function(t,e,n,r,o){if(void 0===r&&(r="debug"),void 0===o&&(o=!1),window.debug||o){var i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i,[n])):console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i))}},t.prototype.get=function(t){var e=t.split("."),n=null;return"session"===e[0]?(e.shift(),n=fa(e,this._settings.session)):"local"===e[0]?(e.shift(),n=fa(e,this._settings.local)):n=fa(e,this._settings.api)||fa(e,this._settings.session)||fa(e,this._settings.local),n},t.prototype.loadStore=function(t,e){if(e)for(var n=0;n5?[2,Promise.resolve()]:(this._promises[r="load|"+t+"|"+e]||(this._promises[r]=new Promise(function(s,a){o.http.get(e).subscribe(function(e){o._settings[t]=i({},o._settings[t]||{},e||{})},function(i){o.log("Settings",'Failed to load settings from "'+e+'"'),o._promises[r]=null,o.loadFromFile(t,e,++n).then(function(){return s()})},function(){return s()})})),[2,this._promises[r]])})})},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(gy))},token:t,providedIn:"root"}),t}(),Ay=["control","shift","alt","meta","os"],My=function(){function t(){var t=this;this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.last_down!==n&&(t.keydown_states[n]||(t.keydown_states[n]=new rl(null),t.keydown_observers[n]=t.keydown_states[n].asObservable()),t.keydown_states[n].next(t.counter++),t.combo_end.indexOf(n)>=0&&e.preventDefault(),t.last_down=n)}),window.addEventListener("keyup",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.keydown_states[n].next(null),t.last_down===n&&(t.last_down=null)})}return t.prototype.listen=function(t,e){var n=this,r=(t=t instanceof Array?t:t.split("+")).map(function(t){return n.mapKey(t.toLowerCase())});if(r.length>0&&this.validCombination(r)){this.registered_combos.push(r);var o=r[r.length-1];return this.keydown_states[o]||(this.keydown_states[o]=new rl(null),this.keydown_observers[o]=this.keydown_states[o].asObservable()),this.updateCombinationEndList(),this.keydown_observers[o].subscribe(function(t){if(t){var o=[];if(r.length>1){for(var i=0,s=r;io[l+1])return}e()}})}return null},t.prototype.mapKey=function(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t},t.prototype.updateCombinationEndList=function(){for(var t,e=0,n=this.registered_combos;e0},t.ngInjectableDef=Ot({factory:function(){return new t},token:t,providedIn:"root"}),t}(),Ny=[],Dy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=da(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.repositories=function(){var t=this,e="repositories";return this._promises[e]||(this._promises[e]=new Promise(function(n,r){var o;t.http.get(t.api_route+"/repositories").subscribe(function(t){return o=t},function(n){r(n),delete t._promises[e]},function(){n(o),t.timeout(e,function(){return delete t._promises[e]},1e3)})})),this._promises[e]},e.prototype.commits=function(t){var e=this,n="commits|"+da(t);return this._promises[n]||(this._promises[n]=new Promise(function(t,r){var o;e.http.get(e.api_route+"/repositories_commits").subscribe(function(t){return o=t},function(t){r(t),delete e._promises[n]},function(){t(o),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.versions=function(t){var e=this,n="versions|"+t;return this._promises[n]||(this._promises[n]=new Promise(function(r,o){var i,s=e.api_route+"/"+encodeURIComponent(t);e.http.get(s).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[n]},function(){r(i),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.driverCommits=function(t,e){var n=this,r=da(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.build=function(t){var e=this,n=da(t),r="build|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){e.http.post(""+e.api_route,n).subscribe(function(t){return null},function(t){o(t),delete e._promises[r]},function(){t(),delete e._promises[r]})})),this._promises[r]},e.prototype.clean=function(t,e){var n=this,r=da(e),o="clean|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(t,e){n.http.delete(n.api_route+(r?"?"+r:"")).subscribe(function(t){return null},function(t){e(t),delete n._promises[o]},function(){t(),delete n._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/build":"/build"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(gy))},token:e,providedIn:"root"}),e}(Xv),jy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=da(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.specCommits=function(t,e){var n=this,r=da(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.run=function(t){var e=this;for(var n in t)null==t[n]&&delete t[n];var r=da(t),o="build|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(n,i){var s;e.http.post(e.api_route+(r?"?"+r:""),t,{responseType:"text"}).subscribe(function(t){return s=t},function(t){i(t),delete e._promises[o]},function(){n(s),delete e._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/test":"/test"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(gy))},token:e,providedIn:"root"}),e}(Xv),Vy=new R(P),Ly=function(){function t(t,e){this.delay=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new zy(t,this.delay,this.scheduler))},t}(),zy=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.delay=n,o.scheduler=r,o.queue=[],o.active=!1,o.errored=!1,o}return o(e,t),e.dispatch=function(t){for(var e=t.source,n=e.queue,r=t.scheduler,o=t.destination;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(o);if(n.length>0){var i=Math.max(0,n[0].time-r.now());this.schedule(t,i)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.destination.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new Uy(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(Nd.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.scheduleNotification(Nd.createComplete()),this.unsubscribe()},e}(E),Uy=function(){return function(t,e){this.time=t,this.notification=e}}(),Fy="Service workers are disabled or not supported by this browser",Hy=function(){function t(t){if(this.serviceWorker=t,t){var e=id(t,"controllerchange").pipe(K(function(){return t.controller})),n=Ul(ul(function(){return nl(t.controller)}),e);this.worker=n.pipe(hl(function(t){return!!t})),this.registration=this.worker.pipe(Vl(function(){return t.getRegistration()}));var r=id(t,"message").pipe(K(function(t){return t.data})).pipe(hl(function(t){return t&&t.type})).pipe(gt(new V));r.connect(),this.events=r}else this.worker=this.events=this.registration=(o=Fy,ul(function(){return Rd(new Error(o))}));var o}return t.prototype.postMessage=function(t,e){return this.worker.pipe(Rl(1),_l(function(n){n.postMessage(i({action:t},e))})).toPromise().then(function(){})},t.prototype.postMessageWithStatus=function(t,e,n){var r=this.waitForStatus(n),o=this.postMessage(t,e);return Promise.all([r,o]).then(function(){})},t.prototype.generateNonce=function(){return Math.round(1e7*Math.random())},t.prototype.eventsOfType=function(t){return this.events.pipe(hl(function(e){return e.type===t}))},t.prototype.nextEventOfType=function(t){return this.eventsOfType(t).pipe(Rl(1))},t.prototype.waitForStatus=function(t){return this.eventsOfType("STATUS").pipe(hl(function(e){return e.nonce===t}),Rl(1),K(function(t){if(!t.status)throw new Error(t.error)})).toPromise()},Object.defineProperty(t.prototype,"isEnabled",{get:function(){return!!this.serviceWorker},enumerable:!0,configurable:!0}),t}(),By=function(){function t(t){if(this.sw=t,this.subscriptionChanges=new V,!t.isEnabled)return this.messages=Vy,this.notificationClicks=Vy,void(this.subscription=Vy);this.messages=this.sw.eventsOfType("PUSH").pipe(K(function(t){return t.data})),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(K(function(t){return t.data})),this.pushManager=this.sw.registration.pipe(K(function(t){return t.pushManager}));var e=this.pushManager.pipe(Vl(function(t){return t.getSubscription()}));this.subscription=lt(e,this.subscriptionChanges)}return Object.defineProperty(t.prototype,"isEnabled",{get:function(){return this.sw.isEnabled},enumerable:!0,configurable:!0}),t.prototype.requestSubscription=function(t){var e=this;if(!this.sw.isEnabled)return Promise.reject(new Error(Fy));for(var n={userVisibleOnly:!0},r=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),o=new Uint8Array(new ArrayBuffer(r.length)),i=0;i
'+e+"
",n,r,t)},e.prototype.notifySuccess=function(t,e,n){this.notify("success",t,e,n)},e.prototype.notifyError=function(t,e,n){this.notify("error",t,e,n)},e.prototype.notifyInfo=function(t,e,n){this.notify("info",t,e,n)},e.prototype.log=function(t,e,n,r,o){void 0===r&&(r="debug"),void 0===o&&(o=!1),this._settings.log(t,e,n,r,o)},e.prototype.navigate=function(t,e){var n=t instanceof Array?t.slice():[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})},e.prototype.navigateBack=function(){if(this._route_trail&&this._route_trail.length>0){var t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])},e.prototype.get=function(t){return this._subjects[t]&&this._subjects[t]instanceof rl?this._subjects[t].getValue():null},e.prototype.listen=function(t,e){return this._observers[t]?this._observers[t].subscribe(e):null},e.prototype.set=function(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new rl(e),this._observers[t]=this._subjects[t].asObservable())},e.prototype.init=function(){var t=this;if(!this._settings.setup)return this.timeout("init",function(){return t.init()});this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(function(e){t.log("CACHE","Update available: current version is "+e.current.hash+" available version is "+e.available.hash),t.notifyInfo("Newer version of the app is available","Refresh",function(){return location.reload()})}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],function(){t.navigate("bootstrap",{clear:!0})})},e.prototype.registerOverlays=function(){if(Ny)for(var t=0,e=Ny;tt.driver.localeCompare(n.id)?e:n},null),t.updateSpecCommits()),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.updateSpecCommits=function(){var t=this;this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(function(e){t.spec_commit_list=(e||[]).map(function(t){return{id:t.commit,name:t.commit,author:t.author,date:ga(t.date).format("DD MMM YYYY h:mm A")}}),t.spec_commit_list.unshift({id:null,name:"Latest Commit"}),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.test=function(){var t=this;if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";var e=function(e){e instanceof Object&&(e=e.error),t.test_results=t.styleResults(e||"");var n=t.service.get("TEST.results")||{},r=e.indexOf("exited with 0")>=0;n[t.repo+"|"+t.driver]=r?"passed":"failed",t.service.set("TEST.results",n),t.testing=!1,t.timeout("scroll",function(){return t.body.nativeElement.scrollTo(0,t.body.nativeElement.scrollHeight)},10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(e,e)}},e.prototype.styleResults=function(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')},e}(Kv),nm=rr({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function rm(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Spec Commit:"])),(t()(),Bi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.spec_commit=n)&&r),r},Ov,bv)),go(5,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(7,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(9,16384,null,0,Rg,[[4,Ig]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,eo(e,9).ngClassUntouched,eo(e,9).ngClassTouched,eo(e,9).ngClassPristine,eo(e,9).ngClassDirty,eo(e,9).ngClassValid,eo(e,9).ngClassInvalid,eo(e,9).ngClassPending)})}function om(t){return is(0,[(t()(),Bi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),es(128,1,new Array(3))],null,function(t,e){var n=e.component,r=function(t,e,n,r){if($e.isWrapped(r)){r=$e.unwrap(r);var o=t.def.nodes[0].bindingIndex+0,i=$e.unwrap(t.oldValues[o]);t.oldValues[o]=new $e(i)}return r}(e,0,0,t(e,1,0,eo(e.parent.parent,0),n.test_results,"html"));t(e,0,0,r)})}function im(t){return is(0,[(t()(),Bi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Bi(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Repository:"])),(t()(),Bi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),ns(6,null,["",""])),(t()(),Bi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Driver:"])),(t()(),Bi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),ns(11,null,["",""])),(t()(),Bi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Commit:"])),(t()(),Bi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.commit=n)&&r),r},Ov,bv)),go(17,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(19,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(21,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Bi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),ns(-1,null,["Spec:"])),(t()(),Bi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Bi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.spec=n)&&r),"ngModelChange"===e&&(r=!1!==o.updateSpecCommits()&&r),r},Ov,bv)),go(27,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(29,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(31,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Hi(16777216,null,null,1,null,rm)),go(33,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Bi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Bi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Bi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.force=n)&&r),r},Uv,Lv)),go(38,49152,null,0,Pv,[],{klass:[0,"klass"],label:[1,"label"]},null),vo(1024,null,xg,function(t){return[t]},[Pv]),go(40,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(42,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Bi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.debug=n)&&r),r},Uv,Lv)),go(45,49152,null,0,Pv,[],{klass:[0,"klass"],label:[1,"label"]},null),vo(1024,null,xg,function(t){return[t]},[Pv]),go(47,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(49,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Bi(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Bi(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.test()&&r),r},Yv,Gv)),vo(5120,null,xg,function(t){return[t]},[Hv]),go(55,4767744,null,0,Hv,[pn,yn],null,{tapped:"tapped"}),go(56,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),ns(-1,0,["Run!"])),(t()(),Bi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),ns(59,null,[" "," "])),(t()(),Hi(16777216,null,null,1,null,om)),go(61,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Bi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,63).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,63).handleTouch(n)&&r),"tapped"===e&&(r=0!=(o.show=!o.show)&&r),r},Vv,jv)),go(63,4440064,null,0,Rv,[pn,yn],{klass:[0,"klass"],center:[1,"center"]},null),go(64,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,eo(e,21).ngClassUntouched,eo(e,21).ngClassTouched,eo(e,21).ngClassPristine,eo(e,21).ngClassDirty,eo(e,21).ngClassValid,eo(e,21).ngClassInvalid,eo(e,21).ngClassPending),t(e,26,0,eo(e,31).ngClassUntouched,eo(e,31).ngClassTouched,eo(e,31).ngClassPristine,eo(e,31).ngClassDirty,eo(e,31).ngClassValid,eo(e,31).ngClassInvalid,eo(e,31).ngClassPending),t(e,37,0,eo(e,42).ngClassUntouched,eo(e,42).ngClassTouched,eo(e,42).ngClassPristine,eo(e,42).ngClassDirty,eo(e,42).ngClassValid,eo(e,42).ngClassInvalid,eo(e,42).ngClassPending),t(e,44,0,eo(e,49).ngClassUntouched,eo(e,49).ngClassTouched,eo(e,49).ngClassPristine,eo(e,49).ngClassDirty,eo(e,49).ngClassValid,eo(e,49).ngClassInvalid,eo(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_up":"keyboard_arrow_down")})}function sm(t){return is(0,[(t()(),Bi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(-1,null,["arrow_back"])),(t()(),Bi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(-1,null,["Select a driver from the sidebar"]))],null,null)}function am(t){return is(0,[(e=0,n=qv,r=[Yu],yo(-1,e|=16,null,0,n,n,r)),Zi(671088640,1,{body:0}),(t()(),Bi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,im)),go(4,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Hi(0,[["select",2]],null,0,null,sm))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,eo(e,5))},null);var e,n,r}function lm(t){return is(0,[(t()(),Bi(0,0,null,null,1,"app-workspace",[],null,null,null,am,nm)),go(1,245760,null,0,em,[tm,dh],null,null)],function(t,e){t(e,1,0)},null)}var um=Wr("app-workspace",em,lm,{},{},[]),cm=function(){function t(){this.menu=!0,this.menuChange=new Ao}return t.prototype.toggleMenu=function(){this.menu=!this.menu,this.menuChange.emit(this.menu)},t}(),hm=rr({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function pm(t){return is(0,[(t()(),Bi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==eo(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==eo(t,2).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.toggleMenu()&&r),r},Vv,jv)),go(2,4440064,null,0,Rv,[pn,yn],{klass:[0,"klass"]},null),go(3,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(-1,null,["menu"])),(t()(),Bi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Bi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Bi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),ns(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}var dm=function(t){function e(e){var n=t.call(this)||this;return n.service=e,n.repository_list=[],n.status={},n}return o(e,t),e.prototype.ngOnInit=function(){var t=this;this.service.set("TEST.repository",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",function(){return t.updateRepositoryList()},6e4),this.subscription("test_results",this.service.listen("TEST.results",function(e){t.status=e||{}})),this.subscription("repository",this.service.listen("TEST.repository",function(e){e&&(t.repo={id:e,name:e},t.search_str="",t.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",function(e){t.driver=e}))},e.prototype.setRepository=function(t){this.service.navigate([t]),this.search_str="",this.updateDriverList()},e.prototype.setDriver=function(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t])},e.prototype.filter=function(t){this.filtered_list=this.driver_list.filter(function(e){return e.toLowerCase().indexOf(t.toLowerCase())>=0})},e.prototype.updateDriverList=function(){var t=this;this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(function(e){t.driver_list=e||[],t.filter(""),t.loading=!1},function(e){return t.loading=!1})},e.prototype.updateRepositoryList=function(){var t=this;this.service.Build.repositories().then(function(e){t.repository_list=(e||[]).map(function(t){return{id:t,name:t}}),t.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),t.updateDriverList()})},e}(Kv),fm=rr({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function gm(t){return is(0,[(t()(),Bi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.setDriver(t.context.$implicit)&&r),r},null,null)),go(1,4341760,null,0,Av,[pn,yn],null,{tapped:"tapped"}),(t()(),Bi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Bi(3,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(4,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]),t(e,4,0,e.context.$implicit)})}function vm(t){return is(0,[(t()(),Bi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(3,null,["",""])),(t()(),Bi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),ns(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function ym(t){return is(0,[(t()(),Bi(0,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.repo=n)&&r),"ngModelChange"===e&&(r=!1!==o.setRepository(n.id)&&r),r},Ov,bv)),go(3,4767744,null,0,Jp,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),vo(1024,null,xg,function(t){return[t]},[Jp]),go(5,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(7,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(8,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Bi(9,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Bi(10,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),ns(-1,null,["search"])),(t()(),Bi(12,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==eo(t,13)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==eo(t,13).onTouched()&&r),"compositionstart"===e&&(r=!1!==eo(t,13)._compositionStart()&&r),"compositionend"===e&&(r=!1!==eo(t,13)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search_str=n)&&r),"ngModelChange"===e&&(r=!1!==o.filter(n)&&r),r},null,null)),go(13,16384,null,0,Og,[yn,pn,[2,Eg]],null,null),vo(1024,null,xg,function(t){return[t]},[Og]),go(15,671744,null,0,pv,[[8,null],[8,null],[8,null],[6,xg]],{model:[0,"model"]},{update:"ngModelChange"}),vo(2048,null,Ig,null,[pv]),go(17,16384,null,0,Rg,[[4,Ig]],null,null),(t()(),Bi(18,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Hi(16777216,null,null,1,null,gm)),go(20,278528,null,0,ja,[zn,Vn,In],{ngForOf:[0,"ngForOf"]},null),(t()(),Hi(16777216,null,null,1,null,vm)),go(22,16384,null,0,La,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,3,0,"simple",n.repository_list||Ir,"ACA Drivers"),t(e,5,0,n.repo),t(e,15,0,n.search_str),t(e,20,0,n.filtered_list),t(e,22,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,2,0,eo(e,7).ngClassUntouched,eo(e,7).ngClassTouched,eo(e,7).ngClassPristine,eo(e,7).ngClassDirty,eo(e,7).ngClassValid,eo(e,7).ngClassInvalid,eo(e,7).ngClassPending),t(e,12,0,eo(e,17).ngClassUntouched,eo(e,17).ngClassTouched,eo(e,17).ngClassPristine,eo(e,17).ngClassDirty,eo(e,17).ngClassValid,eo(e,17).ngClassInvalid,eo(e,17).ngClassPending)})}var mm=rr({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:16em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:16em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function _m(t){return is(0,[(t()(),Bi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Bi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Bi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var r=!0;return"menuChange"===e&&(r=!1!==(t.component.show_menu=n)&&r),r},pm,hm)),go(3,49152,null,0,cm,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Bi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Bi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Bi(6,0,null,null,1,"sidebar",[],null,null,null,ym,fm)),go(7,245760,null,0,dm,[tm],null,null),(t()(),Bi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Bi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),go(10,212992,null,0,Op,[Ep,zn,sn,[8,null],An],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function bm(t){return is(0,[(t()(),Bi(0,0,null,null,1,"app-root",[],null,null,null,_m,mm)),go(1,49152,null,0,ya,[],null,null)],null,null)}var wm=Wr("app-root",ya,bm,{},{},[]),Cm=function(){return function(){}}(),xm=function(){return function(){}}(),Sm=ca(va,[ya],function(t){return function(t){for(var e={},n=[],r=!1,o=0;o=e?t:""+Array(e+1-r.length).join(n)+t},p={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+h(r,2,"0")+":"+h(o,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,s),o=e-r<0,i=t.clone().add(n+(o?-1:1),s);return Number(-(n+(e-r)/(o?r-i:i-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(u){return{M:s,y:l,w:i,d:o,h:r,m:n,s:e,ms:t,Q:a}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},d={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=d;var v=function(t){return t instanceof b},y=function(t,e,n){var r;if(!t)return null;if("string"==typeof t)g[t]&&(r=t),e&&(g[t]=e,r=t);else{var o=t.name;g[o]=t,r=o}return n||(f=r),r},m=function(t,e,n){if(v(t))return t.clone();var r=e?"string"==typeof e?{format:e,pl:n}:e:{};return r.date=t,new b(r)},_=p;_.l=y,_.i=v,_.w=function(t,e){return m(t,{locale:e.$L,utc:e.$u})};var b=function(){function h(t){this.$L=this.$L||y(t.locale,null,!0)||f,this.parse(t)}var p=h.prototype;return p.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(_.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(u);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},p.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},p.$utils=function(){return _},p.isValid=function(){return!("Invalid Date"===this.$d.toString())},p.isSame=function(t,e){var n=m(t);return this.startOf(e)<=n&&n<=this.endOf(e)},p.isAfter=function(t,e){return m(t)=0;a--)(o=t[a])&&(s=(i<3?o(s):i>3?o(e,n,s):o(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}function a(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function l(t,e,n,r){return new(n||(n=Promise))(function(o,i){function s(t){try{l(r.next(t))}catch(e){i(e)}}function a(t){try{l(r.throw(t))}catch(e){i(e)}}function l(t){t.done?o(t.value):new n(function(e){e(t.value)}).then(s,a)}l((r=r.apply(t,e||[])).next())})}function u(t,e){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,r=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function h(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(a){o={error:a}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function p(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(X);function st(t){return t}function at(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),rt(st,t)}function lt(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof o&&(n=t.pop()),null===r&&1===t.length&&t[0]instanceof R?t[0]:at(n)(et(t,r))}function ut(){return function(t){return t.lift(new ct(t))}}var ct=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var r=new ht(t,n),o=e.subscribe(r);return r.closed||(r.connection=n.connect()),o},t}(),ht=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},e}(E),pt=function(t){function e(e,n){var r=t.call(this)||this;return r.source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return o(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 m).add(this.source.subscribe(new ft(this.getSubject(),this))),t.closed?(this._connection=null,t=m.EMPTY):this._connection=t),t},e.prototype.refCount=function(){return ut()(this)},e}(R).prototype,dt={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:pt._subscribe},_isComplete:{value:pt._isComplete,writable:!0},getSubject:{value:pt.getSubject},connect:{value:pt.connect},refCount:{value:pt.refCount}},ft=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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}(j);function gt(t,e){return function(n){var r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new vt(r,e));var o=Object.create(n,dt);return o.source=n,o.subjectFactory=r,o}}var vt=function(){function t(t,e){this.subjectFactory=t,this.selector=e}return t.prototype.call=function(t,e){var n=this.selector,r=this.subjectFactory(),o=n(r).subscribe(t);return o.add(e.subscribe(r)),o},t}();function yt(){return new V}var mt="__parameters__";function _t(t,e,n){var r=function(t){return function(){for(var e=[],n=0;n ");else if("object"==typeof e){var i=[];for(var s in e)if(e.hasOwnProperty(s)){var a=e[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):Tt(a)))}o="{"+i.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+o+"]: "+t.replace(Xt,"\n ")}function ne(t,e){return new Error(ee(t,e,"StaticInjectorError"))}var re="ngDebugContext",oe="ngOriginalError",ie="ngErrorLogger",se=new Ut("AnalyzeForEntryComponents"),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({}),le=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt)}();function ue(t){return t[re]}function ce(t){return t[oe]}function he(t){for(var e=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return t.prototype.getInertBodyElement_XHR=function(t){t=""+t+"";try{t=encodeURI(t)}catch(r){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=""+t+"";try{var e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(n){return null}},t.prototype.getInertBodyElement_InertDocument=function(t){var e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},t.prototype.stripCustomNsAttrs=function(t){for(var e=t.attributes,n=e.length-1;0"),!0},t.prototype.endElement=function(t){var e=t.nodeName.toLowerCase();ke.hasOwnProperty(e)&&!xe.hasOwnProperty(e)&&(this.buf.push(""))},t.prototype.chars=function(t){this.buf.push(De(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}(),Me=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ne=/([^\#-~ |!])/g;function De(t){return t.replace(/&/g,"&").replace(Me,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ne,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}function je(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Ve=function(t){return 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",t}({}),Le=function(){return function(){}}(),ze=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ue=/^url\(([^)]+)\)$/,Fe=/([A-Z])/g;function He(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function Be(t){return!!t&&"function"==typeof t.then}function We(t){return!!t&&"function"==typeof t.subscribe}var Ge=null;function Ye(){if(!Ge){var t=Dt.Symbol;if(t&&t.iterator)Ge=t.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),n=0;n-1}(r)||"root"===o.providedIn&&r._def.isRoot))){var c=t._providers.length;return t._def.providers[c]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:c,token:e.token},t._providers[c]=Ar,t._providers[c]=Lr(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Vt(i)}}function Lr(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(Vr(t,n[0]));case 2:return new e(Vr(t,n[0]),Vr(t,n[1]));case 3:return new e(Vr(t,n[0]),Vr(t,n[1]),Vr(t,n[2]));default:for(var o=new Array(r),i=0;i=n.length)&&(e=n.length-1),e<0)return null;var r=n[e];return r.viewContainerParent=null,Br(n,e),Xn.dirtyParentQueries(r),Fr(r),r}function Ur(t,e,n){var r=e?fr(e,e.def.lastRenderRootNode):t.renderElement,o=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);xr(n,2,o,i,void 0)}function Fr(t){xr(t,3,null,null,void 0)}function Hr(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Br(t,e){e>=t.length-1?t.pop():t.splice(e,1)}var Wr=new Object;function Gr(t,e,n,r,o,i){return new Yr(t,e,n,r,o,i)}var Yr=function(t){function e(e,n,r,o,i,s){var a=t.call(this)||this;return a.selector=e,a.componentType=n,a._inputs=o,a._outputs=i,a.ngContentSelectors=s,a.viewDefFactory=r,a}return o(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){var t=[],e=this._inputs;for(var n in e)t.push({propName:n,templateName:e[n]});return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var t=[];for(var e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,r){if(!r)throw new Error("ngModule should be provided");var o=Cr(this.viewDefFactory),i=o.nodes[0].element.componentProvider.nodeIndex,s=Xn.createRootView(t,e||[],n,o,r,Wr),a=Zn(s,i).instance;return n&&s.renderer.setAttribute(qn(s,0).renderElement,"ng-version",_n.full),new qr(s,new Xr(s),a)},e}(en),qr=function(t){function e(e,n,r){var o=t.call(this)||this;return o._view=e,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o.hostView=n,o.changeDetectorRef=n,o.instance=r,o}return o(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return new pn(qn(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new eo(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}(tn);function Zr(t,e,n){return new $r(t,e,n)}var $r=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 pn(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new eo(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=dr(t),t=t.parent;return t?new eo(t,e):new eo(this._view,null)},enumerable:!0,configurable:!0}),t.prototype.clear=function(){for(var t=this._embeddedViews.length-1;t>=0;t--){var e=zr(this._data,t);Xn.destroyView(e)}},t.prototype.get=function(t){var e=this._embeddedViews[t];if(e){var n=new Xr(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 r=t.createEmbeddedView(e||{});return this.insert(r,n),r},t.prototype.createComponent=function(t,e,n,r,o){var i=n||this.parentInjector;o||t instanceof ln||(o=i.get(un));var s=t.create(i,r,void 0,o);return this.insert(s.hostView,e),s},t.prototype.insert=function(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n,r,o,i,s=t;return i=(n=this._data).viewContainer._embeddedViews,null==(r=e)&&(r=i.length),(o=s._view).viewContainerParent=this._view,Hr(i,r,o),function(t,e){var n=pr(e);if(n&&n!==t&&!(16&e.state)){e.state|=16;var r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(e),function(t,n){if(!(4&n.flags)){e.parent.def.nodeFlags|=4,n.flags|=4;for(var r=n.parent;r;)r.childFlags|=4,r=r.parent}}(0,e.parentNodeDef)}}(n,o),Xn.dirtyParentQueries(o),Ur(n,r>0?i[r-1]:null,o),s.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,r,o,i,s,a=this._embeddedViews.indexOf(t._view);return o=e,s=(i=(n=this._data).viewContainer._embeddedViews)[r=a],Br(i,r),null==o&&(o=i.length),Hr(i,o,s),Xn.dirtyParentQueries(s),Fr(s),Ur(n,o>0?i[o-1]:null,s),t},t.prototype.indexOf=function(t){return this._embeddedViews.indexOf(t._view)},t.prototype.remove=function(t){var e=zr(this._data,t);e&&Xn.destroyView(e)},t.prototype.detach=function(t){var e=zr(this._data,t);return e?new Xr(e):null},t}();function Qr(t){return new Xr(t)}var Xr=function(){function t(t){this._view=t,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){return xr(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(){ur(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{Xn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}},t.prototype.checkNoChanges=function(){Xn.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)),Xn.destroyView(this._view)},t.prototype.detachFromAppRef=function(){this._appRef=null,Fr(this._view),Xn.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 Kr(t,e){return new Jr(t,e)}var Jr=function(t){function e(e,n){var r=t.call(this)||this;return r._parentView=e,r._def=n,r}return o(e,t),e.prototype.createEmbeddedView=function(t){return new Xr(Xn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new pn(qn(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),e}(Vn);function to(t,e){return new eo(t,e)}var eo=function(){function t(t,e){this.view=t,this.elDef=e}return t.prototype.get=function(t,e){return void 0===e&&(e=Gt.THROW_IF_NOT_FOUND),Xn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:tr(t)},e)},t}();function no(t,e){var n=t.def.nodes[e];if(1&n.flags){var r=qn(t,n.nodeIndex);return n.element.template?r.template:r.renderElement}if(2&n.flags)return Yn(t,n.nodeIndex).renderText;if(20240&n.flags)return Zn(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function ro(t){return new oo(t.renderer)}var oo=function(){function t(t){this.delegate=t}return t.prototype.selectRootElement=function(t){return this.delegate.selectRootElement(t)},t.prototype.createElement=function(t,e){var n=h(Tr(e),2),r=this.delegate.createElement(n[1],n[0]);return t&&this.delegate.appendChild(t,r),r},t.prototype.createViewRoot=function(t){return t},t.prototype.createTemplateAnchor=function(t){var e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e},t.prototype.createText=function(t,e){var n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n},t.prototype.projectNodes=function(t,e){for(var n=0;n0,e.provider.value,e.provider.deps);if(e.outputs.length)for(var r=0;r0,r=e.provider;switch(201347067&e.flags){case 512:return Eo(t,e.parent,n,r.value,r.deps);case 1024:return function(t,e,n,r,o){var i=o.length;switch(i){case 0:return r();case 1:return r(ko(t,e,n,o[0]));case 2:return r(ko(t,e,n,o[0]),ko(t,e,n,o[1]));case 3:return r(ko(t,e,n,o[0]),ko(t,e,n,o[1]),ko(t,e,n,o[2]));default:for(var s=Array(i),a=0;a0&&(o=setTimeout(function(){r._callbacks=r._callbacks.filter(function(t){return t.timeoutId!==o}),t(r._didWork,r.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:o,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}(),yi=function(){function t(){this._applications=new Map,mi.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),mi.findTestabilityInTree(this,t,e)},s([a("design:paramtypes",[])],t)}(),mi=new(function(){function t(){}return t.prototype.addToWindow=function(t){},t.prototype.findTestabilityInTree=function(t,e,n){return null},t}()),_i=new Ut("AllowMultipleToken"),bi=function(){return function(t,e){this.name=t,this.token=e}}();function wi(t,e,n){void 0===n&&(n=[]);var r="Platform: "+e,o=new Ut(r);return function(e){void 0===e&&(e=[]);var i=Ci();if(!i||i.injector.get(_i,!1))if(t)t(n.concat(e).concat({provide:o,useValue:!0}));else{var s=n.concat(e).concat({provide:o,useValue:!0});!function(t){if(fi&&!fi.destroyed&&!fi.injector.get(_i,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");fi=t.get(xi);var e=t.get(Ho,null);e&&e.forEach(function(t){return t()})}(Gt.create({providers:s,name:r}))}return function(t){var e=Ci();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}(o)}}function Ci(){return fi&&!fi.destroyed?fi:null}var xi=function(){function t(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return t.prototype.bootstrapModuleFactory=function(t,e){var n,r=this,o="noop"===(n=e?e.ngZone:void 0)?new gi:("zone.js"===n?void 0:n)||new li({enableLongStackTrace:ge()}),i=[{provide:li,useValue:o}];return o.run(function(){var e=Gt.create({providers:i,parent:r.injector,name:t.moduleType.name}),n=t.create(e),s=n.injector.get(pe,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy(function(){return Oi(r._modules,n)}),o.runOutsideAngular(function(){return o.onError.subscribe({next:function(t){s.handleError(t)}})}),function(t,e,o){try{var i=((s=n.injector.get(Lo)).runInitializers(),s.donePromise.then(function(){return r._moduleDoBootstrap(n),n}));return Be(i)?i.catch(function(n){throw e.runOutsideAngular(function(){return t.handleError(n)}),n}):i}catch(a){throw e.runOutsideAngular(function(){return t.handleError(a)}),a}var s}(s,o)})},t.prototype.bootstrapModule=function(t,e){var n=this;void 0===e&&(e=[]);var r=Si({},e);return function(t,e,n){return t.get(ti).createCompiler([e]).compileModuleAsync(n)}(this.injector,r,t).then(function(t){return n.bootstrapModuleFactory(t,r)})},t.prototype._moduleDoBootstrap=function(t){var e=t.injector.get(Ei);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(function(t){return e.bootstrap(t)});else{if(!t.instance.ngDoBootstrap)throw new Error("The module "+Tt(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}();function Si(t,e){return Array.isArray(e)?e.reduce(Si,t):i({},t,e)}var Ei=function(){function t(t,e,n,r,o,i){var s=this;this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ge(),this._zone.onMicrotaskEmpty.subscribe({next:function(){s._zone.run(function(){s.tick()})}});var a=new R(function(t){s._stable=s._zone.isStable&&!s._zone.hasPendingMacrotasks&&!s._zone.hasPendingMicrotasks,s._zone.runOutsideAngular(function(){t.next(s._stable),t.complete()})}),l=new R(function(t){var e;s._zone.runOutsideAngular(function(){e=s._zone.onStable.subscribe(function(){li.assertNotInAngularZone(),ai(function(){s._stable||s._zone.hasPendingMacrotasks||s._zone.hasPendingMicrotasks||(s._stable=!0,t.next(!0))})})});var n=s._zone.onUnstable.subscribe(function(){li.assertInAngularZone(),s._stable&&(s._stable=!1,s._zone.runOutsideAngular(function(){t.next(!1)}))});return function(){e.unsubscribe(),n.unsubscribe()}});this.isStable=lt(a,l.pipe(function(t){return ut()(gt(yt)(t))}))}var e;return e=t,t.prototype.bootstrap=function(t,e){var n,r=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 en?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);var o=n instanceof ln?null:this._injector.get(un),i=n.create(Gt.NULL,[],e||n.selector,o);i.onDestroy(function(){r._unloadComponent(i)});var s=i.injector.get(vi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ge()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i},t.prototype.tick=function(){var t,n,r,o,i=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var s=e._tickScope();try{this._runningTick=!0;try{for(var a=c(this._views),l=a.next();!l.done;l=a.next())l.value.detectChanges()}catch(p){t={error:p}}finally{try{l&&!l.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}if(this._enforceNoNewChanges)try{for(var u=c(this._views),h=u.next();!h.done;h=u.next())h.value.checkNoChanges()}catch(d){r={error:d}}finally{try{h&&!h.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}catch(f){this._zone.runOutsideAngular(function(){return i._exceptionHandler.handleError(f)})}finally{this._runningTick=!1,ii(s)}},t.prototype.attachView=function(t){var e=t;this._views.push(e),e.attachToAppRef(this)},t.prototype.detachView=function(t){var e=t;Oi(this._views,e),e.detachFromAppRef()},t.prototype._loadComponent=function(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach(function(e){return e(t)})},t.prototype._unloadComponent=function(t){this.detachView(t.hostView),Oi(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._tickScope=oi("ApplicationRef#tick()"),t}();function Oi(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}var ki=function(){return function(){}}(),Pi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Ti=function(){function t(t,e){this._compiler=t,this._config=e||Pi}return t.prototype.load=function(t){return this._compiler instanceof Jo?this.loadFactory(t):this.loadAndCompile(t)},t.prototype.loadAndCompile=function(t){var e=this,r=h(t.split("#"),2),o=r[0],i=r[1];return void 0===i&&(i="default"),n("zn8P")(o).then(function(t){return t[i]}).then(function(t){return Ii(t,o,i)}).then(function(t){return e._compiler.compileModuleAsync(t)})},t.prototype.loadFactory=function(t){var e=h(t.split("#"),2),r=e[0],o=e[1],i="NgFactory";return void 0===o&&(o="default",i=""),n("zn8P")(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(t){return t[o+i]}).then(function(t){return Ii(t,r,o)})},t}();function Ii(t,e,n){if(!t)throw new Error("Cannot find '"+n+"' in '"+e+"'");return t}var Ri=function(){return function(t,e){this.name=t,this.callback=e}}(),Ai=function(){function t(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Mi&&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}(),Mi=function(t){function e(e,n,r){var o=t.call(this,e,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=e,o}return o(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,p([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,r){e.childNodes.forEach(function(e){e instanceof Mi&&(n(e)&&r.push(e),t(e,n,r))})}(this,t,e),e},e.prototype.queryAllNodes=function(t){var e=[];return function t(e,n,r){e instanceof Mi&&e.childNodes.forEach(function(e){n(e)&&r.push(e),e instanceof Mi&&t(e,n,r)})}(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}(Ai),Ni=new Map,Di=function(t){return Ni.get(t)||null};function ji(t){Ni.set(t.nativeNode,t)}var Vi=wi(null,"core",[{provide:Bo,useValue:"unknown"},{provide:xi,deps:[Gt]},{provide:yi,deps:[]},{provide:Go,deps:[]}]),Li=new Ut("LocaleId");function zi(){return Dn}function Ui(){return jn}function Fi(t){return t||"en-US"}function Hi(t){var e=[];return t.onStable.subscribe(function(){for(;e.length;)e.pop()()}),function(t){e.push(t)}}var Bi=function(){return function(t){}}();function Wi(t,e,n,r,o,i){t|=1;var s=mr(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s.matchedQueries,matchedQueryIds:s.matchedQueryIds,references:s.references,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?Cr(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Kn},provider:null,text:null,query:null,ngContent:null}}function Gi(t,e,n,r,o,i,s,a,l,u,c,p){var d;void 0===s&&(s=[]),u||(u=Kn);var f=mr(n),g=f.matchedQueries,v=f.references,y=f.matchedQueryIds,m=null,_=null;i&&(m=(d=h(Tr(i),2))[0],_=d[1]),a=a||[];for(var b=new Array(a.length),w=0;w0)u=g,ls(g)||(c=g);else for(;u&&f===u.nodeIndex+u.childCount;){var m=u.parent;m&&(m.childFlags|=u.childFlags,m.childMatchedQueries|=u.childMatchedQueries),c=(u=m)&&ls(u)?u.renderParent:u}}return{factory:null,nodeFlags:s,rootNodeFlags:a,nodeMatchedQueries:l,flags:t,nodes:e,updateDirectives:n||Kn,updateRenderer:r||Kn,handleEvent:function(t,n,r,o){return e[n].element.handleEvent(t,r,o)},bindingCount:o,outputCount:i,lastRenderRootNode:d}}function ls(t){return 0!=(1&t.flags)&&null===t.element.name}function us(t,e,n){var r=e.element&&e.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.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 o=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=o&&e.nodeIndex+e.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.nodeIndex+"!")}}function cs(t,e,n,r){var o=ds(t.root,t.renderer,t,e,n);return fs(o,t.component,r),gs(o),o}function hs(t,e,n){var r=ds(t,t.renderer,null,null,e);return fs(r,n,n),gs(r),r}function ps(t,e,n,r){var o,i=e.element.componentRendererType;return o=i?t.root.rendererFactory.createRenderer(r,i):t.root.renderer,ds(t.root,o,t,e.element.componentProvider,n)}function ds(t,e,n,r,o){var i=new Array(o.nodes.length),s=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(o.bindingCount),disposables:s,initIndex:-1}}function fs(t,e,n){t.component=e,t.context=n}function gs(t){var e;gr(t)&&(e=qn(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);for(var n=t.def,r=t.nodes,o=0;o0&&$i(t,e,0,n)&&(d=!0),p>1&&$i(t,e,1,r)&&(d=!0),p>2&&$i(t,e,2,o)&&(d=!0),p>3&&$i(t,e,3,i)&&(d=!0),p>4&&$i(t,e,4,s)&&(d=!0),p>5&&$i(t,e,5,a)&&(d=!0),p>6&&$i(t,e,6,l)&&(d=!0),p>7&&$i(t,e,7,u)&&(d=!0),p>8&&$i(t,e,8,c)&&(d=!0),p>9&&$i(t,e,9,h)&&(d=!0),d}(t,e,n,r,o,i,s,a,l,u,c,h);case 2:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=!1,d=e.bindings,f=d.length;if(f>0&&ar(t,e,0,n)&&(p=!0),f>1&&ar(t,e,1,r)&&(p=!0),f>2&&ar(t,e,2,o)&&(p=!0),f>3&&ar(t,e,3,i)&&(p=!0),f>4&&ar(t,e,4,s)&&(p=!0),f>5&&ar(t,e,5,a)&&(p=!0),f>6&&ar(t,e,6,l)&&(p=!0),f>7&&ar(t,e,7,u)&&(p=!0),f>8&&ar(t,e,8,c)&&(p=!0),f>9&&ar(t,e,9,h)&&(p=!0),p){var g=e.text.prefix;f>0&&(g+=ss(n,d[0])),f>1&&(g+=ss(r,d[1])),f>2&&(g+=ss(o,d[2])),f>3&&(g+=ss(i,d[3])),f>4&&(g+=ss(s,d[4])),f>5&&(g+=ss(a,d[5])),f>6&&(g+=ss(l,d[6])),f>7&&(g+=ss(u,d[7])),f>8&&(g+=ss(c,d[8])),f>9&&(g+=ss(h,d[9]));var v=Yn(t,e.nodeIndex).renderText;t.renderer.setValue(v,g)}return p}(t,e,n,r,o,i,s,a,l,u,c,h);case 16384:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=Zn(t,e.nodeIndex),d=p.instance,f=!1,g=void 0,v=e.bindings.length;return v>0&&sr(t,e,0,n)&&(f=!0,g=To(t,p,e,0,n,g)),v>1&&sr(t,e,1,r)&&(f=!0,g=To(t,p,e,1,r,g)),v>2&&sr(t,e,2,o)&&(f=!0,g=To(t,p,e,2,o,g)),v>3&&sr(t,e,3,i)&&(f=!0,g=To(t,p,e,3,i,g)),v>4&&sr(t,e,4,s)&&(f=!0,g=To(t,p,e,4,s,g)),v>5&&sr(t,e,5,a)&&(f=!0,g=To(t,p,e,5,a,g)),v>6&&sr(t,e,6,l)&&(f=!0,g=To(t,p,e,6,l,g)),v>7&&sr(t,e,7,u)&&(f=!0,g=To(t,p,e,7,u,g)),v>8&&sr(t,e,8,c)&&(f=!0,g=To(t,p,e,8,c,g)),v>9&&sr(t,e,9,h)&&(f=!0,g=To(t,p,e,9,h,g)),g&&d.ngOnChanges(g),65536&e.flags&&Gn(t,256,e.nodeIndex)&&d.ngOnInit(),262144&e.flags&&d.ngDoCheck(),f}(t,e,n,r,o,i,s,a,l,u,c,h);case 32:case 64:case 128:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=e.bindings,d=!1,f=p.length;if(f>0&&ar(t,e,0,n)&&(d=!0),f>1&&ar(t,e,1,r)&&(d=!0),f>2&&ar(t,e,2,o)&&(d=!0),f>3&&ar(t,e,3,i)&&(d=!0),f>4&&ar(t,e,4,s)&&(d=!0),f>5&&ar(t,e,5,a)&&(d=!0),f>6&&ar(t,e,6,l)&&(d=!0),f>7&&ar(t,e,7,u)&&(d=!0),f>8&&ar(t,e,8,c)&&(d=!0),f>9&&ar(t,e,9,h)&&(d=!0),d){var g=$n(t,e.nodeIndex),v=void 0;switch(201347067&e.flags){case 32:v=new Array(p.length),f>0&&(v[0]=n),f>1&&(v[1]=r),f>2&&(v[2]=o),f>3&&(v[3]=i),f>4&&(v[4]=s),f>5&&(v[5]=a),f>6&&(v[6]=l),f>7&&(v[7]=u),f>8&&(v[8]=c),f>9&&(v[9]=h);break;case 64:v={},f>0&&(v[p[0].name]=n),f>1&&(v[p[1].name]=r),f>2&&(v[p[2].name]=o),f>3&&(v[p[3].name]=i),f>4&&(v[p[4].name]=s),f>5&&(v[p[5].name]=a),f>6&&(v[p[6].name]=l),f>7&&(v[p[7].name]=u),f>8&&(v[p[8].name]=c),f>9&&(v[p[9].name]=h);break;case 128:var y=n;switch(f){case 1:v=y.transform(n);break;case 2:v=y.transform(r);break;case 3:v=y.transform(r,o);break;case 4:v=y.transform(r,o,i);break;case 5:v=y.transform(r,o,i,s);break;case 6:v=y.transform(r,o,i,s,a);break;case 7:v=y.transform(r,o,i,s,a,l);break;case 8:v=y.transform(r,o,i,s,a,l,u);break;case 9:v=y.transform(r,o,i,s,a,l,u,c);break;case 10:v=y.transform(r,o,i,s,a,l,u,c,h)}}g.value=v}return d}(t,e,n,r,o,i,s,a,l,u,c,h);default:throw"unreachable"}}(t,e,r,o,i,s,a,l,u,c,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){for(var r=!1,o=0;o0&&lr(t,e,0,n),p>1&&lr(t,e,1,r),p>2&&lr(t,e,2,o),p>3&&lr(t,e,3,i),p>4&&lr(t,e,4,s),p>5&&lr(t,e,5,a),p>6&&lr(t,e,6,l),p>7&&lr(t,e,7,u),p>8&&lr(t,e,8,c),p>9&&lr(t,e,9,h)}(t,e,r,o,i,s,a,l,u,c,h,p):function(t,e,n){for(var r=0;r0){var i=new Set(t.modules);Vs.forEach(function(e,r){if(i.has(kt(r).providedIn)){var o={token:r,flags:e.flags|(n?4096:0),deps:_r(e.deps),value:e.value,index:t.providers.length};t.providers.push(o),t.providersByKey[tr(r)]=o}})}}(t=t.factory(function(){return Kn})),t):t}(r))}var js=new Map,Vs=new Map,Ls=new Map;function zs(t){var e;js.set(t.token,t),"function"==typeof t.token&&(e=kt(t.token))&&"function"==typeof e.providedIn&&Vs.set(t.token,t)}function Us(t,e){var n=Cr(e.viewDefFactory),r=Cr(n.nodes[0].element.componentView);Ls.set(t,r)}function Fs(){js.clear(),Vs.clear(),Ls.clear()}function Hs(t){if(0===js.size)return t;var e=function(t){for(var e=[],n=null,r=0;r0?va(t,e[n]):e[n]:null}var ya=n("Wgwc"),ma=function(){function t(){if(this.build=ya(),!t.init){var e=ya();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][APP] "+fa+" - "+t+" | "+e):console[n].apply(console,["%c[ACA]%c[APP] %c"+fa+" - "+t+" | "+e].concat(["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0",t.init=!1,t}(),_a=function(){return function(){this.show_menu=!0}}(),ba=function(){return function(){}}(),wa=new Ut("Location Initialized"),Ca=function(){return function(){}}(),xa=new Ut("appBaseHref"),Sa=function(){function t(t,n){var r=this;this._subject=new No,this._urlChangeListeners=[],this._platformStrategy=t;var o=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=e.stripTrailingSlash(Ea(o)),this._platformStrategy.onPopState(function(t){r._subject.emit({url:r.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,n){return void 0===n&&(n=""),this.path()==this.normalize(t+e.normalizeQueryParams(n))},t.prototype.normalize=function(t){return e.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,Ea(t)))},t.prototype.prepareExternalUrl=function(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)},t.prototype.go=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.pushState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},t.prototype.replaceState=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.replaceState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},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=function(t){return t&&"?"!==t[0]?"?"+t:t},t.joinWithSlash=function(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},t.stripTrailingSlash=function(t){var e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)},t}();function Ea(t){return t.replace(/\/index.html$/,"")}var Oa=function(t){function e(e,n){var r=t.call(this)||this;return r._platformLocation=e,r._baseHref="",null!=n&&(r._baseHref=n),r}return o(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=Sa.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(Ca),ka=function(t){function e(e,n){var r=t.call(this)||this;if(r._platformLocation=e,null==n&&(n=r._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 r._baseHref=n,r}return o(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 Sa.joinWithSlash(this._baseHref,t)},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.pathname+Sa.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?""+e+n:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(Ca),Pa=void 0,Ta=["en",[["a","p"],["AM","PM"],Pa],[["AM","PM"],Pa,Pa],[["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"]],Pa,[["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"]],Pa,[["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}",Pa,"{1} 'at' {0}",Pa],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}],Ia={},Ra=function(t){return 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",t}({}),Aa=new Ut("UseV4Plurals"),Ma=function(){return function(){}}(),Na=function(t){function e(e,n){var r=t.call(this)||this;return r.locale=e,r.deprecatedPluralFn=n,r}return o(e,t),e.prototype.getPluralCategory=function(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){var e=t.toLowerCase().replace(/_/g,"-"),n=Ia[e];if(n)return n;var r=e.split("-")[0];if(n=Ia[r])return n;if("en"===r)return Ta;throw new Error('Missing locale data for the locale "'+t+'".')}(t)[18]}(e||this.locale)(t)){case Ra.Zero:return"zero";case Ra.One:return"one";case Ra.Two:return"two";case Ra.Few:return"few";case Ra.Many:return"many";default:return"other"}},e}(Ma);function Da(t,e){var n,r;e=encodeURIComponent(e);try{for(var o=c(t.split(";")),i=o.next();!i.done;i=o.next()){var s=i.value,a=s.indexOf("="),l=h(-1==a?[s,""]:[s.slice(0,a),s.slice(a+1)],2),u=l[1];if(l[0].trim()===e)return decodeURIComponent(u)}}catch(p){n={error:p}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}var ja=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(un);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(n.injector)}else this._moduleRef=null;var r=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(sn)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(r,this._viewContainerRef.length,e,this.ngComponentOutletContent)}},t.prototype.ngOnDestroy=function(){this._moduleRef&&this._moduleRef.destroy()},t}(),Va=function(){function t(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}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}(),La=function(){function t(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,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){ge()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(t)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#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(r){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;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,r,o){if(null==t.previousIndex){var i=e._viewContainer.createEmbeddedView(e._template,new Va(null,e._ngForOf,-1,-1),o),s=new za(t,i);n.push(s)}else null==o?e._viewContainer.remove(r):(i=e._viewContainer.get(r),e._viewContainer.move(i,o),s=new za(t,i),n.push(s))});for(var r=0;r0)for(var n=this.count>=this.total?this.total:this.count,r=this.ring,o=0;o=2;return function(r){return r.pipe(t?dl(function(e,n){return t(e,n,r)}):st,ml(1),n?Ol(e):Sl(function(){return new al}))}}function Il(t){return function(e){var n=new Rl(t),r=e.lift(n);return n.caught=r}}var Rl=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new Al(t,this.selector,this.caught))},t}(),Al=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.selector=n,o.caught=r,o}return o(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(o){return void t.prototype.error.call(this,o)}this._unsubscribeAndRecycle();var r=new U(this,void 0,void 0);this.add(r),Q(this,n,void 0,void 0,r)}},e}(X);function Ml(t){return function(e){return 0===t?nl():e.lift(new Nl(t))}}var Nl=function(){function t(t){if(this.total=t,this.total<0)throw new yl}return t.prototype.call=function(t,e){return e.subscribe(new Dl(t,this.total))},t}(),Dl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.total=n,r.count=0,r}return o(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}(E);function jl(t,e){var n=arguments.length>=2;return function(r){return r.pipe(t?dl(function(e,n){return t(e,n,r)}):st,Ml(1),n?Ol(e):Sl(function(){return new al}))}}var Vl=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new Ll(t,this.predicate,this.thisArg,this.source))},t}(),Ll=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.predicate=n,i.thisArg=r,i.source=o,i.index=0,i.thisArg=r||i,i}return o(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(E);function zl(t,e){return"function"==typeof e?function(n){return n.pipe(zl(function(n,r){return nt(t(n,r)).pipe(K(function(t,o){return e(n,t,r,o)}))}))}:function(e){return e.lift(new Ul(t))}}var Ul=function(){function t(t){this.project=t}return t.prototype.call=function(t,e){return e.subscribe(new Fl(t,this.project))},t}(),Fl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.project=n,r.index=0,r}return o(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(r){return void this.destination.error(r)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var r=this.innerSubscription;r&&r.unsubscribe();var o=new U(this,void 0,void 0);this.destination.add(o),this.innerSubscription=Q(this,t,e,n,o)},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,r,o){this.destination.next(e)},e}(X);function Hl(){for(var t=[],e=0;e0?et(t,n):nl(n):rl(t[0]),e)}}function Wl(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new Gl(t,e,n))}}var Gl=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new Yl(t,this.accumulator,this.seed,this.hasSeed))},t}(),Yl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.accumulator=n,i._seed=r,i.hasSeed=o,i.index=0,i}return o(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(r){this.destination.error(r)}this.seed=e,this.destination.next(e)},e}(E);function ql(t,e){return rt(t,e,1)}var Zl=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new $l(t,this.callback))},t}(),$l=function(t){function e(e,n){var r=t.call(this,e)||this;return r.add(new m(n)),r}return o(e,t),e}(E),Ql=null;function Xl(){return Ql}var Kl,Jl=function(t){function e(){var e=t.call(this)||this;e._animationPrefix=null,e._transitionEnd=null;try{var n=e.createElement("div",document);if(null!=e.getStyle(n,"animationName"))e._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o0},e.prototype.tagName=function(t){return t.tagName},e.prototype.attributeMap=function(t){for(var e=new Map,n=t.attributes,r=0;r0;s||(s=t[i]=[]);var l=Vu(e)?Zone.root:Zone.current;if(0===s.length)s.push({zone:l,handler:o});else{for(var u=!1,c=0;c-1},e}(vu),Gu=["alt","control","meta","shift"],Yu={alt:function(t){return t.altKey},control:function(t){return t.ctrlKey},meta:function(t){return t.metaKey},shift:function(t){return t.shiftKey}},qu=function(t){function e(e){return t.call(this,e)||this}var n;return o(e,t),n=e,e.prototype.supports=function(t){return null!=n.parseEventName(t)},e.prototype.addEventListener=function(t,e,r){var o=n.parseEventName(e),i=n.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return Xl().onAndCancel(t,o.domEventName,i)})},e.parseEventName=function(t){var e=t.toLowerCase().split("."),r=e.shift();if(0===e.length||"keydown"!==r&&"keyup"!==r)return null;var o=n._normalizeKey(e.pop()),i="";if(Gu.forEach(function(t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),i+=t+".")}),i+=o,0!=e.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s},e.getEventFullKey=function(t){var e="",n=Xl().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),Gu.forEach(function(r){r!=n&&(0,Yu[r])(t)&&(e+=r+".")}),e+=n},e.eventCallback=function(t,e,r){return function(o){n.getEventFullKey(o)===t&&r.runGuarded(function(){return e(o)})}},e._normalizeKey=function(t){switch(t){case"esc":return"escape";default:return t}},e}(vu),Zu=function(){return function(){}}(),$u=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n}return o(e,t),e.prototype.sanitize=function(t,e){if(null==e)return null;switch(t){case Ve.NONE:return e;case Ve.HTML:return e instanceof Xu?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){var n=null;try{Ce=Ce||new ve(t);var r=e?String(e):"";n=Ce.getInertBodyElement(r);var o=5,i=r;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=Ce.getInertBodyElement(r)}while(r!==i);var s=new Ae,a=s.sanitizeChildren(je(n)||n);return ge()&&s.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n)for(var l=je(n)||n;l.firstChild;)l.removeChild(l.firstChild)}}(this._doc,String(e)));case Ve.STYLE:return e instanceof Ku?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";var e=t.match(Ue);return e&&_e(e[1])===e[1]||t.match(ze)&&function(t){for(var e=!0,n=!0,r=0;rt.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||r.length0?t[t.length-1]:null}function zc(t,e){for(var n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Uc(t){return We(t)?t:Be(t)?nt(Promise.resolve(t)):ol(t)}function Fc(t,e,n){return n?function(t,e){return jc(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!Gc(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(var r in n.children){if(!e.children[r])return!1;if(!t(e.children[r],n.children[r]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(function(n){return e[n]===t[n]})}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,r,o){if(n.segments.length>o.length)return!!Gc(s=n.segments.slice(0,o.length),o)&&!r.hasChildren();if(n.segments.length===o.length){if(!Gc(n.segments,o))return!1;for(var i in r.children){if(!n.children[i])return!1;if(!t(n.children[i],r.children[i]))return!1}return!0}var s=o.slice(0,n.segments.length),a=o.slice(n.segments.length);return!!Gc(n.segments,s)&&!!n.children[Ec]&&e(n.children[Ec],r,a)}(e,n,n.segments)}(t.root,e.root)}var Hc=function(){function t(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}return Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=kc(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return $c.serialize(this)},t}(),Bc=function(){function t(t,e){var n=this;this.segments=t,this.children=e,this.parent=null,zc(e,function(t,e){return t.parent=n})}return t.prototype.hasChildren=function(){return this.numberOfChildren>0},Object.defineProperty(t.prototype,"numberOfChildren",{get:function(){return Object.keys(this.children).length},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return Qc(this)},t}(),Wc=function(){function t(t,e){this.path=t,this.parameters=e}return Object.defineProperty(t.prototype,"parameterMap",{get:function(){return this._parameterMap||(this._parameterMap=kc(this.parameters)),this._parameterMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return nh(this)},t}();function Gc(t,e){return t.length===e.length&&t.every(function(t,n){return t.path===e[n].path})}function Yc(t,e){var n=[];return zc(t.children,function(t,r){r===Ec&&(n=n.concat(e(t,r)))}),zc(t.children,function(t,r){r!==Ec&&(n=n.concat(e(t,r)))}),n}var qc=function(){return function(){}}(),Zc=function(){function t(){}return t.prototype.parse=function(t){var e=new ah(t);return new Hc(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())},t.prototype.serialize=function(t){var e,n;return"/"+function t(e,n){if(!e.hasChildren())return Qc(e);if(n){var r=e.children[Ec]?t(e.children[Ec],!1):"",o=[];return zc(e.children,function(e,n){n!==Ec&&o.push(n+":"+t(e,!1))}),o.length>0?r+"("+o.join("//")+")":r}var i=Yc(e,function(n,r){return r===Ec?[t(e.children[Ec],!1)]:[r+":"+t(n,!1)]});return Qc(e)+"/("+i.join("//")+")"}(t.root,!0)+(e=t.queryParams,(n=Object.keys(e).map(function(t){var n=e[t];return Array.isArray(n)?n.map(function(e){return Kc(t)+"="+Kc(e)}).join("&"):Kc(t)+"="+Kc(n)})).length?"?"+n.join("&"):"")+("string"==typeof t.fragment?"#"+encodeURI(t.fragment):"")},t}(),$c=new Zc;function Qc(t){return t.segments.map(function(t){return nh(t)}).join("/")}function Xc(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Kc(t){return Xc(t).replace(/%3B/gi,";")}function Jc(t){return Xc(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function th(t){return decodeURIComponent(t)}function eh(t){return th(t.replace(/\+/g,"%20"))}function nh(t){return""+Jc(t.path)+(e=t.parameters,Object.keys(e).map(function(t){return";"+Jc(t)+"="+Jc(e[t])}).join(""));var e}var rh=/^[^\/()?;=#]+/;function oh(t){var e=t.match(rh);return e?e[0]:""}var ih=/^[^=?&#]+/,sh=/^[^?&#]+/,ah=function(){function t(t){this.url=t,this.remaining=t}return t.prototype.parseRootSegment=function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Bc([],{}):new Bc([],this.parseChildren())},t.prototype.parseQueryParams=function(){var t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t},t.prototype.parseFragment=function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null},t.prototype.parseChildren=function(){if(""===this.remaining)return{};this.consumeOptional("/");var t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());var e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));var n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[Ec]=new Bc(t,e)),n},t.prototype.parseSegment=function(){var t=oh(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '"+this.remaining+"'.");return this.capture(t),new Wc(th(t),this.parseMatrixParams())},t.prototype.parseMatrixParams=function(){for(var t={};this.consumeOptional(";");)this.parseParam(t);return t},t.prototype.parseParam=function(t){var e=oh(this.remaining);if(e){this.capture(e);var n="";if(this.consumeOptional("=")){var r=oh(this.remaining);r&&this.capture(n=r)}t[th(e)]=th(n)}},t.prototype.parseQueryParam=function(t){var e,n=(e=this.remaining.match(ih))?e[0]:"";if(n){this.capture(n);var r="";if(this.consumeOptional("=")){var o=function(t){var e=t.match(sh);return e?e[0]:""}(this.remaining);o&&this.capture(r=o)}var i=eh(n),s=eh(r);if(t.hasOwnProperty(i)){var a=t[i];Array.isArray(a)||(t[i]=a=[a]),a.push(s)}else t[i]=s}},t.prototype.parseParens=function(t){var e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var n=oh(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error("Cannot parse url '"+this.url+"'");var o=void 0;n.indexOf(":")>-1?(o=n.substr(0,n.indexOf(":")),this.capture(o),this.capture(":")):t&&(o=Ec);var i=this.parseChildren();e[o]=1===Object.keys(i).length?i[Ec]:new Bc([],i),this.consumeOptional("//")}return e},t.prototype.peekStartsWith=function(t){return this.remaining.startsWith(t)},t.prototype.consumeOptional=function(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)},t.prototype.capture=function(t){if(!this.consumeOptional(t))throw new Error('Expected "'+t+'".')},t}(),lh=function(){function t(t){this._root=t}return Object.defineProperty(t.prototype,"root",{get:function(){return this._root.value},enumerable:!0,configurable:!0}),t.prototype.parent=function(t){var e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null},t.prototype.children=function(t){var e=uh(t,this._root);return e?e.children.map(function(t){return t.value}):[]},t.prototype.firstChild=function(t){var e=uh(t,this._root);return e&&e.children.length>0?e.children[0].value:null},t.prototype.siblings=function(t){var e=ch(t,this._root);return e.length<2?[]:e[e.length-2].children.map(function(t){return t.value}).filter(function(e){return e!==t})},t.prototype.pathFromRoot=function(t){return ch(t,this._root).map(function(t){return t.value})},t}();function uh(t,e){var n,r;if(t===e.value)return e;try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=uh(t,i.value);if(s)return s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}function ch(t,e){var n,r;if(t===e.value)return[e];try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=ch(t,i.value);if(s.length)return s.unshift(e),s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return[]}var hh=function(){function t(t,e){this.value=t,this.children=e}return t.prototype.toString=function(){return"TreeNode("+this.value+")"},t}();function ph(t){var e={};return t&&t.children.forEach(function(t){return e[t.value.outlet]=t}),e}var dh=function(t){function e(e,n){var r=t.call(this,e)||this;return r.snapshot=n,_h(r,e),r}return o(e,t),e.prototype.toString=function(){return this.snapshot.toString()},e}(lh);function fh(t,e){var n=function(t,e){var n=new yh([],{},{},"",{},Ec,e,null,t.root,-1,{});return new mh("",new hh(n,[]))}(t,e),r=new il([new Wc("",{})]),o=new il({}),i=new il({}),s=new il({}),a=new il(""),l=new gh(r,o,s,a,i,Ec,e,n.root);return l.snapshot=n.root,new dh(new hh(l,[]),n)}var gh=function(){function t(t,e,n,r,o,i,s,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this._futureSnapshot=a}return Object.defineProperty(t.prototype,"routeConfig",{get:function(){return this._futureSnapshot.routeConfig},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=this.params.pipe(K(function(t){return kc(t)}))),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(function(t){return kc(t)}))),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return this.snapshot?this.snapshot.toString():"Future("+this._futureSnapshot+")"},t}();function vh(t,e){void 0===e&&(e="emptyOnly");var n=t.pathFromRoot,r=0;if("always"!==e)for(r=n.length-1;r>=1;){var o=n[r],s=n[r-1];if(o.routeConfig&&""===o.routeConfig.path)r--;else{if(s.component)break;r--}}return function(t){return t.reduce(function(t,e){return{params:i({},t.params,e.params),data:i({},t.data,e.data),resolve:i({},t.resolve,e._resolvedData)}},{params:{},data:{},resolve:{}})}(n.slice(r))}var yh=function(){function t(t,e,n,r,o,i,s,a,l,u,c){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this.routeConfig=a,this._urlSegment=l,this._lastPathIndex=u,this._resolve=c}return Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=kc(this.params)),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=kc(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return"Route(url:'"+this.url.map(function(t){return t.toString()}).join("/")+"', path:'"+(this.routeConfig?this.routeConfig.path:"")+"')"},t}(),mh=function(t){function e(e,n){var r=t.call(this,n)||this;return r.url=e,_h(r,n),r}return o(e,t),e.prototype.toString=function(){return bh(this._root)},e}(lh);function _h(t,e){e.value._routerState=t,e.children.forEach(function(e){return _h(t,e)})}function bh(t){var e=t.children.length>0?" { "+t.children.map(bh).join(", ")+" } ":"";return""+t.value+e}function wh(t){if(t.snapshot){var e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,jc(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),jc(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(var n=0;n0&&xh(n[0]))throw new Error("Root segment cannot have matrix parameters");var r=n.find(function(t){return"object"==typeof t&&null!=t&&t.outlets});if(r&&r!==Lc(n))throw new Error("{outlets:{}} has to be the last command")}return t.prototype.toRoot=function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]},t}(),Oh=function(){return function(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}();function kh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[Ec]:""+t}function Ph(t,e,n){if(t||(t=new Bc([],{})),0===t.segments.length&&t.hasChildren())return Th(t,e,n);var r=function(t,e,n){for(var r=0,o=e,i={match:!1,pathIndex:0,commandIndex:0};o=n.length)return i;var s=t.segments[o],a=kh(n[r]),l=r0&&void 0===a)break;if(a&&l&&"object"==typeof l&&void 0===l.outlets){if(!Mh(a,l,s))return i;r+=2}else{if(!Mh(a,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(t,e,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndex0?new Bc([],((r={})[Ec]=t,r)):t;return new Hc(o,e,n)},t.prototype.expandSegmentGroup=function(t,e,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(K(function(t){return new Bc([],t)})):this.expandSegment(t,n,e,n.segments,r,!0)},t.prototype.expandChildren=function(t,e,n){var r=this;return function(n,o){if(0===Object.keys(n).length)return ol({});var i=[],s=[],a={};return zc(n,function(n,o){var l,u,c=(l=o,u=n,r.expandSegmentGroup(t,e,u,l)).pipe(K(function(t){return a[o]=t}));o===Ec?i.push(c):s.push(c)}),ol.apply(null,i.concat(s)).pipe(pl(),Tl(),K(function(){return a}))}(n.children)},t.prototype.expandSegment=function(t,e,n,r,o,i){var s=this;return ol.apply(void 0,p(n)).pipe(K(function(a){return s.expandSegmentAgainstRoute(t,e,n,a,r,o,i).pipe(Il(function(t){if(t instanceof Lh)return ol(null);throw t}))}),pl(),jl(function(t){return!!t}),Il(function(t,n){if(t instanceof al||"EmptyError"===t.name){if(s.noLeftoversInUrl(e,r,o))return ol(new Bc([],{}));throw new Lh(e)}throw t}))},t.prototype.noLeftoversInUrl=function(t,e,n){return 0===e.length&&!t.children[n]},t.prototype.expandSegmentAgainstRoute=function(t,e,n,r,o,i,s){return qh(r)!==i?Uh(e):void 0===r.redirectTo?this.matchSegmentAgainstRoute(t,e,r,o):s&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i):Uh(e)},t.prototype.expandSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,r,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i)},t.prototype.expandWildCardWithParamsAgainstRouteUsingRedirect=function(t,e,n,r){var o=this,i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Fh(i):this.lineralizeSegments(n,i).pipe(rt(function(n){var i=new Bc(n,{});return o.expandSegment(t,i,e,n,r,!1)}))},t.prototype.expandRegularSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){var s=this,a=Wh(e,r,o),l=a.consumedSegments,u=a.lastChild,c=a.positionalParamSegments;if(!a.matched)return Uh(e);var h=this.applyRedirectCommands(l,r.redirectTo,c);return r.redirectTo.startsWith("/")?Fh(h):this.lineralizeSegments(r,h).pipe(rt(function(r){return s.expandSegment(t,e,n,r.concat(o.slice(u)),i,!1)}))},t.prototype.matchSegmentAgainstRoute=function(t,e,n,r){var o=this;if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(K(function(t){return n._loadedConfig=t,new Bc(r,{})})):ol(new Bc(r,{}));var s=Wh(e,n,r),a=s.consumedSegments,l=s.lastChild;if(!s.matched)return Uh(e);var u=r.slice(l);return this.getChildConfig(t,n,r).pipe(rt(function(t){var n=t.module,r=t.routes,s=function(t,e,n,r){return n.length>0&&function(t,e,n){return r.some(function(n){return Yh(t,e,n)&&qh(n)!==Ec})}(t,n)?{segmentGroup:Gh(new Bc(e,function(t,e){var n,r,o={};o[Ec]=e;try{for(var i=c(t),s=i.next();!s.done;s=i.next()){var a=s.value;""===a.path&&qh(a)!==Ec&&(o[qh(a)]=new Bc([],{}))}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o}(r,new Bc(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return r.some(function(n){return Yh(t,e,n)})}(t,n)?{segmentGroup:Gh(new Bc(t.segments,function(t,e,n,r){var o,s,a={};try{for(var l=c(n),u=l.next();!u.done;u=l.next()){var h=u.value;Yh(t,e,h)&&!r[qh(h)]&&(a[qh(h)]=new Bc([],{}))}}catch(p){o={error:p}}finally{try{u&&!u.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}return i({},r,a)}(t,n,r,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,a,u,r),l=s.segmentGroup,h=s.slicedSegments;return 0===h.length&&l.hasChildren()?o.expandChildren(n,r,l).pipe(K(function(t){return new Bc(a,t)})):0===r.length&&0===h.length?ol(new Bc(a,{})):o.expandSegment(n,l,r,h,Ec,!0).pipe(K(function(t){return new Bc(a.concat(t.segments),t.children)}))}))},t.prototype.getChildConfig=function(t,e,n){var r=this;return e.children?ol(new Rc(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?ol(e._loadedConfig):function(t,e,n){var r,o=e.canLoad;return o&&0!==o.length?nt(o).pipe(K(function(r){var o,i=t.get(r);if(function(t){return t&&jh(t.canLoad)}(i))o=i.canLoad(e,n);else{if(!jh(i))throw new Error("Invalid CanLoad guard");o=i(e,n)}return Uc(o)})).pipe(pl(),(r=function(t){return!0===t},function(t){return t.lift(new Vl(r,void 0,t))})):ol(!0)}(t.injector,e,n).pipe(rt(function(n){return n?r.configLoader.load(t.injector,e).pipe(K(function(t){return e._loadedConfig=t,t})):function(t){return new R(function(e){return e.error(Tc("Cannot load children because the guard of the route \"path: '"+t.path+"'\" returned false"))})}(e)})):ol(new Rc([],t))},t.prototype.lineralizeSegments=function(t,e){for(var n=[],r=e.root;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return ol(n);if(r.numberOfChildren>1||!r.children[Ec])return Hh(t.redirectTo);r=r.children[Ec]}},t.prototype.applyRedirectCommands=function(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)},t.prototype.applyRedirectCreatreUrlTree=function(t,e,n,r){var o=this.createSegmentGroup(t,e.root,n,r);return new Hc(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)},t.prototype.createQueryParams=function(t,e){var n={};return zc(t,function(t,r){if("string"==typeof t&&t.startsWith(":")){var o=t.substring(1);n[r]=e[o]}else n[r]=t}),n},t.prototype.createSegmentGroup=function(t,e,n,r){var o=this,i=this.createSegments(t,e.segments,n,r),s={};return zc(e.children,function(e,i){s[i]=o.createSegmentGroup(t,e,n,r)}),new Bc(i,s)},t.prototype.createSegments=function(t,e,n,r){var o=this;return e.map(function(e){return e.path.startsWith(":")?o.findPosParam(t,e,r):o.findOrReturn(e,n)})},t.prototype.findPosParam=function(t,e,n){var r=n[e.path.substring(1)];if(!r)throw new Error("Cannot redirect to '"+t+"'. Cannot find '"+e.path+"'.");return r},t.prototype.findOrReturn=function(t,e){var n,r,o=0;try{for(var i=c(e),s=i.next();!s.done;s=i.next()){var a=s.value;if(a.path===t.path)return e.splice(o),a;o++}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return t},t}();function Wh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};var r=(e.matcher||Ic)(n,t,e);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Gh(t){if(1===t.numberOfChildren&&t.children[Ec]){var e=t.children[Ec];return new Bc(t.segments.concat(e.segments),e.children)}return t}function Yh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function qh(t){return t.outlet||Ec}var Zh=function(){return function(t){this.path=t,this.route=this.path[this.path.length-1]}}(),$h=function(){return function(t,e){this.component=t,this.route=e}}();function Qh(t,e,n){var r=function(t){if(!t)return null;for(var e=t.parent;e;e=e.parent){var n=e.routeConfig;if(n&&n._loadedConfig)return n._loadedConfig}return null}(e);return(r?r.module.injector:n).get(t)}function Xh(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=ph(e);return t.children.forEach(function(t){!function(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=t.value,s=e?e.value:null,a=n?n.getContext(t.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){var l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!Gc(t.url,e.url);case"pathParamsOrQueryParamsChange":return!Gc(t.url,e.url)||!jc(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Ch(t,e)||!jc(t.queryParams,e.queryParams);case"paramsChange":default:return!Ch(t,e)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Zh(r)):(i.data=s.data,i._resolvedData=s._resolvedData),Xh(t,e,i.component?a?a.children:null:n,r,o),l&&o.canDeactivateChecks.push(new $h(a&&a.outlet&&a.outlet.component||null,s))}else s&&Kh(e,a,o),o.canActivateChecks.push(new Zh(r)),Xh(t,null,i.component?a?a.children:null:n,r,o)}(t,i[t.value.outlet],n,r.concat([t.value]),o),delete i[t.value.outlet]}),zc(i,function(t,e){return Kh(t,n.getContext(e),o)}),o}function Kh(t,e,n){var r=ph(t),o=t.value;zc(r,function(t,r){Kh(t,o.component?e?e.children.getContext(r):null:e,n)}),n.canDeactivateChecks.push(new $h(o.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,o))}var Jh=Symbol("INITIAL_VALUE");function tp(){return zl(function(t){return(function(){for(var t=[],e=0;e0?Lc(n).parameters:{};o=new yh(n,l,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,pp(t),r,t.component,t,ap(e),lp(e)+n.length,dp(t))}else{var u=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new ip;return{consumedSegments:[],lastChild:0,parameters:{}}}var r=(e.matcher||Ic)(n,t,e);if(!r)throw new ip;var o={};zc(r.posParams,function(t,e){o[e]=t.path});var s=r.consumed.length>0?i({},o,r.consumed[r.consumed.length-1].parameters):o;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:s}}(e,t,n);s=u.consumedSegments,a=n.slice(u.lastChild),o=new yh(s,u.parameters,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,pp(t),r,t.component,t,ap(e),lp(e)+s.length,dp(t))}var c=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),h=up(e,s,a,c,this.relativeLinkResolution),p=h.segmentGroup,d=h.slicedSegments;if(0===d.length&&p.hasChildren()){var f=this.processChildren(c,p);return[new hh(o,f)]}if(0===c.length&&0===d.length)return[new hh(o,[])];var g=this.processSegment(c,p,d,Ec);return[new hh(o,g)]},t}();function ap(t){for(var e=t;e._sourceSegment;)e=e._sourceSegment;return e}function lp(t){for(var e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function up(t,e,n,r,o){if(n.length>0&&function(t,e,n){return r.some(function(n){return cp(t,e,n)&&hp(n)!==Ec})}(t,n)){var s=new Bc(e,function(t,e,n,r){var o,i,s={};s[Ec]=r,r._sourceSegment=t,r._segmentIndexShift=e.length;try{for(var a=c(n),l=a.next();!l.done;l=a.next()){var u=l.value;if(""===u.path&&hp(u)!==Ec){var h=new Bc([],{});h._sourceSegment=t,h._segmentIndexShift=e.length,s[hp(u)]=h}}}catch(p){o={error:p}}finally{try{l&&!l.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return s}(t,e,r,new Bc(n,t.children)));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return r.some(function(n){return cp(t,e,n)})}(t,n)){var a=new Bc(t.segments,function(t,e,n,r,o,s){var a,l,u={};try{for(var h=c(r),p=h.next();!p.done;p=h.next()){var d=p.value;if(cp(t,n,d)&&!o[hp(d)]){var f=new Bc([],{});f._sourceSegment=t,f._segmentIndexShift="legacy"===s?t.segments.length:e.length,u[hp(d)]=f}}}catch(g){a={error:g}}finally{try{p&&!p.done&&(l=h.return)&&l.call(h)}finally{if(a)throw a.error}}return i({},o,u)}(t,e,n,r,t.children,o));return a._sourceSegment=t,a._segmentIndexShift=e.length,{segmentGroup:a,slicedSegments:n}}var l=new Bc(t.segments,t.children);return l._sourceSegment=t,l._segmentIndexShift=e.length,{segmentGroup:l,slicedSegments:n}}function cp(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function hp(t){return t.outlet||Ec}function pp(t){return t.data||{}}function dp(t){return t.resolve||{}}function fp(t,e,n,r){var o=Qh(t,e,r);return Uc(o.resolve?o.resolve(e,n):o(e,n))}function gp(t){return function(e){return e.pipe(zl(function(e){var n=t(e);return n?nt(n).pipe(K(function(){return e})):nt([e])}))}}var vp=function(){return function(){}}(),yp=function(){function t(){}return t.prototype.shouldDetach=function(t){return!1},t.prototype.store=function(t,e){},t.prototype.shouldAttach=function(t){return!1},t.prototype.retrieve=function(t){return null},t.prototype.shouldReuseRoute=function(t,e){return t.routeConfig===e.routeConfig},t}(),mp=new Ut("ROUTES"),_p=function(){function t(t,e,n,r){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=r}return t.prototype.load=function(t,e){var n=this;return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(K(function(r){n.onLoadEndListener&&n.onLoadEndListener(e);var o=r.create(t);return new Rc(Vc(o.injector.get(mp)).map(Dc),o)}))},t.prototype.loadModuleFactory=function(t){var e=this;return"string"==typeof t?nt(this.loader.load(t)):Uc(t()).pipe(rt(function(t){return t instanceof cn?ol(t):nt(e.compiler.compileModuleAsync(t))}))},t}(),bp=function(){return function(){}}(),wp=function(){function t(){}return t.prototype.shouldProcessUrl=function(t){return!0},t.prototype.extract=function(t){return t},t.prototype.merge=function(t,e){return t},t}();function Cp(t){throw t}function xp(t,e,n){return e.parse("/")}function Sp(t,e){return ol(null)}var Ep=function(){function t(t,e,n,r,o,i,s,a){var l=this;this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=r,this.config=a,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new V,this.errorHandler=Cp,this.malformedUriErrorHandler=xp,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Sp,afterPreactivation:Sp},this.urlHandlingStrategy=new wp,this.routeReuseStrategy=new yp,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=o.get(un),this.console=o.get(Go);var u=o.get(li);this.isNgZoneEnabled=u instanceof li,this.resetConfig(a),this.currentUrlTree=new Hc(new Bc([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new _p(i,s,function(t){return l.triggerEvent(new yc(t))},function(t){return l.triggerEvent(new mc(t))}),this.routerState=fh(this.currentUrlTree,this.rootComponentType),this.transitions=new il({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return t.prototype.setupNavigations=function(t){var e=this,n=this.events;return t.pipe(dl(function(t){return 0!==t.id}),K(function(t){return i({},t,{extractedUrl:e.urlHandlingStrategy.extract(t.rawUrl)})}),zl(function(t){var r,o,s,a,l=!1,u=!1;return ol(t).pipe(wl(function(t){e.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:e.lastSuccessfulNavigation?i({},e.lastSuccessfulNavigation,{previousNavigation:null}):null}}),zl(function(t){var r,o,s,a,l=!e.navigated||t.extractedUrl.toString()!==e.browserUrlTree.toString();if(("reload"===e.onSameUrlNavigation||l)&&e.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return ol(t).pipe(zl(function(t){var r=e.transitions.getValue();return n.next(new lc(t.id,e.serializeUrl(t.extractedUrl),t.source,t.restoredState)),r!==e.transitions.getValue()?el:[t]}),zl(function(t){return Promise.resolve(t)}),(r=e.ngModule.injector,o=e.configLoader,s=e.urlSerializer,a=e.config,function(t){return t.pipe(zl(function(t){return function(e,n,r,o,i){return new Bh(e,n,r,t.extractedUrl,i).apply()}(r,o,s,0,a).pipe(K(function(e){return i({},t,{urlAfterRedirects:e})}))}))}),wl(function(t){e.currentNavigation=i({},e.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,n,r,o,s){return function(r){return r.pipe(rt(function(r){return function(t,e,n,r,o,i){return void 0===o&&(o="emptyOnly"),void 0===i&&(i="legacy"),new sp(t,e,n,r,o,i).recognize()}(t,n,r.urlAfterRedirects,(a=r.urlAfterRedirects,e.serializeUrl(a)),o,s).pipe(K(function(t){return i({},r,{targetSnapshot:t})}));var a}))}}(e.rootComponentType,e.config,0,e.paramsInheritanceStrategy,e.relativeLinkResolution),wl(function(t){"eager"===e.urlUpdateStrategy&&(t.extras.skipLocationChange||e.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),e.browserUrlTree=t.urlAfterRedirects)}),wl(function(t){var r=new pc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);n.next(r)}));if(l&&e.rawUrlTree&&e.urlHandlingStrategy.shouldProcessUrl(e.rawUrlTree)){var u=t.extractedUrl,c=t.source,h=t.restoredState,p=t.extras,d=new lc(t.id,e.serializeUrl(u),c,h);n.next(d);var f=fh(u,e.rootComponentType).snapshot;return ol(i({},t,{targetSnapshot:f,urlAfterRedirects:u,extras:i({},p,{skipLocationChange:!1,replaceUrl:!1})}))}return e.rawUrlTree=t.rawUrl,e.browserUrlTree=t.urlAfterRedirects,t.resolve(null),el}),gp(function(t){var n=t.extras;return e.hooks.beforePreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),wl(function(t){var n=new dc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),K(function(t){return i({},t,{guards:(n=t.targetSnapshot,r=t.currentSnapshot,o=e.rootContexts,s=n._root,Xh(s,r?r._root:null,o,[s.value]))});var n,r,o,s}),function(t,e){return function(n){return n.pipe(rt(function(n){var r=n.targetSnapshot,o=n.currentSnapshot,s=n.guards,a=s.canActivateChecks,l=s.canDeactivateChecks;return 0===l.length&&0===a.length?ol(i({},n,{guardsResult:!0})):function(t,e,n,r){return nt(l).pipe(rt(function(t){return function(t,e,n,r,o){var i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?ol(i.map(function(i){var s,a=Qh(i,e,o);if(function(t){return t&&jh(t.canDeactivate)}(a))s=Uc(a.canDeactivate(t,e,n,r));else{if(!jh(a))throw new Error("Invalid CanDeactivate guard");s=Uc(a(t,e,n,r))}return s.pipe(jl())})).pipe(tp()):ol(!0)}(t.component,t.route,n,e,r)}),jl(function(t){return!0!==t},!0))}(0,r,o,t).pipe(rt(function(n){return n&&"boolean"==typeof n?function(t,e,n,r){return nt(a).pipe(ql(function(e){return nt([np(e.route.parent,r),ep(e.route,r),op(t,e.path,n),rp(t,e.route,n)]).pipe(pl(),jl(function(t){return!0!==t},!0))}),jl(function(t){return!0!==t},!0))}(r,0,t,e):ol(n)}),K(function(t){return i({},n,{guardsResult:t})}))}))}}(e.ngModule.injector,function(t){return e.triggerEvent(t)}),wl(function(t){if(Vh(t.guardsResult)){var n=Tc('Redirecting to "'+e.serializeUrl(t.guardsResult)+'"');throw n.url=t.guardsResult,n}}),wl(function(t){var n=new fc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);e.triggerEvent(n)}),dl(function(t){if(!t.guardsResult){e.resetUrlToCurrentUrlTree();var r=new cc(t.id,e.serializeUrl(t.extractedUrl),"");return n.next(r),t.resolve(!1),!1}return!0}),gp(function(t){if(t.guards.canActivateChecks.length)return ol(t).pipe(wl(function(t){var n=new gc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),(n=e.paramsInheritanceStrategy,r=e.ngModule.injector,function(t){return t.pipe(rt(function(t){var e=t.targetSnapshot,o=t.guards.canActivateChecks;return o.length?nt(o).pipe(ql(function(t){return function(t,n,r,o){return function(t,e,n,r){var o=Object.keys(t);if(0===o.length)return ol({});if(1===o.length){var i=o[0];return fp(t[i],e,n,r).pipe(K(function(t){var e;return(e={})[i]=t,e}))}var s={};return nt(o).pipe(rt(function(o){return fp(t[o],e,n,r).pipe(K(function(t){return s[o]=t,t}))})).pipe(Tl(),K(function(){return s}))}(t._resolve,t,e,o).pipe(K(function(e){return t._resolvedData=e,t.data=i({},t.data,vh(t,r).resolve),null}))}(t.route,0,n,r)}),function(t,e){return arguments.length>=2?function(e){return T(Wl(t,void 0),ml(1),Ol(void 0))(e)}:function(e){return T(Wl(function(e,n,r){return t(e)}),ml(1))(e)}}(function(t,e){return t}),K(function(e){return t})):ol(t)}))}),wl(function(t){var n=new vc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}));var n,r}),gp(function(t){var n=t.extras;return e.hooks.afterPreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),K(function(t){var n,r,o,s=(o=function t(e,n,r){if(r&&e.shouldReuseRoute(n.value,r.value.snapshot)){(l=r.value)._futureSnapshot=n.value;var o=function(e,n,r){return n.children.map(function(n){var o,i;try{for(var s=c(r.children),a=s.next();!a.done;a=s.next()){var l=a.value;if(e.shouldReuseRoute(l.value.snapshot,n.value))return t(e,n,l)}}catch(u){o={error:u}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(o)throw o.error}}return t(e,n)})}(e,n,r);return new hh(l,o)}var i=e.retrieve(n.value);if(i){var s=i.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(var r=0;ra;){if(l-=a,!(s=s.parent))throw new Error("Invalid number of '../'");a=s.segments.length}return new Oh(s,!1,a-l)}()}(i,0,t),a=s.processChildren?Th(s.segmentGroup,s.index,i.commands):Ph(s.segmentGroup,s.index,i.commands);return Sh(s.segmentGroup,a,e,r,o)}(u,this.currentUrlTree,t,h,c)},t.prototype.navigateByUrl=function(t,e){void 0===e&&(e={skipLocationChange:!1}),ge()&&this.isNgZoneEnabled&&!li.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");var n=Vh(t)?t:this.parseUrl(t),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,e)},t.prototype.navigate=function(t,e){return void 0===e&&(e={skipLocationChange:!1}),function(t){for(var e=0;et.name.length?e:t},{id:"",name:""}),this.filter())},t.prototype.ngAfterViewInit=function(){this.resize()},t.prototype.trackByFn=function(t,e){return e?"string"==typeof e?e:e.id:t},t.prototype.resize=function(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)},t.prototype.filter=function(){var t=this;if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(function(e){return("string"==typeof e?e:e.name).toLowerCase().indexOf(t.search.toLowerCase())>=0})),this.options&&this.options.hide_active&&this.selected)){var e="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(function(t){return("string"==typeof t?t:t.id).indexOf(e)<0})}},t.prototype.toggleShow=function(){var t=this;this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(function(){t.input&&t.input.nativeElement.focus()},100)},t.prototype.updateScroll=function(){var t=this;if(!this.viewport||!this.scroll_el)return setTimeout(function(){return t.updateScroll()},50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;var e="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)===e}))},t.prototype.select=function(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)},t.prototype.change=function(t){var e=this,n="string"==typeof this.selected?this.selected:this.selected.id,r=this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)==n})+t;r>=0&&r1?Array.prototype.slice.call(arguments):t)},r,n)})}var ld=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r.pending=!1,r}return o(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,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(r,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,r=void 0;try{this.work(t)}catch(o){n=!0,r=!!o&&o||new Error(o)}if(n)return this.unsubscribe(),r},e.prototype._unsubscribe=function(){var t=this.id,e=this.scheduler,n=e.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,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 o(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(m)),ud=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(e,t),e.prototype.requestAsyncId=function(e,n,r){return void 0===r&&(r=0),null!==r&&r>0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame(function(){return e.flush(null)})))},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(cancelAnimationFrame(n),e.scheduled=void 0)},e}(ld),cd=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}(),hd=function(t){function e(n,r){void 0===r&&(r=cd.now);var o=t.call(this,n,function(){return e.delegate&&e.delegate!==o?e.delegate.now():r()})||this;return o.actions=[],o.active=!1,o.scheduled=void 0,o}return o(e,t),e.prototype.schedule=function(n,r,o){return void 0===r&&(r=0),e.delegate&&e.delegate!==this?e.delegate.schedule(n,r,o):t.prototype.schedule.call(this,n,r,o)},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}(cd),pd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=(o=e.flush.bind(e,null),i=dd++,fd[i]=o,Promise.resolve().then(function(){return function(t){var e=fd[t];e&&e()}(i)}),i)));var o,i},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(delete fd[n],e.scheduled=void 0)},e}(ld),vd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r=0}function xd(t){var e=t.index,n=t.period,r=t.subscriber;if(r.next(e),!r.closed){if(-1===n)return r.complete();t.index=e+1,this.schedule(t,n)}}function Sd(t,e){return void 0===e&&(e=_d),n=function(){return function(t,e,n){void 0===t&&(t=0);var r=-1;return Cd(e)?r=Number(e)<1?1:Number(e):z(e)&&(n=e),z(n)||(n=_d),new R(function(e){var o=Cd(t)?t:+t-n.now();return n.schedule(xd,o,{index:0,period:r,subscriber:e})})}(t,e)},function(t){return t.lift(new bd(n))};var n}function Ed(t){return function(e){return e.lift(new kd(t))}}var Od,kd=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new Pd(t),r=Q(n,this.notifier);return r&&!n.seenValue?(n.add(r),e.subscribe(n)):n},t}(),Pd=function(t){function e(e){var n=t.call(this,e)||this;return n.seenValue=!1,n}return o(e,t),e.prototype.notifyNext=function(t,e,n,r,o){this.seenValue=!0,this.complete()},e.prototype.notifyComplete=function(){},e}(X),Td=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new Id(t))},t}(),Id=function(t){function e(e){var n=t.call(this,e)||this;return n.hasPrev=!1,n}return o(e,t),e.prototype._next=function(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t},e}(E),Rd=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(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,r){return void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,r):e.flush(this)},e}(ld),Ad=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e}(hd))(Rd);function Md(t,e){return new R(e?function(n){return e.schedule(Nd,0,{error:t,subscriber:n})}:function(e){return e.error(t)})}function Nd(t){t.subscriber.error(t.error)}Od||(Od={});var Dd,jd=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 ol(this.value);case"E":return Md(this.error);case"C":return nl()}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}(),Vd=function(t){function e(e,n,r){void 0===r&&(r=0);var o=t.call(this,e)||this;return o.scheduler=n,o.delay=r,o}return o(e,t),e.dispatch=function(t){t.notification.observe(t.destination),this.unsubscribe()},e.prototype.scheduleMessage=function(t){this.destination.add(this.scheduler.schedule(e.dispatch,this.delay,new Ld(t,this.destination)))},e.prototype._next=function(t){this.scheduleMessage(jd.createNext(t))},e.prototype._error=function(t){this.scheduleMessage(jd.createError(t)),this.unsubscribe()},e.prototype._complete=function(){this.scheduleMessage(jd.createComplete()),this.unsubscribe()},e}(E),Ld=function(){return function(t,e){this.notification=t,this.destination=e}}(),zd=function(t){function e(e,n,r){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=Number.POSITIVE_INFINITY);var o=t.call(this)||this;return o.scheduler=r,o._events=[],o._infiniteTimeWindow=!1,o._bufferSize=e<1?1:e,o._windowTime=n<1?1:n,n===Number.POSITIVE_INFINITY?(o._infiniteTimeWindow=!0,o.next=o.nextInfiniteTimeWindow):o.next=o.nextTimeWindow,o}return o(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 Ud(this._getNow(),e)),this._trimBufferThenGetEvents(),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,n=this._infiniteTimeWindow,r=n?this._events:this._trimBufferThenGetEvents(),o=this.scheduler,i=r.length;if(this.closed)throw new N;if(this.isStopped||this.hasError?e=m.EMPTY:(this.observers.push(t),e=new D(this,t)),o&&t.add(t=new Vd(t,o)),n)for(var s=0;se&&(i=Math.max(i,o-e)),i>0&&r.splice(0,i),r},e}(V),Ud=function(){return function(t,e){this.time=t,this.value=e}}();try{Dd="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Pm){Dd=!1}var Fd,Hd=function(){function t(t){this._platformId=t,this.isBrowser=this._platformId?Ka(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&&!Dd)&&"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.ngInjectableDef=Ot({factory:function(){return new t(Lt(Bo,8))},token:t,providedIn:"root"}),t}(),Bd=function(){return function(){}}(),Wd=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();function Gd(){if("object"!=typeof document||!document)return Wd.NORMAL;if(!Fd){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"),r=n.style;r.width="2px",r.height="1px",t.appendChild(n),document.body.appendChild(t),Fd=Wd.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Fd=0===t.scrollLeft?Wd.NEGATED:Wd.INVERTED),t.parentNode.removeChild(t)}return Fd}var Yd=function(t){function e(e){var n=t.call(this)||this;return n._data=e,n}return o(e,t),e.prototype.connect=function(){return this._data instanceof R?this._data:ol(this._data)},e.prototype.disconnect=function(){},e}(function(){return function(){}}()),qd=new Ut("VIRTUAL_SCROLL_STRATEGY"),Zd=function(){function t(t,e,n){this._scrolledIndexChange=new V,this.scrolledIndexChange=this._scrolledIndexChange.pipe(function(t){return t.lift(new yd(void 0,void 0))}),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(n0&&(r.end=Math.min(i,r.end+u),r.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(r),this._viewport.setRenderedContentOffset(this._itemSize*r.start),this._scrolledIndexChange.next(Math.floor(e))}},t}();function $d(t){return t._scrollStrategy}var Qd=function(){function t(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Zd(this.itemSize,this.minBufferPx,this.maxBufferPx)}return Object.defineProperty(t.prototype,"itemSize",{get:function(){return this._itemSize},set:function(t){this._itemSize=od(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minBufferPx",{get:function(){return this._minBufferPx},set:function(t){this._minBufferPx=od(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxBufferPx",{get:function(){return this._maxBufferPx},set:function(t){this._maxBufferPx=od(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)},t}(),Xd=function(){function t(t,e){this._ngZone=t,this._platform=e,this._scrolled=new V,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}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 R(function(n){e._globalSubscription||e._addGlobalListener();var r=t>0?e._scrolled.pipe(Sd(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){r.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):ol()},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(dl(function(t){return!t||n.indexOf(t)>-1}))},t.prototype.getAncestorScrollContainers=function(t){var e=this,n=[];return this.scrollContainers.forEach(function(r,o){e._scrollableContainsElement(o,t)&&n.push(o)}),n},t.prototype._scrollableContainsElement=function(t,e){var n=e.nativeElement,r=t.getElementRef().nativeElement;do{if(n==r)return!0}while(n=n.parentElement);return!1},t.prototype._addGlobalListener=function(){var t=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){return ad(window.document,"scroll").subscribe(function(){return t._scrolled.next()})})},t.prototype._removeGlobalListener=function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(li),Lt(Hd))},token:t,providedIn:"root"}),t}(),Kd=function(){function t(t,e,n,r){var o=this;this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=r,this._destroyed=new V,this._elementScrolled=new R(function(t){return o.ngZone.runOutsideAngular(function(){return ad(o.elementRef.nativeElement,"scroll").pipe(Ed(o._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;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Gd()!=Wd.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Gd()==Wd.INVERTED?t.left=t.right:Gd()==Wd.NEGATED&&(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"==typeof document&&"scrollBehavior"in document.documentElement.style?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&&Gd()==Wd.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Gd()==Wd.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft},t}(),Jd="undefined"!=typeof requestAnimationFrame?pd:vd,tf=function(t){function e(e,n,r,o,i,s){var a=t.call(this,e,s,r,i)||this;if(a.elementRef=e,a._changeDetectorRef=n,a._scrollStrategy=o,a._detachedSubject=new V,a._renderedRangeSubject=new V,a.orientation="vertical",a.scrolledIndexChange=new R(function(t){return a._scrollStrategy.scrolledIndexChange.subscribe(function(e){return Promise.resolve().then(function(){return a.ngZone.run(function(){return t.next(e)})})})}),a.renderedRangeStream=a._renderedRangeSubject.asObservable(),a._totalContentSizeTransform="",a._totalContentSize=0,a._renderedRange={start:0,end:0},a._dataLength=0,a._viewportSize=0,a._renderedContentOffset=0,a._renderedContentOffsetNeedsRewrite=!1,a._isChangeDetectionPending=!1,a._runAfterChangeDetection=[],!o)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.');return a}return o(e,t),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(Bl(null),Sd(0,Jd)).subscribe(function(){return e._scrollStrategy.onContentScrolled()}),e._markChangeDetectionNeeded()})})},e.prototype.ngOnDestroy=function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),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(Ed(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._totalContentSizeTransform="scale"+("horizontal"==this.orientation?"X":"Y")+"("+this._totalContentSize+")",this._markChangeDetectionNeeded())},e.prototype.setRenderedRange=function(t){var e,n,r=this;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(function(){return r._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 r="horizontal"==this.orientation,o=r?"X":"Y",i="translate"+o+"("+Number((r&&this.dir&&"rtl"==this.dir.value?-1:1)*t)+"px)";this._renderedContentOffset=t,"to-end"===e&&(i+=" translate"+o+"(-100%)",this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,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 t.prototype.measureScrollOffset.call(this,e||("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=this;this._isChangeDetectionPending=!1,this.ngZone.run(function(){return t._changeDetectorRef.markForCheck()}),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;var e=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(var n=0,r=e;n=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");for(var n=t.start-this._renderedRange.start,r=0,o=t.end-t.start;o--;)for(var i=this._viewContainerRef.get(o+n),s=i?i.rootNodes.length:0;s--;)r+=ef(e,i.rootNodes[s]);return r},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(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(var t=0,e=this._templateCache;t0?this._change.pipe(Sd(t)):this._change},t.prototype._updateViewportSize=function(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Hd),Lt(li))},token:t,providedIn:"root"}),t}();function sf(){throw Error("Host already has a portal attached")}var af=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()&&sf(),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}(),lf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.component=e,i.viewContainerRef=n,i.injector=r,i.componentFactoryResolver=o,i}return o(e,t),e}(af),uf=function(t){function e(e,n,r){var o=t.call(this)||this;return o.templateRef=e,o.viewContainerRef=n,o.context=r,o}return o(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}(af),cf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.outletElement=e,i._componentFactoryResolver=n,i._appRef=r,i._defaultInjector=o,i}return o(e,t),e.prototype.attachComponentPortal=function(t){var e,n=this,r=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);return t.viewContainerRef?(e=t.viewContainerRef.createComponent(r,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(function(){return e.destroy()})):(e=r.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,r=n.createEmbeddedView(t.templateRef,t.context);return r.detectChanges(),r.rootNodes.forEach(function(t){return e.outletElement.appendChild(t)}),this.setDisposeFn(function(){var t=n.indexOf(r);-1!==t&&n.remove(t)}),r},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}(function(){function t(){this._isDisposed=!1}return t.prototype.hasAttached=function(){return!!this._attachedPortal},t.prototype.attach=function(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&sf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof lf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof uf?(this._attachedPortal=t,this.attachTemplatePortal(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}()),hf=function(){return function(){}}(),pf=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=sd(-this._previousScrollPosition.left),t.style.top=sd(-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=t.style,n=this._document.body.style,r=e.scrollBehavior||"",o=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=r,n.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}();function df(){return Error("Scroll strategy has already been attached.")}var ff=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return t.prototype.attach=function(t){if(this._overlayRef)throw df();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}(),gf=function(){function t(){}return t.prototype.enable=function(){},t.prototype.disable=function(){},t.prototype.attach=function(){},t}();function vf(t,e){return e.some(function(e){return t.bottome.bottom||t.righte.right})}function yf(t,e){return e.some(function(e){return t.tope.bottom||t.lefte.right})}var mf=function(){function t(t,e,n,r){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=r,this._scrollSubscription=null}return t.prototype.attach=function(t){if(this._overlayRef)throw df();this._overlayRef=t},t.prototype.enable=function(){var t=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(t._overlayRef.updatePosition(),t._config&&t._config.autoClose){var e=t._overlayRef.overlayElement.getBoundingClientRect(),n=t._viewportRuler.getViewportSize(),r=n.width,o=n.height;vf(e,[{width:r,height:o,bottom:o,right:r,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}(),_f=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=function(){return new gf},this.close=function(t){return new ff(o._scrollDispatcher,o._ngZone,o._viewportRuler,t)},this.block=function(){return new pf(o._viewportRuler,o._document)},this.reposition=function(t){return new mf(o._scrollDispatcher,o._viewportRuler,o._ngZone,t)},this._document=r}return t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Xd),Lt(of),Lt(li),Lt($a))},token:t,providedIn:"root"}),t}(),bf=function(){return function(t){var e=this;this.scrollStrategy=new gf,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(function(n){void 0!==t[n]&&(e[n]=t[n])})}}(),wf=function(){return function(t,e,n,r,o){this.offsetX=n,this.offsetY=r,this.panelClass=o,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}(),Cf=function(){return function(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}();function xf(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "top", "bottom" or "center".')}function Sf(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "start", "end" or "center".')}var Ef=function(){function t(t){var e=this;this._attachedOverlays=[],this._keydownListener=function(t){for(var n=e._attachedOverlays,r=n.length-1;r>-1;r--)if(n[r]._keydownEventSubscriptions>0){n[r]._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.ngInjectableDef=Ot({factory:function(){return new t(Lt($a))},token:t,providedIn:"root"}),t}(),Of=function(){function t(t){this._document=t}return t.prototype.ngOnDestroy=function(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)},t.prototype.getContainerElement=function(){return this._containerElement||this._createContainer(),this._containerElement},t.prototype._createContainer=function(){var t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t},t.ngInjectableDef=Ot({factory:function(){return new t(Lt($a))},token:t,providedIn:"root"}),t}(),kf=function(){function t(t,e,n,r,o,i,s,a){var l=this;this._portalOutlet=t,this._host=e,this._pane=n,this._config=r,this._ngZone=o,this._keyboardDispatcher=i,this._document=s,this._location=a,this._backdropElement=null,this._backdropClick=new V,this._attachments=new V,this._detachments=new V,this._locationChanges=m.EMPTY,this._keydownEventsObservable=new R(function(t){var e=l._keydownEvents.subscribe(t);return l._keydownEventSubscriptions++,function(){e.unsubscribe(),l._keydownEventSubscriptions--}}),this._keydownEvents=new V,this._keydownEventSubscriptions=0,r.scrollStrategy&&(this._scrollStrategy=r.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=r.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._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Ml(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=i({},this._config,t),this._updateElementSize()},t.prototype.setDirection=function(t){this._config=i({},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(){var t=this._pane.style;t.width=sd(this._config.width),t.height=sd(this._config.height),t.minWidth=sd(this._config.minWidth),t.minHeight=sd(this._config.minHeight),t.maxWidth=sd(this._config.maxWidth),t.maxHeight=sd(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",function(e){return t._backdropClick.next(e)}),"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,r=function(){e&&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",r)}),e.style.pointerEvents="none",n=this._ngZone.runOutsideAngular(function(){return setTimeout(r,500)})}},t.prototype._toggleClasses=function(t,e,n){var r=t.classList;id(e).forEach(function(t){n?r.add(t):r.remove(t)})},t.prototype._detachContentWhenStable=function(){var t=this;this._ngZone.runOutsideAngular(function(){var e=t._ngZone.onStable.asObservable().pipe(Ed(lt(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}(),Pf=function(){function t(t,e,n,r,o){this._viewportRuler=e,this._document=n,this._platform=r,this._overlayContainer=o,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 V,this._resizeSubscription=m.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(){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();for(var t,e=this._originRect,n=this._overlayRect,r=this._viewportRect,o=[],i=0,s=this._preferredPositions;ip&&(p=v,h=g)}return this._isPushed=!1,void this._applyPosition(h.position,h.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(t.position,t.originPoint);this._applyPosition(t.position,t.originPoint)}},t.prototype.detach=function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()},t.prototype.dispose=function(){this._isDisposed||(this._boundingBox&&Tf(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 r=this._isRtl()?t.right:t.left,o=this._isRtl()?t.left:t.right;n="start"==e.originX?r:o}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 r;return r="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+r,y:t.y+("center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}},t.prototype._getOverlayFit=function(t,e,n,r){var o=t.x,i=t.y,s=this._getOffset(r,"x"),a=this._getOffset(r,"y");s&&(o+=s),a&&(i+=a);var l=0-i,u=i+e.height-n.height,c=this._subtractOverflows(e.width,0-o,o+e.width-n.width),h=this._subtractOverflows(e.height,l,u),p=c*h;return{visibleArea:p,isCompletelyWithinViewport:e.width*e.height===p,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:c==e.width}},t.prototype._canFitWithFlexibleDimensions=function(t,e,n){if(this._hasFlexibleDimensions){var r=n.bottom-e.y,o=n.right-e.x,i=this._overlayRef.getConfig().minHeight,s=this._overlayRef.getConfig().minWidth;return(t.fitsInViewportVertically||null!=i&&i<=r)&&(t.fitsInViewportHorizontally||null!=s&&s<=o)}},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 r,o,i=this._viewportRect,s=Math.max(t.x+e.width-i.right,0),a=Math.max(t.y+e.height-i.bottom,0),l=Math.max(i.top-n.top-t.y,0),u=Math.max(i.left-n.left-t.x,0);return this._previousPushAmount={x:r=e.width<=i.width?u||-s:t.xh&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-h/2)}if("end"===e.overlayX&&!u||"start"===e.overlayX&&u)a=l.right-t.x+this._viewportMargin,i=t.x-l.left;else if("start"===e.overlayX&&!u||"end"===e.overlayX&&u)s=t.x,i=l.right-t.x;else{c=Math.min(l.right-t.x+l.left,t.x);var p=this._lastBoundingBoxSize.width;s=t.x-c,(i=2*c)>p&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.x-p/2)}return{top:r,left:s,bottom:o,right:a,width:i,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 r={};if(this._hasExactPosition())r.top=r.left="0",r.bottom=r.right="",r.width=r.height="100%";else{var o=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;r.height=sd(n.height),r.top=sd(n.top),r.bottom=sd(n.bottom),r.width=sd(n.width),r.left=sd(n.left),r.right=sd(n.right),r.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",r.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",o&&(r.maxHeight=sd(o)),i&&(r.maxWidth=sd(i))}this._lastBoundingBoxSize=n,Tf(this._boundingBox.style,r)},t.prototype._resetBoundingBoxStyles=function(){Tf(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})},t.prototype._resetOverlayElementStyles=function(){Tf(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})},t.prototype._setOverlayElementStyles=function(t,e){var n={};if(this._hasExactPosition()){var r=this._viewportRuler.getViewportScrollPosition();Tf(n,this._getExactOverlayY(e,t,r)),Tf(n,this._getExactOverlayX(e,t,r))}else n.position="static";var o="",i=this._getOffset(e,"x"),s=this._getOffset(e,"y");i&&(o+="translateX("+i+"px) "),s&&(o+="translateY("+s+"px)"),n.transform=o.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Tf(this._pane.style,n)},t.prototype._getExactOverlayY=function(t,e,n){var r={top:null,bottom:null},o=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n));var i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return o.y-=i,"bottom"===t.overlayY?r.bottom=this._document.documentElement.clientHeight-(o.y+this._overlayRect.height)+"px":r.top=sd(o.y),r},t.prototype._getExactOverlayX=function(t,e,n){var r={left:null,right:null},o=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n)),"right"==(this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=this._document.documentElement.clientWidth-(o.x+this._overlayRect.width)+"px":r.left=sd(o.x),r},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:yf(t,n),isOriginOutsideView:vf(t,n),isOverlayClipped:yf(e,n),isOverlayOutsideView:vf(e,n)}},t.prototype._subtractOverflows=function(t){for(var e=[],n=1;n0?p(this.events,[t]):[t],this.displayed_events=this.events.slice(-8),t.close=function(){return e.remove(t.id)},0!==t.delay&&setTimeout(function(){return e.remove(t.id)},t.delay||this.delay||5e3))},t.prototype.remove=function(t){this.events=this.events.filter(function(e){return e.id!==t}),this.displayed_events=this.events.slice(-8)},t.prototype.action=function(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)},t.prototype.grab=function(t,e){var n=this,r=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=r,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",function(e){return n.pull(t,e)}),touchmove:this.renderer.listen("window","touchmove",function(e){return n.pull(t,e)}),mouseup:this.renderer.listen("window","mouseup",function(e){return n.release(t)}),touchend:this.renderer.listen("window","touchend",function(e){return n.release(t)})}},t.prototype.pull=function(t,e){var n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)},t.prototype.release=function(t){for(var e in t.offset>128&&this.remove(t.id),t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0},t.prototype.trackByFn=function(t,e){return(t?t.id:null)||e},t}(),Wf=function(){function t(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new V,this._notify.remove=new V,this._notify.delay=new V,this.registerPreset("default",new bf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new bf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}return t.prototype.register=function(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Hf(t,this,this.injector,this.overlay,e),this._refs[t]},t.prototype.open=function(t,e,n,r){if(e.config?e.config instanceof bf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error("No content set for the overlay "+t);var o=this._refs[t],i=o.details.config instanceof bf?o.details.config:this.preset(o.details.config);o.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),r&&this._refs[t].onClose.subscribe(r))},t.prototype.update=function(t,e){this._refs[t]&&this._refs[t].set(e)},t.prototype.close=function(t){this._refs[t]&&this._refs[t].close(null)},t.prototype.remove=function(t){this._refs[t]&&(this._refs[t]=null)},t.prototype.registerPreset=function(t,e){this._presets[t]=e},t.prototype.preset=function(t){return void 0===t&&(t="default"),this._presets[t]||this._presets.default},t.prototype.loadNotificationsOutlet=function(){var t=this;this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(function(){t.registerPreset("ACA_NOTIFICATIONS_OUTLET",new bf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:t.overlay.position().global().bottom("0").right("0"),scrollStrategy:t.overlay.scrollStrategies.noop()})),t.open("ACA_NOTIFICATIONS_OUTLET",{content:Bf,data:t._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)},t.prototype.notify=function(t,e,n,r,o){var i=null;return this._notify.add&&(i="notification-"+Math.floor(999999*Math.random()),this._notify.add.next({id:i,content:t,action:e,on_action:n,type:r,delay:o,event:function(t){return n?n(t):null}})),i},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Nf),Lt(Bt))},token:t,providedIn:"root"}),t}(),Gf=function(){function t(t,e,n,r){this.el=t,this.service=e,this.overlay=n,this.renderer=r,this.id="tooltip-"+Math.floor(9999999*Math.random()),this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new No,this.event=new No,this.close=new No,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}return t.prototype.ngOnInit=function(){this.updateConfig(),this.el&&this.listenForScroll()},t.prototype.ngOnDestroy=function(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()},t.prototype.ngOnChanges=function(t){var e=this;if(t.config&&this.updateConfig(),t.reposition){var n=this.overlay.scrollStrategies;this.strategy=this.reposition?n.reposition():n.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(function(){return e.open()},10):this.closeTooltip(t.show.previousValue))},t.prototype.open=function(){var t=this;this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},function(e){return t.event.emit(e)},function(e){t.show=!1,t.showChange.emit(!1),t.close.emit(e),t.clearListeners()})},t.prototype.getOverlayPosition=function(t){var e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)},t.prototype.getPositions=function(){var t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}},t.prototype.updateConfig=function(){this.service.registerPreset(this.id,new bf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))},t.prototype.listenForScroll=function(){var t=this;if(this.show)for(var e=this.el.nativeElement.parentElement;e;e=e.parentElement)this.listeners.push(this.renderer.listen(e,"scroll",function(){return t.update()}))},t.prototype.clearListeners=function(){var t,e;try{for(var n=c(this.listeners),r=n.next();!r.done;r=n.next())(0,r.value)()}catch(o){t={error:o}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)},t.prototype.update=function(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))},t.prototype.listenForHover=function(){var t=this;this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",function(e){t.show=!0,t.showChange.emit(t.show),t._leave_listener=t.renderer.listen(t.el.nativeElement,"mouseleave",function(e){t.show=!1,t.showChange.emit(t.show),t.closeTooltip(t.show)}),t.open()})},t.prototype.closeTooltip=function(t){!this.content&&this.el?function(t,e,n,r,o){if(void 0===r&&(r="debug"),window.debug){var i=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?zf()?console[r].apply(console,p(["%c["+Lf+"]%c["+t+"] %c"+e],i,[n])):console[r]("["+Lf+"]["+t+"] "+e,n):zf()?console[r].apply(console,p(["%c["+Lf+"]%c["+t+"] %c"+e],i)):console[r]("["+Lf+"]["+t+"] "+e)}}("Tooltip","No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()},t}(),Yf=function(){function t(t,e){this.item=t,this.service=e}return t.prototype.ngOnInit=function(){var t=this;setTimeout(function(){t.text=t.item.details.data.text,t.center=t.item.details.data.center},10),setTimeout(function(){return t.service.close(t.item.ID)},1e3)},t}(),qf=ya,Zf=function(){function t(){if(this.build=qf(),!t.init){var e=qf();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),zf()?console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Lf+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"])):console[n]("[ACA][LIB] "+Lf+" - "+t+" | "+e)}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),$f=new Ut("cdk-dir-doc",{providedIn:"root",factory:function(){return zt($a)}}),Qf=function(){function t(t){if(this.value="ltr",this.change=new No,t){var e=(t.body?t.body.dir:null)||(t.documentElement?t.documentElement.dir:null);this.value="ltr"===e||"rtl"===e?e:"ltr"}}return t.prototype.ngOnDestroy=function(){this.change.complete()},t.ngInjectableDef=Ot({factory:function(){return new t(Lt($f,8))},token:t,providedIn:"root"}),t}(),Xf=function(){return function(){}}(),Kf=or({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function Jf(t){return as(0,[(t()(),Gi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function tg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function eg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,tg)),vo(2,540672,null,0,qa,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function ng(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function rg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,ng)),vo(2,671744,null,0,ja,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function og(t){return as(0,[(t()(),Gi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Gi(1,0,null,null,7,null,null,null,null,null,null,null)),vo(2,16384,null,0,Wa,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Wi(16777216,null,null,1,null,Jf)),vo(4,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,eg)),vo(6,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,rg)),vo(8,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function ig(t){return as(0,[(t()(),Wi(16777216,null,null,1,null,og)),vo(1,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function sg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"overlay-outlet",[],null,null,null,ig,Kf)),vo(1,114688,null,0,Ff,[Gt],null,null)],function(t,e){t(e,1,0)},null)}var ag=Gr("overlay-outlet",Ff,sg,{},{},[]),lg=or({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function ug(t){return as(0,[(t()(),Gi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),os(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function cg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"a-floating-text",[],null,null,null,ug,lg)),vo(1,114688,null,0,Yf,[Hf,Wf],null,null)],function(t,e){t(e,1,0)},null)}var hg=Gr("a-floating-text",Yf,cg,{},{},[]),pg=or({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function dg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function fg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,dg)),vo(2,540672,null,0,qa,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function gg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function vg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,gg)),vo(2,671744,null,0,ja,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function yg(t){return as(0,[(t()(),Gi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function mg(t){return as(0,[(t()(),Gi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),os(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function _g(t){return as(0,[(t()(),Gi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function bg(t){return as(0,[(t()(),Gi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Gi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),"touchstart"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),r},null,null)),(t()(),Gi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Gi(4,0,null,null,7,null,null,null,null,null,null,null)),vo(5,16384,null,0,Wa,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Wi(16777216,null,null,1,null,fg)),vo(7,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,vg)),vo(9,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,yg)),vo(11,16384,null,0,Ya,[zn,Vn,Wa],null,null),(t()(),Gi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),"touchend"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),r},null,null)),(t()(),Wi(16777216,null,null,1,null,mg)),vo(14,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Wi(16777216,null,null,1,null,_g)),vo(16,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function wg(t){return as(0,[(t()(),Gi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,bg)),vo(2,278528,null,0,La,[zn,Vn,In],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function Cg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"notification-outlet",[],null,null,null,wg,pg)),vo(1,245760,null,0,Bf,[Hf,yn],null,null)],function(t,e){t(e,1,0)},null)}var xg=Gr("notification-outlet",Bf,Cg,{},{},[]),Sg=function(t){function e(e,n){var r=t.call(this,e)||this;r.sources=n,r.completed=0,r.haveValues=0;var o=n.length;r.values=new Array(o);for(var i=0;it?{max:{max:t,actual:e.value}}:null}},t.required=function(t){return Ng(t.value)?{required:!0}:null},t.requiredTrue=function(t){return!0===t.value?null:{required:!0}},t.email=function(t){return Ng(t.value)?null:Dg.test(t.value)?null:{email:!0}},t.minLength=function(t){return function(e){if(Ng(e.value))return null;var n=e.value?e.value.length:0;return nt?{maxlength:{requiredLength:t,actualLength:n}}:null}},t.pattern=function(e){return e?("string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),n=new RegExp(r)):(r=e.toString(),n=e),function(t){if(Ng(t.value))return null;var e=t.value;return n.test(e)?null:{pattern:{requiredPattern:r,actualValue:e}}}):t.nullValidator;var n,r},t.nullValidator=function(t){return null},t.compose=function(t){if(!t)return null;var e=t.filter(Vg);return 0==e.length?null:function(t){return zg(function(t,n){return e.map(function(e){return e(t)})}(t))}},t.composeAsync=function(t){if(!t)return null;var e=t.filter(Vg);return 0==e.length?null:function(t){return function t(){for(var e,n=[],r=0;r=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}(),Wg=function(){function t(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return t.prototype.ngOnInit=function(){this._control=this._injector.get(Ag),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: \n ')},t}(),Gg='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Yg='\n
\n
\n \n
\n
';function qg(t,e){return p(e.path,[t])}function Zg(t,e){t||Qg(e,"Cannot find control with"),e.valueAccessor||Qg(e,"No value accessor for form control with"),t.validator=jg.compose([t.validator,e.validator]),t.asyncValidator=jg.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&&$g(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&&$g(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 $g(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Qg(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 Xg(t){return null!=t?jg.compose(t.map(Ug)):null}function Kg(t){return null!=t?jg.composeAsync(t.map(Fg)):null}var Jg=[Og,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}(),Hg,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=qe}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=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}(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=c(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var i=o.value;if(this._compareWith(this._optionMap.get(i),t))return i}}catch(s){e={error:s}}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},t}(),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=qe}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 r=t.map(function(t){return n._getOptionId(t)});e=function(t,e){t._setSelected(r.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 r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i0||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}(rv),sv=function(t){function e(e,n,r){var o=t.call(this,tv(n),ev(r,n))||this;return o.controls=e,o._initObservables(),o._setUpdateStrategy(n),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return o(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,r){n._throwIfControlMissing(r),n.at(r).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,r){n.at(r)&&n.at(r).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,r){n.reset(t[r],{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 ov?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=c(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(o){t={error:o}}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}(rv),av=function(){return Promise.resolve(null)}(),lv=function(t){function e(e,n){var r=t.call(this)||this;return r.submitted=!1,r._directives=[],r.ngSubmit=new No,r.form=new iv({},Xg(e),Kg(n)),r}return o(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;av.then(function(){var n=e._findContainer(t.path);t.control=n.registerControl(t.name,t.control),Zg(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;av.then(function(){var n,r,o=e._findContainer(t.path);o&&o.removeControl(t.name),(r=(n=e._directives).indexOf(t))>-1&&n.splice(r,1)})},e.prototype.addFormGroup=function(t){var e=this;av.then(function(){var n=e._findContainer(t.path),r=new iv({});(function(t,e){null==t&&Qg(e,"Cannot find control with"),t.validator=jg.compose([t.validator,e.validator]),t.asyncValidator=jg.composeAsync([t.asyncValidator,e.asyncValidator])})(r,t),n.registerControl(t.name,r),r.updateValueAndValidity({emitEvent:!1})})},e.prototype.removeFormGroup=function(t){var e=this;av.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;av.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,e=this._directives,this.form._syncPendingControls(),e.forEach(function(t){var e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e},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},e}(Ig),uv=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 \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\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
\n \n \n
\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 "+Gg+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+Yg)},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: \n Example 2: ')},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 "+Gg+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+Yg)},t.ngFormWarning=function(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")},t}(),cv=new Ut("NgFormSelectorWarning"),hv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(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 qg(this.name,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 Xg(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Kg(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){},e}(Ig),pv=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}var n;return o(e,t),n=e,e.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof lv||uv.modelGroupParentException()},e}(hv),dv=function(){return Promise.resolve(null)}(),fv=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.control=new ov,i._registered=!1,i.update=new No,i._parent=e,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Qg(t,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,o=void 0;return e.forEach(function(e){var i;e.constructor===Pg?n=e:(i=e,Jg.some(function(t){return i.constructor===t})?(r&&Qg(t,"More than one built-in value accessor matches form control with"),r=e):(o&&Qg(t,"More than one custom value accessor matches form control with"),o=e))}),o||r||n||(Qg(t,"No valid value accessor for form control with"),null)}(i,o),i}return o(e,t),e.prototype.ngOnChanges=function(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;var n=t.model;return!!n.isFirstChange()||!qe(e,n.currentValue)}(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?qg(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 Xg(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Kg(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(){Zg(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 pv)&&this._parent instanceof hv?uv.formGroupNameException():this._parent instanceof pv||this._parent instanceof lv||uv.modelParentException()},e.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||uv.missingNameException()},e.prototype._updateValue=function(t){var e=this;dv.then(function(){e.control.setValue(t,{emitViewToModelChange:!1})})},e.prototype._updateDisabled=function(t){var e=this,n=t.isDisabled.currentValue,r=""===n||n&&"false"!==n;dv.then(function(){r&&!e.control.disabled?e.control.disable():!r&&e.control.disabled&&e.control.enable()})},e}(Ag),gv=new Ut("NgModelWithFormControlWarning"),vv=function(){return function(){}}(),yv=function(){function t(){}return t.prototype.group=function(t,e){void 0===e&&(e=null);var n=this._reduceControls(t),r=null,o=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(r=null!=e.validators?e.validators:null,o=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(r=null!=e.validator?e.validator:null,o=null!=e.asyncValidator?e.asyncValidator:null)),new iv(n,{asyncValidators:o,updateOn:i,validators:r})},t.prototype.control=function(t,e,n){return new ov(t,e,n)},t.prototype.array=function(t,e,n){var r=this,o=t.map(function(t){return r._createControl(t)});return new sv(o,e,n)},t.prototype._reduceControls=function(t){var e=this,n={};return Object.keys(t).forEach(function(r){n[r]=e._createControl(t[r])}),n},t.prototype._createControl=function(t){return t instanceof ov||t instanceof iv||t instanceof sv?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)},t}(),mv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:cv,useValue:t.warnOnDeprecatedNgFormSelector}]}},t}(),_v=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:gv,useValue:t.warnOnNgModelWithFormControl}]}},t}(),bv=or({encapsulation:2,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:0}.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:0}.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}"],data:{}});function wv(t){return as(2,[Qi(402653184,1,{_contentWrapper:0}),(t()(),Gi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),es(null,0),(t()(),Gi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Cv=or({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function xv(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==no(t,5)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==no(t,5).onTouched()&&r),"compositionstart"===e&&(r=!1!==no(t,5)._compositionStart()&&r),"compositionend"===e&&(r=!1!==no(t,5)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search=n)&&r),"ngModelChange"===e&&(o.searchChange.emit(n),r=!1!==o.filter()&&r),r},null,null)),vo(5,16384,null,0,Pg,[yn,pn,[2,kg]],null,null),mo(1024,null,Eg,function(t){return[t]},[Pg]),vo(7,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(9,16384,null,0,Mg,[[4,Ag]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,no(e,9).ngClassUntouched,no(e,9).ngClassTouched,no(e,9).ngClassPristine,no(e,9).ngClassDirty,no(e,9).ngClassValid,no(e,9).ngClassInvalid,no(e,9).ngClassPending)})}function Sv(t){return as(0,[(t()(),Gi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.select(t.context.$implicit)&&r),r},null,null)),(t()(),Gi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Ev(t){return as(0,[(t()(),Gi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,wv,bv)),mo(6144,null,Kd,null,[tf]),vo(3,540672,null,0,Qd,[],{itemSize:[0,"itemSize"]},null),mo(1024,null,qd,$d,[Qd]),vo(5,245760,[[4,4],[5,4],["viewport",4]],0,tf,[pn,An,li,[2,qd],[2,Qf],Xd],null,null),(t()(),Wi(16777216,[[2,2]],0,1,null,Sv)),vo(7,409600,null,0,nf,[zn,Vn,In,[1,tf],li],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===no(e,5).orientation,"horizontal"!==no(e,5).orientation)})}function Ov(t){return as(0,[(t()(),Gi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function kv(t){return as(0,[(t()(),Gi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.cancelClose()&&r),r},null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(r=0!=(o.show=!o.show)&&r),r},null,null)),(t()(),Gi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Wi(16777216,[[2,2]],null,1,null,xv)),vo(7,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Wi(16777216,[[2,2]],null,1,null,Ev)),vo(10,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Wi(0,[[2,2],["noItems",2]],null,0,null,Ov))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,no(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Pv(t){return as(0,[Qi(402653184,1,{reference:0}),Qi(402653184,2,{dropdown_tooltip:0}),Qi(402653184,3,{input:0}),Qi(402653184,4,{viewport:0}),Qi(402653184,5,{scroll_el:0}),(t()(),Gi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var r=!0,o=t.component;return"keyup.enter"===e&&(r=!1!==o.toggleShow()&&r),"keydown.arrowup"===e&&(r=!1!==n.preventDefault()&&r),"keydown.arrowdown"===e&&(r=!1!==n.preventDefault()&&r),"keyup.arrowup"===e&&(r=!1!==(o.focus?o.change(-1):"")&&r),"keyup.arrowdown"===e&&(r=!1!==(o.focus?o.change(1):"")&&r),"focus"===e&&(r=0!=(o.focus=!0)&&r),"blur"===e&&(r=0!=(o.focus=!1)&&r),"window:resize"===e&&(r=!1!==o.resize()&&r),"window:click"===e&&(r=!1!==(o.show?o.close():"")&&r),r},null,null)),(t()(),Gi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Gi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"showChange"===e&&(r=!1!==(o.show=n)&&r),"showChange"===e&&(r=!1!==o.updateScroll()&&r),"click"===e&&(r=!1!==o.toggleShow()&&r),r},null,null)),vo(8,737280,null,0,Gf,[pn,Wf,Nf,yn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Gi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),os(10,null,["",""])),(t()(),Gi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Gi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Gi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(15,null,["",""])),(t()(),Gi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Wi(0,[[2,2],["dropdown",2]],null,0,null,kv))],function(t,e){t(e,8,0,e.component.show,no(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}var Tv="Checkbox",Iv=function(){function t(){this.klass="default"}return t.prototype.toggle=function(){this.state=!this.state,this.onChange&&this.onChange(this.state)},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouch=t},t}(),Rv=ya,Av=function(){function t(){if(this.build=Rv(),!t.init){var e=Rv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Tv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Tv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Mv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}return t.prototype.handleMouse=function(t){this.handleEvent(t)},t.prototype.handleTouch=function(t){this.handleEvent(t)},t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;setTimeout(function(){t.element&&t.element.nativeElement&&(t.cached_box=t.element.nativeElement.getBoundingClientRect(),t.size=Math.ceil(1.5*Math.max(t.cached_box.height,t.cached_box.width)))})},t.prototype.ngOnDestroy=function(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t.prototype.handleEvent=function(t){var e=this;this.cancelled=!1;var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,r=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:r-this.cached_box.top+"px",left:n-this.cached_box.left+"px"},this.mouse_release_cancel=this.renderer.listen("window","mouseup",function(t){return e.handleRelease(t)}),this.touch_release_cancel=this.renderer.listen("window","touchend",function(t){return e.handleRelease(t)}),this.transitioning=!0,setTimeout(function(){e.transitioning=!1,e.cancelled&&(e.show=!1)},350)},t.prototype.handleRelease=function(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t}(),Nv=function(){function t(t,e){this.el=t,this.renderer=e,this.tapped=new No,this.touchrelease=new No,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}return t.prototype.ngAfterViewInit=function(){var t=this;this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",function(e){return t.handleHold(e)}),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",function(e){return t.handleHold(e)}))},t.prototype.ngOnDestroy=function(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}},t.prototype.remove=function(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)},t.prototype.handleHold=function(t){var e=this,n={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=n,this.mouse_listener=this.renderer.listen(window,"mouseup",function(t){return e.handleRelease(t)}),this.touch_listener=this.renderer.listen(window,"touchend",function(t){return e.handleRelease(t)}),this.timer=setTimeout(function(){return e.remove()},this.max_delay)},t.prototype.handleRelease=function(t){var e=this;this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(function(){var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(n-e.start.x,2)+2) div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function Fv(t){return as(0,[(t()(),Gi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.toggle()&&r),r},null,null)),vo(1,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),os(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Hv(t){return as(0,[(t()(),Gi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Gi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,2).handleTouch(n)&&r),"keyup.enter"===e&&(r=!1!==o.toggle()&&r),"tapped"===e&&(r=!1!==o.toggle()&&r),r},zv,Lv)),vo(2,4440064,null,0,Mv,[pn,yn],{center:[0,"center"]},null),vo(3,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,Fv)),vo(6,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}var Bv="Buttons",Wv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new No,this.id="button-"+Math.floor(999999*Math.random())}return t.prototype.ngOnChanges=function(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()},t.prototype.ngAfterViewInit=function(){this.setClass(this.klass)},t.prototype.setClass=function(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))},t.prototype.setGroup=function(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")},t.prototype.setState=function(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")},t.prototype.tap=function(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this._onChange=t},t.prototype.registerOnTouched=function(t){this._onTouch=t},t}(),Gv=ya,Yv=function(){function t(){if(this.build=Gv(),!t.init){var e=Gv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Bv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Bv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),qv=or({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function Zv(t){return as(0,[(t()(),Gi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,1).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,1).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.tap()&&r),r},zv,Lv)),vo(1,4440064,null,0,Mv,[pn,yn],null,null),vo(2,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),es(0,0)],function(t,e){t(e,1,0)},null)}var $v=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t,e){switch(void 0===e&&(e="html"),e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}},t}(),Qv="Pipes",Xv=ya,Kv=function(){function t(){if(this.build=Xv(),!t.init){var e=Xv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Qv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Qv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Jv=function(){function t(){this._timers={},this._intervals={},this._subscriptions={}}return t.prototype.timeout=function(t,e,n){var r=this;if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(function(){e(),r._timers[t]=null},n)},t.prototype.clearTimeout=function(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)},t.prototype.interval=function(t,e,n){if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(function(){return e()},n)},t.prototype.clearInterval=function(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)},t.prototype.subscription=function(t,e){this.unsub(t),this._subscriptions[t]=e},t.prototype.unsub=function(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof m?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)},t}(),ty=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.ngOnDestroy=function(){for(var t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(var t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(var t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)},e}(Jv),ey=function(){return function(){}}(),ny=function(){return function(){}}(),ry=function(){function t(t){var e=this;this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?function(){e.headers=new Map,t.split("\n").forEach(function(t){var n=t.indexOf(":");if(n>0){var r=t.slice(0,n),o=r.toLowerCase(),i=t.slice(n+1).trim();e.maybeSetNormalizedName(r,o),e.headers.has(o)?e.headers.get(o).push(i):e.headers.set(o,[i])}})}:function(){e.headers=new Map,Object.keys(t).forEach(function(n){var r=t[n],o=n.toLowerCase();"string"==typeof r&&(r=[r]),r.length>0&&(e.headers.set(o,r),e.maybeSetNormalizedName(n,o))})}:this.headers=new Map}return t.prototype.has=function(t){return this.init(),this.headers.has(t.toLowerCase())},t.prototype.get=function(t){this.init();var e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null},t.prototype.keys=function(){return this.init(),Array.from(this.normalizedNames.values())},t.prototype.getAll=function(t){return this.init(),this.headers.get(t.toLowerCase())||null},t.prototype.append=function(t,e){return this.clone({name:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({name:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({name:t,value:e,op:"d"})},t.prototype.maybeSetNormalizedName=function(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)},t.prototype.init=function(){var e=this;this.lazyInit&&(this.lazyInit instanceof t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(t){return e.applyUpdate(t)}),this.lazyUpdate=null))},t.prototype.copyFrom=function(t){var e=this;t.init(),Array.from(t.headers.keys()).forEach(function(n){e.headers.set(n,t.headers.get(n)),e.normalizedNames.set(n,t.normalizedNames.get(n))})},t.prototype.clone=function(e){var n=new t;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([e]),n},t.prototype.applyUpdate=function(t){var e=t.name.toLowerCase();switch(t.op){case"a":case"s":var n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);var r=("a"===t.op?this.headers.get(e):void 0)||[];r.push.apply(r,p(n)),this.headers.set(e,r);break;case"d":var o=t.value;if(o){var i=this.headers.get(e);if(!i)return;0===(i=i.filter(function(t){return-1===o.indexOf(t)})).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,i)}else this.headers.delete(e),this.normalizedNames.delete(e)}},t.prototype.forEach=function(t){var e=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return t(e.normalizedNames.get(n),e.headers.get(n))})},t}(),oy=function(){function t(){}return t.prototype.encodeKey=function(t){return iy(t)},t.prototype.encodeValue=function(t){return iy(t)},t.prototype.decodeKey=function(t){return decodeURIComponent(t)},t.prototype.decodeValue=function(t){return decodeURIComponent(t)},t}();function iy(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}var sy=function(){function t(t){var e,n,r,o=this;if(void 0===t&&(t={}),this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new oy,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=(e=t.fromString,n=this.encoder,r=new Map,e.length>0&&e.split("&").forEach(function(t){var e=t.indexOf("="),o=h(-1==e?[n.decodeKey(t),""]:[n.decodeKey(t.slice(0,e)),n.decodeValue(t.slice(e+1))],2),i=o[0],s=o[1],a=r.get(i)||[];a.push(s),r.set(i,a)}),r)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(function(e){var n=t.fromObject[e];o.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}return t.prototype.has=function(t){return this.init(),this.map.has(t)},t.prototype.get=function(t){this.init();var e=this.map.get(t);return e?e[0]:null},t.prototype.getAll=function(t){return this.init(),this.map.get(t)||null},t.prototype.keys=function(){return this.init(),Array.from(this.map.keys())},t.prototype.append=function(t,e){return this.clone({param:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({param:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({param:t,value:e,op:"d"})},t.prototype.toString=function(){var t=this;return this.init(),this.keys().map(function(e){var n=t.encoder.encodeKey(e);return t.map.get(e).map(function(e){return n+"="+t.encoder.encodeValue(e)}).join("&")}).join("&")},t.prototype.clone=function(e){var n=new t({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat([e]),n},t.prototype.init=function(){var t=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(e){return t.map.set(e,t.cloneFrom.map.get(e))}),this.updates.forEach(function(e){switch(e.op){case"a":case"s":var n=("a"===e.op?t.map.get(e.param):void 0)||[];n.push(e.value),t.map.set(e.param,n);break;case"d":if(void 0===e.value){t.map.delete(e.param);break}var r=t.map.get(e.param)||[],o=r.indexOf(e.value);-1!==o&&r.splice(o,1),r.length>0?t.map.set(e.param,r):t.map.delete(e.param)}}),this.cloneFrom=this.updates=null)},t}();function ay(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function ly(t){return"undefined"!=typeof Blob&&t instanceof Blob}function uy(t){return"undefined"!=typeof FormData&&t instanceof FormData}var cy=function(){function t(t,e,n,r){var o;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,o=r):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.params&&(this.params=o.params)),this.headers||(this.headers=new ry),this.params){var i=this.params.toString();if(0===i.length)this.urlWithParams=e;else{var s=e.indexOf("?");this.urlWithParams=e+(-1===s?"?":s=200&&this.status<300}}(),dy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=hy.ResponseHeader,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(py),fy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=hy.Response,n.body=void 0!==e.body?e.body:null,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(py),gy=function(t){function e(e){var n=t.call(this,e,0,"Unknown Error")||this;return n.name="HttpErrorResponse",n.ok=!1,n.message=n.status>=200&&n.status<300?"Http failure during parsing for "+(e.url||"(unknown url)"):"Http failure response for "+(e.url||"(unknown url)")+": "+e.status+" "+e.statusText,n.error=e.error||null,n}return o(e,t),e}(py);function vy(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}var yy=function(){function t(t){this.handler=t}return t.prototype.request=function(t,e,n){var r,o=this;if(void 0===n&&(n={}),t instanceof cy)r=t;else{var i;i=n.headers instanceof ry?n.headers:new ry(n.headers);var s=void 0;n.params&&(s=n.params instanceof sy?n.params:new sy({fromObject:n.params})),r=new cy(t,e,void 0!==n.body?n.body:null,{headers:i,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}var a=ol(r).pipe(ql(function(t){return o.handler.handle(t)}));if(t instanceof cy||"events"===n.observe)return a;var l=a.pipe(dl(function(t){return t instanceof fy}));switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return l.pipe(K(function(t){if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return l.pipe(K(function(t){return t.body}))}case"response":return l;default:throw new Error("Unreachable: unhandled observe type "+n.observe+"}")}},t.prototype.delete=function(t,e){return void 0===e&&(e={}),this.request("DELETE",t,e)},t.prototype.get=function(t,e){return void 0===e&&(e={}),this.request("GET",t,e)},t.prototype.head=function(t,e){return void 0===e&&(e={}),this.request("HEAD",t,e)},t.prototype.jsonp=function(t,e){return this.request("JSONP",t,{params:(new sy).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})},t.prototype.options=function(t,e){return void 0===e&&(e={}),this.request("OPTIONS",t,e)},t.prototype.patch=function(t,e,n){return void 0===n&&(n={}),this.request("PATCH",t,vy(n,e))},t.prototype.post=function(t,e,n){return void 0===n&&(n={}),this.request("POST",t,vy(n,e))},t.prototype.put=function(t,e,n){return void 0===n&&(n={}),this.request("PUT",t,vy(n,e))},t}(),my=function(){function t(t,e){this.next=t,this.interceptor=e}return t.prototype.handle=function(t){return this.interceptor.intercept(t,this.next)},t}(),_y=new Ut("HTTP_INTERCEPTORS"),by=function(){function t(){}return t.prototype.intercept=function(t,e){return e.handle(t)},t}(),wy=/^\)\]\}',?\n/,Cy=function(){return function(){}}(),xy=function(){function t(){}return t.prototype.build=function(){return new XMLHttpRequest},t}(),Sy=function(){function t(t){this.xhrFactory=t}return t.prototype.handle=function(t){var e=this;if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new R(function(n){var r=e.xhrFactory.build();if(r.open(t.method,t.urlWithParams),t.withCredentials&&(r.withCredentials=!0),t.headers.forEach(function(t,e){return r.setRequestHeader(t,e.join(","))}),t.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){var o=t.detectContentTypeHeader();null!==o&&r.setRequestHeader("Content-Type",o)}if(t.responseType){var i=t.responseType.toLowerCase();r.responseType="json"!==i?i:"text"}var s=t.serializeBody(),a=null,l=function(){if(null!==a)return a;var e=1223===r.status?204:r.status,n=r.statusText||"OK",o=new ry(r.getAllResponseHeaders()),i=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(r)||t.url;return a=new dy({headers:o,status:e,statusText:n,url:i})},u=function(){var e=l(),o=e.headers,i=e.status,s=e.statusText,a=e.url,u=null;204!==i&&(u=void 0===r.response?r.responseText:r.response),0===i&&(i=u?200:0);var c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof u){var h=u;u=u.replace(wy,"");try{u=""!==u?JSON.parse(u):null}catch(p){u=h,c&&(c=!1,u={error:p,text:u})}}c?(n.next(new fy({body:u,headers:o,status:i,statusText:s,url:a||void 0})),n.complete()):n.error(new gy({error:u,headers:o,status:i,statusText:s,url:a||void 0}))},c=function(t){var e=l().url,o=new gy({error:t,status:r.status||0,statusText:r.statusText||"Unknown Error",url:e||void 0});n.error(o)},h=!1,p=function(e){h||(n.next(l()),h=!0);var o={type:hy.DownloadProgress,loaded:e.loaded};e.lengthComputable&&(o.total=e.total),"text"===t.responseType&&r.responseText&&(o.partialText=r.responseText),n.next(o)},d=function(t){var e={type:hy.UploadProgress,loaded:t.loaded};t.lengthComputable&&(e.total=t.total),n.next(e)};return r.addEventListener("load",u),r.addEventListener("error",c),t.reportProgress&&(r.addEventListener("progress",p),null!==s&&r.upload&&r.upload.addEventListener("progress",d)),r.send(s),n.next({type:hy.Sent}),function(){r.removeEventListener("error",c),r.removeEventListener("load",u),t.reportProgress&&(r.removeEventListener("progress",p),null!==s&&r.upload&&r.upload.removeEventListener("progress",d)),r.abort()}})},t}(),Ey=new Ut("XSRF_COOKIE_NAME"),Oy=new Ut("XSRF_HEADER_NAME"),ky=function(){return function(){}}(),Py=function(){function t(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return t.prototype.getToken=function(){if("server"===this.platform)return null;var t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Da(t,this.cookieName),this.lastCookieString=t),this.lastToken},t}(),Ty=function(){function t(t,e){this.tokenService=t,this.headerName=e}return t.prototype.intercept=function(t,e){var n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);var r=this.tokenService.getToken();return null===r||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,r)})),e.handle(t)},t}(),Iy=function(){function t(t,e){this.backend=t,this.injector=e,this.chain=null}return t.prototype.handle=function(t){if(null===this.chain){var e=this.injector.get(_y,[]);this.chain=e.reduceRight(function(t,e){return new my(t,e)},this.backend)}return this.chain.handle(t)},t}(),Ry=function(){function t(){}var e;return e=t,t.disable=function(){return{ngModule:e,providers:[{provide:Ty,useClass:by}]}},t.withOptions=function(t){return void 0===t&&(t={}),{ngModule:e,providers:[t.cookieName?{provide:Ey,useValue:t.cookieName}:[],t.headerName?{provide:Oy,useValue:t.headerName}:[]]}},t}(),Ay=function(){return function(){}}(),My=function(){function t(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new il(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}return t.prototype.init=function(){return l(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.loadFromFile("api")];case 1:return t.sent(),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete(),[2]}})})},Object.defineProperty(t.prototype,"setup",{get:function(){return this._setup},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"app_name",{get:function(){return this._app_name},enumerable:!0,configurable:!0}),t.prototype.isSetup=function(t){return this._is_setup_observer.subscribe(t)},t.prototype.log=function(t,e,n,r,o){if(void 0===r&&(r="debug"),void 0===o&&(o=!1),window.debug||o){var i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i,[n])):console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i))}},t.prototype.get=function(t){var e=t.split("."),n=null;return"session"===e[0]?(e.shift(),n=va(e,this._settings.session)):"local"===e[0]?(e.shift(),n=va(e,this._settings.local)):n=va(e,this._settings.api)||va(e,this._settings.session)||va(e,this._settings.local),n},t.prototype.loadStore=function(t,e){if(e)for(var n=0;n5?[2,Promise.resolve()]:(this._promises[r="load|"+t+"|"+e]||(this._promises[r]=new Promise(function(s,a){o.http.get(e).subscribe(function(e){o._settings[t]=i({},o._settings[t]||{},e||{})},function(i){o.log("Settings",'Failed to load settings from "'+e+'"'),o._promises[r]=null,o.loadFromFile(t,e,++n).then(function(){return s()})},function(){return s()})})),[2,this._promises[r]])})})},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(yy))},token:t,providedIn:"root"}),t}(),Ny=["control","shift","alt","meta","os"],Dy=function(){function t(){var t=this;this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.last_down!==n&&(t.keydown_states[n]||(t.keydown_states[n]=new il(null),t.keydown_observers[n]=t.keydown_states[n].asObservable()),t.keydown_states[n].next(t.counter++),t.combo_end.indexOf(n)>=0&&e.preventDefault(),t.last_down=n)}),window.addEventListener("keyup",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.keydown_states[n].next(null),t.last_down===n&&(t.last_down=null)})}return t.prototype.listen=function(t,e){var n=this,r=(t=t instanceof Array?t:t.split("+")).map(function(t){return n.mapKey(t.toLowerCase())});if(r.length>0&&this.validCombination(r)){this.registered_combos.push(r);var o=r[r.length-1];return this.keydown_states[o]||(this.keydown_states[o]=new il(null),this.keydown_observers[o]=this.keydown_states[o].asObservable()),this.updateCombinationEndList(),this.keydown_observers[o].subscribe(function(t){if(t){var o=[];if(r.length>1){for(var i=0,s=r;io[l+1])return}e()}})}return null},t.prototype.mapKey=function(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t},t.prototype.updateCombinationEndList=function(){for(var t,e=0,n=this.registered_combos;e0},t.ngInjectableDef=Ot({factory:function(){return new t},token:t,providedIn:"root"}),t}(),jy=[],Vy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=ga(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.repositories=function(){var t=this,e="repositories";return this._promises[e]||(this._promises[e]=new Promise(function(n,r){var o;t.http.get(t.api_route+"/repositories").subscribe(function(t){return o=t},function(n){r(n),delete t._promises[e]},function(){n(o),t.timeout(e,function(){return delete t._promises[e]},1e3)})})),this._promises[e]},e.prototype.commits=function(t){var e=this,n="commits|"+ga(t);return this._promises[n]||(this._promises[n]=new Promise(function(t,r){var o;e.http.get(e.api_route+"/repositories_commits").subscribe(function(t){return o=t},function(t){r(t),delete e._promises[n]},function(){t(o),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.versions=function(t){var e=this,n="versions|"+t;return this._promises[n]||(this._promises[n]=new Promise(function(r,o){var i,s=e.api_route+"/"+encodeURIComponent(t);e.http.get(s).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[n]},function(){r(i),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.driverCommits=function(t,e){var n=this,r=ga(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.build=function(t){var e=this,n=ga(t),r="build|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){e.http.post(""+e.api_route,n).subscribe(function(t){return null},function(t){o(t),delete e._promises[r]},function(){t(),delete e._promises[r]})})),this._promises[r]},e.prototype.clean=function(t,e){var n=this,r=ga(e),o="clean|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(t,e){n.http.delete(n.api_route+(r?"?"+r:"")).subscribe(function(t){return null},function(t){e(t),delete n._promises[o]},function(){t(),delete n._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/build":"/build"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(yy))},token:e,providedIn:"root"}),e}(Jv),Ly=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=ga(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.specCommits=function(t,e){var n=this,r=ga(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.run=function(t){var e=this;for(var n in t)null==t[n]&&delete t[n];var r=ga(t),o="build|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(n,i){var s;e.http.post(e.api_route+(r?"?"+r:""),t,{responseType:"text"}).subscribe(function(t){return s=t},function(t){i(t),delete e._promises[o]},function(){n(s),delete e._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/test":"/test"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(yy))},token:e,providedIn:"root"}),e}(Jv),zy=new R(P),Uy=function(){function t(t,e){this.delay=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new Fy(t,this.delay,this.scheduler))},t}(),Fy=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.delay=n,o.scheduler=r,o.queue=[],o.active=!1,o.errored=!1,o}return o(e,t),e.dispatch=function(t){for(var e=t.source,n=e.queue,r=t.scheduler,o=t.destination;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(o);if(n.length>0){var i=Math.max(0,n[0].time-r.now());this.schedule(t,i)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.destination.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new Hy(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(jd.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.scheduleNotification(jd.createComplete()),this.unsubscribe()},e}(E),Hy=function(){return function(t,e){this.time=t,this.notification=e}}(),By="Service workers are disabled or not supported by this browser",Wy=function(){function t(t){if(this.serviceWorker=t,t){var e=ad(t,"controllerchange").pipe(K(function(){return t.controller})),n=Hl(hl(function(){return ol(t.controller)}),e);this.worker=n.pipe(dl(function(t){return!!t})),this.registration=this.worker.pipe(zl(function(){return t.getRegistration()}));var r=ad(t,"message").pipe(K(function(t){return t.data})).pipe(dl(function(t){return t&&t.type})).pipe(gt(new V));r.connect(),this.events=r}else this.worker=this.events=this.registration=(o=By,hl(function(){return Md(new Error(o))}));var o}return t.prototype.postMessage=function(t,e){return this.worker.pipe(Ml(1),wl(function(n){n.postMessage(i({action:t},e))})).toPromise().then(function(){})},t.prototype.postMessageWithStatus=function(t,e,n){var r=this.waitForStatus(n),o=this.postMessage(t,e);return Promise.all([r,o]).then(function(){})},t.prototype.generateNonce=function(){return Math.round(1e7*Math.random())},t.prototype.eventsOfType=function(t){return this.events.pipe(dl(function(e){return e.type===t}))},t.prototype.nextEventOfType=function(t){return this.eventsOfType(t).pipe(Ml(1))},t.prototype.waitForStatus=function(t){return this.eventsOfType("STATUS").pipe(dl(function(e){return e.nonce===t}),Ml(1),K(function(t){if(!t.status)throw new Error(t.error)})).toPromise()},Object.defineProperty(t.prototype,"isEnabled",{get:function(){return!!this.serviceWorker},enumerable:!0,configurable:!0}),t}(),Gy=function(){function t(t){if(this.sw=t,this.subscriptionChanges=new V,!t.isEnabled)return this.messages=zy,this.notificationClicks=zy,void(this.subscription=zy);this.messages=this.sw.eventsOfType("PUSH").pipe(K(function(t){return t.data})),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(K(function(t){return t.data})),this.pushManager=this.sw.registration.pipe(K(function(t){return t.pushManager}));var e=this.pushManager.pipe(zl(function(t){return t.getSubscription()}));this.subscription=lt(e,this.subscriptionChanges)}return Object.defineProperty(t.prototype,"isEnabled",{get:function(){return this.sw.isEnabled},enumerable:!0,configurable:!0}),t.prototype.requestSubscription=function(t){var e=this;if(!this.sw.isEnabled)return Promise.reject(new Error(By));for(var n={userVisibleOnly:!0},r=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),o=new Uint8Array(new ArrayBuffer(r.length)),i=0;i
'+e+"
",n,r,t)},e.prototype.notifySuccess=function(t,e,n){this.notify("success",t,e,n)},e.prototype.notifyError=function(t,e,n){this.notify("error",t,e,n)},e.prototype.notifyInfo=function(t,e,n){this.notify("info",t,e,n)},e.prototype.log=function(t,e,n,r,o){void 0===r&&(r="debug"),void 0===o&&(o=!1),this._settings.log(t,e,n,r,o)},e.prototype.navigate=function(t,e){var n=t instanceof Array?t.slice():[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})},e.prototype.navigateBack=function(){if(this._route_trail&&this._route_trail.length>0){var t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])},e.prototype.get=function(t){return this._subjects[t]&&this._subjects[t]instanceof il?this._subjects[t].getValue():null},e.prototype.listen=function(t,e){return this._observers[t]?this._observers[t].subscribe(e):null},e.prototype.set=function(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new il(e),this._observers[t]=this._subjects[t].asObservable())},e.prototype.init=function(){var t=this;if(!this._settings.setup)return this.timeout("init",function(){return t.init()});this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(function(e){t.log("CACHE","Update available: current version is "+e.current.hash+" available version is "+e.available.hash),t.notifyInfo("Newer version of the app is available","Refresh",function(){return location.reload()})}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],function(){t.navigate("bootstrap",{clear:!0})})},e.prototype.registerOverlays=function(){if(jy)for(var t=0,e=jy;tt.driver.localeCompare(n.id)?e:n},null),t.updateSpecCommits()),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.updateSpecCommits=function(){var t=this;this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(function(e){t.spec_commit_list=(e||[]).map(function(t){return{id:t.commit,name:t.commit,author:t.author,date:ya(t.date).format("DD MMM YYYY h:mm A")}}),t.spec_commit_list.unshift({id:null,name:"Latest Commit"}),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.test=function(){var t=this;if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";var e=function(e){e instanceof Object&&(e=e.error),t.test_results=t.styleResults(e||"");var n=t.service.get("TEST.results")||{},r=e.indexOf("exited with 0")>=0;n[t.repo+"|"+t.driver]=r?"passed":"failed",t.service.set("TEST.results",n),t.testing=!1,t.timeout("scroll",function(){return t.body.nativeElement.scrollTo(0,t.body.nativeElement.scrollHeight)},10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(e,e)}},e.prototype.styleResults=function(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')},e}(ty),om=or({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function im(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Spec Commit:"])),(t()(),Gi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.spec_commit=n)&&r),r},Pv,Cv)),vo(5,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(7,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(9,16384,null,0,Mg,[[4,Ag]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,no(e,9).ngClassUntouched,no(e,9).ngClassTouched,no(e,9).ngClassPristine,no(e,9).ngClassDirty,no(e,9).ngClassValid,no(e,9).ngClassInvalid,no(e,9).ngClassPending)})}function sm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),rs(1,2)],null,function(t,e){var n=e.component,r=er(e,0,0,t(e,1,0,no(e.parent.parent,0),n.test_results,"html"));t(e,0,0,r)})}function am(t){return as(0,[(t()(),Gi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Repository:"])),(t()(),Gi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),os(6,null,["",""])),(t()(),Gi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Driver:"])),(t()(),Gi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),os(11,null,["",""])),(t()(),Gi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Commit:"])),(t()(),Gi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.commit=n)&&r),r},Pv,Cv)),vo(17,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(19,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(21,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Spec:"])),(t()(),Gi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.spec=n)&&r),"ngModelChange"===e&&(r=!1!==o.updateSpecCommits()&&r),r},Pv,Cv)),vo(27,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(29,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(31,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Wi(16777216,null,null,1,null,im)),vo(33,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Gi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Gi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Gi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.force=n)&&r),r},Hv,Uv)),vo(38,49152,null,0,Iv,[],{klass:[0,"klass"],label:[1,"label"]},null),mo(1024,null,Eg,function(t){return[t]},[Iv]),vo(40,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(42,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Gi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.debug=n)&&r),r},Hv,Uv)),vo(45,49152,null,0,Iv,[],{klass:[0,"klass"],label:[1,"label"]},null),mo(1024,null,Eg,function(t){return[t]},[Iv]),vo(47,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(49,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Gi(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Gi(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.test()&&r),r},Zv,qv)),mo(5120,null,Eg,function(t){return[t]},[Wv]),vo(55,4767744,null,0,Wv,[pn,yn],null,{tapped:"tapped"}),vo(56,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),os(-1,0,["Run!"])),(t()(),Gi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),os(59,null,[" "," "])),(t()(),Wi(16777216,null,null,1,null,sm)),vo(61,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,63).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,63).handleTouch(n)&&r),"tapped"===e&&(r=0!=(o.show=!o.show)&&r),r},zv,Lv)),vo(63,4440064,null,0,Mv,[pn,yn],{klass:[0,"klass"],center:[1,"center"]},null),vo(64,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,no(e,21).ngClassUntouched,no(e,21).ngClassTouched,no(e,21).ngClassPristine,no(e,21).ngClassDirty,no(e,21).ngClassValid,no(e,21).ngClassInvalid,no(e,21).ngClassPending),t(e,26,0,no(e,31).ngClassUntouched,no(e,31).ngClassTouched,no(e,31).ngClassPristine,no(e,31).ngClassDirty,no(e,31).ngClassValid,no(e,31).ngClassInvalid,no(e,31).ngClassPending),t(e,37,0,no(e,42).ngClassUntouched,no(e,42).ngClassTouched,no(e,42).ngClassPristine,no(e,42).ngClassDirty,no(e,42).ngClassValid,no(e,42).ngClassInvalid,no(e,42).ngClassPending),t(e,44,0,no(e,49).ngClassUntouched,no(e,49).ngClassTouched,no(e,49).ngClassPristine,no(e,49).ngClassDirty,no(e,49).ngClassValid,no(e,49).ngClassInvalid,no(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_down":"keyboard_arrow_up")})}function lm(t){return as(0,[(t()(),Gi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["arrow_back"])),(t()(),Gi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(-1,null,["Select a driver from the sidebar"]))],null,null)}function um(t){return as(0,[yo(0,$v,[Zu]),Qi(671088640,1,{body:0}),(t()(),Gi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,am)),vo(4,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Wi(0,[["select",2]],null,0,null,lm))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,no(e,5))},null)}function cm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"app-workspace",[],null,null,null,um,om)),vo(1,245760,null,0,rm,[nm,gh],null,null)],function(t,e){t(e,1,0)},null)}var hm=Gr("app-workspace",rm,cm,{},{},[]),pm=function(){function t(){this.menu=!0,this.menuChange=new No}return t.prototype.toggleMenu=function(){this.menu=!this.menu,this.menuChange.emit(this.menu)},t}(),dm=or({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function fm(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,2).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.toggleMenu()&&r),r},zv,Lv)),vo(2,4440064,null,0,Mv,[pn,yn],{klass:[0,"klass"]},null),vo(3,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["menu"])),(t()(),Gi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Gi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Gi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),os(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}var gm=function(){function t(){}return t.prototype.transform=function(t){if(t.indexOf("/")>=0){var e=t.split("/");return e.splice(0,1),'
'+e.map(function(t){return'
'+t+"
"}).join('
keyboard_arrow_right
')+"
"}return t},t}(),vm=function(t){function e(e){var n=t.call(this)||this;return n.service=e,n.repository_list=[],n.status={},n}return o(e,t),e.prototype.ngOnInit=function(){var t=this;this.service.set("TEST.repository",""),this.service.set("TEST.filter",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",function(){return t.updateRepositoryList()},6e4),this.subscription("test_results",this.service.listen("TEST.filter",function(e){console.log("Filter:",e),t.search_str=e||"",t.filter(t.search_str)})),this.subscription("test_results",this.service.listen("TEST.results",function(e){t.status=e||{}})),this.subscription("repository",this.service.listen("TEST.repository",function(e){e&&(t.repo={id:e,name:e},t.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",function(e){t.driver=e}))},e.prototype.setRepository=function(t){this.service.navigate([t],{filter:this.search_str}),this.search_str="",this.updateDriverList()},e.prototype.setDriver=function(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t],{filter:this.search_str})},e.prototype.filter=function(t){this.filtered_list=(this.driver_list||[]).filter(function(e){return e.toLowerCase().indexOf(t.toLowerCase())>=0})},e.prototype.updateDriverList=function(){var t=this;this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(function(e){t.driver_list=e||[],t.filter(t.search_str),t.loading=!1},function(e){return t.loading=!1})},e.prototype.updateRepositoryList=function(){var t=this;this.service.Build.repositories().then(function(e){t.repository_list=(e||[]).map(function(t){return{id:t,name:t}}),t.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),t.updateDriverList()})},e}(ty),ym=or({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function mm(t){return as(0,[(t()(),Gi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.setDriver(t.context.$implicit)&&r),r},null,null)),vo(1,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Gi(3,0,null,null,1,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null)),rs(4,1)],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]);var r=er(e,3,0,t(e,4,0,no(e.parent,0),e.context.$implicit));t(e,3,0,r)})}function _m(t){return as(0,[(t()(),Gi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function bm(t){return as(0,[yo(0,gm,[]),(t()(),Gi(1,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.repo=n)&&r),"ngModelChange"===e&&(r=!1!==o.setRepository(n.id)&&r),r},Pv,Cv)),vo(4,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(6,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(8,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(9,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Gi(10,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(11,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["search"])),(t()(),Gi(13,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==no(t,14)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==no(t,14).onTouched()&&r),"compositionstart"===e&&(r=!1!==no(t,14)._compositionStart()&&r),"compositionend"===e&&(r=!1!==no(t,14)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search_str=n)&&r),"ngModelChange"===e&&(r=!1!==o.filter(n)&&r),r},null,null)),vo(14,16384,null,0,Pg,[yn,pn,[2,kg]],null,null),mo(1024,null,Eg,function(t){return[t]},[Pg]),vo(16,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(18,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(19,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,mm)),vo(21,278528,null,0,La,[zn,Vn,In],{ngForOf:[0,"ngForOf"]},null),(t()(),Wi(16777216,null,null,1,null,_m)),vo(23,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,4,0,"simple",n.repository_list||Rr,"ACA Drivers"),t(e,6,0,n.repo),t(e,16,0,n.search_str),t(e,21,0,n.filtered_list),t(e,23,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,3,0,no(e,8).ngClassUntouched,no(e,8).ngClassTouched,no(e,8).ngClassPristine,no(e,8).ngClassDirty,no(e,8).ngClassValid,no(e,8).ngClassInvalid,no(e,8).ngClassPending),t(e,13,0,no(e,18).ngClassUntouched,no(e,18).ngClassTouched,no(e,18).ngClassPristine,no(e,18).ngClassDirty,no(e,18).ngClassValid,no(e,18).ngClassInvalid,no(e,18).ngClassPending)})}var wm=or({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:20em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}.formatted-driver-name{display:flex;align-items:center}.formatted-driver-name .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:1.5em}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:28em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Cm(t){return as(0,[(t()(),Gi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var r=!0;return"menuChange"===e&&(r=!1!==(t.component.show_menu=n)&&r),r},fm,dm)),vo(3,49152,null,0,pm,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Gi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Gi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(6,0,null,null,1,"sidebar",[],null,null,null,bm,ym)),vo(7,245760,null,0,vm,[nm],null,null),(t()(),Gi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Gi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),vo(10,212992,null,0,Pp,[kp,zn,sn,[8,null],An],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function xm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"app-root",[],null,null,null,Cm,wm)),vo(1,49152,null,0,_a,[],null,null)],null,null)}var Sm=Gr("app-root",_a,xm,{},{},[]),Em=function(){return function(){}}(),Om=function(){return function(){}}(),km=pa(ma,[_a],function(t){return function(t){for(var e={},n=[],r=!1,o=0;o Date: Wed, 12 Jun 2019 17:24:55 +1000 Subject: [PATCH 0087/1365] [Task Runner] Fix touch event errors on Firefox --- www/index.html | 2 +- ...3c4197.js => main-es2015.712beae41ae2d1a95ae0.js} | 2 +- ...1f80edc18.js => main-es5.72cbbae2b0ff73724475.js} | 2 +- www/ngsw.json | 12 ++++++------ 4 files changed, 9 insertions(+), 9 deletions(-) rename www/{main-es2015.144e194cfd63f43c4197.js => main-es2015.712beae41ae2d1a95ae0.js} (82%) rename www/{main-es5.37b7e9a21a91f80edc18.js => main-es5.72cbbae2b0ff73724475.js} (83%) diff --git a/www/index.html b/www/index.html index 9a5653b9da6..1ebbcbed257 100644 --- a/www/index.html +++ b/www/index.html @@ -31,5 +31,5 @@
Javascript is required for this site to run.
- + diff --git a/www/main-es2015.144e194cfd63f43c4197.js b/www/main-es2015.712beae41ae2d1a95ae0.js similarity index 82% rename from www/main-es2015.144e194cfd63f43c4197.js rename to www/main-es2015.712beae41ae2d1a95ae0.js index 4d80f89b304..d7dce031ec3 100644 --- a/www/main-es2015.144e194cfd63f43c4197.js +++ b/www/main-es2015.712beae41ae2d1a95ae0.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",s="hour",i="day",r="week",o="month",l="quarter",a="year",c=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,u=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var s=String(t);return!s||s.length>=e?t:""+Array(e+1-s.length).join(n)+t},d={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),s=Math.floor(n/60),i=n%60;return(e<=0?"+":"-")+h(s,2,"0")+":"+h(i,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,o),i=e-s<0,r=t.clone().add(n+(i?-1:1),o);return Number(-(n+(e-s)/(i?s-r:r-s))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(c){return{M:o,y:a,w:r,d:i,h:s,m:n,s:e,ms:t,Q:l}[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},p={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=p;var m=function(t){return t instanceof w},_=function(t,e,n){var s;if(!t)return null;if("string"==typeof t)g[t]&&(s=t),e&&(g[t]=e,s=t);else{var i=t.name;g[i]=t,s=i}return n||(f=s),s},v=function(t,e,n){if(m(t))return t.clone();var s=e?"string"==typeof e?{format:e,pl:n}:e:{};return s.date=t,new w(s)},y=d;y.l=_,y.i=m,y.w=function(t,e){return v(t,{locale:e.$L,utc:e.$u})};var w=function(){function h(t){this.$L=this.$L||_(t.locale,null,!0)||f,this.parse(t)}var d=h.prototype;return d.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(y.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var s=e.match(c);if(s)return n?new Date(Date.UTC(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)):new Date(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)}return new Date(e)}(t),this.init()},d.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},d.$utils=function(){return y},d.isValid=function(){return!("Invalid Date"===this.$d.toString())},d.isSame=function(t,e){var n=v(t);return this.startOf(e)<=n&&n<=this.endOf(e)},d.isAfter=function(t,e){return v(t){throw t})}const l={closed:!0,next(t){},error(t){if(r.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},a=Array.isArray||(t=>t&&"number"==typeof t.length);function c(t){return null!==t&&"object"==typeof t}function u(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}u.prototype=Object.create(Error.prototype);const h=u,d=(()=>{class t{constructor(t){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let t,e=!1;if(this.closed)return;let{_parent:n,_parents:i,_unsubscribe:r,_subscriptions:o}=this;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;let l=-1,u=i?i.length:0;for(;n;)n.remove(this),n=++lt.concat(e instanceof h?e.errors:e),[])}const f="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class g extends d{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof g?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[f](){return this}static create(t,e,n){const s=new g(t,e,n);return s.syncErrorThrowable=!1,s}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parent:t,_parents:e}=this;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=t,this._parents=e,this}}class m extends g{constructor(t,e,n,i){let r;super(),this._parentSubscriber=t;let o=this;s(e)?r=e:e&&(r=e.next,n=e.error,i=e.complete,e!==l&&(s((o=Object.create(e)).unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=r,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;r.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=r;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):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);r.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),r.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!r.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(s){return r.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=s,t.syncErrorThrown=!0,!0):(o(s),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const _="function"==typeof Symbol&&Symbol.observable||"@@observable";function v(){}function y(...t){return w(t)}function w(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:v}const b=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:s}=this,i=function(t,e,n){if(t){if(t instanceof g)return t;if(t[f])return t[f]()}return t||e||n?new g(t,e,n):new g(l)}(t,e,n);if(i.add(s?s.call(i,this.source):this.source||r.useDeprecatedSynchronousErrorHandling&&!i.syncErrorThrowable?this._subscribe(i):this._trySubscribe(i)),r.useDeprecatedSynchronousErrorHandling&&i.syncErrorThrowable&&(i.syncErrorThrowable=!1,i.syncErrorThrown))throw i.syncErrorValue;return i}_trySubscribe(t){try{return this._subscribe(t)}catch(e){r.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:s}=t;if(e||s)return!1;t=n&&n instanceof g?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=C(e))((e,n)=>{let s;s=this.subscribe(e=>{try{t(e)}catch(i){n(i),s&&s.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[_](){return this}pipe(...t){return 0===t.length?this:w(t)(this)}toPromise(t){return new(t=C(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=(e=>new t(e)),t})();function C(t){if(t||(t=r.Promise||Promise),!t)throw new Error("no Promise impl found");return t}function x(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}x.prototype=Object.create(Error.prototype);const S=x;class E extends d{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class k extends g{constructor(t){super(t),this.destination=t}}const T=(()=>{class t extends b{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new k(this)}lift(t){const e=new O(this,this);return e.operator=t,e}next(t){if(this.closed)throw new S;if(!this.isStopped){const{observers:e}=this,n=e.length,s=e.slice();for(let i=0;inew O(t,e)),t})();class O extends T{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):d.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}class R extends g{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const P=t=>e=>{for(let n=0,s=t.length;ne=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,o),e);function M(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}const N=M(),D=t=>e=>{const n=t[N]();for(;;){const t=n.next();if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e},V=t=>e=>{const n=t[_]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)},$=t=>t&&"number"==typeof t.length&&"function"!=typeof t;function L(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const j=t=>{if(t instanceof b)return e=>t._isScalar?(e.next(t.value),void e.complete()):t.subscribe(e);if(t&&"function"==typeof t[_])return V(t);if($(t))return P(t);if(L(t))return A(t);if(t&&"function"==typeof t[N])return D(t);{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};function U(t,e,n,s,i=new R(t,n,s)){if(!i.closed)return j(e)(i)}class z extends g{notifyNext(t,e,n,s,i){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(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 H(t,e))}}class H{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new B(t,this.project,this.thisArg))}}class B extends g{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function G(t,e){return new b(e?n=>{const s=new d;let i=0;return s.add(e.schedule(function(){i!==t.length?(n.next(t[i++]),n.closed||s.add(this.schedule())):n.complete()})),s}:P(t))}function W(t,e){if(!e)return t instanceof b?t:new b(j(t));if(null!=t){if(function(t){return t&&"function"==typeof t[_]}(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>{const i=t[_]();s.add(i.subscribe({next(t){s.add(e.schedule(()=>n.next(t)))},error(t){s.add(e.schedule(()=>n.error(t)))},complete(){s.add(e.schedule(()=>n.complete()))}}))})),s}:V(t))}(t,e);if(L(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>t.then(t=>{s.add(e.schedule(()=>{n.next(t),s.add(e.schedule(()=>n.complete()))}))},t=>{s.add(e.schedule(()=>n.error(t)))}))),s}:A(t))}(t,e);if($(t))return G(t,e);if(function(t){return t&&"function"==typeof t[N]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new b(e?n=>{const s=new d;let i;return s.add(()=>{i&&"function"==typeof i.return&&i.return()}),s.add(e.schedule(()=>{i=t[N](),s.add(e.schedule(function(){if(n.closed)return;let t,e;try{const r=i.next();t=r.value,e=r.done}catch(s){return void n.error(s)}e?n.complete():(n.next(t),this.schedule())}))})),s}:D(t))}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}function Y(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?s=>s.pipe(Y((n,s)=>W(t(n,s)).pipe(F((t,i)=>e(n,t,s,i))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new Z(t,this.project,this.concurrent))}}class Z extends z{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Q(t){return t}function X(t=Number.POSITIVE_INFINITY){return Y(Q,t)}function K(...t){let e=Number.POSITIVE_INFINITY,n=null,s=t[t.length-1];return I(s)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof s&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof b?t[0]:X(e)(G(t,n))}function J(){return function(t){return t.lift(new tt(t))}}class tt{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const s=new et(t,n),i=e.subscribe(s);return s.closed||(s.connection=n.connect()),i}}class et extends g{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,s=t._connection;this.connection=null,!s||n&&s!==n||s.unsubscribe()}}const nt=class extends b{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new d).add(this.source.subscribe(new it(this.getSubject(),this))),t.closed?(this._connection=null,t=d.EMPTY):this._connection=t),t}refCount(){return J()(this)}}.prototype,st={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:nt._subscribe},_isComplete:{value:nt._isComplete,writable:!0},getSubject:{value:nt.getSubject},connect:{value:nt.connect},refCount:{value:nt.refCount}};class it extends k{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function rt(t,e){return function(n){let s;if(s="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new ot(s,e));const i=Object.create(n,st);return i.source=n,i.subjectFactory=s,i}}class ot{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,s=this.subjectFactory(),i=n(s).subscribe(t);return i.add(e.subscribe(s)),i}}function lt(){return new T}const at="__parameters__";function ct(t,e,n){const s=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function i(...t){if(this instanceof i)return s.apply(this,t),this;const e=new i(...t);return n.annotation=e,n;function n(t,n,s){const i=t.hasOwnProperty(at)?t[at]:Object.defineProperty(t,at,{value:[]})[at];for(;i.length<=s;)i.push(null);return(i[s]=i[s]||[]).push(e),t}}return n&&(i.prototype=Object.create(n.prototype)),i.prototype.ngMetadataName=t,i.annotationCls=i,i}const ut=ct("Inject",t=>({token:t})),ht=ct("Optional"),dt=ct("Self"),pt=ct("SkipSelf");var ft=function(t){return 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",t}({});function gt(t){for(let e in t)if(t[e]===gt)return e;throw Error("Could not find renamed property on target object.")}function mt(t){return{providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function _t(t){return t&&t.hasOwnProperty(vt)?t[vt]:null}const vt=gt({ngInjectableDef:gt});function yt(t){if("string"==typeof t)return t;if(t instanceof Array)return"["+t.map(yt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}const wt=gt({__forward_ref__:gt});function bt(t){return t.__forward_ref__=bt,t.toString=function(){return yt(this())},t}function Ct(t){const e=t;return"function"==typeof e&&e.hasOwnProperty(wt)&&e.__forward_ref__===bt?e():t}function xt(){const t="undefined"!=typeof globalThis&&globalThis,e="undefined"!=typeof window&&window,n="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,s="undefined"!=typeof global&&global;return t||s||e||n}const St=xt();let Et,kt=void 0;function Tt(t){const e=kt;return kt=t,e}function Ot(t,e=ft.Default){return(Et||function(t,e=ft.Default){if(void 0===kt)throw new Error("inject() must be called from an injection context");return null===kt?function(t,e,n){const s=_t(t);if(s&&"root"==s.providedIn)return void 0===s.value?s.value=s.factory():s.value;if(n&ft.Optional)return null;throw new Error(`Injector: NOT_FOUND [${yt(t)}]`)}(t,0,e):kt.get(t,e&ft.Optional?null:void 0,e)})(t,e)}const It=Ot;class Rt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ngInjectableDef=mt({providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Pt="__source",At=new Object,Mt=new Rt("INJECTOR",-1);class Nt{get(t,e=At){if(e===At){const e=new Error(`NullInjectorError: No provider for ${yt(t)}!`);throw e.name="NullInjectorError",e}return e}}const Dt=(()=>{class t{static create(t,e){return Array.isArray(t)?new Gt(t,e):new Gt(t.providers,t.parent,t.name||null)}}return t.THROW_IF_NOT_FOUND=At,t.NULL=new Nt,t.ngInjectableDef=mt({providedIn:"any",factory:()=>Ot(Mt)}),t.__NG_ELEMENT_ID__=-1,t})(),Vt=function(t){return t},$t=[],Lt=Vt,jt=function(){return Array.prototype.slice.call(arguments)},Ut=gt({provide:String,useValue:gt}),zt="ngTokenPath",Ft="ngTempTokenPath",Ht=/\n/gm,Bt="\u0275";class Gt{constructor(t,e=Dt.NULL,n=null){this.parent=e,this.source=n;const s=this._records=new Map;s.set(Dt,{token:Dt,fn:Vt,deps:$t,value:this,useNew:!1}),s.set(Mt,{token:Mt,fn:Vt,deps:$t,value:this,useNew:!1}),function t(e,n){if(n)if((n=Ct(n))instanceof Array)for(let s=0;st.push(yt(n))),`StaticInjector[${t.join(", ")}]`}}function Wt(t){return qt("Cannot mix multi providers and regular providers",t)}function Yt(t,e,n,s=null){t=t&&"\n"===t.charAt(0)&&t.charAt(1)==Bt?t.substr(2):t;let i=yt(e);if(e instanceof Array)i=e.map(yt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let s=e[n];t.push(n+":"+("string"==typeof s?JSON.stringify(s):yt(s)))}i=`{${t.join(", ")}}`}return`${n}${s?"("+s+")":""}[${i}]: ${t.replace(Ht,"\n ")}`}function qt(t,e){return new Error(Yt(t,e,"StaticInjectorError"))}const Zt="ngDebugContext",Qt="ngOriginalError",Xt="ngErrorLogger",Kt=new Rt("AnalyzeForEntryComponents"),Jt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}(),te=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(St))();function ee(t){return t[Zt]}function ne(t){return t[Qt]}function se(t,...e){t.error(...e)}class ie{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),s=function(t){return t[Xt]||se}(t);s(this._console,"ERROR",t),e&&s(this._console,"ORIGINAL ERROR",e),n&&s(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?ee(t)?ee(t):this._findContext(ne(t)):null}_findOriginalError(t){let e=ne(t);for(;e&&ne(e);)e=ne(e);return e}}let re=!0,oe=!1;function le(){return oe=!0,re}class ae{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),this.inertBodyElement=this.inertDocument.createElement("body"),t.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t=""+t+"";try{t=encodeURI(t)}catch(s){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t=""+t+"";try{const n=(new window.DOMParser).parseFromString(t,"text/html").body;return n.removeChild(n.firstChild),n}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(t){const e=t.attributes;for(let s=e.length-1;0he(t.trim())).join(", ")),this.buf.push(" ",e,'="',ke(o),'"')}var s;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();ve.hasOwnProperty(e)&&!fe.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(ke(t))}checkClobberedElement(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}}const Se=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ee=/([^\#-~ |!])/g;function ke(t){return t.replace(/&/g,"&").replace(Se,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ee,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let Te;function Oe(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const Ie=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}();class Re{}const Pe=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ae=/^url\(([^)]+)\)$/,Me=/([A-Z])/g;function Ne(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function De(t){return!!t&&"function"==typeof t.then}function Ve(t){return!!t&&"function"==typeof t.subscribe}let $e=null;function Le(){if(!$e){const t=St.Symbol;if(t&&t.iterator)$e=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e{class t{}return t.NULL=new Qe,t})();class Ke{constructor(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(let s=0;s{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=(()=>rn(t)),t})(),rn=nn;class on{}class ln{}const an=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}(),cn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>un()),t})(),un=nn;class hn{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const dn=new hn("8.0.0");class pn{constructor(){}supports(t){return Fe(t)}create(t){return new gn(t)}}const fn=(t,e)=>e;class gn{constructor(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||fn}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,s=0,i=null;for(;e||n;){const r=!n||e&&e.currentIndex{s=this._trackByFn(e,t),null!==i&&je(i.trackById,s)?(r&&(i=this._verifyReinsertion(i,t,s,e)),je(i.item,t)||this._addIdentityChange(i,t)):(i=this._mismatch(i,t,s,e),r=!0),i=i._next,e++}),this.length=e;return this._truncate(i),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;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}}_mismatch(t,e,n,s){let i;return null===t?i=this._itTail:(i=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,s))?(je(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,i,s)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(je(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,i,s)):t=this._addAfter(new mn(e,n),i,s),t}_verifyReinsertion(t,e,n,s){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==i?t=this._reinsertAfter(i,t._prev,s):t.currentIndex!=s&&(t.currentIndex=s,this._addToMoves(t,s)),t}_truncate(t){for(;null!==t;){const 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)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const s=t._prevRemoved,i=t._nextRemoved;return null===s?this._removalsHead=i:s._nextRemoved=i,null===i?this._removalsTail=s:i._prevRemoved=s,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const s=null===e?this._itHead:e._next;return t._next=s,t._prev=e,null===s?this._itTail=t:s._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new vn),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e?t:(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t,t)}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new vn),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}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class mn{constructor(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}}class _n{constructor(){this._head=null,this._tail=null}add(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)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&je(n.trackById,t))return n;return null}remove(t){const 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}}class vn{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _n,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function yn(t,e,n){const s=t.previousIndex;if(null===s)return s;let i=0;return n&&s{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const s=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,s)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const 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}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const s=n._prev,i=n._next;return s&&(s._next=i),i&&(i._prev=s),n._next=null,n._prev=null,n}const n=new Cn(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;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}}_maybeAddToChanges(t,e){je(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Cn{constructor(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}}const xn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new pn])}),t})(),Sn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new wn])}),t})(),En=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>kn()),t})(),kn=(...t)=>{},Tn=[new wn],On=new xn([new pn]),In=new Sn(Tn),Rn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Pn(t,sn)),t})(),Pn=nn,An=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Mn(t,sn)),t})(),Mn=nn;function Nn(t,e,n,s){let i=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${e}'. Current value: '${n}'.`;return s&&(i+=" 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){const n=new Error(t);return Dn(n,e),n}(i,t)}function Dn(t,e){t[Zt]=e,t[Xt]=e.logError.bind(e)}function Vn(t){return new Error(`ViewDestroyedError: Attempt to use a destroyed view: ${t}`)}function $n(t,e,n){const s=t.state,i=1792&s;return i===e?(t.state=-1793&s|n,t.initIndex=-1,!0):i===n}function Ln(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function jn(t,e){return t.nodes[e]}function Un(t,e){return t.nodes[e]}function zn(t,e){return t.nodes[e]}function Fn(t,e){return t.nodes[e]}function Hn(t,e){return t.nodes[e]}const Bn={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},Gn=()=>{},Wn=new Map;function Yn(t){let e=Wn.get(t);return e||(e=yt(t)+"_"+Wn.size,Wn.set(t,e)),e}function qn(t,e,n,s){if(ze.isWrapped(s)){s=ze.unwrap(s);const i=t.def.nodes[e].bindingIndex+n,r=ze.unwrap(t.oldValues[i]);t.oldValues[i]=new ze(r)}return s}const Zn="$$undefined",Qn="$$empty";function Xn(t){return{id:Zn,styles:t.styles,encapsulation:t.encapsulation,data:t.data}}let Kn=0;function Jn(t,e,n,s){return!(!(2&t.state)&&je(t.oldValues[e.bindingIndex+n],s))}function ts(t,e,n,s){return!!Jn(t,e,n,s)&&(t.oldValues[e.bindingIndex+n]=s,!0)}function es(t,e,n,s){const i=t.oldValues[e.bindingIndex+n];if(1&t.state||!Ue(i,s)){const r=e.bindings[n].name;throw Nn(Bn.createDebugContext(t,e.nodeIndex),`${r}: ${i}`,`${r}: ${s}`,0!=(1&t.state))}}function ns(t){let e=t;for(;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function ss(t,e){let n=t;for(;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function is(t,e,n,s){try{return ns(33554432&t.def.nodes[e].flags?Un(t,e).componentView:t),Bn.handleEvent(t,e,n,s)}catch(i){t.root.errorHandler.handleError(i)}}function rs(t){return t.parent?Un(t.parent,t.parentNodeDef.nodeIndex):null}function os(t){return t.parent?t.parentNodeDef.parent:null}function ls(t,e){switch(201347067&e.flags){case 1:return Un(t,e.nodeIndex).renderElement;case 2:return jn(t,e.nodeIndex).renderText}}function as(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function cs(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function us(t){return 1<{"number"==typeof t?(e[t]=i,n|=us(t)):s[t]=i}),{matchedQueries:e,references:s,matchedQueryIds:n}}function ds(t,e){return t.map(t=>{let n,s;return Array.isArray(t)?[s,n]=t:(s=0,n=t),n&&("function"==typeof n||"object"==typeof n)&&e&&Object.defineProperty(n,Pt,{value:e,configurable:!0}),{flags:s,token:n,tokenKey:Yn(n)}})}function ps(t,e,n){let s=n.renderParent;return s?0==(1&s.flags)||0==(33554432&s.flags)||s.element.componentRendererType&&s.element.componentRendererType.encapsulation===Jt.Native?Un(t,n.renderParent.nodeIndex).renderElement:void 0:e}const fs=new WeakMap;function gs(t){let e=fs.get(t);return e||((e=t(()=>Gn)).factory=t,fs.set(t,e)),e}function ms(t,e,n,s,i){3===e&&(n=t.renderer.parentNode(ls(t,t.def.lastRenderRootNode))),_s(t,e,0,t.def.nodes.length-1,n,s,i)}function _s(t,e,n,s,i,r,o){for(let l=n;l<=s;l++){const n=t.def.nodes[l];11&n.flags&&ys(t,n,e,i,r,o),l+=n.childCount}}function vs(t,e,n,s,i,r){let o=t;for(;o&&!as(o);)o=o.parent;const l=o.parent,a=os(o),c=a.nodeIndex+a.childCount;for(let u=a.nodeIndex+1;u<=c;u++){const t=l.def.nodes[u];t.ngContentIndex===e&&ys(l,t,n,s,i,r),u+=t.childCount}if(!l.parent){const o=t.root.projectableNodes[e];if(o)for(let e=0;e-1}(i)||"root"===r.providedIn&&i._def.isRoot))){const n=t._providers.length;return t._def.providers[n]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:n,token:e.token},t._providers[n]=Es,t._providers[n]=Ps(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Tt(s)}var i,r}function Ps(t,e){let n;switch(201347067&e.flags){case 512:n=function(t,e,n){const s=n.length;switch(s){case 0:return new e;case 1:return new e(Rs(t,n[0]));case 2:return new e(Rs(t,n[0]),Rs(t,n[1]));case 3:return new e(Rs(t,n[0]),Rs(t,n[1]),Rs(t,n[2]));default:const i=new Array(s);for(let e=0;e=n.length)&&(e=n.length-1),e<0)return null;const s=n[e];return s.viewContainerParent=null,Vs(n,e),Bn.dirtyParentQueries(s),Ns(s),s}function Ms(t,e,n){const s=e?ls(e,e.def.lastRenderRootNode):t.renderElement,i=n.renderer.parentNode(s),r=n.renderer.nextSibling(s);ms(n,2,i,r,void 0)}function Ns(t){ms(t,3,null,null,void 0)}function Ds(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Vs(t,e){e>=t.length-1?t.pop():t.splice(e,1)}const $s=new Object;function Ls(t,e,n,s,i,r){return new js(t,e,n,s,i,r)}class js extends Ye{constructor(t,e,n,s,i,r){super(),this.selector=t,this.componentType=e,this._inputs=s,this._outputs=i,this.ngContentSelectors=r,this.viewDefFactory=n}get inputs(){const t=[],e=this._inputs;for(let n in e)t.push({propName:n,templateName:e[n]});return t}get outputs(){const t=[];for(let e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t}create(t,e,n,s){if(!s)throw new Error("ngModule should be provided");const i=gs(this.viewDefFactory),r=i.nodes[0].element.componentProvider.nodeIndex,o=Bn.createRootView(t,e||[],n,i,s,$s),l=zn(o,r).instance;return n&&o.renderer.setAttribute(Un(o,0).renderElement,"ng-version",dn.full),new Us(o,new Bs(o),l)}}class Us extends We{constructor(t,e,n){super(),this._view=t,this._viewRef=e,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=e,this.changeDetectorRef=e,this.instance=n}get location(){return new sn(Un(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new qs(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(t){this._viewRef.onDestroy(t)}}function zs(t,e,n){return new Fs(t,e,n)}class Fs{constructor(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}get element(){return new sn(this._data.renderElement)}get injector(){return new qs(this._view,this._elDef)}get parentInjector(){let t=this._view,e=this._elDef.parent;for(;!e&&t;)e=os(t),t=t.parent;return t?new qs(t,e):new qs(this._view,null)}clear(){for(let t=this._embeddedViews.length-1;t>=0;t--){const e=As(this._data,t);Bn.destroyView(e)}}get(t){const e=this._embeddedViews[t];if(e){const t=new Bs(e);return t.attachToViewContainerRef(this),t}return null}get length(){return this._embeddedViews.length}createEmbeddedView(t,e,n){const s=t.createEmbeddedView(e||{});return this.insert(s,n),s}createComponent(t,e,n,s,i){const r=n||this.parentInjector;i||t instanceof Je||(i=r.get(tn));const o=t.create(r,s,void 0,i);return this.insert(o.hostView,e),o}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=t;return function(t,e,n,s){let i=e.viewContainer._embeddedViews;null==n&&(n=i.length),s.viewContainerParent=t,Ds(i,n,s),function(t,e){const n=rs(e);if(!n||n===t||16&e.state)return;e.state|=16;let s=n.template._projectedViews;s||(s=n.template._projectedViews=[]),s.push(e),function(t,n){if(4&n.flags)return;e.parent.def.nodeFlags|=4,n.flags|=4;let s=n.parent;for(;s;)s.childFlags|=4,s=s.parent}(0,e.parentNodeDef)}(e,s),Bn.dirtyParentQueries(s),Ms(e,n>0?i[n-1]:null,s)}(this._view,this._data,e,n._view),n.attachToViewContainerRef(this),t}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(t._view);return function(t,e,s){const i=t.viewContainer._embeddedViews,r=i[n];Vs(i,n),null==s&&(s=i.length),Ds(i,s,r),Bn.dirtyParentQueries(r),Ns(r),Ms(t,s>0?i[s-1]:null,r)}(this._data,0,e),t}indexOf(t){return this._embeddedViews.indexOf(t._view)}remove(t){const e=As(this._data,t);e&&Bn.destroyView(e)}detach(t){const e=As(this._data,t);return e?new Bs(e):null}}function Hs(t){return new Bs(t)}class Bs{constructor(t){this._view=t,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(t){const e=[];return ms(t,0,void 0,void 0,e),e}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){ns(this._view)}detach(){this._view.state&=-5}detectChanges(){const t=this._view.root.rendererFactory;t.begin&&t.begin();try{Bn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}}checkNoChanges(){Bn.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Bn.destroyView(this._view)}detachFromAppRef(){this._appRef=null,Ns(this._view),Bn.dirtyParentQueries(this._view)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}}function Gs(t,e){return new Ws(t,e)}class Ws extends Rn{constructor(t,e){super(),this._parentView=t,this._def=e}createEmbeddedView(t){return new Bs(Bn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))}get elementRef(){return new sn(Un(this._parentView,this._def.nodeIndex).renderElement)}}function Ys(t,e){return new qs(t,e)}class qs{constructor(t,e){this.view=t,this.elDef=e}get(t,e=Dt.THROW_IF_NOT_FOUND){return Bn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:Yn(t)},e)}}function Zs(t,e){const n=t.def.nodes[e];if(1&n.flags){const e=Un(t,n.nodeIndex);return n.element.template?e.template:e.renderElement}if(2&n.flags)return jn(t,n.nodeIndex).renderText;if(20240&n.flags)return zn(t,n.nodeIndex).instance;throw new Error(`Illegal state: read nodeValue for node index ${e}`)}function Qs(t){return new Xs(t.renderer)}class Xs{constructor(t){this.delegate=t}selectRootElement(t){return this.delegate.selectRootElement(t)}createElement(t,e){const[n,s]=Cs(e),i=this.delegate.createElement(s,n);return t&&this.delegate.appendChild(t,i),i}createViewRoot(t){return t}createTemplateAnchor(t){const e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e}createText(t,e){const n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n}projectNodes(t,e){for(let n=0;nt())}onDestroy(t){this._destroyListeners.push(t)}}const ti=Yn(on),ei=Yn(cn),ni=Yn(sn),si=Yn(An),ii=Yn(Rn),ri=Yn(En),oi=Yn(Dt),li=Yn(Mt);function ai(t,e,n,s,i,r,o,l){const a=[];if(o)for(let u in o){const[t,e]=o[u];a[t]={flags:8,name:u,nonMinifiedName:e,ns:null,securityContext:null,suffix:null}}const c=[];if(l)for(let u in l)c.push({type:1,propName:u,target:null,eventName:l[u]});return hi(t,e|=16384,n,s,i,i,r,a,c)}function ci(t,e,n){return hi(-1,t|=16,null,0,e,e,n)}function ui(t,e,n,s,i){return hi(-1,t,e,0,n,s,i)}function hi(t,e,n,s,i,r,o,l,a){const{matchedQueries:c,references:u,matchedQueryIds:h}=hs(n);a||(a=[]),l||(l=[]),r=Ct(r);const d=ds(o,yt(i));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:h,references:u,ngContentIndex:-1,childCount:s,bindings:l,bindingFlags:xs(l),outputs:a,element:null,provider:{token:i,value:r,deps:d},text:null,query:null,ngContent:null}}function di(t,e){return mi(t,e)}function pi(t,e){let n=t;for(;n.parent&&!as(n);)n=n.parent;return _i(n.parent,os(n),!0,e.provider.value,e.provider.deps)}function fi(t,e){const n=_i(t,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(let s=0;sis(t,e,n,s)}function mi(t,e){const n=(8192&e.flags)>0,s=e.provider;switch(201347067&e.flags){case 512:return _i(t,e.parent,n,s.value,s.deps);case 1024:return function(t,e,n,s,i){const r=i.length;switch(r){case 0:return s();case 1:return s(yi(t,e,n,i[0]));case 2:return s(yi(t,e,n,i[0]),yi(t,e,n,i[1]));case 3:return s(yi(t,e,n,i[0]),yi(t,e,n,i[1]),yi(t,e,n,i[2]));default:const o=Array(r);for(let s=0;ste});class ki extends T{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let s,i=t=>null,r=()=>null;t&&"object"==typeof t?(s=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(i=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(r=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(i=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(r=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(s,i,r);return t instanceof d&&t.add(o),o}}class Ti{constructor(){this.dirty=!0,this._results=[],this.changes=new ki,this.length=0}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}[Le()](){return this._results[Le()]()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let s=0;s(class{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}))(),Pi=new Rt("AppId");function Ai(){return`${Mi()}${Mi()}${Mi()}`}function Mi(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const Ni=new Rt("Platform Initializer"),Di=new Rt("Platform ID"),Vi=new Rt("appBootstrapListener"),$i=(()=>(class{log(t){console.log(t)}warn(t){console.warn(t)}}))();function Li(){throw new Error("Runtime compiler is not loaded")}const ji=Li,Ui=Li,zi=Li,Fi=Li,Hi=(()=>(class{constructor(){this.compileModuleSync=ji,this.compileModuleAsync=Ui,this.compileModuleAndAllComponentsSync=zi,this.compileModuleAndAllComponentsAsync=Fi}clearCache(){}clearCacheFor(t){}getModuleId(t){}}))();class Bi{}let Gi,Wi;function Yi(){const t=St.wtf;return!(!t||!(Gi=t.trace)||(Wi=Gi.events,0))}const qi=Yi(),Zi=qi?function(t,e=null){return Wi.createScope(t,e)}:(t,e)=>(function(t,e){return null}),Qi=qi?function(t,e){return Gi.leaveScope(t,e),e}:(t,e)=>e,Xi=(()=>Promise.resolve(0))();function Ki(t){"undefined"==typeof Zone?Xi.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Ji{constructor({enableLongStackTrace:t=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new ki(!1),this.onMicrotaskEmpty=new ki(!1),this.onStable=new ki(!1),this.onError=new ki(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var e;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)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,n,s,i,r,o)=>{try{return sr(e),t.invokeTask(s,i,r,o)}finally{ir(e)}},onInvoke:(t,n,s,i,r,o,l)=>{try{return sr(e),t.invoke(s,i,r,o,l)}finally{ir(e)}},onHasTask:(t,n,s,i)=>{t.hasTask(s,i),n===s&&("microTask"==i.change?(e.hasPendingMicrotasks=i.microTask,nr(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(t,n,s,i)=>(t.handleError(s,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Ji.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Ji.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,s){const i=this._inner,r=i.scheduleEventTask("NgZoneEvent: "+s,t,er,tr,tr);try{return i.runTask(r,e,n)}finally{i.cancelTask(r)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function tr(){}const er={};function nr(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(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function sr(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ir(t){t._nesting--,nr(t)}class rr{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new ki,this.onMicrotaskEmpty=new ki,this.onStable=new ki,this.onError=new ki}run(t){return t()}runGuarded(t){return t()}runOutsideAngular(t){return t()}runTask(t){return t()}}const or=(()=>(class{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Ji.assertNotInAngularZone(),Ki(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Ki(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let s=-1;e&&e>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==s),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:s,updateCb:n})}whenStable(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()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}))(),lr=(()=>{class t{constructor(){this._applications=new Map,ur.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return ur.findTestabilityInTree(this,t,e)}}return t.ctorParameters=(()=>[]),t})();class ar{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let cr,ur=new ar,hr=function(t){return t instanceof Je};const dr=new Rt("AllowMultipleToken");class pr{constructor(t,e){this.name=t,this.token=e}}function fr(t,e,n=[]){const s=`Platform: ${e}`,i=new Rt(s);return(e=[])=>{let r=gr();if(!r||r.injector.get(dr,!1))if(t)t(n.concat(e).concat({provide:i,useValue:!0}));else{const t=n.concat(e).concat({provide:i,useValue:!0});!function(t){if(cr&&!cr.destroyed&&!cr.injector.get(dr,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");cr=t.get(mr);const e=t.get(Ni,null);e&&e.forEach(t=>t())}(Dt.create({providers:t,name:s}))}return function(t){const e=gr();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}(i)}}function gr(){return cr&&!cr.destroyed?cr:null}const mr=(()=>(class{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n="noop"===(i=e?e.ngZone:void 0)?new rr:("zone.js"===i?void 0:i)||new Ji({enableLongStackTrace:le()}),s=[{provide:Ji,useValue:n}];var i;return n.run(()=>{const e=Dt.create({providers:s,parent:this.injector,name:t.moduleType.name}),i=t.create(e),r=i.injector.get(ie,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return i.onDestroy(()=>yr(this._modules,i)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{r.handleError(t)}})),function(t,e,n){try{const i=n();return De(i)?i.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):i}catch(s){throw e.runOutsideAngular(()=>t.handleError(s)),s}}(r,n,()=>{const t=i.injector.get(Ri);return t.runInitializers(),t.donePromise.then(()=>(this._moduleDoBootstrap(i),i))})})}bootstrapModule(t,e=[]){const n=_r({},e);return function(t,e,n){return t.get(Bi).createCompiler([e]).compileModuleAsync(n)}(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(vr);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${yt(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)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}))();function _r(t,e){return Array.isArray(e)?e.reduce(_r,t):Object.assign({},t,e)}const vr=(()=>{class t{constructor(t,e,n,s,i,r){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=s,this._componentFactoryResolver=i,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=le(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new b(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new b(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Ji.assertNotInAngularZone(),Ki(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Ji.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=K(o,l.pipe(t=>J()(rt(lt)(t))))}bootstrap(t,e){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.");let n;n=t instanceof Ye?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const s=hr(n)?null:this._injector.get(tn),i=n.create(Dt.NULL,[],e||n.selector,s);i.onDestroy(()=>{this._unloadComponent(i)});const r=i.injector.get(or,null);return r&&i.injector.get(lr).registerApplication(i.location.nativeElement,r),this._loadComponent(i),le()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const e=t._tickScope();try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,Qi(e)}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;yr(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Vi,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),yr(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t._tickScope=Zi("ApplicationRef#tick()"),t})();function yr(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class wr{}const br={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Cr=(()=>(class{constructor(t,e){this._compiler=t,this._config=e||br}load(t){return this._compiler instanceof Hi?this.loadFactory(t):this.loadAndCompile(t)}loadAndCompile(t){let[e,s]=t.split("#");return void 0===s&&(s="default"),n("zn8P")(e).then(t=>t[s]).then(t=>xr(t,e,s)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,s]=t.split("#"),i="NgFactory";return void 0===s&&(s="default",i=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[s+i]).then(t=>xr(t,e,s))}}))();function xr(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}class Sr{constructor(t,e){this.name=t,this.callback=e}}class Er{constructor(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof kr&&e.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class kr extends Er{constructor(t,e,n){super(t,e,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=t}addChild(t){t&&(this.childNodes.push(t),t.parent=this)}removeChild(t){const e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))}insertChildrenAfter(t,e){const n=this.childNodes.indexOf(t);-1!==n&&(this.childNodes.splice(n+1,0,...e),e.forEach(e=>{e.parent&&e.parent.removeChild(e),t.parent=this}))}insertBefore(t,e){const 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))}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return function t(e,n,s){e.childNodes.forEach(e=>{e instanceof kr&&(n(e)&&s.push(e),t(e,n,s))})}(this,t,e),e}queryAllNodes(t){const e=[];return function t(e,n,s){e instanceof kr&&e.childNodes.forEach(e=>{n(e)&&s.push(e),e instanceof kr&&t(e,n,s)})}(this,t,e),e}get children(){return this.childNodes.filter(t=>t instanceof kr)}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name==t&&n.callback(e)})}}const Tr=new Map,Or=function(t){return Tr.get(t)||null};function Ir(t){Tr.set(t.nativeNode,t)}const Rr=fr(null,"core",[{provide:Di,useValue:"unknown"},{provide:mr,deps:[Dt]},{provide:lr,deps:[]},{provide:$i,deps:[]}]),Pr=new Rt("LocaleId");function Ar(){return On}function Mr(){return In}function Nr(t){return t||"en-US"}function Dr(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}const Vr=(()=>(class{constructor(t){}}))();function $r(t,e,n,s,i,r){t|=1;const{matchedQueries:o,references:l,matchedQueryIds:a}=hs(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:o,matchedQueryIds:a,references:l,ngContentIndex:n,childCount:s,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:r?gs(r):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:i||Gn},provider:null,text:null,query:null,ngContent:null}}function Lr(t,e,n,s,i,r,o=[],l,a,c,u,h){c||(c=Gn);const{matchedQueries:d,references:p,matchedQueryIds:f}=hs(n);let g=null,m=null;r&&([g,m]=Cs(r)),l=l||[];const _=new Array(l.length);for(let w=0;w{const[n,s]=Cs(t);return[n,s,e]});return h=function(t){if(t&&t.id===Zn){const e=null!=t.encapsulation&&t.encapsulation!==Jt.None||t.styles.length||Object.keys(t.data).length;t.id=e?`c${Kn++}`:Qn}return t&&t.id===Qn&&(t=null),t||null}(h),u&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:d,matchedQueryIds:f,references:p,ngContentIndex:s,childCount:i,bindings:_,bindingFlags:xs(_),outputs:v,element:{ns:g,name:m,attrs:y,template:null,componentProvider:null,componentView:u||null,componentRendererType:h,publicProviders:null,allProviders:null,handleEvent:c||Gn},provider:null,text:null,query:null,ngContent:null}}function jr(t,e,n){const s=n.element,i=t.root.selectorOrNode,r=t.renderer;let o;if(t.parent||!i){o=s.name?r.createElement(s.name,s.ns):r.createComment("");const i=ps(t,e,n);i&&r.appendChild(i,o)}else o=r.selectRootElement(i,!!s.componentRendererType&&s.componentRendererType.encapsulation===Jt.ShadowDom);if(s.attrs)for(let l=0;lis(t,e,n,s)}function Fr(t,e,n,s){if(!ts(t,e,n,s))return!1;const i=e.bindings[n],r=Un(t,e.nodeIndex),o=r.renderElement,l=i.name;switch(15&i.flags){case 1:!function(t,e,n,s,i,r){const o=e.securityContext;let l=o?t.root.sanitizer.sanitize(o,r):r;l=null!=l?l.toString():null;const a=t.renderer;null!=r?a.setAttribute(n,i,l,s):a.removeAttribute(n,i,s)}(t,i,o,i.ns,l,s);break;case 2:!function(t,e,n,s){const i=t.renderer;s?i.addClass(e,n):i.removeClass(e,n)}(t,o,l,s);break;case 4:!function(t,e,n,s,i){let r=t.root.sanitizer.sanitize(Ie.STYLE,i);if(null!=r){r=r.toString();const t=e.suffix;null!=t&&(r+=t)}else r=null;const o=t.renderer;null!=r?o.setStyle(n,s,r):o.removeStyle(n,s)}(t,i,o,l,s);break;case 8:!function(t,e,n,s,i){const r=e.securityContext;let o=r?t.root.sanitizer.sanitize(r,i):i;t.renderer.setProperty(n,s,o)}(33554432&e.flags&&32&i.flags?r.componentView:t,i,o,l,s)}return!0}function Hr(t,e,n){let s=[];for(let i in n)s.push({propName:i,bindingType:n[i]});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:us(e),bindings:s},ngContent:null}}function Br(t){const e=t.def.nodeMatchedQueries;for(;t.parent&&cs(t);){let n=t.parentNodeDef;t=t.parent;const s=n.nodeIndex+n.childCount;for(let i=0;i<=s;i++){const s=t.def.nodes[i];67108864&s.flags&&536870912&s.flags&&(s.query.filterId&e)===s.query.filterId&&Hn(t,i).setDirty(),!(1&s.flags&&i+s.childCount0)c=t,eo(t)||(u=t);else for(;c&&f===c.nodeIndex+c.childCount;){const t=c.parent;t&&(t.childFlags|=c.childFlags,t.childMatchedQueries|=c.childMatchedQueries),u=(c=t)&&eo(c)?c.renderParent:c}}return{factory:null,nodeFlags:o,rootNodeFlags:l,nodeMatchedQueries:a,flags:t,nodes:e,updateDirectives:n||Gn,updateRenderer:s||Gn,handleEvent:(t,n,s,i)=>e[n].element.handleEvent(t,s,i),bindingCount:i,outputCount:r,lastRenderRootNode:p}}function eo(t){return 0!=(1&t.flags)&&null===t.element.name}function no(t,e,n){const s=e.element&&e.element.template;if(s){if(!s.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(s.lastRenderRootNode&&16777216&s.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){const s=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=s&&e.nodeIndex+e.childCount>s)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${e.nodeIndex}!`)}}function so(t,e,n,s){const i=oo(t.root,t.renderer,t,e,n);return lo(i,t.component,s),ao(i),i}function io(t,e,n){const s=oo(t,t.renderer,null,null,e);return lo(s,n,n),ao(s),s}function ro(t,e,n,s){const i=e.element.componentRendererType;let r;return r=i?t.root.rendererFactory.createRenderer(s,i):t.root.renderer,oo(t.root,r,t,e.element.componentProvider,n)}function oo(t,e,n,s,i){const r=new Array(i.nodes.length),o=i.outputCount?new Array(i.outputCount):null;return{def:i,parent:n,viewContainerParent:null,parentNodeDef:s,context:null,component:null,nodes:r,state:13,root:t,renderer:e,oldValues:new Array(i.bindingCount),disposables:o,initIndex:-1}}function lo(t,e,n){t.component=e,t.context=n}function ao(t){let e;as(t)&&(e=Un(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);const n=t.def,s=t.nodes;for(let i=0;i0&&Fr(t,e,0,n)&&(p=!0),d>1&&Fr(t,e,1,s)&&(p=!0),d>2&&Fr(t,e,2,i)&&(p=!0),d>3&&Fr(t,e,3,r)&&(p=!0),d>4&&Fr(t,e,4,o)&&(p=!0),d>5&&Fr(t,e,5,l)&&(p=!0),d>6&&Fr(t,e,6,a)&&(p=!0),d>7&&Fr(t,e,7,c)&&(p=!0),d>8&&Fr(t,e,8,u)&&(p=!0),d>9&&Fr(t,e,9,h)&&(p=!0),p}(t,e,n,s,i,r,o,l,a,c,u,h);case 2:return function(t,e,n,s,i,r,o,l,a,c,u,h){let d=!1;const p=e.bindings,f=p.length;if(f>0&&ts(t,e,0,n)&&(d=!0),f>1&&ts(t,e,1,s)&&(d=!0),f>2&&ts(t,e,2,i)&&(d=!0),f>3&&ts(t,e,3,r)&&(d=!0),f>4&&ts(t,e,4,o)&&(d=!0),f>5&&ts(t,e,5,l)&&(d=!0),f>6&&ts(t,e,6,a)&&(d=!0),f>7&&ts(t,e,7,c)&&(d=!0),f>8&&ts(t,e,8,u)&&(d=!0),f>9&&ts(t,e,9,h)&&(d=!0),d){let d=e.text.prefix;f>0&&(d+=Jr(n,p[0])),f>1&&(d+=Jr(s,p[1])),f>2&&(d+=Jr(i,p[2])),f>3&&(d+=Jr(r,p[3])),f>4&&(d+=Jr(o,p[4])),f>5&&(d+=Jr(l,p[5])),f>6&&(d+=Jr(a,p[6])),f>7&&(d+=Jr(c,p[7])),f>8&&(d+=Jr(u,p[8])),f>9&&(d+=Jr(h,p[9]));const g=jn(t,e.nodeIndex).renderText;t.renderer.setValue(g,d)}return d}(t,e,n,s,i,r,o,l,a,c,u,h);case 16384:return function(t,e,n,s,i,r,o,l,a,c,u,h){const d=zn(t,e.nodeIndex),p=d.instance;let f=!1,g=void 0;const m=e.bindings.length;return m>0&&Jn(t,e,0,n)&&(f=!0,g=bi(t,d,e,0,n,g)),m>1&&Jn(t,e,1,s)&&(f=!0,g=bi(t,d,e,1,s,g)),m>2&&Jn(t,e,2,i)&&(f=!0,g=bi(t,d,e,2,i,g)),m>3&&Jn(t,e,3,r)&&(f=!0,g=bi(t,d,e,3,r,g)),m>4&&Jn(t,e,4,o)&&(f=!0,g=bi(t,d,e,4,o,g)),m>5&&Jn(t,e,5,l)&&(f=!0,g=bi(t,d,e,5,l,g)),m>6&&Jn(t,e,6,a)&&(f=!0,g=bi(t,d,e,6,a,g)),m>7&&Jn(t,e,7,c)&&(f=!0,g=bi(t,d,e,7,c,g)),m>8&&Jn(t,e,8,u)&&(f=!0,g=bi(t,d,e,8,u,g)),m>9&&Jn(t,e,9,h)&&(f=!0,g=bi(t,d,e,9,h,g)),g&&p.ngOnChanges(g),65536&e.flags&&Ln(t,256,e.nodeIndex)&&p.ngOnInit(),262144&e.flags&&p.ngDoCheck(),f}(t,e,n,s,i,r,o,l,a,c,u,h);case 32:case 64:case 128:return function(t,e,n,s,i,r,o,l,a,c,u,h){const d=e.bindings;let p=!1;const f=d.length;if(f>0&&ts(t,e,0,n)&&(p=!0),f>1&&ts(t,e,1,s)&&(p=!0),f>2&&ts(t,e,2,i)&&(p=!0),f>3&&ts(t,e,3,r)&&(p=!0),f>4&&ts(t,e,4,o)&&(p=!0),f>5&&ts(t,e,5,l)&&(p=!0),f>6&&ts(t,e,6,a)&&(p=!0),f>7&&ts(t,e,7,c)&&(p=!0),f>8&&ts(t,e,8,u)&&(p=!0),f>9&&ts(t,e,9,h)&&(p=!0),p){const p=Fn(t,e.nodeIndex);let g;switch(201347067&e.flags){case 32:g=new Array(d.length),f>0&&(g[0]=n),f>1&&(g[1]=s),f>2&&(g[2]=i),f>3&&(g[3]=r),f>4&&(g[4]=o),f>5&&(g[5]=l),f>6&&(g[6]=a),f>7&&(g[7]=c),f>8&&(g[8]=u),f>9&&(g[9]=h);break;case 64:g={},f>0&&(g[d[0].name]=n),f>1&&(g[d[1].name]=s),f>2&&(g[d[2].name]=i),f>3&&(g[d[3].name]=r),f>4&&(g[d[4].name]=o),f>5&&(g[d[5].name]=l),f>6&&(g[d[6].name]=a),f>7&&(g[d[7].name]=c),f>8&&(g[d[8].name]=u),f>9&&(g[d[9].name]=h);break;case 128:const t=n;switch(f){case 1:g=t.transform(n);break;case 2:g=t.transform(s);break;case 3:g=t.transform(s,i);break;case 4:g=t.transform(s,i,r);break;case 5:g=t.transform(s,i,r,o);break;case 6:g=t.transform(s,i,r,o,l);break;case 7:g=t.transform(s,i,r,o,l,a);break;case 8:g=t.transform(s,i,r,o,l,a,c);break;case 9:g=t.transform(s,i,r,o,l,a,c,u);break;case 10:g=t.transform(s,i,r,o,l,a,c,u,h)}}p.value=g}return p}(t,e,n,s,i,r,o,l,a,c,u,h);default:throw"unreachable"}}(t,e,s,i,r,o,l,a,c,u,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){let s=!1;for(let i=0;i0&&es(t,e,0,n),d>1&&es(t,e,1,s),d>2&&es(t,e,2,i),d>3&&es(t,e,3,r),d>4&&es(t,e,4,o),d>5&&es(t,e,5,l),d>6&&es(t,e,6,a),d>7&&es(t,e,7,c),d>8&&es(t,e,8,u),d>9&&es(t,e,9,h)}(t,e,s,i,r,o,l,a,c,u,h,d):function(t,e,n){for(let s=0;s{const s=Ro.get(t.token);3840&t.flags&&s&&(e=!0,n=n||s.deprecatedBehavior)}),t.modules.forEach(t=>{Po.forEach((s,i)=>{_t(i).providedIn===t&&(e=!0,n=n||s.deprecatedBehavior)})}),{hasOverrides:e,hasDeprecatedOverrides:n})}(t);return e?(function(t){for(let e=0;e0){let e=new Set(t.modules);Po.forEach((s,i)=>{if(e.has(_t(i).providedIn)){let e={token:i,flags:s.flags|(n?4096:0),deps:ds(s.deps),value:s.value,index:t.providers.length};t.providers.push(e),t.providersByKey[Yn(i)]=e}})}}(t=t.factory(()=>Gn)),t):t}(s))}const Ro=new Map,Po=new Map,Ao=new Map;function Mo(t){let e;Ro.set(t.token,t),"function"==typeof t.token&&(e=_t(t.token))&&"function"==typeof e.providedIn&&Po.set(t.token,t)}function No(t,e){const n=gs(e.viewDefFactory),s=gs(n.nodes[0].element.componentView);Ao.set(t,s)}function Do(){Ro.clear(),Po.clear(),Ao.clear()}function Vo(t){if(0===Ro.size)return t;const e=function(t){const e=[];let n=null;for(let s=0;sGn);for(let s=0;s"-"+t[1].toLowerCase())}`)]=Ne(l))}const s=e.parent,l=Un(t,s.nodeIndex).renderElement;if(s.element.name)for(let e in n){const s=n[e];null!=s?t.renderer.setAttribute(l,e,s):t.renderer.removeAttribute(l,e)}else t.renderer.setValue(l,`bindings=${JSON.stringify(n,null,2)}`)}}var i,r}function Xo(t,e,n,s){fo(t,e,n,...s)}function Ko(t,e){for(let n=e;n++r===i?t.error.bind(t,...e):Gn),rnew tl(t,e),handleEvent:Yo,updateDirectives:qo,updateRenderer:Zo}:{setCurrentNode:()=>{},createRootView:So,createEmbeddedView:so,createComponentView:ro,createNgModuleRef:Ks,overrideProvider:Gn,overrideComponentView:Gn,clearOverrides:Gn,checkAndUpdateView:uo,checkNoChangesView:co,destroyView:mo,createDebugContext:(t,e)=>new tl(t,e),handleEvent:(t,e,n,s)=>t.def.handleEvent(t,e,n,s),updateDirectives:(t,e)=>t.def.updateDirectives(0===e?$o:Lo,t),updateRenderer:(t,e)=>t.def.updateRenderer(0===e?$o:Lo,t)};Bn.setCurrentNode=t.setCurrentNode,Bn.createRootView=t.createRootView,Bn.createEmbeddedView=t.createEmbeddedView,Bn.createComponentView=t.createComponentView,Bn.createNgModuleRef=t.createNgModuleRef,Bn.overrideProvider=t.overrideProvider,Bn.overrideComponentView=t.overrideComponentView,Bn.clearOverrides=t.clearOverrides,Bn.checkAndUpdateView=t.checkAndUpdateView,Bn.checkNoChangesView=t.checkNoChangesView,Bn.destroyView=t.destroyView,Bn.resolveDep=yi,Bn.createDebugContext=t.createDebugContext,Bn.handleEvent=t.handleEvent,Bn.updateDirectives=t.updateDirectives,Bn.updateRenderer=t.updateRenderer,Bn.dirtyParentQueries=Br}();const e=function(t){const e=Array.from(t.providers),n=Array.from(t.modules),s={};for(const i in t.providersByKey)s[i]=t.providersByKey[i];return{factory:t.factory,isRoot:t.isRoot,providers:e,modules:n,providersByKey:s}}(gs(this._ngModuleDefFactory));return Bn.createNgModuleRef(this.moduleType,t||Dt.NULL,this._bootstrapComponents,e)}}const al="Test Runner";function cl(t){let e="";if(t)for(const n in t)t.hasOwnProperty(n)&&null!=t[n]&&(e+=`${e?"&":""}${n}=${t[n]}`);return e}function ul(t,e){const n=t.shift();return e[n]?t.length>0?ul(t,e[n]):e[n]:null}var hl=n("Wgwc");const dl=(()=>{class t{constructor(){if(this.build=hl(),!t.init){const e=hl();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][APP] ${al} - ${t} | ${e}`):console[n](`%c[ACA]%c[APP] %c${al} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0",t.init=!1,t})();class pl{constructor(){this.show_menu=!0}}class fl{}const gl=new Rt("Location Initialized");class ml{}const _l=new Rt("appBaseHref"),vl=(()=>{class t{constructor(e,n){this._subject=new ki,this._urlChangeListeners=[],this._platformStrategy=e;const s=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=t.stripTrailingSlash(yl(s)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(e,n=""){return this.path()==this.normalize(e+t.normalizeQueryParams(n))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,yl(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(e,n="",s=null){this._platformStrategy.pushState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}replaceState(e,n="",s=null){this._platformStrategy.replaceState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}static normalizeQueryParams(t){return t&&"?"!==t[0]?"?"+t:t}static joinWithSlash(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}static stripTrailingSlash(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}}return t})();function yl(t){return t.replace(/\/index.html$/,"")}const wl=(()=>(class extends ml{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=vl.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,s){let i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));0==i.length&&(i=this._platformLocation.pathname),this._platformLocation.pushState(t,e,i)}replaceState(t,e,n,s){let i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));0==i.length&&(i=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,i)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),bl=(()=>(class extends ml{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)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.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return vl.joinWithSlash(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+vl.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,s){const i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));this._platformLocation.pushState(t,e,i)}replaceState(t,e,n,s){const i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));this._platformLocation.replaceState(t,e,i)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),Cl=void 0;var xl=["en",[["a","p"],["AM","PM"],Cl],[["AM","PM"],Cl,Cl],[["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"]],Cl,[["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"]],Cl,[["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}",Cl,"{1} 'at' {0}",Cl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];const Sl={},El=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),kl=new Rt("UseV4Plurals");class Tl{}const Ol=(()=>(class extends Tl{constructor(t,e){super(),this.locale=t,this.deprecatedPluralFn=e}getPluralCategory(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){const e=t.toLowerCase().replace(/_/g,"-");let n=Sl[e];if(n)return n;const s=e.split("-")[0];if(n=Sl[s])return n;if("en"===s)return xl;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[18]}(e||this.locale)(t)){case El.Zero:return"zero";case El.One:return"one";case El.Two:return"two";case El.Few:return"few";case El.Many:return"many";default:return"other"}}}))();function Il(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[s,i]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(s.trim()===e)return decodeURIComponent(i)}return null}const Rl=(()=>(class{constructor(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}ngOnChanges(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){const e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){const t=e.get(tn);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(t.injector)}else this._moduleRef=null;const n=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(Xe)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(n,this._viewContainerRef.length,e,this.ngComponentOutletContent)}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}))();class Pl{constructor(t,e,n,s){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=s}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}const Al=(()=>(class{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){le()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,s)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Pl(null,this._ngForOf,-1,-1),s),i=new Ml(t,n);e.push(i)}else if(null==s)this._viewContainer.remove(n);else{const i=this._viewContainer.get(n);this._viewContainer.move(i,s);const r=new Ml(t,i);e.push(r)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}))();class Ml{constructor(t,e){this.record=t,this.view=e}}const Nl=(()=>(class{constructor(t,e){this._viewContainer=t,this._context=new Dl,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){Vl("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Vl("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){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)))}static ngTemplateGuard_ngIf(t,e){return!0}}))();class Dl{constructor(){this.$implicit=null,this.ngIf=null}}function Vl(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${yt(e)}'.`)}class $l{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}const Ll=(()=>(class{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const 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}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e(class{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new $l(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}))(),Ul=(()=>(class{constructor(t,e,n){n._addDefault(new $l(t,e))}}))(),zl=(()=>(class{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){this._shouldRecreateView(t)?(this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))):this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)}_shouldRecreateView(t){const e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)}_hasContextShapeChanged(t){const e=Object.keys(t.previousValue||{}),n=Object.keys(t.currentValue||{});if(e.length===n.length){for(let t of n)if(-1===e.indexOf(t))return!0;return!1}return!0}_updateExistingContext(t){for(let e of Object.keys(t))this._viewRef.context[e]=this.ngTemplateOutletContext[e]}}))(),Fl=(()=>(class{}))(),Hl=new Rt("DocumentToken"),Bl="browser";function Gl(t){return t===Bl}const Wl=(()=>{class t{}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new Yl(Ot(Hl),window,Ot(ie))}),t})();class Yl{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=(()=>[0,0])}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const n=this.document.querySelector(`#${t}`);if(n)return void this.scrollToElement(n);const s=this.document.querySelector(`[name='${t}']`);if(s)return void this.scrollToElement(s)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,s=e.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(n-i[0],s-i[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}const ql=new b(t=>t.complete());function Zl(t){return t?function(t){return new b(e=>t.schedule(()=>e.complete()))}(t):ql}function Ql(t){const e=new b(e=>{e.next(t),e.complete()});return e._isScalar=!0,e.value=t,e}function Xl(...t){let e=t[t.length-1];switch(I(e)?t.pop():e=void 0,t.length){case 0:return Zl(e);case 1:return e?G(t,e):Ql(t[0]);default:return G(t,e)}}class Kl extends T{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new S;return this._value}next(t){super.next(this._value=t)}}function Jl(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}Jl.prototype=Object.create(Error.prototype);const ta=Jl,ea={};class na{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new sa(t,this.resultSelector))}}class sa extends z{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(ea),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{let n;try{n=t()}catch(s){return void e.error(s)}return(n?W(n):Zl()).subscribe(e)})}function ra(){return X(1)}function oa(t,e){return function(n){return n.lift(new la(t,e))}}class la{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new aa(t,this.predicate,this.thisArg))}}class aa extends g{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}function ca(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}ca.prototype=Object.create(Error.prototype);const ua=ca;function ha(t){return function(e){return 0===t?Zl():e.lift(new da(t))}}class da{constructor(t){if(this.total=t,this.total<0)throw new ua}call(t,e){return e.subscribe(new pa(t,this.total))}}class pa extends g{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,s=this.count++;e.length0){const n=this.count>=this.total?this.total:this.count,s=this.ring;for(let i=0;ifa({hasValue:!1,next(){this.hasValue=!0},complete(){if(!this.hasValue)throw t()}});function va(t=null){return e=>e.lift(new ya(t))}class ya{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new wa(t,this.defaultValue))}}class wa extends g{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}function ba(t,e){const n=arguments.length>=2;return s=>s.pipe(t?oa((e,n)=>t(e,n,s)):Q,ha(1),n?va(e):_a(()=>new ta))}function Ca(t){return function(e){const n=new xa(t),s=e.lift(n);return n.caught=s}}class xa{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Sa(t,this.selector,this.caught))}}class Sa extends z{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const s=new R(this,void 0,void 0);this.add(s),U(this,n,void 0,void 0,s)}}}function Ea(t){return e=>0===t?Zl():e.lift(new ka(t))}class ka{constructor(t){if(this.total=t,this.total<0)throw new ua}call(t,e){return e.subscribe(new Ta(t,this.total))}}class Ta extends g{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}function Oa(t,e){const n=arguments.length>=2;return s=>s.pipe(t?oa((e,n)=>t(e,n,s)):Q,Ea(1),n?va(e):_a(()=>new ta))}class Ia{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new Ra(t,this.predicate,this.thisArg,this.source))}}class Ra extends g{constructor(t,e,n,s){super(t),this.predicate=e,this.thisArg=n,this.source=s,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}function Pa(t,e){return"function"==typeof e?n=>n.pipe(Pa((n,s)=>W(t(n,s)).pipe(F((t,i)=>e(n,t,s,i))))):e=>e.lift(new Aa(t))}class Aa{constructor(t){this.project=t}call(t,e){return e.subscribe(new Ma(t,this.project))}}class Ma extends z{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(s){return void this.destination.error(s)}this._innerSub(e,t,n)}_innerSub(t,e,n){const s=this.innerSubscription;s&&s.unsubscribe();const i=new R(this,void 0,void 0);this.destination.add(i),this.innerSubscription=U(this,t,e,n,i)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,s,i){this.destination.next(e)}}function Na(...t){return ra()(Xl(...t))}function Da(...t){return e=>{let n=t[t.length-1];I(n)?t.pop():n=null;const s=t.length;return Na(1!==s||n?s>0?G(t,n):Zl(n):Ql(t[0]),e)}}function Va(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(s){return s.lift(new $a(t,e,n))}}class $a{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new La(t,this.accumulator,this.seed,this.hasSeed))}}class La extends g{constructor(t,e,n,s){super(t),this.accumulator=e,this._seed=n,this.hasSeed=s,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(s){this.destination.error(s)}this.seed=n,this.destination.next(n)}}function ja(t,e){return Y(t,e,1)}class Ua{constructor(t){this.callback=t}call(t,e){return e.subscribe(new za(t,this.callback))}}class za extends g{constructor(t,e){super(t),this.add(new d(e))}}let Fa=null;function Ha(){return Fa}class Ba{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(t){this._attrToPropMap=t}}class Ga extends Ba{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const e=this.createElement("div",document);if(null!=this.getStyle(e,"animationName"))this._animationPrefix="";else{const t=["Webkit","Moz","O","ms"];for(let n=0;n{null!=this.getStyle(e,t)&&(this._transitionEnd=n[t])})}catch(t){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(t){return t.getDistributedNodes()}resolveAndSetHref(t,e,n){t.href=null==n?e:e+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}const Wa={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},Ya=3,qa={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Za={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},Qa=(()=>{if(St.Node)return St.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))}})();class Xa extends Ga{parse(t){throw new Error("parse not implemented")}static makeCurrent(){var t;t=new Xa,Fa||(Fa=t)}hasProperty(t,e){return e in t}setProperty(t,e,n){t[e]=n}getProperty(t,e){return t[e]}invoke(t,e,n){t[e](...n)}logError(t){window.console&&(console.error?console.error(t):console.log(t))}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return Wa}contains(t,e){return Qa.call(t,e)}querySelector(t,e){return t.querySelector(e)}querySelectorAll(t,e){return t.querySelectorAll(e)}on(t,e,n){t.addEventListener(e,n,!1)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}createMouseEvent(t){const e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(t,!0,!0),e}createEvent(t){const e=this.getDefaultDocument().createEvent("Event");return e.initEvent(t,!0,!0),e}preventDefault(t){t.preventDefault(),t.returnValue=!1}isPrevented(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue}getInnerHTML(t){return t.innerHTML}getTemplateContent(t){return"content"in t&&this.isTemplateElement(t)?t.content:null}getOuterHTML(t){return t.outerHTML}nodeName(t){return t.nodeName}nodeValue(t){return t.nodeValue}type(t){return t.type}content(t){return this.hasProperty(t,"content")?t.content:t}firstChild(t){return t.firstChild}nextSibling(t){return t.nextSibling}parentElement(t){return t.parentNode}childNodes(t){return t.childNodes}childNodesAsList(t){const e=t.childNodes,n=new Array(e.length);for(let s=0;st.insertBefore(n,e))}insertAfter(t,e,n){t.insertBefore(n,e.nextSibling)}setInnerHTML(t,e){t.innerHTML=e}getText(t){return t.textContent}setText(t,e){t.textContent=e}getValue(t){return t.value}setValue(t,e){t.value=e}getChecked(t){return t.checked}setChecked(t,e){t.checked=e}createComment(t){return this.getDefaultDocument().createComment(t)}createTemplate(t){const e=this.getDefaultDocument().createElement("template");return e.innerHTML=t,e}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createElementNS(t,e,n){return(n=n||this.getDefaultDocument()).createElementNS(t,e)}createTextNode(t,e){return(e=e||this.getDefaultDocument()).createTextNode(t)}createScriptTag(t,e,n){const s=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return s.setAttribute(t,e),s}createStyleElement(t,e){const n=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(t,e)),n}createShadowRoot(t){return t.createShadowRoot()}getShadowRoot(t){return t.shadowRoot}getHost(t){return t.host}clone(t){return t.cloneNode(!0)}getElementsByClassName(t,e){return t.getElementsByClassName(e)}getElementsByTagName(t,e){return t.getElementsByTagName(e)}classList(t){return Array.prototype.slice.call(t.classList,0)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}hasClass(t,e){return t.classList.contains(e)}setStyle(t,e,n){t.style[e]=n}removeStyle(t,e){t.style[e]=""}getStyle(t,e){return t.style[e]}hasStyle(t,e,n){const s=this.getStyle(t,e)||"";return n?s==n:s.length>0}tagName(t){return t.tagName}attributeMap(t){const e=new Map,n=t.attributes;for(let s=0;s{class t extends fl{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=Ha().getLocation(),this._history=Ha().getHistory()}getBaseHrefFromDOM(){return Ha().getBaseHref(this._doc)}onPopState(t){Ha().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){Ha().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){tc()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){tc()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return t.ctorParameters=(()=>[{type:void 0,decorators:[{type:ut,args:[Hl]}]}]),t})(),nc=new Rt("TRANSITION_ID"),sc=[{provide:Ii,useFactory:function(t,e,n){return()=>{n.get(Ri).donePromise.then(()=>{const n=Ha();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(e=>n.getAttribute(e,"ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[nc,Hl,Dt],multi:!0}];class ic{static init(){var t;t=new ic,ur=t}addToWindow(t){St.getAngularTestability=((e,n=!0)=>{const s=t.findTestabilityInTree(e,n);if(null==s)throw new Error("Could not find testability for element.");return s}),St.getAllAngularTestabilities=(()=>t.getAllTestabilities()),St.getAllAngularRootElements=(()=>t.getAllRootElements()),St.frameworkStabilizers||(St.frameworkStabilizers=[]),St.frameworkStabilizers.push(t=>{const e=St.getAllAngularTestabilities();let n=e.length,s=!1;const i=function(e){s=s||e,0==--n&&t(s)};e.forEach(function(t){t.whenStable(i)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const s=t.getTestability(e);return null!=s?s:n?Ha().isShadowRoot(e)?this.findTestabilityInTree(t,Ha().getHost(e),!0):this.findTestabilityInTree(t,Ha().parentElement(e),!0):null}}function rc(t,e){"undefined"!=typeof COMPILED&&COMPILED||((St.ng=St.ng||{})[t]=e)}const oc=(()=>({ApplicationRef:vr,NgZone:Ji}))();function lc(t){return Or(t)}const ac=new Rt("EventManagerPlugins"),cc=(()=>(class{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let s=0;s(class{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}))(),dc=(()=>(class extends hc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>Ha().remove(t))}}))(),pc={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/"},fc=/%COMP%/g,gc="_nghost-%COMP%",mc="_ngcontent-%COMP%";function _c(t,e,n){for(let s=0;s{!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}const yc=(()=>(class{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new wc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case Jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new xc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case Jt.Native:case Jt.ShadowDom:return new Sc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=_c(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}))();class wc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(pc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let 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}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,s){if(s){e=`${s}:${e}`;const i=pc[s];i?t.setAttributeNS(i,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const s=pc[n];s?t.removeAttributeNS(s,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&an.DashCase?t.style.setProperty(e,n,s&an.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&an.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){Cc(e,"property"),t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return Cc(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,vc(n)):this.eventManager.addEventListener(t,e,vc(n))}}const bc=(()=>"@".charCodeAt(0))();function Cc(t,e){if(t.charCodeAt(0)===bc)throw new Error(`Found the synthetic ${e} ${t}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class xc extends wc{constructor(t,e,n,s){super(t),this.component=n;const i=_c(s+"-"+n.id,n.styles,[]);e.addStyles(i),this.contentAttr=mc.replace(fc,s+"-"+n.id),this.hostAttr=gc.replace(fc,s+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Sc extends wc{constructor(t,e,n,s){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=s,this.shadowRoot=s.encapsulation===Jt.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const i=_c(s.id,s.styles,[]);for(let r=0;r"undefined"!=typeof Zone&&Zone.__symbol__||function(t){return"__zone_symbol__"+t})(),kc=Ec("addEventListener"),Tc=Ec("removeEventListener"),Oc={},Ic="__zone_symbol__propagationStopped",Rc=(()=>{const t="undefined"!=typeof Zone&&Zone[Ec("BLACK_LISTED_EVENTS")];if(t){const e={};return t.forEach(t=>{e[t]=t}),e}})(),Pc=function(t){return!!Rc&&Rc.hasOwnProperty(t)},Ac=function(t){const e=Oc[t.type];if(!e)return;const n=this[e];if(!n)return;const s=[t];if(1===n.length){const t=n[0];return t.zone!==Zone.current?t.zone.run(t.handler,this,s):t.handler.apply(this,s)}{const e=n.slice();for(let n=0;n(class extends uc{constructor(t,e,n){super(t),this.ngZone=e,n&&function(t){return"server"===t}(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const t=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[Ic]=!0),t&&t.apply(this,arguments)}}supports(t){return!0}addEventListener(t,e,n){let s=n;if(!t[kc]||Ji.isInAngularZone()&&!Pc(e))t.addEventListener(e,s,!1);else{let n=Oc[e];n||(n=Oc[e]=Ec("ANGULAR"+e+"FALSE"));let i=t[n];const r=i&&i.length>0;i||(i=t[n]=[]);const o=Pc(e)?Zone.root:Zone.current;if(0===i.length)i.push({zone:o,handler:s});else{let t=!1;for(let e=0;ethis.removeEventListener(t,e,s)}removeEventListener(t,e,n){let s=t[Tc];if(!s)return t.removeEventListener.apply(t,[e,n,!1]);let i=Oc[e],r=i&&t[i];if(!r)return t.removeEventListener.apply(t,[e,n,!1]);let o=!1;for(let l=0;l(class{constructor(){this.events=[],this.overrides={}}buildHammer(t){const e=new Hammer(t,this.options);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(const n in this.overrides)e.get(n).set(this.overrides[n]);return e}}))(),Lc=(()=>(class extends uc{constructor(t,e,n,s){super(t),this._config=e,this.console=n,this.loader=s}supports(t){return!(!Nc.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))}addEventListener(t,e,n){const s=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){let s=!1,i=()=>{s=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(i=(()=>{}));s||(i=this.addEventListener(t,e,n))}).catch(()=>{this.console.warn(`The "${e}" event cannot be bound because the custom `+"Hammer.JS loader failed."),i=(()=>{})}),()=>{i()}}return s.runOutsideAngular(()=>{const i=this._config.buildHammer(t),r=function(t){s.runGuarded(function(){n(t)})};return i.on(e,r),()=>{i.off(e,r),"function"==typeof i.destroy&&i.destroy()}})}isCustomEvent(t){return this._config.events.indexOf(t)>-1}}))(),jc=["alt","control","meta","shift"],Uc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},zc=(()=>{class t extends uc{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,s){const i=t.parseEventName(n),r=t.eventCallback(i.fullKey,s,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ha().onAndCancel(e,i.domEventName,r))}static parseEventName(e){const n=e.toLowerCase().split("."),s=n.shift();if(0===n.length||"keydown"!==s&&"keyup"!==s)return null;const i=t._normalizeKey(n.pop());let r="";if(jc.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),r+=t+".")}),r+=i,0!=n.length||0===i.length)return null;const o={};return o.domEventName=s,o.fullKey=r,o}static getEventFullKey(t){let e="",n=Ha().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),jc.forEach(s=>{s!=n&&(0,Uc[s])(t)&&(e+=s+".")}),e+=n}static eventCallback(e,n,s){return i=>{t.getEventFullKey(i)===e&&s.runGuarded(()=>n(i))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t})();class Fc{}const Hc=(()=>(class extends Fc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case Ie.NONE:return e;case Ie.HTML:return e instanceof Gc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){let n=null;try{Te=Te||new ae(t);let s=e?String(e):"";n=Te.getInertBodyElement(s);let i=5,r=s;do{if(0===i)throw new Error("Failed to sanitize html because the input is unstable");i--,s=r,r=n.innerHTML,n=Te.getInertBodyElement(s)}while(s!==r);const o=new xe,l=o.sanitizeChildren(Oe(n)||n);return le()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),l}finally{if(n){const t=Oe(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e)));case Ie.STYLE:return e instanceof Wc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";const e=t.match(Ae);return e&&he(e[1])===e[1]||t.match(Pe)&&function(t){let e=!0,n=!0;for(let s=0;s{class t{constructor(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.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Pi,useValue:e.appId},{provide:nc,useExisting:Pi},sc]}}}return t})();function Jc(){return new tu(Ot(Hl))}const tu=(()=>{class t{constructor(t){this._doc=t}getTitle(){return Ha().getTitle(this._doc)}setTitle(t){Ha().setTitle(this._doc,t)}}return t.ngInjectableDef=mt({factory:Jc,token:t,providedIn:"root"}),t})();"undefined"!=typeof window&&window;class eu{constructor(t,e){this.id=t,this.url=e}}class nu extends eu{constructor(t,e,n="imperative",s=null){super(t,e),this.navigationTrigger=n,this.restoredState=s}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class su extends eu{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class iu extends eu{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class ru extends eu{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ou extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class lu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class au extends eu{constructor(t,e,n,s,i){super(t,e),this.urlAfterRedirects=n,this.state=s,this.shouldActivate=i}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class cu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class uu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class hu{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class du{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class pu{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class fu{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class gu{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class mu{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class _u{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const vu=(()=>(class{}))(),yu="primary";class wu{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function bu(t){return new wu(t)}const Cu="ngNavigationCancelingError";function xu(t){const e=Error("NavigationCancelingError: "+t);return e[Cu]=!0,e}function Su(t,e,n){const s=n.path.split("/");if(s.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||s.length0?t[t.length-1]:null}function Mu(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Nu(t){return Ve(t)?t:De(t)?W(Promise.resolve(t)):Xl(t)}function Du(t,e,n){return n?function(t,e){return Ru(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!ju(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const s in n.children){if(!e.children[s])return!1;if(!t(e.children[s],n.children[s]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>e[n]===t[n])}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,s,i){if(n.segments.length>i.length){return!!ju(n.segments.slice(0,i.length),i)&&!s.hasChildren()}if(n.segments.length===i.length){if(!ju(n.segments,i))return!1;for(const e in s.children){if(!n.children[e])return!1;if(!t(n.children[e],s.children[e]))return!1}return!0}{const t=i.slice(0,n.segments.length),r=i.slice(n.segments.length);return!!ju(n.segments,t)&&!!n.children[yu]&&e(n.children[yu],s,r)}}(e,n,n.segments)}(t.root,e.root)}class Vu{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=bu(this.queryParams)),this._queryParamMap}toString(){return Hu.serialize(this)}}class $u{constructor(t,e){this.segments=t,this.children=e,this.parent=null,Mu(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Bu(this)}}class Lu{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=bu(this.parameters)),this._parameterMap}toString(){return Qu(this)}}function ju(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Uu(t,e){let n=[];return Mu(t.children,(t,s)=>{s===yu&&(n=n.concat(e(t,s)))}),Mu(t.children,(t,s)=>{s!==yu&&(n=n.concat(e(t,s)))}),n}class zu{}class Fu{parse(t){const e=new eh(t);return new Vu(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){var e;return`${`/${function t(e,n){if(!e.hasChildren())return Bu(e);if(n){const n=e.children[yu]?t(e.children[yu],!1):"",s=[];return Mu(e.children,(e,n)=>{n!==yu&&s.push(`${n}:${t(e,!1)}`)}),s.length>0?`${n}(${s.join("//")})`:n}{const n=Uu(e,(n,s)=>s===yu?[t(e.children[yu],!1)]:[`${s}:${t(n,!1)}`]);return`${Bu(e)}/(${n.join("//")})`}}(t.root,!0)}`}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Wu(e)}=${Wu(t)}`).join("&"):`${Wu(e)}=${Wu(n)}`});return e.length?`?${e.join("&")}`:""}(t.queryParams)}${"string"==typeof t.fragment?`#${e=t.fragment,encodeURI(e)}`:""}`}}const Hu=new Fu;function Bu(t){return t.segments.map(t=>Qu(t)).join("/")}function Gu(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Wu(t){return Gu(t).replace(/%3B/gi,";")}function Yu(t){return Gu(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function qu(t){return decodeURIComponent(t)}function Zu(t){return qu(t.replace(/\+/g,"%20"))}function Qu(t){return`${Yu(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Yu(t)}=${Yu(e[t])}`).join("")}`;var e}const Xu=/^[^\/()?;=#]+/;function Ku(t){const e=t.match(Xu);return e?e[0]:""}const Ju=/^[^=?&#]+/,th=/^[^?&#]+/;class eh{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new $u([],{}):new $u([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[yu]=new $u(t,e)),n}parseSegment(){const t=Ku(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Lu(qu(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Ku(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Ku(this.remaining);t&&this.capture(n=t)}t[qu(e)]=qu(n)}parseQueryParam(t){const e=function(t){const e=t.match(Ju);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(th);return e?e[0]:""}(this.remaining);t&&this.capture(n=t)}const s=Zu(e),i=Zu(n);if(t.hasOwnProperty(s)){let e=t[s];Array.isArray(e)||(t[s]=e=[e]),e.push(i)}else t[s]=i}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Ku(this.remaining),s=this.remaining[n.length];if("/"!==s&&")"!==s&&";"!==s)throw new Error(`Cannot parse url '${this.url}'`);let i=void 0;n.indexOf(":")>-1?(i=n.substr(0,n.indexOf(":")),this.capture(i),this.capture(":")):t&&(i=yu);const r=this.parseChildren();e[i]=1===Object.keys(r).length?r[yu]:new $u([],r),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class nh{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=sh(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=sh(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=ih(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return ih(t,this._root).map(t=>t.value)}}function sh(t,e){if(t===e.value)return e;for(const n of e.children){const e=sh(t,n);if(e)return e}return null}function ih(t,e){if(t===e.value)return[e];for(const n of e.children){const s=ih(t,n);if(s.length)return s.unshift(e),s}return[]}class rh{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function oh(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class lh extends nh{constructor(t,e){super(t),this.snapshot=e,ph(this,t)}toString(){return this.snapshot.toString()}}function ah(t,e){const n=function(t,e){const n=new hh([],{},{},"",{},yu,e,null,t.root,-1,{});return new dh("",new rh(n,[]))}(t,e),s=new Kl([new Lu("",{})]),i=new Kl({}),r=new Kl({}),o=new Kl({}),l=new Kl(""),a=new ch(s,i,o,l,r,yu,e,n.root);return a.snapshot=n.root,new lh(new rh(a,[]),n)}class ch{constructor(t,e,n,s,i,r,o,l){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=i,this.outlet=r,this.component=o,this._futureSnapshot=l}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(F(t=>bu(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(F(t=>bu(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function uh(t,e="emptyOnly"){const n=t.pathFromRoot;let s=0;if("always"!==e)for(s=n.length-1;s>=1;){const t=n[s],e=n[s-1];if(t.routeConfig&&""===t.routeConfig.path)s--;else{if(e.component)break;s--}}return function(t){return t.reduce((t,e)=>({params:Object.assign({},t.params,e.params),data:Object.assign({},t.data,e.data),resolve:Object.assign({},t.resolve,e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(s))}class hh{constructor(t,e,n,s,i,r,o,l,a,c,u){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=i,this.outlet=r,this.component=o,this.routeConfig=l,this._urlSegment=a,this._lastPathIndex=c,this._resolve=u}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=bu(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=bu(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class dh extends nh{constructor(t,e){super(e),this.url=t,ph(this,e)}toString(){return fh(this._root)}}function ph(t,e){e.value._routerState=t,e.children.forEach(e=>ph(t,e))}function fh(t){const e=t.children.length>0?` { ${t.children.map(fh).join(", ")} } `:"";return`${t.value}${e}`}function gh(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Ru(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Ru(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nRu(t.parameters,s[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||mh(t.parent,e.parent))}function _h(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function vh(t,e,n,s,i){let r={};return s&&Mu(s,(t,e)=>{r[e]=Array.isArray(t)?t.map(t=>`${t}`):`${t}`}),new Vu(n.root===t?e:function t(e,n,s){const i={};return Mu(e.children,(e,r)=>{i[r]=e===n?s:t(e,n,s)}),new $u(e.segments,i)}(n.root,t,e),r,i)}class yh{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&_h(n[0]))throw new Error("Root segment cannot have matrix parameters");const s=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(s&&s!==Au(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class wh{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function bh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[yu]:`${t}`}function Ch(t,e,n){if(t||(t=new $u([],{})),0===t.segments.length&&t.hasChildren())return xh(t,e,n);const s=function(t,e,n){let s=0,i=e;const r={match:!1,pathIndex:0,commandIndex:0};for(;i=n.length)return r;const e=t.segments[i],o=bh(n[s]),l=s0&&void 0===o)break;if(o&&l&&"object"==typeof l&&void 0===l.outlets){if(!Th(o,l,e))return r;s+=2}else{if(!Th(o,{},e))return r;s++}i++}return{match:!0,pathIndex:i,commandIndex:s}}(t,e,n),i=n.slice(s.commandIndex);if(s.match&&s.pathIndex{null!==n&&(i[s]=Ch(t.children[s],e,n))}),Mu(t.children,(t,e)=>{void 0===s[e]&&(i[e]=t)}),new $u(t.segments,i)}}function Sh(t,e,n){const s=t.segments.slice(0,e);let i=0;for(;i{null!==t&&(e[n]=Sh(new $u([],{}),0,t))}),e}function kh(t){const e={};return Mu(t,(t,n)=>e[n]=`${t}`),e}function Th(t,e,n){return t==n.path&&Ru(e,n.parameters)}const Oh=(t,e,n)=>F(s=>(new Ih(e,s.targetRouterState,s.currentRouterState,n).activate(t),s));class Ih{constructor(t,e,n,s){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=s}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),gh(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const s=oh(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,s[e],n),delete s[e]}),Mu(s,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const s=t.value,i=e?e.value:null;if(s===i)if(s.component){const i=n.getContext(s.outlet);i&&this.deactivateChildRoutes(t,e,i.children)}else this.deactivateChildRoutes(t,e,n);else i&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),s=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:s})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const s=oh(t),i=t.value.component?n.children:e;Mu(s,(t,e)=>this.deactivateRouteAndItsChildren(t,i)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const s=oh(e);t.children.forEach(t=>{this.activateRoutes(t,s[t.value.outlet],n),this.forwardEvent(new mu(t.value.snapshot))}),t.children.length&&this.forwardEvent(new fu(t.value.snapshot))}activateRoutes(t,e,n){const s=t.value,i=e?e.value:null;if(gh(s),s===i)if(s.component){const i=n.getOrCreateContext(s.outlet);this.activateChildRoutes(t,e,i.children)}else this.activateChildRoutes(t,e,n);else if(s.component){const e=n.getOrCreateContext(s.outlet);if(this.routeReuseStrategy.shouldAttach(s.snapshot)){const t=this.routeReuseStrategy.retrieve(s.snapshot);this.routeReuseStrategy.store(s.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),Rh(t.route)}else{const n=function(t){for(let e=s.snapshot.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(),i=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=s,e.resolver=i,e.outlet&&e.outlet.activateWith(s,i),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Rh(t){gh(t.value),t.children.forEach(Rh)}function Ph(t){return"function"==typeof t}function Ah(t){return t instanceof Vu}class Mh{constructor(t){this.segmentGroup=t||null}}class Nh{constructor(t){this.urlTree=t}}function Dh(t){return new b(e=>e.error(new Mh(t)))}function Vh(t){return new b(e=>e.error(new Nh(t)))}function $h(t){return new b(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class Lh{constructor(t,e,n,s,i){this.configLoader=e,this.urlSerializer=n,this.urlTree=s,this.config=i,this.allowRedirects=!0,this.ngModule=t.get(tn)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,yu).pipe(F(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(Ca(t=>{if(t instanceof Nh)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof Mh)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,yu).pipe(F(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(Ca(t=>{if(t instanceof Mh)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const s=t.segments.length>0?new $u([],{[yu]:t}):t;return new Vu(s,e,n)}expandSegmentGroup(t,e,n,s){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(F(t=>new $u([],t))):this.expandSegment(t,n,e,n.segments,s,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Xl({});const n=[],s=[],i={};return Mu(t,(t,r)=>{const o=e(r,t).pipe(F(t=>i[r]=t));r===yu?n.push(o):s.push(o)}),Xl.apply(null,n.concat(s)).pipe(ra(),ba(),F(()=>i))}(n.children,(n,s)=>this.expandSegmentGroup(t,e,s,n))}expandSegment(t,e,n,s,i,r){return Xl(...n).pipe(F(o=>this.expandSegmentAgainstRoute(t,e,n,o,s,i,r).pipe(Ca(t=>{if(t instanceof Mh)return Xl(null);throw t}))),ra(),Oa(t=>!!t),Ca((t,n)=>{if(t instanceof ta||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,s,i))return Xl(new $u([],{}));throw new Mh(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,s,i,r,o){return Fh(s)!==r?Dh(e):void 0===s.redirectTo?this.matchSegmentAgainstRoute(t,e,s,i):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r):Dh(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r){return"**"===s.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,s,r):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,s){const i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Vh(i):this.lineralizeSegments(n,i).pipe(Y(n=>{const i=new $u(n,{});return this.expandSegment(t,i,e,n,s,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r){const{matched:o,consumedSegments:l,lastChild:a,positionalParamSegments:c}=jh(e,s,i);if(!o)return Dh(e);const u=this.applyRedirectCommands(l,s.redirectTo,c);return s.redirectTo.startsWith("/")?Vh(u):this.lineralizeSegments(s,u).pipe(Y(s=>this.expandSegment(t,e,n,s.concat(i.slice(a)),r,!1)))}matchSegmentAgainstRoute(t,e,n,s){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(F(t=>(n._loadedConfig=t,new $u(s,{})))):Xl(new $u(s,{}));const{matched:i,consumedSegments:r,lastChild:o}=jh(e,n,s);if(!i)return Dh(e);const l=s.slice(o);return this.getChildConfig(t,n,s).pipe(Y(t=>{const n=t.module,s=t.routes,{segmentGroup:i,slicedSegments:o}=function(t,e,n,s){return n.length>0&&function(t,e,n){return s.some(n=>zh(t,e,n)&&Fh(n)!==yu)}(t,n)?{segmentGroup:Uh(new $u(e,function(t,e){const n={};n[yu]=e;for(const s of t)""===s.path&&Fh(s)!==yu&&(n[Fh(s)]=new $u([],{}));return n}(s,new $u(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return s.some(n=>zh(t,e,n))}(t,n)?{segmentGroup:Uh(new $u(t.segments,function(t,e,n,s){const i={};for(const r of n)zh(t,e,r)&&!s[Fh(r)]&&(i[Fh(r)]=new $u([],{}));return Object.assign({},s,i)}(t,n,s,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,r,l,s);return 0===o.length&&i.hasChildren()?this.expandChildren(n,s,i).pipe(F(t=>new $u(r,t))):0===s.length&&0===o.length?Xl(new $u(r,{})):this.expandSegment(n,i,s,o,yu,!0).pipe(F(t=>new $u(r.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Xl(new Eu(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Xl(e._loadedConfig):function(t,e,n){const s=e.canLoad;return s&&0!==s.length?W(s).pipe(F(s=>{const i=t.get(s);let r;if(function(t){return t&&Ph(t.canLoad)}(i))r=i.canLoad(e,n);else{if(!Ph(i))throw new Error("Invalid CanLoad guard");r=i(e,n)}return Nu(r)})).pipe(ra(),(i=(t=>!0===t),t=>t.lift(new Ia(i,void 0,t)))):Xl(!0);var i}(t.injector,e,n).pipe(Y(n=>n?this.configLoader.load(t.injector,e).pipe(F(t=>(e._loadedConfig=t,t))):function(t){return new b(e=>e.error(xu(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Xl(new Eu([],t))}lineralizeSegments(t,e){let n=[],s=e.root;for(;;){if(n=n.concat(s.segments),0===s.numberOfChildren)return Xl(n);if(s.numberOfChildren>1||!s.children[yu])return $h(t.redirectTo);s=s.children[yu]}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,s){const i=this.createSegmentGroup(t,e.root,n,s);return new Vu(i,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return Mu(t,(t,s)=>{if("string"==typeof t&&t.startsWith(":")){const i=t.substring(1);n[s]=e[i]}else n[s]=t}),n}createSegmentGroup(t,e,n,s){const i=this.createSegments(t,e.segments,n,s);let r={};return Mu(e.children,(e,i)=>{r[i]=this.createSegmentGroup(t,e,n,s)}),new $u(i,r)}createSegments(t,e,n,s){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,s):this.findOrReturn(e,n))}findPosParam(t,e,n){const s=n[e.path.substring(1)];if(!s)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return s}findOrReturn(t,e){let n=0;for(const s of e){if(s.path===t.path)return e.splice(n),s;n++}return t}}function jh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const s=(e.matcher||Su)(n,t,e);return s?{matched:!0,consumedSegments:s.consumed,lastChild:s.consumed.length,positionalParamSegments:s.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Uh(t){if(1===t.numberOfChildren&&t.children[yu]){const e=t.children[yu];return new $u(t.segments.concat(e.segments),e.children)}return t}function zh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Fh(t){return t.outlet||yu}class Hh{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Bh{constructor(t,e){this.component=t,this.route=e}}function Gh(t,e,n){const s=t._root;return function t(e,n,s,i,r={canDeactivateChecks:[],canActivateChecks:[]}){const o=oh(n);return e.children.forEach(e=>{!function(e,n,s,i,r={canDeactivateChecks:[],canActivateChecks:[]}){const o=e.value,l=n?n.value:null,a=s?s.getContext(e.value.outlet):null;if(l&&o.routeConfig===l.routeConfig){const c=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!ju(t.url,e.url);case"pathParamsOrQueryParamsChange":return!ju(t.url,e.url)||!Ru(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!mh(t,e)||!Ru(t.queryParams,e.queryParams);case"paramsChange":default:return!mh(t,e)}}(l,o,o.routeConfig.runGuardsAndResolvers);if(c?r.canActivateChecks.push(new Hh(i)):(o.data=l.data,o._resolvedData=l._resolvedData),t(e,n,o.component?a?a.children:null:s,i,r),c){r.canDeactivateChecks.push(new Bh(a&&a.outlet&&a.outlet.component||null,l))}}else l&&Yh(n,a,r),r.canActivateChecks.push(new Hh(i)),t(e,null,o.component?a?a.children:null:s,i,r)}(e,o[e.value.outlet],s,i.concat([e.value]),r),delete o[e.value.outlet]}),Mu(o,(t,e)=>Yh(t,s.getContext(e),r)),r}(s,e?e._root:null,n,[s.value])}function Wh(t,e,n){const s=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(s?s.module.injector:n).get(t)}function Yh(t,e,n){const s=oh(t),i=t.value;Mu(s,(t,s)=>{Yh(t,i.component?e?e.children.getContext(s):null:e,n)}),n.canDeactivateChecks.push(new Bh(i.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,i))}const qh=Symbol("INITIAL_VALUE");function Zh(){return Pa(t=>(function(...t){let e=null,n=null;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&a(t[0])&&(t=t[0]),G(t,n).lift(new na(e))})(...t.map(t=>t.pipe(Ea(1),Da(qh)))).pipe(Va((t,e)=>{let n=!1;return e.reduce((t,s,i)=>{if(t!==qh)return t;if(s===qh&&(n=!0),!n){if(!1===s)return s;if(i===e.length-1||Ah(s))return s}return t},t)},qh),oa(t=>t!==qh),F(t=>Ah(t)?t:!0===t),Ea(1)))}function Qh(t,e){return null!==t&&e&&e(new gu(t)),Xl(!0)}function Xh(t,e){return null!==t&&e&&e(new pu(t)),Xl(!0)}function Kh(t,e,n){const s=e.routeConfig?e.routeConfig.canActivate:null;return s&&0!==s.length?Xl(s.map(s=>ia(()=>{const i=Wh(s,e,n);let r;if(function(t){return t&&Ph(t.canActivate)}(i))r=Nu(i.canActivate(e,t));else{if(!Ph(i))throw new Error("Invalid CanActivate guard");r=Nu(i(e,t))}return r.pipe(Oa())}))).pipe(Zh()):Xl(!0)}function Jh(t,e,n){const s=e[e.length-1],i=e.slice(0,e.length-1).reverse().map(t=>(function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null})(t)).filter(t=>null!==t).map(e=>ia(()=>Xl(e.guards.map(i=>{const r=Wh(i,e.node,n);let o;if(function(t){return t&&Ph(t.canActivateChild)}(r))o=Nu(r.canActivateChild(s,t));else{if(!Ph(r))throw new Error("Invalid CanActivateChild guard");o=Nu(r(s,t))}return o.pipe(Oa())})).pipe(Zh())));return Xl(i).pipe(Zh())}class td{}class ed{constructor(t,e,n,s,i,r){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=s,this.paramsInheritanceStrategy=i,this.relativeLinkResolution=r}recognize(){try{const e=id(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,n=this.processSegmentGroup(this.config,e,yu),s=new hh([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},yu,this.rootComponentType,null,this.urlTree.root,-1,{}),i=new rh(s,n),r=new dh(this.url,i);return this.inheritParamsAndData(r._root),Xl(r)}catch(t){return new b(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=uh(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Uu(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};n.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),s=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${s}'.`)}e[t.value.outlet]=t.value})}(),n.sort((t,e)=>t.value.outlet===yu?-1:e.value.outlet===yu?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,s){for(const r of t)try{return this.processSegmentAgainstRoute(r,e,n,s)}catch(i){if(!(i instanceof td))throw i}if(this.noLeftoversInUrl(e,n,s))return[];throw new td}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,s){if(t.redirectTo)throw new td;if((t.outlet||yu)!==s)throw new td;let i,r=[],o=[];if("**"===t.path){const r=n.length>0?Au(n).parameters:{};i=new hh(n,r,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,ld(t),s,t.component,t,nd(e),sd(e)+n.length,ad(t))}else{const l=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new td;return{consumedSegments:[],lastChild:0,parameters:{}}}const s=(e.matcher||Su)(n,t,e);if(!s)throw new td;const i={};Mu(s.posParams,(t,e)=>{i[e]=t.path});const r=s.consumed.length>0?Object.assign({},i,s.consumed[s.consumed.length-1].parameters):i;return{consumedSegments:s.consumed,lastChild:s.consumed.length,parameters:r}}(e,t,n);r=l.consumedSegments,o=n.slice(l.lastChild),i=new hh(r,l.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,ld(t),s,t.component,t,nd(e),sd(e)+r.length,ad(t))}const l=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:a,slicedSegments:c}=id(e,r,o,l,this.relativeLinkResolution);if(0===c.length&&a.hasChildren()){const t=this.processChildren(l,a);return[new rh(i,t)]}if(0===l.length&&0===c.length)return[new rh(i,[])];const u=this.processSegment(l,a,c,yu);return[new rh(i,u)]}}function nd(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function sd(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function id(t,e,n,s,i){if(n.length>0&&function(t,e,n){return s.some(n=>rd(t,e,n)&&od(n)!==yu)}(t,n)){const i=new $u(e,function(t,e,n,s){const i={};i[yu]=s,s._sourceSegment=t,s._segmentIndexShift=e.length;for(const r of n)if(""===r.path&&od(r)!==yu){const n=new $u([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,i[od(r)]=n}return i}(t,e,s,new $u(n,t.children)));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return s.some(n=>rd(t,e,n))}(t,n)){const r=new $u(t.segments,function(t,e,n,s,i,r){const o={};for(const l of s)if(rd(t,n,l)&&!i[od(l)]){const n=new $u([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===r?t.segments.length:e.length,o[od(l)]=n}return Object.assign({},i,o)}(t,e,n,s,t.children,i));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:n}}const r=new $u(t.segments,t.children);return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:n}}function rd(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function od(t){return t.outlet||yu}function ld(t){return t.data||{}}function ad(t){return t.resolve||{}}function cd(t,e,n,s){const i=Wh(t,e,s);return Nu(i.resolve?i.resolve(e,n):i(e,n))}function ud(t){return function(e){return e.pipe(Pa(e=>{const n=t(e);return n?W(n).pipe(F(()=>e)):W([e])}))}}class hd{}class dd{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const pd=new Rt("ROUTES");class fd{constructor(t,e,n,s){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=s}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(F(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const s=n.create(t);return new Eu(Pu(s.injector.get(pd)).map(Iu),s)}))}loadModuleFactory(t){return"string"==typeof t?W(this.loader.load(t)):Nu(t()).pipe(Y(t=>t instanceof en?Xl(t):W(this.compiler.compileModuleAsync(t))))}}class gd{}class md{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function _d(t){throw t}function vd(t,e,n){return e.parse("/")}function yd(t,e){return Xl(null)}class wd{constructor(t,e,n,s,i,r,o,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=s,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new T,this.errorHandler=_d,this.malformedUriErrorHandler=vd,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:yd,afterPreactivation:yd},this.urlHandlingStrategy=new md,this.routeReuseStrategy=new dd,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=i.get(tn),this.console=i.get($i);const a=i.get(Ji);this.isNgZoneEnabled=a instanceof Ji,this.resetConfig(l),this.currentUrlTree=new Vu(new $u([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new fd(r,o,t=>this.triggerEvent(new hu(t)),t=>this.triggerEvent(new du(t))),this.routerState=ah(this.currentUrlTree,this.rootComponentType),this.transitions=new Kl({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(oa(t=>0!==t.id),F(t=>Object.assign({},t,{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Pa(t=>{let n=!1,s=!1;return Xl(t).pipe(fa(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign({},this.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Pa(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Xl(t).pipe(Pa(t=>{const n=this.transitions.getValue();return e.next(new nu(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?ql:[t]}),Pa(t=>Promise.resolve(t)),function(t,e,n,s){return function(i){return i.pipe(Pa(i=>(function(t,e,n,s,r){return new Lh(t,e,n,i.extractedUrl,r).apply()})(t,e,n,0,s).pipe(F(t=>Object.assign({},i,{urlAfterRedirects:t})))))}}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),fa(t=>{this.currentNavigation=Object.assign({},this.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,e,n,s,i){return function(r){return r.pipe(Y(r=>(function(t,e,n,s,i="emptyOnly",r="legacy"){return new ed(t,e,n,s,i,r).recognize()})(t,e,r.urlAfterRedirects,n(r.urlAfterRedirects),s,i).pipe(F(t=>Object.assign({},r,{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),fa(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),fa(t=>{const n=new ou(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:s,source:i,restoredState:r,extras:o}=t,l=new nu(n,this.serializeUrl(s),i,r);e.next(l);const a=ah(s,this.rootComponentType).snapshot;return Xl(Object.assign({},t,{targetSnapshot:a,urlAfterRedirects:s,extras:Object.assign({},o,{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),ql}),ud(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:i,extras:{skipLocationChange:r,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:i,skipLocationChange:!!r,replaceUrl:!!o})}),fa(t=>{const e=new lu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),F(t=>Object.assign({},t,{guards:Gh(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,currentSnapshot:i,guards:{canActivateChecks:r,canDeactivateChecks:o}}=n;return 0===o.length&&0===r.length?Xl(Object.assign({},n,{guardsResult:!0})):function(t,e,n,s){return W(o).pipe(Y(t=>(function(t,e,n,s,i){const r=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return r&&0!==r.length?Xl(r.map(r=>{const o=Wh(r,e,i);let l;if(function(t){return t&&Ph(t.canDeactivate)}(o))l=Nu(o.canDeactivate(t,e,n,s));else{if(!Ph(o))throw new Error("Invalid CanDeactivate guard");l=Nu(o(t,e,n,s))}return l.pipe(Oa())})).pipe(Zh()):Xl(!0)})(t.component,t.route,n,e,s)),Oa(t=>!0!==t,!0))}(0,s,i,t).pipe(Y(n=>n&&function(t){return"boolean"==typeof n}()?function(t,e,n,s){return W(r).pipe(ja(e=>W([Xh(e.route.parent,s),Qh(e.route,s),Jh(t,e.path,n),Kh(t,e.route,n)]).pipe(ra(),Oa(t=>!0!==t,!0))),Oa(t=>!0!==t,!0))}(s,0,t,e):Xl(n)),F(t=>Object.assign({},n,{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),fa(t=>{if(Ah(t.guardsResult)){const e=xu(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),fa(t=>{const e=new au(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),oa(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new iu(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),ud(t=>{if(t.guards.canActivateChecks.length)return Xl(t).pipe(fa(t=>{const e=new cu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,guards:{canActivateChecks:i}}=n;return i.length?W(i).pipe(ja(n=>(function(t,e,n,i){return function(t,e,n,s){const i=Object.keys(t);if(0===i.length)return Xl({});if(1===i.length){const r=i[0];return cd(t[r],e,n,s).pipe(F(t=>({[r]:t})))}const r={};return W(i).pipe(Y(i=>cd(t[i],e,n,s).pipe(F(t=>(r[i]=t,t))))).pipe(ba(),F(()=>r))}(t._resolve,t,s,i).pipe(F(e=>(t._resolvedData=e,t.data=Object.assign({},t.data,uh(t,n).resolve),null)))})(n.route,0,t,e)),function(t,e){return arguments.length>=2?function(e){return y(Va(t,void 0),ha(1),va(void 0))(e)}:function(e){return y(Va((e,n,s)=>t(e)),ha(1))(e)}}((t,e)=>t),F(t=>n)):Xl(n)}))}}(this.paramsInheritanceStrategy,this.ngModule.injector),fa(t=>{const e=new uu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}))}),ud(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:i,extras:{skipLocationChange:r,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:i,skipLocationChange:!!r,replaceUrl:!!o})}),F(t=>{const e=function(t,e,n){const s=function t(e,n,s){if(s&&e.shouldReuseRoute(n.value,s.value.snapshot)){const i=s.value;i._futureSnapshot=n.value;const r=function(e,n,s){return n.children.map(n=>{for(const i of s.children)if(e.shouldReuseRoute(i.value.snapshot,n.value))return t(e,n,i);return t(e,n)})}(e,n,s);return new rh(i,r)}{const s=e.retrieve(n.value);if(s){const t=s.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let s=0;st(e,n));return new rh(s,r)}}var i}(t,e._root,n?n._root:void 0);return new lh(s,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign({},t,{targetRouterState:e})}),fa(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),Oh(this.rootContexts,this.routeReuseStrategy,t=>this.triggerEvent(t)),fa({next(){n=!0},complete(){n=!0}}),function(t){return e=>e.lift(new Ua(t))}(()=>{if(!n&&!s){this.resetUrlToCurrentUrlTree();const n=new iu(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null}),Ca(n=>{if(s=!0,function(t){return n&&n[Cu]}()){const s=Ah(n.url);s||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const i=new iu(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(i),t.resolve(!1),s&&this.navigateByUrl(n.url)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const s=new ru(t.id,this.serializeUrl(t.extractedUrl),n);e.next(s);try{t.resolve(this.errorHandler(n))}catch(i){t.reject(i)}}return ql}))}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign({},this.getTransition(),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",s=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,s,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){ku(t),this.config=t.map(Iu),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:s,fragment:i,preserveQueryParams:r,queryParamsHandling:o,preserveFragment:l}=e;le()&&r&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const a=n||this.routerState.root,c=l?this.currentUrlTree.fragment:i;let u=null;if(o)switch(o){case"merge":u=Object.assign({},this.currentUrlTree.queryParams,s);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=s||null}else u=r?this.currentUrlTree.queryParams:s||null;return null!==u&&(u=this.removeEmptyProps(u)),function(t,e,n,s,i){if(0===n.length)return vh(e.root,e.root,e,s,i);const r=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new yh(!0,0,t);let e=0,n=!1;const s=t.reduce((t,s,i)=>{if("object"==typeof s&&null!=s){if(s.outlets){const e={};return Mu(s.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(s.segmentPath)return[...t,s.segmentPath]}return"string"!=typeof s?[...t,s]:0===i?(s.split("/").forEach((s,i)=>{0==i&&"."===s||(0==i&&""===s?n=!0:".."===s?e++:""!=s&&t.push(s))}),t):[...t,s]},[]);return new yh(n,e,s)}(n);if(r.toRoot())return vh(e.root,new $u([],{}),e,s,i);const o=function(t,n,s){if(t.isAbsolute)return new wh(e.root,!0,0);if(-1===s.snapshot._lastPathIndex)return new wh(s.snapshot._urlSegment,!0,0);const i=_h(t.commands[0])?0:1;return function(e,n,r){let o=s.snapshot._urlSegment,l=s.snapshot._lastPathIndex+i,a=t.numberOfDoubleDots;for(;a>l;){if(a-=l,!(o=o.parent))throw new Error("Invalid number of '../'");l=o.segments.length}return new wh(o,!1,l-a)}()}(r,0,t),l=o.processChildren?xh(o.segmentGroup,o.index,r.commands):Ch(o.segmentGroup,o.index,r.commands);return vh(o.segmentGroup,l,e,s,i)}(a,this.currentUrlTree,t,u,c)}navigateByUrl(t,e={skipLocationChange:!1}){le()&&this.isNgZoneEnabled&&!Ji.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=Ah(t)?t:this.parseUrl(t),s=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(s,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const s=t[n];return null!=s&&(e[n]=s),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new su(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,s){const i=this.getTransition();if(i&&"imperative"!==e&&"imperative"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(i&&"hashchange"==e&&"popstate"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(i&&"popstate"==e&&"hashchange"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);let r=null,o=null;const l=new Promise((t,e)=>{r=t,o=e}),a=++this.navigationId;return this.setTransition({id:a,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:s,resolve:r,reject:o,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,s){const i=this.urlSerializer.serialize(t);s=s||{},this.location.isCurrentPathEqualTo(i)||e?this.location.replaceState(i,"",Object.assign({},s,{navigationId:n})):this.location.go(i,"",Object.assign({},s,{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}class bd{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new Cd,this.attachRef=null}}class Cd{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new bd,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}const xd=(()=>(class{constructor(t,e,n,s,i){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=i,this.activated=null,this._activatedRoute=null,this.activateEvents=new ki,this.deactivateEvents=new ki,this.name=s||yu,t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),s=this.parentContexts.getOrCreateContext(this.name).children,i=new Sd(t,s,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,i),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}))();class Sd{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===ch?this.route:t===Cd?this.childContexts:this.parent.get(t,e)}}class Ed{}class kd{preload(t,e){return e().pipe(Ca(()=>Xl(null)))}}class Td{preload(t,e){return Xl(null)}}const Od=(()=>(class{constructor(t,e,n,s,i){this.router=t,this.injector=s,this.preloadingStrategy=i,this.loader=new fd(e,n,e=>t.triggerEvent(new hu(e)),e=>t.triggerEvent(new du(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(oa(t=>t instanceof su),ja(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(tn);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const s of e)if(s.loadChildren&&!s.canLoad&&s._loadedConfig){const t=s._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else s.loadChildren&&!s.canLoad?n.push(this.preloadConfig(t,s)):s.children&&n.push(this.processRoutes(t,s.children));return W(n).pipe(X(),F(t=>void 0))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Y(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}))();class Id{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof nu?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof su&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof _u&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new _u(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}const Rd=new Rt("ROUTER_CONFIGURATION"),Pd=new Rt("ROUTER_FORROOT_GUARD"),Ad=[vl,{provide:zu,useClass:Fu},{provide:wd,useFactory:jd,deps:[vr,zu,Cd,vl,Dt,Oi,Hi,pd,Rd,[gd,new ht],[hd,new ht]]},Cd,{provide:ch,useFactory:Ud,deps:[wd]},{provide:Oi,useClass:Cr},Od,Td,kd,{provide:Rd,useValue:{enableTracing:!1}}];function Md(){return new pr("Router",wd)}const Nd=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[Ad,Ld(e),{provide:Pd,useFactory:$d,deps:[[wd,new ht,new pt]]},{provide:Rd,useValue:n||{}},{provide:ml,useFactory:Vd,deps:[fl,[new ut(_l),new ht],Rd]},{provide:Id,useFactory:Dd,deps:[wd,Wl,Rd]},{provide:Ed,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:Td},{provide:pr,multi:!0,useFactory:Md},[zd,{provide:Ii,multi:!0,useFactory:Fd,deps:[zd]},{provide:Bd,useFactory:Hd,deps:[zd]},{provide:Vi,multi:!0,useExisting:Bd}]]}}static forChild(e){return{ngModule:t,providers:[Ld(e)]}}}return t})();function Dd(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Id(t,e,n)}function Vd(t,e,n={}){return n.useHash?new wl(t,e):new bl(t,e)}function $d(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function Ld(t){return[{provide:Kt,multi:!0,useValue:t},{provide:pd,multi:!0,useValue:t}]}function jd(t,e,n,s,i,r,o,l,a={},c,u){const h=new wd(null,e,n,s,i,r,o,Pu(l));if(c&&(h.urlHandlingStrategy=c),u&&(h.routeReuseStrategy=u),a.errorHandler&&(h.errorHandler=a.errorHandler),a.malformedUriErrorHandler&&(h.malformedUriErrorHandler=a.malformedUriErrorHandler),a.enableTracing){const t=Ha();h.events.subscribe(e=>{t.logGroup(`Router Event: ${e.constructor.name}`),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return a.onSameUrlNavigation&&(h.onSameUrlNavigation=a.onSameUrlNavigation),a.paramsInheritanceStrategy&&(h.paramsInheritanceStrategy=a.paramsInheritanceStrategy),a.urlUpdateStrategy&&(h.urlUpdateStrategy=a.urlUpdateStrategy),a.relativeLinkResolution&&(h.relativeLinkResolution=a.relativeLinkResolution),h}function Ud(t){return t.routerState.root}const zd=(()=>(class{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new T}appInitializer(){return this.injector.get(gl,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(wd),s=this.injector.get(Rd);if(this.isLegacyDisabled(s)||this.isLegacyEnabled(s))t(!0);else if("disabled"===s.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==s.initialNavigation)throw new Error(`Invalid initialNavigation options: '${s.initialNavigation}'`);n.hooks.afterPreactivation=(()=>this.initNavigation?Xl(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone)),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(Rd),n=this.injector.get(Od),s=this.injector.get(Id),i=this.injector.get(wd),r=this.injector.get(vr);t===r.components[0]&&(this.isLegacyEnabled(e)?i.initialNavigation():this.isLegacyDisabled(e)&&i.setUpLocationChangeListener(),n.setUpPreloading(),s.init(),i.resetRootComponentType(r.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}))();function Fd(t){return t.appInitializer.bind(t)}function Hd(t){return t.bootstrapListener.bind(t)}const Bd=new Rt("Router Initializer");var Gd=Xn({encapsulation:2,styles:[],data:{}});function Wd(t){return to(0,[(t()(),Lr(0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),ai(1,212992,null,0,xd,[Cd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,1,0)},null)}function Yd(t){return to(0,[(t()(),Lr(0,0,null,null,1,"ng-component",[],null,null,null,Wd,Gd)),ai(1,49152,null,0,vu,[],null,null)],null,null)}var qd=Ls("ng-component",vu,Yd,{},{},[]);const Zd="Dropdowns",Qd=(()=>(class{constructor(){this.klass="default",this.items=[],this.placeholder="Select item",this.searchChange=new ki,this.font_size=16,this.width=128,this.filtered_items=[]}ngOnChanges(t){t.items&&(this.list=this.items.map(t=>t instanceof Object?t:{id:t,name:t}),this.longest=this.list.reduce((t,e)=>e.name.length>t.name.length?e:t,{id:"",name:""}),this.filter())}ngAfterViewInit(){this.resize()}trackByFn(t,e){return e?"string"==typeof e?e:e.id:t}resize(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)}filter(){if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(t=>("string"==typeof t?t:t.name).toLowerCase().indexOf(this.search.toLowerCase())>=0)),this.options&&this.options.hide_active&&this.selected)){const t="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(e=>("string"==typeof e?e:e.id).indexOf(t)<0)}}toggleShow(){this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(()=>{this.input&&this.input.nativeElement.focus()},100)}updateScroll(){if(!this.viewport||!this.scroll_el)return setTimeout(()=>this.updateScroll(),50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;const t="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(e=>("string"==typeof e?e:e.id)===t))}select(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)}change(t){const e="string"==typeof this.selected?this.selected:this.selected.id,n=this.filtered_items.findIndex(t=>("string"==typeof t?t:t.id)==e)+t;n>=0&&nthis.updateScroll(),100))}close(){this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null),this.close_timer=setTimeout(()=>this.show=!1,100)}cancelClose(){setTimeout(()=>{this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null)},50)}writeValue(t){this.selected=t,this.show=!1}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Xd=hl,Kd=(()=>{class t{constructor(){if(this.build=Xd(),!t.init){const e=Xd();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Zd} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Zd} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();function Jd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function tp(t){return Array.isArray(t)?t:[t]}function ep(t){return null==t?"":"string"==typeof t?t:`${t}px`}function np(t,e,n,i){return s(n)&&(i=n,n=void 0),i?np(t,e,n).pipe(F(t=>a(t)?i(...t):i(t))):new b(s=>{!function t(e,n,s,i,r){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,s,r),o=(()=>t.removeEventListener(n,s,r))}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,s),o=(()=>t.off(n,s))}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,s),o=(()=>t.removeListener(n,s))}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,l=e.length;o1?Array.prototype.slice.call(arguments):t)},s,n)})}class sp extends d{constructor(t,e){super()}schedule(t,e=0){return this}}class ip extends sp{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,s=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(s,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(s,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,s=void 0;try{this.work(t)}catch(i){n=!0,s=!!i&&i||new Error(i)}if(n)return this.unsubscribe(),s}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,s=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==s&&n.splice(s,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}class rp extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}const op=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=(()=>Date.now()),t})();class lp extends op{constructor(t,e=op.now){super(t,()=>lp.delegate&&lp.delegate!==this?lp.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return lp.delegate&&lp.delegate!==this?lp.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let 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}}}class ap extends lp{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,i=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s(function(t){const e=hp[t];e&&e()})(e)),e},clearImmediate(t){delete hp[t]}};class pp extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=dp.setImmediate(t.flush.bind(t,null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(dp.clearImmediate(e),t.scheduled=void 0)}}class fp extends lp{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,i=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s=0}function Cp(t){const{index:e,period:n,subscriber:s}=t;if(s.next(e),!s.closed){if(-1===n)return s.complete();t.index=e+1,this.schedule(t,n)}}function xp(t,e=vp){return n=(()=>(function(t=0,e,n){let s=-1;return bp(e)?s=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=vp),new b(e=>{const i=bp(t)?t:+t-n.now();return n.schedule(Cp,i,{index:0,period:s,subscriber:e})})})(t,e)),function(t){return t.lift(new yp(n))};var n}function Sp(t){return e=>e.lift(new Ep(t))}class Ep{constructor(t){this.notifier=t}call(t,e){const n=new kp(t),s=U(n,this.notifier);return s&&!n.seenValue?(n.add(s),e.subscribe(n)):n}}class kp extends z{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,s,i){this.seenValue=!0,this.complete()}notifyComplete(){}}class Tp{call(t,e){return e.subscribe(new Op(t))}}class Op extends g{constructor(t){super(t),this.hasPrev=!1}_next(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t}}class Ip extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}class Rp extends lp{}const Pp=new Rp(Ip);function Ap(t,e){return new b(e?n=>e.schedule(Mp,0,{error:t,subscriber:n}):e=>e.error(t))}function Mp({error:t,subscriber:e}){e.error(t)}var Np;!function(t){t.NEXT="N",t.ERROR="E",t.COMPLETE="C"}(Np||(Np={}));const Dp=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(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()}}do(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()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Xl(this.value);case"E":return Ap(this.error);case"C":return Zl()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})();class Vp extends g{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(Vp.dispatch,this.delay,new $p(t,this.destination)))}_next(t){this.scheduleMessage(Dp.createNext(t))}_error(t){this.scheduleMessage(Dp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(Dp.createComplete()),this.unsubscribe()}}class $p{constructor(t,e){this.notification=t,this.destination=e}}class Lp extends T{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift(),super.next(t)}nextTimeWindow(t){this._events.push(new jp(this._getNow(),t)),this._trimBufferThenGetEvents(),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),s=this.scheduler,i=n.length;let r;if(this.closed)throw new S;if(this.isStopped||this.hasError?r=d.EMPTY:(this.observers.push(t),r=new E(this,t)),s&&t.add(t=new Vp(t,s)),e)for(let o=0;oe&&(r=Math.max(r,i-e)),r>0&&s.splice(0,r),s}}class jp{constructor(t,e){this.time=t,this.value=e}}let Up;try{Up="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Lv){Up=!1}const zp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Gl(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&&!Up)&&"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.ngInjectableDef=mt({factory:function(){return new t(Ot(Di,8))},token:t,providedIn:"root"}),t})(),Fp=(()=>(class{}))(),Hp=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();let Bp;function Gp(){if("object"!=typeof document||!document)return Hp.NORMAL;if(!Bp){const 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";const n=document.createElement("div"),s=n.style;s.width="2px",s.height="1px",t.appendChild(n),document.body.appendChild(t),Bp=Hp.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Bp=0===t.scrollLeft?Hp.NEGATED:Hp.INVERTED),t.parentNode.removeChild(t)}return Bp}class Wp{}class Yp extends Wp{constructor(t){super(),this._data=t}connect(){return this._data instanceof b?this._data:Xl(this._data)}disconnect(){}}const qp=new Rt("VIRTUAL_SCROLL_STRATEGY");class Zp{constructor(t,e,n){this._scrolledIndexChange=new T,this.scrolledIndexChange=this._scrolledIndexChange.pipe(t=>t.lift(new mp(void 0,void 0))),this._viewport=null,this._itemSize=t,this._minBufferPx=e,this._maxBufferPx=n}attach(t){this._viewport=t,this._updateTotalContentSize(),this._updateRenderedRange()}detach(){this._scrolledIndexChange.complete(),this._viewport=null}updateItemAndBufferSize(t,e,n){if(n0&&(s.end=Math.min(r,s.end+t),s.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(s),this._viewport.setRenderedContentOffset(this._itemSize*s.start),this._scrolledIndexChange.next(Math.floor(e))}}function Qp(t){return t._scrollStrategy}const Xp=(()=>(class{constructor(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Zp(this.itemSize,this.minBufferPx,this.maxBufferPx)}get itemSize(){return this._itemSize}set itemSize(t){this._itemSize=Jd(t)}get minBufferPx(){return this._minBufferPx}set minBufferPx(t){this._minBufferPx=Jd(t)}get maxBufferPx(){return this._maxBufferPx}set maxBufferPx(t){this._maxBufferPx=Jd(t)}ngOnChanges(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}}))(),Kp=20,Jp=(()=>{class t{constructor(t,e){this._ngZone=t,this._platform=e,this._scrolled=new T,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=Kp){return this._platform.isBrowser?new b(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(xp(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Xl()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(oa(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,s)=>{this._scrollableContainsElement(s,t)&&e.push(s)}),e}_scrollableContainsElement(t,e){let n=e.nativeElement,s=t.getElementRef().nativeElement;do{if(n==s)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>np(window.document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Ji),Ot(zp))},token:t,providedIn:"root"}),t})(),tf=(()=>(class{constructor(t,e,n,s){this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=s,this._destroyed=new T,this._elementScrolled=new b(t=>this.ngZone.runOutsideAngular(()=>np(this.elementRef.nativeElement,"scroll").pipe(Sp(this._destroyed)).subscribe(t)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(t){const e=this.elementRef.nativeElement,n=this.dir&&"rtl"==this.dir.value;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Gp()!=Hp.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Gp()==Hp.INVERTED?t.left=t.right:Gp()==Hp.NEGATED&&(t.left=t.right?-t.right:t.right)):null!=t.right&&(t.left=e.scrollWidth-e.clientWidth-t.right),this._applyScrollToOptions(t)}_applyScrollToOptions(t){const e=this.elementRef.nativeElement;"object"==typeof document&&"scrollBehavior"in document.documentElement.style?e.scrollTo(t):(null!=t.top&&(e.scrollTop=t.top),null!=t.left&&(e.scrollLeft=t.left))}measureScrollOffset(t){const e=this.elementRef.nativeElement;if("top"==t)return e.scrollTop;if("bottom"==t)return e.scrollHeight-e.clientHeight-e.scrollTop;const n=this.dir&&"rtl"==this.dir.value;return"start"==t?t=n?"right":"left":"end"==t&&(t=n?"left":"right"),n&&Gp()==Hp.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Gp()==Hp.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft}}))(),ef="undefined"!=typeof requestAnimationFrame?cp:gp,nf=(()=>(class extends tf{constructor(t,e,n,s,i,r){if(super(t,r,n,i),this.elementRef=t,this._changeDetectorRef=e,this._scrollStrategy=s,this._detachedSubject=new T,this._renderedRangeSubject=new T,this.orientation="vertical",this.scrolledIndexChange=new b(t=>this._scrollStrategy.scrolledIndexChange.subscribe(e=>Promise.resolve().then(()=>this.ngZone.run(()=>t.next(e))))),this.renderedRangeStream=this._renderedRangeSubject.asObservable(),this._totalContentSizeTransform="",this._totalContentSize=0,this._renderedRange={start:0,end:0},this._dataLength=0,this._viewportSize=0,this._renderedContentOffset=0,this._renderedContentOffsetNeedsRewrite=!1,this._isChangeDetectionPending=!1,this._runAfterChangeDetection=[],!s)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.')}ngOnInit(){super.ngOnInit(),this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._measureViewportSize(),this._scrollStrategy.attach(this),this.elementScrolled().pipe(Da(null),xp(0,ef)).subscribe(()=>this._scrollStrategy.onContentScrolled()),this._markChangeDetectionNeeded()}))}ngOnDestroy(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),super.ngOnDestroy()}attach(t){if(this._forOf)throw Error("CdkVirtualScrollViewport is already attached.");this.ngZone.runOutsideAngular(()=>{this._forOf=t,this._forOf.dataStream.pipe(Sp(this._detachedSubject)).subscribe(t=>{const e=t.length;e!==this._dataLength&&(this._dataLength=e,this._scrollStrategy.onDataLengthChanged()),this._doChangeDetection()})})}detach(){this._forOf=null,this._detachedSubject.next()}getDataLength(){return this._dataLength}getViewportSize(){return this._viewportSize}getRenderedRange(){return this._renderedRange}setTotalContentSize(t){this._totalContentSize!==t&&(this._totalContentSize=t,this._totalContentSizeTransform=`scale${"horizontal"==this.orientation?"X":"Y"}(${this._totalContentSize})`,this._markChangeDetectionNeeded())}setRenderedRange(t){var e,n;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(()=>this._scrollStrategy.onContentRendered()))}getOffsetToRenderedContentStart(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}setRenderedContentOffset(t,e="to-start"){const n="horizontal"==this.orientation,s=n?"X":"Y";let i=`translate${s}(${Number((n&&this.dir&&"rtl"==this.dir.value?-1:1)*t)}px)`;this._renderedContentOffset=t,"to-end"===e&&(i+=` translate${s}(-100%)`,this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,this._markChangeDetectionNeeded(()=>{this._renderedContentOffsetNeedsRewrite?(this._renderedContentOffset-=this.measureRenderedContentSize(),this._renderedContentOffsetNeedsRewrite=!1,this.setRenderedContentOffset(this._renderedContentOffset)):this._scrollStrategy.onRenderedOffsetChanged()}))}scrollToOffset(t,e="auto"){const n={behavior:e};"horizontal"===this.orientation?n.start=t:n.top=t,this.scrollTo(n)}scrollToIndex(t,e="auto"){this._scrollStrategy.scrollToIndex(t,e)}measureScrollOffset(t){return super.measureScrollOffset(t||("horizontal"===this.orientation?"start":"top"))}measureRenderedContentSize(){const t=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?t.offsetWidth:t.offsetHeight}measureRangeSize(t){return this._forOf?this._forOf.measureRangeSize(t,this.orientation):0}checkViewportSize(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}_measureViewportSize(){const t=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?t.clientWidth:t.clientHeight}_markChangeDetectionNeeded(t){t&&this._runAfterChangeDetection.push(t),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._doChangeDetection()})))}_doChangeDetection(){this._isChangeDetectionPending=!1,this.ngZone.run(()=>this._changeDetectorRef.markForCheck()),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;const t=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(const e of t)e()}}))();function sf(t,e){if(!e.getBoundingClientRect)return 0;const n=e.getBoundingClientRect();return"horizontal"==t?n.width:n.height}const rf=(()=>(class{constructor(t,e,n,s,i){this._viewContainerRef=t,this._template=e,this._differs=n,this._viewport=s,this.viewChange=new T,this._dataSourceChanges=new T,this.cdkVirtualForTemplateCacheSize=20,this.dataStream=this._dataSourceChanges.pipe(Da(null),t=>t.lift(new Tp),Pa(([t,e])=>this._changeDataSource(t,e)),function(t,e,n){let s;return s={bufferSize:1,windowTime:void 0,refCount:!1,scheduler:void 0},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:s}){let i,r,o=0,l=!1,a=!1;return function(c){o++,i&&!l||(l=!1,i=new Lp(t,e,s),r=c.subscribe({next(t){i.next(t)},error(t){l=!0,i.error(t)},complete(){a=!0,i.complete()}}));const u=i.subscribe(this);this.add(()=>{o--,u.unsubscribe(),r&&!a&&n&&0===o&&(r.unsubscribe(),r=void 0,i=void 0)})}}(s))}()),this._differ=null,this._templateCache=[],this._needsUpdate=!1,this._destroyed=new T,this.dataStream.subscribe(t=>{this._data=t,this._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe(Sp(this._destroyed)).subscribe(t=>{this._renderedRange=t,i.run(()=>this.viewChange.next(this._renderedRange)),this._onRenderedDataChange()}),this._viewport.attach(this)}get cdkVirtualForOf(){return this._cdkVirtualForOf}set cdkVirtualForOf(t){this._cdkVirtualForOf=t;const e=function(t){return t&&"function"==typeof t.connect}(t)?t:new Yp(t instanceof b?t:Array.prototype.slice.call(t||[]));this._dataSourceChanges.next(e)}get cdkVirtualForTrackBy(){return this._cdkVirtualForTrackBy}set cdkVirtualForTrackBy(t){this._needsUpdate=!0,this._cdkVirtualForTrackBy=t?(e,n)=>t(e+(this._renderedRange?this._renderedRange.start:0),n):void 0}set cdkVirtualForTemplate(t){t&&(this._needsUpdate=!0,this._template=t)}measureRangeSize(t,e){if(t.start>=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");const n=t.start-this._renderedRange.start;let s=0,i=t.end-t.start;for(;i--;){const t=this._viewContainerRef.get(i+n);let r=t?t.rootNodes.length:0;for(;r--;)s+=sf(e,t.rootNodes[r])}return s}ngDoCheck(){if(this._differ&&this._needsUpdate){const t=this._differ.diff(this._renderedItems);t?this._applyChanges(t):this._updateContext(),this._needsUpdate=!1}}ngOnDestroy(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(let t of this._templateCache)t.destroy()}_onRenderedDataChange(){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)}_changeDataSource(t,e){return t&&t.disconnect(this),this._needsUpdate=!0,e?e.connect(this):Xl()}_updateContext(){const t=this._data.length;let e=this._viewContainerRef.length;for(;e--;){let n=this._viewContainerRef.get(e);n.context.index=this._renderedRange.start+e,n.context.count=t,this._updateComputedContextProperties(n.context),n.detectChanges()}}_applyChanges(t){t.forEachOperation((t,e,n)=>{if(null==t.previousIndex)this._insertViewForNewItem(n).context.$implicit=t.item;else if(null==n)this._cacheView(this._detachView(e));else{const s=this._viewContainerRef.get(e);this._viewContainerRef.move(s,n),s.context.$implicit=t.item}}),t.forEachIdentityChange(t=>{this._viewContainerRef.get(t.currentIndex).context.$implicit=t.item});const e=this._data.length;let n=this._viewContainerRef.length;for(;n--;){const t=this._viewContainerRef.get(n);t.context.index=this._renderedRange.start+n,t.context.count=e,this._updateComputedContextProperties(t.context)}}_cacheView(t){if(this._templateCache.length(class{}))(),lf=20,af=(()=>{class t{constructor(t,e){this._platform=t,e.runOutsideAngular(()=>{this._change=t.isBrowser?K(np(window,"resize"),np(window,"orientationchange")):Xl(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=document.documentElement,e=t.getBoundingClientRect();return{top:-e.top||document.body.scrollTop||window.scrollY||t.scrollTop||0,left:-e.left||document.body.scrollLeft||window.scrollX||t.scrollLeft||0}}change(t=lf){return t>0?this._change.pipe(xp(t)):this._change}_updateViewportSize(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zp),Ot(Ji))},token:t,providedIn:"root"}),t})();function cf(){throw Error("Host already has a portal attached")}class uf{attach(t){return null==t&&function(){throw Error("Attempting to attach a portal to a null PortalOutlet")}(),t.hasAttached()&&cf(),this._attachedHost=t,t.attach(this)}detach(){let 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())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class hf extends uf{constructor(t,e,n,s){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=s}}class df extends uf{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class pf{constructor(){this._isDisposed=!1}hasAttached(){return!!this._attachedPortal}attach(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&cf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof hf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof df?(this._attachedPortal=t,this.attachTemplatePortal(t)):void function(){throw Error("Attempting to attach an unknown Portal type. BasePortalOutlet accepts either a ComponentPortal or a TemplatePortal.")}()}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class ff extends pf{constructor(t,e,n,s){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=s}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.detectChanges(),n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}const gf=(()=>(class{}))();class mf{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=ep(-this._previousScrollPosition.left),t.style.top=ep(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,s=e.scrollBehavior||"",i=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=s,n.scrollBehavior=i}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}function _f(){return Error("Scroll strategy has already been attached.")}class vf{constructor(t,e,n,s){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=s,this._scrollSubscription=null,this._detach=(()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())})}attach(t){if(this._overlayRef)throw _f();this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class yf{enable(){}disable(){}attach(){}}function wf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function bf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class Cf{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=s,this._scrollSubscription=null}attach(t){if(this._overlayRef)throw _f();this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();wf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}const xf=(()=>{class t{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=(()=>new yf),this.close=(t=>new vf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t)),this.block=(()=>new mf(this._viewportRuler,this._document)),this.reposition=(t=>new Cf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t)),this._document=s}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Jp),Ot(af),Ot(Ji),Ot(Hl))},token:t,providedIn:"root"}),t})();class Sf{constructor(t){this.scrollStrategy=new yf,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(e=>{void 0!==t[e]&&(this[e]=t[e])})}}class Ef{constructor(t,e,n,s,i){this.offsetX=n,this.offsetY=s,this.panelClass=i,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}const kf=(()=>(class{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}))();function Tf(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "top", "bottom" or "center".')}function Of(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "start", "end" or "center".')}const If=(()=>{class t{constructor(t){this._attachedOverlays=[],this._keydownListener=(t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEventSubscriptions>0){e[n]._keydownEvents.next(t);break}}),this._document=t}ngOnDestroy(){this._detach()}add(t){this.remove(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this._detach()}_detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Hl))},token:t,providedIn:"root"}),t})(),Rf=(()=>{class t{constructor(t){this._document=t}ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Hl))},token:t,providedIn:"root"}),t})();class Pf{constructor(t,e,n,s,i,r,o,l){this._portalOutlet=t,this._host=e,this._pane=n,this._config=s,this._ngZone=i,this._keyboardDispatcher=r,this._document=o,this._location=l,this._backdropElement=null,this._backdropClick=new T,this._attachments=new T,this._detachments=new T,this._locationChanges=d.EMPTY,this._keydownEventsObservable=new b(t=>{const e=this._keydownEvents.subscribe(t);return this._keydownEventSubscriptions++,()=>{e.unsubscribe(),this._keydownEventSubscriptions--}}),this._keydownEvents=new T,this._keydownEventSubscriptions=0,s.scrollStrategy&&(this._scrollStrategy=s.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=s.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return this._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Ea(1)).subscribe(()=>{this.hasAttached()&&this.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(()=>this.dispose())),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),t}dispose(){const 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()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick.asObservable()}attachments(){return this._attachments.asObservable()}detachments(){return this._detachments.asObservable()}keydownEvents(){return this._keydownEventsObservable}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign({},this._config,t),this._updateElementSize()}setDirection(t){this._config=Object.assign({},this._config,{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){const t=this._pane.style;t.width=ep(this._config.width),t.height=ep(this._config.height),t.minWidth=ep(this._config.minWidth),t.minHeight=ep(this._config.minHeight),t.maxWidth=ep(this._config.maxWidth),t.maxHeight=ep(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"auto":"none"}_attachBackdrop(){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",t=>this._backdropClick.next(t)),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add("cdk-overlay-backdrop-showing")})}):this._backdropElement.classList.add("cdk-overlay-backdrop-showing")}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t,e=this._backdropElement;if(!e)return;let n=()=>{e&&e.parentNode&&e.parentNode.removeChild(e),this._backdropElement==e&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(e,this._config.backdropClass,!1),clearTimeout(t)};e.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{e.addEventListener("transitionend",n)}),e.style.pointerEvents="none",t=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const s=t.classList;tp(e).forEach(t=>{n?s.add(t):s.remove(t)})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.asObservable().pipe(Sp(K(this._attachments,this._detachments))).subscribe(()=>{this._pane&&this._host&&0!==this._pane.children.length||(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const Af="cdk-overlay-connected-position-bounding-box";class Mf{constructor(t,e,n,s,i){this._viewportRuler=e,this._document=n,this._platform=s,this._overlayContainer=i,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 T,this._resizeSubscription=d.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges.asObservable(),this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){if(this._overlayRef&&t!==this._overlayRef)throw Error("This position strategy is already attached to an overlay");this._validatePositions(),t.hostElement.classList.add(Af),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(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,s=[];let i;for(let r of this._preferredPositions){let o=this._getOriginPoint(t,r),l=this._getOverlayPoint(o,e,r),a=this._getOverlayFit(l,e,n,r);if(a.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(r,o);this._canFitWithFlexibleDimensions(a,l,n)?s.push({position:r,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,r)}):(!i||i.overlayFit.visibleAreae&&(e=s,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(i.position,i.originPoint);this._applyPosition(i.position,i.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&Nf(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Af),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,s;if("center"==e.originX)n=t.left+t.width/2;else{const s=this._isRtl()?t.right:t.left,i=this._isRtl()?t.left:t.right;n="start"==e.originX?s:i}return{x:n,y:s="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom}}_getOverlayPoint(t,e,n){let s,i;return s="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+s,y:t.y+(i="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}}_getOverlayFit(t,e,n,s){let{x:i,y:r}=t,o=this._getOffset(s,"x"),l=this._getOffset(s,"y");o&&(i+=o),l&&(r+=l);let a=0-r,c=r+e.height-n.height,u=this._subtractOverflows(e.width,0-i,i+e.width-n.width),h=this._subtractOverflows(e.height,a,c),d=u*h;return{visibleArea:d,isCompletelyWithinViewport:e.width*e.height===d,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:u==e.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const s=n.bottom-e.y,i=n.right-e.x,r=this._overlayRef.getConfig().minHeight,o=this._overlayRef.getConfig().minWidth,l=t.fitsInViewportHorizontally||null!=o&&o<=i;return(t.fitsInViewportVertically||null!=r&&r<=s)&&l}}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const s=this._viewportRect,i=Math.max(t.x+e.width-s.right,0),r=Math.max(t.y+e.height-s.bottom,0),o=Math.max(s.top-n.top-t.y,0),l=Math.max(s.left-n.left-t.x,0);let a=0,c=0;return this._previousPushAmount={x:a=e.width<=s.width?l||-i:t.xs&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-s/2)}if("end"===e.overlayX&&!s||"start"===e.overlayX&&s)c=n.right-t.x+this._viewportMargin,l=t.x-n.left;else if("start"===e.overlayX&&!s||"end"===e.overlayX&&s)a=t.x,l=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),s=this._lastBoundingBoxSize.width;a=t.x-e,(l=2*e)>s&&!this._isInitialRender&&!this._growAfterOpen&&(a=t.x-s/2)}return{top:r,left:a,bottom:o,right:c,width:l,height:i}}_setBoundingBoxStyles(t,e){const 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));const s={};if(this._hasExactPosition())s.top=s.left="0",s.bottom=s.right="",s.width=s.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;s.height=ep(n.height),s.top=ep(n.top),s.bottom=ep(n.bottom),s.width=ep(n.width),s.left=ep(n.left),s.right=ep(n.right),s.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",s.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(s.maxHeight=ep(t)),i&&(s.maxWidth=ep(i))}this._lastBoundingBoxSize=n,Nf(this._boundingBox.style,s)}_resetBoundingBoxStyles(){Nf(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){Nf(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={};if(this._hasExactPosition()){const s=this._viewportRuler.getViewportScrollPosition();Nf(n,this._getExactOverlayY(e,t,s)),Nf(n,this._getExactOverlayX(e,t,s))}else n.position="static";let s="",i=this._getOffset(e,"x"),r=this._getOffset(e,"y");i&&(s+=`translateX(${i}px) `),r&&(s+=`translateY(${r}px)`),n.transform=s.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Nf(this._pane.style,n)}_getExactOverlayY(t,e,n){let s={top:null,bottom:null},i=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(i=this._pushOverlayOnScreen(i,this._overlayRect,n));let r=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return i.y-=r,"bottom"===t.overlayY?s.bottom=`${this._document.documentElement.clientHeight-(i.y+this._overlayRect.height)}px`:s.top=ep(i.y),s}_getExactOverlayX(t,e,n){let s,i={left:null,right:null},r=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n)),"right"==(s=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?i.right=`${this._document.documentElement.clientWidth-(r.x+this._overlayRect.width)}px`:i.left=ep(r.x),i}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:bf(t,n),isOriginOutsideView:wf(t,n),isOverlayClipped:bf(e,n),isOverlayOutsideView:wf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const 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}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){if(!this._preferredPositions.length)throw Error("FlexibleConnectedPositionStrategy: At least one position is required.");this._preferredPositions.forEach(t=>{Of("originX",t.originX),Tf("originY",t.originY),Of("overlayX",t.overlayX),Tf("overlayY",t.overlayY)})}_addPanelClasses(t){this._pane&&tp(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;return t instanceof sn?t.nativeElement.getBoundingClientRect():t instanceof HTMLElement?t.getBoundingClientRect():{top:t.y,bottom:t.y,left:t.x,right:t.x,height:0,width:0}}}function Nf(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}class Df{constructor(t,e,n,s,i,r,o){this._preferredPositions=[],this._positionStrategy=new Mf(n,s,i,r,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e)}get _isRtl(){return"rtl"===this._overlayRef.getDirection()}get onPositionChange(){return this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,s){const i=new Ef(t,e,n,s);return this._preferredPositions.push(i),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Vf="cdk-global-overlay-wrapper";class $f{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const 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(Vf),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig();t.position=this._cssPosition,t.marginLeft="100%"===n.width?"0":this._leftOffset,t.marginTop="100%"===n.height?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,"100%"===n.width?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="100%"===n.height?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Vf),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}const Lf=(()=>{class t{constructor(t,e,n,s){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=s}global(){return new $f}connectedTo(t,e,n){return new Df(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new Mf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(af),Ot(Hl),Ot(zp),Ot(Rf))},token:t,providedIn:"root"}),t})();let jf=0;const Uf=(()=>(class{constructor(t,e,n,s,i,r,o,l,a,c){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=s,this._keyboardDispatcher=i,this._injector=r,this._ngZone=o,this._document=l,this._directionality=a,this._location=c}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),s=this._createPortalOutlet(n),i=new Sf(t);return i.direction=i.direction||this._directionality.value,new Pf(s,e,n,i,this._ngZone,this._keyboardDispatcher,this._document,this._location)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id=`cdk-overlay-${jf++}`,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(vr)),new ff(t,this._componentFactoryResolver,this._appRef,this._injector)}}))(),zf=new Rt("cdk-connected-overlay-scroll-strategy");function Ff(t){return()=>t.scrollStrategies.reposition()}const Hf=(()=>(class{}))(),Bf="Pipes";function Gf(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}class Wf{constructor(t,e){this._parentInjector=t,this._customTokens=e}get(t,e){const n=this._customTokens.get(t);return void 0!==n?n:this._parentInjector.get(t,e)}}const Yf=(()=>(class{constructor(t){this.injector=t,this.klass="default",this._overlay=t.get(qf)}ngOnInit(){setTimeout(()=>{this.offset=this._overlay.details.offset,this.setMethod()},1)}setMethod(){this.method="component",this.content=this._overlay.content,this.klass=this._overlay.details.klass||"default","string"==typeof this.content?this.method="text":this.content instanceof Rn&&(this.method="template",this.context=Object.assign({},this._overlay.details.data||{},{event:this._overlay.post.bind(this._overlay),close:this._overlay.close.bind(this._overlay)}),Object.defineProperty(this.context,"position",{get:()=>this._overlay.position}))}}))();class qf{constructor(t,e,n,s,i){this.id=t,this.service=e,this.injector=n,this.overlay=s,this.details=i,this.onClose=new T,this.event=new T,this.position_subject=new Kl(null),this.subs=[],this._overlay=this.overlay.create(this.details.config),this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null))}open(t,e){this._overlay&&this._close("reopen",null),e&&(delete this._overlay,this._overlay=this.overlay.create(e),this.details.config=e,this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null)));const n=this._createInjector(this,this.injector);this.onClose=new T,this.event=new T,this._overlay.attach(new hf(Yf,null,n)),this.set(t)}set(t,e=!0){this._data=t,e&&setTimeout(()=>this.updatePosition(),100)}get data(){return this._data||this.details.data||null}get content(){return this.details.content}get ID(){return this.id}listen(t){const e=this.event.subscribe(t);return this.subs.push(e),e}post(t,e){this.event.next({type:t,data:e})}get position(){return this.position_subject?this.position_subject.getValue():null}close(t){this._close("close",t)}_close(t,e){this._overlay&&this._overlay.dispose(),"reopen"!==t&&this.onClose.next({type:t,data:e}),this.onClose.complete(),this.event.complete(),this.subs=[]}_createInjector(t,e){const n=new WeakMap([[qf,t]]);return new Wf(e,n)}updatePosition(){const t=this.details.config;this._overlay.updatePosition();const e=t.positionStrategy;e instanceof Mf&&setTimeout(()=>{e._lastPosition&&this.position_subject.next({x:e._lastPosition.originX,y:e._lastPosition.originY})},1)}}const Zf=(()=>(class{constructor(t,e){this.overlay=t,this.renderer=e,this.events=[],this.displayed_events=[],this.subs={},this.delay=5e3,this.offset=0}ngOnInit(){this.context=this.overlay.details.data,this.subs.add=this.context.add.subscribe(t=>this.add(t)),this.subs.remove=this.context.remove.subscribe(t=>this.remove(t)),this.subs.delay=this.context.delay.subscribe(t=>this.delay=t)}ngOnDestroy(){for(const t in this.subs)this.subs[t]&&this.subs[t]instanceof d&&this.subs[t].unsubscribe()}add(t){this.events.findIndex(e=>e.id===t.id)<0&&(t.method="component","string"==typeof t.content?t.method="text":t.content instanceof Rn&&(t.method="template",t.context={close:()=>this.remove(t.id)}),this.events=this.events&&this.events.length>0?[...this.events,t]:[t],this.displayed_events=this.events.slice(-8),t.close=(()=>this.remove(t.id)),0!==t.delay&&setTimeout(()=>this.remove(t.id),t.delay||this.delay||5e3))}remove(t){this.events=this.events.filter(e=>e.id!==t),this.displayed_events=this.events.slice(-8)}action(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)}grab(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=n,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",e=>this.pull(t,e)),touchmove:this.renderer.listen("window","touchmove",e=>this.pull(t,e)),mouseup:this.renderer.listen("window","mouseup",e=>this.release(t)),touchend:this.renderer.listen("window","touchend",e=>this.release(t))}}pull(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)}release(t){t.offset>128&&this.remove(t.id);for(const e in t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0}trackByFn(t,e){return(t?t.id:null)||e}}))(),Qf=(()=>{class t{constructor(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new T,this._notify.remove=new T,this._notify.delay=new T,this.registerPreset("default",new Sf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new Sf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}register(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new qf(t,this,this.injector,this.overlay,e),this._refs[t]}open(t,e,n,s){if(e.config?e.config instanceof Sf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error(`No content set for the overlay ${t}`);const i=this._refs[t],r=i.details.config instanceof Sf?i.details.config:this.preset(i.details.config);i.open(e.data,e.config||r||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),s&&this._refs[t].onClose.subscribe(s))}update(t,e){this._refs[t]&&this._refs[t].set(e)}close(t){this._refs[t]&&this._refs[t].close(null)}remove(t){this._refs[t]&&(this._refs[t]=null)}registerPreset(t,e){this._presets[t]=e}preset(t="default"){return this._presets[t]||this._presets.default}loadNotificationsOutlet(){this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(()=>{this.registerPreset("ACA_NOTIFICATIONS_OUTLET",new Sf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:this.overlay.position().global().bottom("0").right("0"),scrollStrategy:this.overlay.scrollStrategies.noop()})),this.open("ACA_NOTIFICATIONS_OUTLET",{content:Zf,data:this._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)}notify(t,e,n,s,i){let r=null;return this._notify.add&&(r=`notification-${Math.floor(999999*Math.random())}`,this._notify.add.next({id:r,content:t,action:e,on_action:n,type:s,delay:i,event:t=>n?n(t):null})),r}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Uf),Ot(Mt))},token:t,providedIn:"root"}),t})(),Xf=(()=>(class{constructor(t,e,n,s){this.el=t,this.service=e,this.overlay=n,this.renderer=s,this.id=`tooltip-${Math.floor(9999999*Math.random())}`,this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new ki,this.event=new ki,this.close=new ki,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}ngOnInit(){this.updateConfig(),this.el&&this.listenForScroll()}ngOnDestroy(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()}ngOnChanges(t){if(t.config&&this.updateConfig(),t.reposition){const t=this.overlay.scrollStrategies;this.strategy=this.reposition?t.reposition():t.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(()=>this.open(),10):this.closeTooltip(t.show.previousValue))}open(){this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},t=>this.event.emit(t),t=>{this.show=!1,this.showChange.emit(!1),this.close.emit(t),this.clearListeners()})}getOverlayPosition(t){const e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)}getPositions(){const t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}}updateConfig(){this.service.registerPreset(this.id,new Sf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))}listenForScroll(){if(this.show){let t=this.el.nativeElement.parentElement;for(;t;t=t.parentElement)this.listeners.push(this.renderer.listen(t,"scroll",()=>this.update()))}}clearListeners(){for(const t of this.listeners)t();this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)}update(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))}listenForHover(){this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",t=>{this.show=!0,this.showChange.emit(this.show),this._leave_listener=this.renderer.listen(this.el.nativeElement,"mouseleave",t=>{this.show=!1,this.showChange.emit(this.show),this.closeTooltip(this.show)}),this.open()})}closeTooltip(t){!this.content&&this.el?function(t,e,n,s="debug",i){if(window.debug){const t=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Gf()?console[s](`%c[${Bf}]%c[Tooltip] %c${e}`,...t,n):console[s](`[${Bf}][Tooltip] ${e}`,n):Gf()?console[s](`%c[${Bf}]%c[Tooltip] %c${e}`,...t):console[s](`[${Bf}][Tooltip] ${e}`)}}(0,"No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()}}))(),Kf=(()=>(class{constructor(t,e){this.item=t,this.service=e}ngOnInit(){setTimeout(()=>{this.text=this.item.details.data.text,this.center=this.item.details.data.center},10),setTimeout(()=>this.service.close(this.item.ID),1e3)}}))(),Jf=hl,tg=(()=>{class t{constructor(){if(this.build=Jf(),!t.init){const e=Jf();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){Gf()?console[n](`%c[ACA]%c[LIB] %c${Bf} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"):console[n](`[ACA][LIB] ${Bf} - ${t} | ${e}`)}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),eg=new Rt("cdk-dir-doc",{providedIn:"root",factory:function(){return It(Hl)}}),ng=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new ki,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(eg,8))},token:t,providedIn:"root"}),t})(),sg=(()=>(class{}))();var ig=Xn({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function rg(t){return to(0,[(t()(),Lr(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function og(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function lg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,og)),ai(2,540672,null,0,zl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function ag(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function cg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,ag)),ai(2,671744,null,0,Rl,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ug(t){return to(0,[(t()(),Lr(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Lr(1,0,null,null,7,null,null,null,null,null,null,null)),ai(2,16384,null,0,Ll,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),$r(16777216,null,null,1,null,rg)),ai(4,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,lg)),ai(6,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,cg)),ai(8,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function hg(t){return to(0,[(t()(),$r(16777216,null,null,1,null,ug)),ai(1,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function dg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"overlay-outlet",[],null,null,null,hg,ig)),ai(1,114688,null,0,Yf,[Dt],null,null)],function(t,e){t(e,1,0)},null)}var pg=Ls("overlay-outlet",Yf,dg,{},{},[]),fg=Xn({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function gg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Xr(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function mg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"a-floating-text",[],null,null,null,gg,fg)),ai(1,114688,null,0,Kf,[qf,Qf],null,null)],function(t,e){t(e,1,0)},null)}var _g=Ls("a-floating-text",Kf,mg,{},{},[]),vg=Xn({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function yg(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function wg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,yg)),ai(2,540672,null,0,zl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function bg(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Cg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,bg)),ai(2,671744,null,0,Rl,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function xg(t){return to(0,[(t()(),Lr(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function Sg(t){return to(0,[(t()(),Lr(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Xr(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function Eg(t){return to(0,[(t()(),Lr(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function kg(t){return to(0,[(t()(),Lr(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Lr(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==i.grab(t.context.$implicit,n)&&s),"touchstart"===e&&(s=!1!==i.grab(t.context.$implicit,n)&&s),s},null,null)),(t()(),Lr(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Lr(4,0,null,null,7,null,null,null,null,null,null,null)),ai(5,16384,null,0,Ll,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),$r(16777216,null,null,1,null,wg)),ai(7,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,Cg)),ai(9,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,xg)),ai(11,16384,null,0,Ul,[An,Rn,Ll],null,null),(t()(),Lr(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var s=!0,i=t.component;return"click"===e&&(i.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),"touchend"===e&&(i.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),s},null,null)),(t()(),$r(16777216,null,null,1,null,Sg)),ai(14,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),$r(16777216,null,null,1,null,Eg)),ai(16,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function Tg(t){return to(0,[(t()(),Lr(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,kg)),ai(2,278528,null,0,Al,[An,Rn,xn],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function Og(t){return to(0,[(t()(),Lr(0,0,null,null,1,"notification-outlet",[],null,null,null,Tg,vg)),ai(1,245760,null,0,Zf,[qf,cn],null,null)],function(t,e){t(e,1,0)},null)}var Ig=Ls("notification-outlet",Zf,Og,{},{},[]);class Rg extends z{constructor(t,e){super(t),this.sources=e,this.completed=0,this.haveValues=0;const n=e.length;this.values=new Array(n);for(let s=0;s(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Mg=new Rt("CompositionEventMode"),Ng=(()=>(class{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Ha()?Ha().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}))();class Dg{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class Vg extends Dg{get formDirective(){return null}get path(){return null}}function $g(){throw new Error("unimplemented")}class Lg extends Dg{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return $g()}get asyncValidator(){return $g()}}const jg=(()=>(class extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}))();function Ug(t){return null==t||0===t.length}const zg=/^(?=.{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])?)*$/;class Fg{static min(t){return e=>{if(Ug(e.value)||Ug(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(Ug(e.value)||Ug(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return Ug(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return Ug(t.value)?null:zg.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(Ug(e.value))return null;const n=e.value?e.value.length:0;return n{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return Fg.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(Ug(t.value))return null;const s=t.value;return e.test(s)?null:{pattern:{requiredPattern:n,actualValue:s}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(Hg);return 0==e.length?null:function(t){return Gg(function(t,n){return e.map(e=>e(t))}(t))}}static composeAsync(t){if(!t)return null;const e=t.filter(Hg);return 0==e.length?null:function(t){return function t(...e){let n;return"function"==typeof e[e.length-1]&&(n=e.pop()),1===e.length&&a(e[0])&&(e=e[0]),0===e.length?ql:n?t(e).pipe(F(t=>n(...t))):new b(t=>new Rg(t,e))}(function(t,n){return e.map(e=>e(t))}(t).map(Bg)).pipe(F(Gg))}}}function Hg(t){return null!=t}function Bg(t){const e=De(t)?W(t):t;if(!Ve(e))throw new Error("Expected validator to return Promise or Observable.");return e}function Gg(t){const e=t.reduce((t,e)=>null!=e?Object.assign({},t,e):t,{});return 0===Object.keys(e).length?null:e}function Wg(t){return t.validate?e=>t.validate(e):t}function Yg(t){return t.validate?e=>t.validate(e):t}const qg=(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Zg=(()=>(class{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}))(),Qg=(()=>(class{constructor(t,e,n,s){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=s,this.onChange=(()=>{}),this.onTouched=(()=>{})}ngOnInit(){this._control=this._injector.get(Lg),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=(()=>{t(this.value),this._registry.select(this)})}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}))(),Xg={formControlName:'\n

\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',formGroupName:'\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',formArrayName:'\n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });',ngModelGroup:'\n
\n
\n \n
\n
',ngModelWithFormGroup:'\n
\n \n \n
\n '};function Kg(t,e){return[...e.path,t]}function Jg(t,e){t||em(e,"Cannot find control with"),e.valueAccessor||em(e,"No value accessor for form control with"),t.validator=Fg.compose([t.validator,e.validator]),t.asyncValidator=Fg.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&tm(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&tm(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function tm(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function em(t,e){let 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 nm(t){return null!=t?Fg.compose(t.map(Wg)):null}function sm(t){return null!=t?Fg.composeAsync(t.map(Yg)):null}const im=[Ag,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),qg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?`${e}`:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=(e=>{this.value=this._getOptionValue(e),t(this.value)})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}))(),(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=((t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)})}else e=((t,e)=>{t._setSelected(!1)});this._optionMap.forEach(e)}registerOnChange(t){this.onChange=(e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e{}),this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return this.status===rm}get invalid(){return this.status===om}get pending(){return this.status==lm}get disabled(){return this.status===am}get enabled(){return this.status!==am}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=cm(t)}setAsyncValidators(t){this.asyncValidator=um(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=lm,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=am,this.errors=null,this._forEachChild(e=>{e.disable(Object.assign({},t,{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=rm,this._forEachChild(e=>{e.enable(Object.assign({},t,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==rm&&this.status!==lm||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)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?am:rm}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=lm;const e=Bg(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(".")),e instanceof Array&&0===e.length?null:e.reduce((t,e)=>t instanceof fm?t.controls.hasOwnProperty(e)?t.controls[e]:null:t instanceof gm&&t.at(e)||null,t))}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new ki,this.statusChanges=new ki}_calculateStatus(){return this._allControlsDisabled()?am:this.errors?om:this._anyControlsHaveStatus(lm)?lm:this._anyControlsHaveStatus(om)?om:rm}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){hm(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class pm extends dm{constructor(t=null,e,n){super(cm(e),um(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=(()=>{})}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(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}}class fm extends dm{constructor(t,e,n){super(cm(e),um(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof pm?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,s)=>{e=e||this.contains(s)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,s)=>{n=e(n,t,s)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class gm extends dm{constructor(t,e,n){super(cm(e),um(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof pm?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}`)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const mm=(()=>Promise.resolve(null))(),_m=(()=>(class extends Vg{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new ki,this.form=new fm({},nm(t),sm(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){mm.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Jg(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){mm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),function(e,n){const s=e.indexOf(t);s>-1&&e.splice(s,1)}(this._directives)})}addFormGroup(t){mm.then(()=>{const e=this._findContainer(t.path),n=new fm({});(function(t,e){null==t&&em(e,"Cannot find control with"),t.validator=Fg.compose([t.validator,e.validator]),t.asyncValidator=Fg.composeAsync([t.asyncValidator,e.asyncValidator])})(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){mm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){mm.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,e=this._directives,this.form._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}))();class vm{static modelParentException(){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 ${Xg.formControlName}\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 ${Xg.ngModelWithFormGroup}`)}static formGroupNameException(){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 ${Xg.formGroupName}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Xg.ngModelGroup}`)}static missingNameException(){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: \n Example 2: ')}static modelGroupParentException(){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 ${Xg.formGroupName}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Xg.ngModelGroup}`)}static ngFormWarning(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")}}const ym=new Rt("NgFormSelectorWarning");class wm extends Vg{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Kg(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return nm(this._validators)}get asyncValidator(){return sm(this._asyncValidators)}_checkParentType(){}}const bm=(()=>{class t extends wm{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof _m||vm.modelGroupParentException()}}return t})(),Cm=(()=>Promise.resolve(null))(),xm=(()=>(class extends Lg{constructor(t,e,n,s){super(),this.control=new pm,this._registered=!1,this.update=new ki,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||em(t,"Value accessor was not provided as an array for form control with");let n=void 0,s=void 0,i=void 0;return e.forEach(e=>{e.constructor===Ng?n=e:function(t){return im.some(e=>t.constructor===e)}(e)?(s&&em(t,"More than one built-in value accessor matches form control with"),s=e):(i&&em(t,"More than one custom value accessor matches form control with"),i=e)}),i||s||n||(em(t,"No valid value accessor for form control with"),null)}(this,s)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!je(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Kg(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return nm(this._rawValidators)}get asyncValidator(){return sm(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Jg(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof bm)&&this._parent instanceof wm?vm.formGroupNameException():this._parent instanceof bm||this._parent instanceof _m||vm.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||vm.missingNameException()}_updateValue(t){Cm.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;Cm.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}))(),Sm=new Rt("NgModelWithFormControlWarning"),Em=(()=>(class{}))(),km=(()=>(class{group(t,e=null){const n=this._reduceControls(t);let s=null,i=null,r=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(s=null!=e.validators?e.validators:null,i=null!=e.asyncValidators?e.asyncValidators:null,r=null!=e.updateOn?e.updateOn:void 0):(s=null!=e.validator?e.validator:null,i=null!=e.asyncValidator?e.asyncValidator:null)),new fm(n,{asyncValidators:i,updateOn:r,validators:s})}control(t,e,n){return new pm(t,e,n)}array(t,e,n){const s=t.map(t=>this._createControl(t));return new gm(s,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof pm||t instanceof fm||t instanceof gm?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}))(),Tm=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:ym,useValue:e.warnOnDeprecatedNgFormSelector}]}}}return t})(),Om=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Sm,useValue:e.warnOnNgModelWithFormControl}]}}}return t})();var Im=Xn({encapsulation:2,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:0}.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:0}.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}"],data:{}});function Rm(t){return to(2,[Hr(402653184,1,{_contentWrapper:0}),(t()(),Lr(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),qr(null,0),(t()(),Lr(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Pm=Xn({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function Am(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,i=t.component;return"input"===e&&(s=!1!==Zs(t,5)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==Zs(t,5).onTouched()&&s),"compositionstart"===e&&(s=!1!==Zs(t,5)._compositionStart()&&s),"compositionend"===e&&(s=!1!==Zs(t,5)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(i.search=n)&&s),"ngModelChange"===e&&(i.searchChange.emit(n),s=!1!==i.filter()&&s),s},null,null)),ai(5,16384,null,0,Ng,[cn,sn,[2,Mg]],null,null),ui(1024,null,Pg,function(t){return[t]},[Ng]),ai(7,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(9,16384,null,0,jg,[[4,Lg]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,Zs(e,9).ngClassUntouched,Zs(e,9).ngClassTouched,Zs(e,9).ngClassPristine,Zs(e,9).ngClassDirty,Zs(e,9).ngClassValid,Zs(e,9).ngClassInvalid,Zs(e,9).ngClassPending)})}function Mm(t){return to(0,[(t()(),Lr(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.select(t.context.$implicit)&&s),s},null,null)),(t()(),Lr(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Nm(t){return to(0,[(t()(),Lr(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,Rm,Im)),ui(6144,null,tf,null,[nf]),ai(3,540672,null,0,Xp,[],{itemSize:[0,"itemSize"]},null),ui(1024,null,qp,Qp,[Xp]),ai(5,245760,[[4,4],[5,4],["viewport",4]],0,nf,[sn,En,Ji,[2,qp],[2,ng],Jp],null,null),(t()(),$r(16777216,[[2,2]],0,1,null,Mm)),ai(7,409600,null,0,rf,[An,Rn,xn,[1,nf],Ji],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===Zs(e,5).orientation,"horizontal"!==Zs(e,5).orientation)})}function Dm(t){return to(0,[(t()(),Lr(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Vm(t){return to(0,[(t()(),Lr(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.cancelClose()&&s),s},null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var s=!0,i=t.component;return"click"===e&&(s=0!=(i.show=!i.show)&&s),s},null,null)),(t()(),Lr(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),$r(16777216,[[2,2]],null,1,null,Am)),ai(7,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),$r(16777216,[[2,2]],null,1,null,Nm)),ai(10,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),$r(0,[[2,2],["noItems",2]],null,0,null,Dm))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,Zs(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function $m(t){return to(0,[Hr(402653184,1,{reference:0}),Hr(402653184,2,{dropdown_tooltip:0}),Hr(402653184,3,{input:0}),Hr(402653184,4,{viewport:0}),Hr(402653184,5,{scroll_el:0}),(t()(),Lr(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var s=!0,i=t.component;return"keyup.enter"===e&&(s=!1!==i.toggleShow()&&s),"keydown.arrowup"===e&&(s=!1!==n.preventDefault()&&s),"keydown.arrowdown"===e&&(s=!1!==n.preventDefault()&&s),"keyup.arrowup"===e&&(s=!1!==(i.focus?i.change(-1):"")&&s),"keyup.arrowdown"===e&&(s=!1!==(i.focus?i.change(1):"")&&s),"focus"===e&&(s=0!=(i.focus=!0)&&s),"blur"===e&&(s=0!=(i.focus=!1)&&s),"window:resize"===e&&(s=!1!==i.resize()&&s),"window:click"===e&&(s=!1!==(i.show?i.close():"")&&s),s},null,null)),(t()(),Lr(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Lr(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var s=!0,i=t.component;return"showChange"===e&&(s=!1!==(i.show=n)&&s),"showChange"===e&&(s=!1!==i.updateScroll()&&s),"click"===e&&(s=!1!==i.toggleShow()&&s),s},null,null)),ai(8,737280,null,0,Xf,[sn,Qf,Uf,cn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Lr(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),Xr(10,null,["",""])),(t()(),Lr(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Lr(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Lr(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(15,null,["",""])),(t()(),Lr(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),$r(0,[[2,2],["dropdown",2]],null,0,null,Vm))],function(t,e){t(e,8,0,e.component.show,Zs(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}const Lm="Checkbox",jm=(()=>(class{constructor(){this.klass="default"}toggle(){this.state=!this.state,this.onChange&&this.onChange(this.state)}writeValue(t){this.state=t}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouch=t}}))(),Um=hl,zm=(()=>{class t{constructor(){if(this.build=Um(),!t.init){const e=Um();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Lm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Lm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Fm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}handleMouse(t){this.handleEvent(t)}handleTouch(t){this.handleEvent(t)}ngOnInit(){}ngAfterViewInit(){setTimeout(()=>{this.element&&this.element.nativeElement&&(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width)))})}ngOnDestroy(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}handleEvent(t){this.cancelled=!1;const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,n=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:`${n-this.cached_box.top}px`,left:`${e-this.cached_box.left}px`},this.mouse_release_cancel=this.renderer.listen("window","mouseup",t=>this.handleRelease(t)),this.touch_release_cancel=this.renderer.listen("window","touchend",t=>this.handleRelease(t)),this.transitioning=!0,setTimeout(()=>{this.transitioning=!1,this.cancelled&&(this.show=!1)},350)}handleRelease(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}}))(),Hm=(()=>(class{constructor(t,e){this.el=t,this.renderer=e,this.tapped=new ki,this.touchrelease=new ki,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}ngAfterViewInit(){this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",t=>this.handleHold(t)),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",t=>this.handleHold(t)))}ngOnDestroy(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}}remove(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)}handleHold(t){const e={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=e,this.mouse_listener=this.renderer.listen(window,"mouseup",t=>this.handleRelease(t)),this.touch_listener=this.renderer.listen(window,"touchend",t=>this.handleRelease(t)),this.timer=setTimeout(()=>this.remove(),this.max_delay)}handleRelease(t){this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(()=>{const e=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(e-this.start.x,2)+2){this.tapped.emit(t),this.touchrelease.emit(t)},100)),this.start={x:-999,y:-999}},50)}}))(),Bm="Custom Events",Gm=hl,Wm=(()=>{class t{constructor(){if(this.build=Gm(),!t.init){const e=Gm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Bm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Bm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var Ym=Xn({encapsulation:0,styles:["[_nghost-%COMP%]{position:relative;overflow:hidden}.event-feedback[_ngcontent-%COMP%]{position:absolute;border-radius:100%;background-color:rgba(0,0,0,.1);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;pointer-events:none}.event-feedback.show[_ngcontent-%COMP%]{-webkit-animation:.5s feedback;animation:.5s feedback;opacity:1}.event-feedback.hide[_ngcontent-%COMP%]{-webkit-animation:.5s fadeout;animation:.5s fadeout}.event-feedback.light[_ngcontent-%COMP%]{background-color:rgba(255,255,255,.1)}@-webkit-keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@-webkit-keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}@keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}"],data:{}});function qm(t){return to(0,[qr(null,0),(t()(),Lr(1,0,null,null,0,"div",[],[[8,"className",0],[4,"top",null],[4,"left",null],[4,"height",null],[4,"width",null],[2,"show",null],[2,"hide",null]],null,null,null,null))],null,function(t,e){var n=e.component;t(e,1,0,"event-feedback"+(n.klass?" "+n.klass:""),n.position.top,n.position.left,n.size+"px",n.size+"px",n.show,!1===n.show)})}var Zm=Xn({encapsulation:0,styles:[".checkbox[_ngcontent-%COMP%]{display:flex;align-items:center}.box[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;margin:.25em;font-size:.8em;height:1.5em;width:1.5em;border-radius:4px;padding:0;border:2px solid #ccc;cursor:pointer;outline:0;transition:background-color .2s,border-color .2s}.box[_ngcontent-%COMP%]:hover{background-color:#ccc}.box[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function Qm(t){return to(0,[(t()(),Lr(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.toggle()&&s),s},null,null)),ai(1,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Xr(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Xm(t){return to(0,[(t()(),Lr(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Lr(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,2).handleTouch(n)&&s),"keyup.enter"===e&&(s=!1!==i.toggle()&&s),"tapped"===e&&(s=!1!==i.toggle()&&s),s},qm,Ym)),ai(2,4440064,null,0,Fm,[sn,cn],{center:[0,"center"]},null),ai(3,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,Qm)),ai(6,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}const Km="Buttons",Jm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new ki,this.id=`button-${Math.floor(999999*Math.random())}`}ngOnChanges(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()}ngAfterViewInit(){this.setClass(this.klass)}setClass(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))}setGroup(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")}setState(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")}tap(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))}writeValue(t){this.state=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),t_=hl,e_=(()=>{class t{constructor(){if(this.build=t_(),!t.init){const e=t_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Km} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Km} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var n_=Xn({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function s_(t){return to(0,[(t()(),Lr(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,1).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,1).handleTouch(n)&&s),"tapped"===e&&(s=!1!==i.tap()&&s),s},qm,Ym)),ai(1,4440064,null,0,Fm,[sn,cn],null,null),ai(2,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),qr(0,0)],function(t,e){t(e,1,0)},null)}const i_=(()=>(class{constructor(t){this.sanitizer=t}transform(t,e="html"){switch(e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}}}))(),r_="Pipes",o_=hl,l_=(()=>{class t{constructor(){if(this.build=o_(),!t.init){const e=o_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${r_} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${r_} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();class a_{constructor(){this._timers={},this._intervals={},this._subscriptions={}}timeout(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(()=>{e(),this._timers[t]=null},n)}clearTimeout(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)}interval(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(()=>e(),n)}clearInterval(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)}subscription(t,e){this.unsub(t),this._subscriptions[t]=e}unsub(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof d?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)}}class c_ extends a_{ngOnDestroy(){for(const t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(const t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(const t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)}}function u_(t,e,n,s){return new(n||(n=Promise))(function(i,r){function o(t){try{a(s.next(t))}catch(e){r(e)}}function l(t){try{a(s.throw(t))}catch(e){r(e)}}function a(t){t.done?i(t.value):new n(function(e){e(t.value)}).then(o,l)}a((s=s.apply(t,e||[])).next())})}class h_{}class d_{}class p_{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),s=n.toLowerCase(),i=t.slice(e+1).trim();this.maybeSetNormalizedName(n,s),this.headers.has(s)?this.headers.get(s).push(i):this.headers.set(s,[i])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const s=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(s,n),this.maybeSetNormalizedName(e,s))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof p_?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new p_;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof p_?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const s=("a"===t.op?this.headers.get(e):void 0)||[];s.push(...n),this.headers.set(e,s);break;case"d":const i=t.value;if(i){let t=this.headers.get(e);if(!t)return;0===(t=t.filter(t=>-1===i.indexOf(t))).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class f_{encodeKey(t){return g_(t)}encodeValue(t){return g_(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function g_(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class m_{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new f_,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const s=t.indexOf("="),[i,r]=-1==s?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,s)),e.decodeValue(t.slice(s+1))],o=n.get(i)||[];o.push(r),n.set(i,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).join("&")}clone(t){const e=new m_({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function __(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function v_(t){return"undefined"!=typeof Blob&&t instanceof Blob}function y_(t){return"undefined"!=typeof FormData&&t instanceof FormData}class w_{constructor(t,e,n,s){let i;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||s?(this.body=void 0!==n?n:null,i=s):i=n,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.params&&(this.params=i.params)),this.headers||(this.headers=new p_),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),l)),t.setParams&&(a=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),a)),new w_(e,n,i,{params:a,headers:l,reportProgress:o,responseType:s,withCredentials:r})}}const b_=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class C_{constructor(t,e=200,n="OK"){this.headers=t.headers||new p_,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class x_ extends C_{constructor(t={}){super(t),this.type=b_.ResponseHeader}clone(t={}){return new x_({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class S_ extends C_{constructor(t={}){super(t),this.type=b_.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new S_({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class E_ extends C_{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function k_(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}const T_=(()=>(class{constructor(t){this.handler=t}request(t,e,n={}){let s;if(t instanceof w_)s=t;else{let i=void 0;i=n.headers instanceof p_?n.headers:new p_(n.headers);let r=void 0;n.params&&(r=n.params instanceof m_?n.params:new m_({fromObject:n.params})),s=new w_(t,e,void 0!==n.body?n.body:null,{headers:i,params:r,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const i=Xl(s).pipe(ja(t=>this.handler.handle(t)));if(t instanceof w_||"events"===n.observe)return i;const r=i.pipe(oa(t=>t instanceof S_));switch(n.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return r.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return r.pipe(F(t=>t.body))}case"response":return r;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new m_).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,k_(n,e))}post(t,e,n={}){return this.request("POST",t,k_(n,e))}put(t,e,n={}){return this.request("PUT",t,k_(n,e))}}))();class O_{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const I_=new Rt("HTTP_INTERCEPTORS"),R_=(()=>(class{intercept(t,e){return e.handle(t)}}))(),P_=/^\)\]\}',?\n/;class A_{}const M_=(()=>(class{constructor(){}build(){return new XMLHttpRequest}}))(),N_=(()=>(class{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new b(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const s=t.serializeBody();let i=null;const r=()=>{if(null!==i)return i;const e=1223===n.status?204:n.status,s=n.statusText||"OK",r=new p_(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return i=new x_({headers:r,status:e,statusText:s,url:o})},o=()=>{let{headers:s,status:i,statusText:o,url:l}=r(),a=null;204!==i&&(a=void 0===n.response?n.responseText:n.response),0===i&&(i=a?200:0);let c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof a){const t=a;a=a.replace(P_,"");try{a=""!==a?JSON.parse(a):null}catch(u){a=t,c&&(c=!1,a={error:u,text:a})}}c?(e.next(new S_({body:a,headers:s,status:i,statusText:o,url:l||void 0})),e.complete()):e.error(new E_({error:a,headers:s,status:i,statusText:o,url:l||void 0}))},l=t=>{const{url:s}=r(),i=new E_({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:s||void 0});e.error(i)};let a=!1;const c=s=>{a||(e.next(r()),a=!0);let i={type:b_.DownloadProgress,loaded:s.loaded};s.lengthComputable&&(i.total=s.total),"text"===t.responseType&&n.responseText&&(i.partialText=n.responseText),e.next(i)},u=t=>{let n={type:b_.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",l),t.reportProgress&&(n.addEventListener("progress",c),null!==s&&n.upload&&n.upload.addEventListener("progress",u)),n.send(s),e.next({type:b_.Sent}),()=>{n.removeEventListener("error",l),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",c),null!==s&&n.upload&&n.upload.removeEventListener("progress",u)),n.abort()}})}}))(),D_=new Rt("XSRF_COOKIE_NAME"),V_=new Rt("XSRF_HEADER_NAME");class $_{}const L_=(()=>(class{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Il(t,this.cookieName),this.lastCookieString=t),this.lastToken}}))(),j_=(()=>(class{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const s=this.tokenService.getToken();return null===s||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,s)})),e.handle(t)}}))(),U_=(()=>(class{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(I_,[]);this.chain=t.reduceRight((t,e)=>new O_(t,e),this.backend)}return this.chain.handle(t)}}))(),z_=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:j_,useClass:R_}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:D_,useValue:e.cookieName}:[],e.headerName?{provide:V_,useValue:e.headerName}:[]]}}}return t})(),F_=(()=>(class{}))(),H_=(()=>{class t{constructor(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new Kl(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}init(){return u_(this,void 0,void 0,function*(){yield this.loadFromFile("api"),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete()})}get setup(){return this._setup}get app_name(){return this._app_name}isSetup(t){return this._is_setup_observer.subscribe(t)}log(t,e,n,s="debug",i=!1){if(window.debug||i){const i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...i,n):console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...i)}}get(t){const e=t.split(".");let n=null;return"session"===e[0]?(e.shift(),n=ul(e,this._settings.session)):"local"===e[0]?(e.shift(),n=ul(e,this._settings.local)):n=ul(e,this._settings.api)||ul(e,this._settings.session)||ul(e,this._settings.local),n}loadStore(t,e){if(e)for(let n=0;n5)return Promise.resolve();const s=`load|${t}|${e}`;return this._promises[s]||(this._promises[s]=new Promise((i,r)=>{this.http.get(e).subscribe(e=>{this._settings[t]=Object.assign({},this._settings[t]||{},e||{})},r=>{this.log("Settings",`Failed to load settings from "${e}"`),this._promises[s]=null,this.loadFromFile(t,e,++n).then(()=>i())},()=>i())})),this._promises[s]})}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),B_=["control","shift","alt","meta","os"],G_=(()=>{class t{constructor(){this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.last_down!==e&&(this.keydown_states[e]||(this.keydown_states[e]=new Kl(null),this.keydown_observers[e]=this.keydown_states[e].asObservable()),this.keydown_states[e].next(this.counter++),this.combo_end.indexOf(e)>=0&&t.preventDefault(),this.last_down=e)}),window.addEventListener("keyup",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.keydown_states[e].next(null),this.last_down===e&&(this.last_down=null)})}listen(t,e){const n=(t=t instanceof Array?t:t.split("+")).map(t=>this.mapKey(t.toLowerCase()));if(n.length>0&&this.validCombination(n)){this.registered_combos.push(n);const t=n[n.length-1];return this.keydown_states[t]||(this.keydown_states[t]=new Kl(null),this.keydown_observers[t]=this.keydown_states[t].asObservable()),this.updateCombinationEndList(),this.keydown_observers[t].subscribe(t=>{if(t){const t=[];if(n.length>1){for(const e of n){const n=this.keydown_states[e];t.push(n&&n.getValue()||-1)}for(let e=0;et[e+1])return}e()}})}return null}mapKey(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t}updateCombinationEndList(){for(const t of this.registered_combos)this.combo_end.push(t[t.length-1]);this.combo_end=function(t,e=""){return[].filter((t,n,s)=>s.indexOf(s.find(e?n=>n[e]===t[e]:e=>e===t))===n)}()}validCombination(t){let e=0;for(const n of t)B_.indexOf(n)<0&&e++;return e>0}}return t.ngInjectableDef=mt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),W_=[],Y_=(()=>{class t extends a_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=cl(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let i;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>i=t,t=>{s(t),delete this._promises[n]},()=>{t(i),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}repositories(){const t="repositories";return this._promises[t]||(this._promises[t]=new Promise((e,n)=>{let s;this.http.get(`${this.api_route}/repositories`).subscribe(t=>s=t,e=>{n(e),delete this._promises[t]},()=>{e(s),this.timeout(t,()=>delete this._promises[t],1e3)})})),this._promises[t]}commits(t){const e=`commits|${cl(t)}`;return this._promises[e]||(this._promises[e]=new Promise((t,n)=>{let s;this.http.get(`${this.api_route}/repositories_commits`).subscribe(t=>s=t,t=>{n(t),delete this._promises[e]},()=>{t(s),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}versions(t){const e=`versions|${t}`;return this._promises[e]||(this._promises[e]=new Promise((n,s)=>{const i=`${this.api_route}/${encodeURIComponent(t)}`;let r;this.http.get(i).subscribe(t=>r=t,t=>{s(t),delete this._promises[e]},()=>{n(r),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}driverCommits(t,e){const n=cl(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const i=`${this.api_route}/${encodeURIComponent(t)}/commits`;let r;this.http.get(i).subscribe(t=>r=t,t=>{n(t),delete this._promises[s]},()=>{e(r),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}build(t){const e=cl(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{this.http.post(`${this.api_route}`,e).subscribe(t=>null,t=>{s(t),delete this._promises[n]},()=>{t(),delete this._promises[n]})})),this._promises[n]}clean(t,e){const n=cl(e),s=`clean|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((t,e)=>{this.http.delete(`${this.api_route}${n?"?"+n:""}`).subscribe(t=>null,t=>{e(t),delete this._promises[s]},()=>{t(),delete this._promises[s]})})),this._promises[s]}get api_route(){return this.parent?`${this.parent.endpoint}/build`:"/build"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),q_=(()=>{class t extends a_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=cl(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let i;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>i=t,t=>{s(t),delete this._promises[n]},()=>{t(i),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}specCommits(t,e){const n=cl(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const i=`${this.api_route}/${encodeURIComponent(t)}/commits`;let r;this.http.get(i).subscribe(t=>r=t,t=>{n(t),delete this._promises[s]},()=>{e(r),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}run(t){for(const s in t)null==t[s]&&delete t[s];const e=cl(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((s,i)=>{let r;this.http.post(`${this.api_route}${e?"?"+e:""}`,t,{responseType:"text"}).subscribe(t=>r=t,t=>{i(t),delete this._promises[n]},()=>{s(r),delete this._promises[n]})})),this._promises[n]}get api_route(){return this.parent?`${this.parent.endpoint}/test`:"/test"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),Z_=new b(v);class Q_{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new X_(t,this.delay,this.scheduler))}}class X_ extends g{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,s=t.scheduler,i=t.destination;for(;n.length>0&&n[0].time-s.now()<=0;)n.shift().notification.observe(i);if(n.length>0){const e=Math.max(0,n[0].time-s.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(X_.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new K_(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Dp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Dp.createComplete()),this.unsubscribe()}}class K_{constructor(t,e){this.time=t,this.notification=e}}const J_="Service workers are disabled or not supported by this browser";class tv{constructor(t){if(this.serviceWorker=t,t){const e=np(t,"controllerchange").pipe(F(()=>t.controller)),n=Na(ia(()=>Xl(t.controller)),e);this.worker=n.pipe(oa(t=>!!t)),this.registration=this.worker.pipe(Pa(()=>t.getRegistration()));const s=np(t,"message").pipe(F(t=>t.data)).pipe(oa(t=>t&&t.type)).pipe(rt(new T));s.connect(),this.events=s}else this.worker=this.events=this.registration=(e=J_,ia(()=>Ap(new Error(e))));var e}postMessage(t,e){return this.worker.pipe(Ea(1),fa(n=>{n.postMessage(Object.assign({action:t},e))})).toPromise().then(()=>void 0)}postMessageWithStatus(t,e,n){const s=this.waitForStatus(n),i=this.postMessage(t,e);return Promise.all([s,i]).then(()=>void 0)}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(t){return this.events.pipe(oa(e=>e.type===t))}nextEventOfType(t){return this.eventsOfType(t).pipe(Ea(1))}waitForStatus(t){return this.eventsOfType("STATUS").pipe(oa(e=>e.nonce===t),Ea(1),F(t=>{if(!t.status)throw new Error(t.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}const ev=(()=>(class{constructor(t){if(this.sw=t,this.subscriptionChanges=new T,!t.isEnabled)return this.messages=Z_,this.notificationClicks=Z_,void(this.subscription=Z_);this.messages=this.sw.eventsOfType("PUSH").pipe(F(t=>t.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(F(t=>t.data)),this.pushManager=this.sw.registration.pipe(F(t=>t.pushManager));const e=this.pushManager.pipe(Pa(t=>t.getSubscription()));this.subscription=K(e,this.subscriptionChanges)}get isEnabled(){return this.sw.isEnabled}requestSubscription(t){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const e={userVisibleOnly:!0};let n=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),s=new Uint8Array(new ArrayBuffer(n.length));for(let i=0;it.subscribe(e)),Ea(1)).toPromise().then(t=>(this.subscriptionChanges.next(t),t))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe(Ea(1),Pa(t=>{if(null===t)throw new Error("Not subscribed to push notifications.");return t.unsubscribe().then(t=>{if(!t)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(J_))}decodeBase64(t){return atob(t)}}))(),nv=(()=>(class{constructor(t){if(this.sw=t,!t.isEnabled)return this.available=Z_,void(this.activated=Z_);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED")}get isEnabled(){return this.sw.isEnabled}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:t},t)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:t},t)}}))();class sv{}const iv=new Rt("NGSW_REGISTER_SCRIPT");function rv(t,e,n,s){return()=>{if(!(Gl(s)&&"serviceWorker"in navigator&&!1!==n.enabled))return;let i;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof n.registrationStrategy)i=n.registrationStrategy();else{const[e,...s]=(n.registrationStrategy||"registerWhenStable").split(":");switch(e){case"registerImmediately":i=Xl(null);break;case"registerWithDelay":i=Xl(null).pipe(function(t,e=vp){var n;const s=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new Q_(s,e))}(+s[0]||0));break;case"registerWhenStable":i=t.get(vr).isStable.pipe(oa(t=>t));break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${n.registrationStrategy}`)}}i.pipe(Ea(1)).subscribe(()=>navigator.serviceWorker.register(e,{scope:n.scope}))}}function ov(t,e){return new tv(Gl(e)&&!1!==t.enabled?navigator.serviceWorker:void 0)}const lv=(()=>{class t{static register(e,n={}){return{ngModule:t,providers:[{provide:iv,useValue:e},{provide:sv,useValue:n},{provide:tv,useFactory:ov,deps:[sv,Di]},{provide:Ii,useFactory:rv,deps:[Dt,iv,sv,Di],multi:!0}]}}}return t})(),av="Google Analytics";function cv(t,e,n,s="debug",i){if(window.debug){const r=["color: #0288D1",`color:${i||"#009688"}`,"color:rgba(0,0,0,0.87)"];n?uv()?console[s](`%c[${av}]%c[${t}] %c${e}`,...r,n):console[s](`[${av}][${t}] ${e}`,n):uv()?console[s](`%c[${av}]%c[${t}] %c${e}`,...r):console[s](`[${av}][${t}] ${e}`)}}function uv(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}const hv=(()=>{class t{constructor(t){var e,n,s,i,r;this.title=t,this.enabled=!0,this.app_name="GA_APP",this.timers={},e=window,n=document,s="script",e.GoogleAnalyticsObject="ga",e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,i=n.createElement(s),r=n.getElementsByTagName(s)[0],i.async=1,i.src="https://www.google-analytics.com/analytics.js",r.parentNode.insertBefore(i,r),cv("Service","Injected Google Analytics into page"),this.service=window.ga}load(t){if(!this.enabled)throw new Error("Google Analytics needs to be enabled before being initialised");if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.service("create",t,"auto"),this.service("send","pageview")}setUser(t){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`user|${t}`,()=>{cv("Service",`Set user ID: ${t}`),this.service("set","userId",t),this.event("authentication","user-id available")},100)}event(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`event|${t}|${e}|${n}|${s}`,()=>{cv("Service",`Event: ${t}, ${e}${n?", "+n:""}${s?", "+s:""}`),this.service("send","event",`${this.app_prefix?this.app_prefix+"_":""}${t}`,e,n,s)},100)}screen(t,e){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");t&&this.enabled&&this.timeout(`event|${t}|${e||this.app_name}`,()=>{cv("Service",`Screen: ${t}${e?", "+e:""}`),this.service("send","screenview",{appName:e||this.app_name,screenName:t})},100)}page(t,e=!1){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&(this.last_route=t||"/",this.timeout(`page|${t}`,()=>{cv("Service",`Page: ${t}`),this.service("send","pageview",`${e?location.origin:""}${t}`)},100))}timing(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`page|${t}|${e}|${n}|${s}`,()=>{cv("Service",`Timing: ${t}, ${e}, ${n}${s?", "+s:""}`),this.service("send","timing",t,e,n,s)},100)}timeout(t,e,n=300){this.timers[t]&&(clearTimeout(this.timers[t]),this.timers[t]=null),this.timers[t]=setTimeout(()=>{e instanceof Function&&e(),this.timers[t]=null},n)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(tu))},token:t,providedIn:"root"}),t})(),dv=(()=>{class t extends a_{constructor(t,e,n,s,i,r,o,l,a){super(),this._title=t,this._router=e,this._version=n,this._settings=s,this._overlay=i,this._analytics=r,this._hotkeys=o,this._build=l,this._test=a,this._route_trail=[],this._subjects={},this._observers={},this.set("system",null),this._build.parent=this._test.parent=this,this.init(),this.registerOverlays()}get Overlay(){return this._overlay}get Analytics(){return this._analytics}get Hotkeys(){return this._hotkeys}get Build(){return this._build}get Test(){return this._test}setting(t){return this._settings.get(t)}get name(){return this._settings.app_name}set title(t){const e=this.setting("app.title");this._title.setTitle(`${t?t+" | ":""}${e}`)}get title(){return this._title.getTitle()}get endpoint(){return`${location.origin}`}get engine_endpoint(){return"/control/api/"}get is_ready(){return this._settings.setup}notify(t,e,n,s){this._overlay.notify(`
${e}
`,n,s,t)}notifySuccess(t,e,n){this.notify("success",t,e,n)}notifyError(t,e,n){this.notify("error",t,e,n)}notifyInfo(t,e,n){this.notify("info",t,e,n)}log(t,e,n,s="debug",i=!1){this._settings.log(t,e,n,s,i)}navigate(t,e){const n=t instanceof Array?[...t]:[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})}navigateBack(){if(this._route_trail&&this._route_trail.length>0){const t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])}get(t){return this._subjects[t]&&this._subjects[t]instanceof Kl?this._subjects[t].getValue():null}listen(t,e){return this._observers[t]?this._observers[t].subscribe(e):null}set(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new Kl(e),this._observers[t]=this._subjects[t].asObservable())}init(){if(!this._settings.setup)return this.timeout("init",()=>this.init());this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(t=>{this.log("CACHE",`Update available: ${`current version is ${t.current.hash}`} ${`available version is ${t.available.hash}`}`),this.notifyInfo("Newer version of the app is available","Refresh",()=>location.reload())}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],()=>{this.navigate("bootstrap",{clear:!0})})}registerOverlays(){if(W_)for(const t of W_)this._overlay.register(t.id,t.config)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(tu),Ot(wd),Ot(nv),Ot(H_),Ot(Qf),Ot(hv),Ot(G_),Ot(Y_),Ot(q_))},token:t,providedIn:"root"}),t})();class pv extends c_{constructor(t,e){super(),this.service=t,this.route=e,this.commit_list=[],this.spec_list=[],this.spec_commit_list=[]}ngOnInit(){this.subscription("route.query",this.route.queryParamMap.subscribe(t=>{t.has("filter")&&(console.log("Filter:",t.get("filter")),this.timeout("filter_update",()=>{this.service.set("TEST.filter",t.get("filter")),console.log("Update filter")}))})),this.subscription("route.params",this.route.paramMap.subscribe(t=>{t.has("repo")&&(this.repo=t.get("repo"),this.timeout("repo_update",()=>this.service.set("TEST.repository",this.repo))),t.has("driver")?(this.driver=t.get("driver"),this.timeout("driver_update",()=>this.service.set("TEST.driver",this.driver)),this.test_results="",this.commit=null,this.updateCommits(),this.spec=null,this.spec_commit=null,this.updateSpecs(),this.show=!1):this.timeout("driver_update",()=>this.service.set("TEST.driver",""))})),this.updateCommits(),this.updateSpecs(),this.updateSpecCommits(),this.interval("update",()=>{this.updateCommits(),this.updateSpecs(),this.updateSpecCommits()},6e4)}updateCommits(){this.driver&&(this.loading_commits=!0,this.service.Build.driverCommits(this.driver,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:hl(t.date).format("DD MMM YYYY h:mm A")})),this.commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecs(){this.driver&&(this.loading_commits=!0,this.service.Test.query({repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_list=(t||[]).map(t=>({id:t,name:t})),this.spec||(this.spec=this.spec_list.reduce((t,e)=>t&&this.driver.localeCompare(t.id)>this.driver.localeCompare(e.id)?t:e,null),this.updateSpecCommits()),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecCommits(){this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:hl(t.date).format("DD MMM YYYY h:mm A")})),this.spec_commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}test(){if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";const t=t=>{t instanceof Object&&(t=t.error),this.test_results=this.styleResults(t||"");const e=this.service.get("TEST.results")||{},n=t.indexOf("exited with 0")>=0;e[`${this.repo}|${this.driver}`]=n?"passed":"failed",this.service.set("TEST.results",e),this.testing=!1,this.timeout("scroll",()=>this.body.nativeElement.scrollTo(0,this.body.nativeElement.scrollHeight),10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(t,t)}}styleResults(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')}}var fv=Xn({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function gv(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Spec Commit:"])),(t()(),Lr(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.spec_commit=n)&&s),s},$m,Pm)),ai(5,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(7,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(9,16384,null,0,jg,[[4,Lg]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,Zs(e,9).ngClassUntouched,Zs(e,9).ngClassTouched,Zs(e,9).ngClassPristine,Zs(e,9).ngClassDirty,Zs(e,9).ngClassValid,Zs(e,9).ngClassInvalid,Zs(e,9).ngClassPending)})}function mv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),Qr(1,2)],null,function(t,e){var n=e.component,s=qn(e,0,0,t(e,1,0,Zs(e.parent.parent,0),n.test_results,"html"));t(e,0,0,s)})}function _v(t){return to(0,[(t()(),Lr(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Repository:"])),(t()(),Lr(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Xr(6,null,["",""])),(t()(),Lr(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Driver:"])),(t()(),Lr(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Xr(11,null,["",""])),(t()(),Lr(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Commit:"])),(t()(),Lr(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.commit=n)&&s),s},$m,Pm)),ai(17,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(19,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(21,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Spec:"])),(t()(),Lr(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,i=t.component;return"ngModelChange"===e&&(s=!1!==(i.spec=n)&&s),"ngModelChange"===e&&(s=!1!==i.updateSpecCommits()&&s),s},$m,Pm)),ai(27,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(29,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(31,16384,null,0,jg,[[4,Lg]],null,null),(t()(),$r(16777216,null,null,1,null,gv)),ai(33,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Lr(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Lr(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Lr(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.force=n)&&s),s},Xm,Zm)),ai(38,49152,null,0,jm,[],{klass:[0,"klass"],label:[1,"label"]},null),ui(1024,null,Pg,function(t){return[t]},[jm]),ai(40,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(42,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Lr(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.debug=n)&&s),s},Xm,Zm)),ai(45,49152,null,0,jm,[],{klass:[0,"klass"],label:[1,"label"]},null),ui(1024,null,Pg,function(t){return[t]},[jm]),ai(47,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(49,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Lr(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Lr(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.test()&&s),s},s_,n_)),ui(5120,null,Pg,function(t){return[t]},[Jm]),ai(55,4767744,null,0,Jm,[sn,cn],null,{tapped:"tapped"}),ai(56,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Xr(-1,0,["Run!"])),(t()(),Lr(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),Xr(59,null,[" "," "])),(t()(),$r(16777216,null,null,1,null,mv)),ai(61,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,63).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,63).handleTouch(n)&&s),"tapped"===e&&(s=0!=(i.show=!i.show)&&s),s},qm,Ym)),ai(63,4440064,null,0,Fm,[sn,cn],{klass:[0,"klass"],center:[1,"center"]},null),ai(64,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,Zs(e,21).ngClassUntouched,Zs(e,21).ngClassTouched,Zs(e,21).ngClassPristine,Zs(e,21).ngClassDirty,Zs(e,21).ngClassValid,Zs(e,21).ngClassInvalid,Zs(e,21).ngClassPending),t(e,26,0,Zs(e,31).ngClassUntouched,Zs(e,31).ngClassTouched,Zs(e,31).ngClassPristine,Zs(e,31).ngClassDirty,Zs(e,31).ngClassValid,Zs(e,31).ngClassInvalid,Zs(e,31).ngClassPending),t(e,37,0,Zs(e,42).ngClassUntouched,Zs(e,42).ngClassTouched,Zs(e,42).ngClassPristine,Zs(e,42).ngClassDirty,Zs(e,42).ngClassValid,Zs(e,42).ngClassInvalid,Zs(e,42).ngClassPending),t(e,44,0,Zs(e,49).ngClassUntouched,Zs(e,49).ngClassTouched,Zs(e,49).ngClassPristine,Zs(e,49).ngClassDirty,Zs(e,49).ngClassValid,Zs(e,49).ngClassInvalid,Zs(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_down":"keyboard_arrow_up")})}function vv(t){return to(0,[(t()(),Lr(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["arrow_back"])),(t()(),Lr(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(-1,null,["Select a driver from the sidebar"]))],null,null)}function yv(t){return to(0,[ci(0,i_,[Fc]),Hr(671088640,1,{body:0}),(t()(),Lr(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,_v)),ai(4,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),$r(0,[["select",2]],null,0,null,vv))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,Zs(e,5))},null)}function wv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"app-workspace",[],null,null,null,yv,fv)),ai(1,245760,null,0,pv,[dv,ch],null,null)],function(t,e){t(e,1,0)},null)}var bv=Ls("app-workspace",pv,wv,{},{},[]);class Cv{constructor(){this.menu=!0,this.menuChange=new ki}toggleMenu(){this.menu=!this.menu,this.menuChange.emit(this.menu)}}var xv=Xn({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function Sv(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,2).handleTouch(n)&&s),"tapped"===e&&(s=!1!==i.toggleMenu()&&s),s},qm,Ym)),ai(2,4440064,null,0,Fm,[sn,cn],{klass:[0,"klass"]},null),ai(3,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["menu"])),(t()(),Lr(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Lr(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Lr(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),Xr(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}class Ev{transform(t){if(t.indexOf("/")>=0){const e=t.split("/");return e.splice(0,1),`
${e.map(t=>`
${t}
`).join('
keyboard_arrow_right
')}
`}return t}}class kv extends c_{constructor(t){super(),this.service=t,this.repository_list=[],this.status={}}ngOnInit(){this.service.set("TEST.repository",""),this.service.set("TEST.filter",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",()=>this.updateRepositoryList(),6e4),this.subscription("test_results",this.service.listen("TEST.filter",t=>{console.log("Filter:",t),this.search_str=t||"",this.filter(this.search_str)})),this.subscription("test_results",this.service.listen("TEST.results",t=>{this.status=t||{}})),this.subscription("repository",this.service.listen("TEST.repository",t=>{t&&(this.repo={id:t,name:t},this.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",t=>{this.driver=t}))}setRepository(t){this.service.navigate([t],{filter:this.search_str}),this.search_str="",this.updateDriverList()}setDriver(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t],{filter:this.search_str})}filter(t){this.filtered_list=(this.driver_list||[]).filter(e=>e.toLowerCase().indexOf(t.toLowerCase())>=0)}updateDriverList(){this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(t=>{this.driver_list=t||[],this.filter(this.search_str),this.loading=!1},t=>this.loading=!1)}updateRepositoryList(){this.service.Build.repositories().then(t=>{this.repository_list=(t||[]).map(t=>({id:t,name:t})),this.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),this.updateDriverList()})}}var Tv=Xn({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function Ov(t){return to(0,[(t()(),Lr(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.setDriver(t.context.$implicit)&&s),s},null,null)),ai(1,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Lr(3,0,null,null,1,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null)),Qr(4,1)],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]);var s=qn(e,3,0,t(e,4,0,Zs(e.parent,0),e.context.$implicit));t(e,3,0,s)})}function Iv(t){return to(0,[(t()(),Lr(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function Rv(t){return to(0,[ci(0,Ev,[]),(t()(),Lr(1,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,i=t.component;return"ngModelChange"===e&&(s=!1!==(i.repo=n)&&s),"ngModelChange"===e&&(s=!1!==i.setRepository(n.id)&&s),s},$m,Pm)),ai(4,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(6,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(8,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(9,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Lr(10,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(11,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["search"])),(t()(),Lr(13,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,i=t.component;return"input"===e&&(s=!1!==Zs(t,14)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==Zs(t,14).onTouched()&&s),"compositionstart"===e&&(s=!1!==Zs(t,14)._compositionStart()&&s),"compositionend"===e&&(s=!1!==Zs(t,14)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(i.search_str=n)&&s),"ngModelChange"===e&&(s=!1!==i.filter(n)&&s),s},null,null)),ai(14,16384,null,0,Ng,[cn,sn,[2,Mg]],null,null),ui(1024,null,Pg,function(t){return[t]},[Ng]),ai(16,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(18,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(19,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,Ov)),ai(21,278528,null,0,Al,[An,Rn,xn],{ngForOf:[0,"ngForOf"]},null),(t()(),$r(16777216,null,null,1,null,Iv)),ai(23,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,4,0,"simple",n.repository_list||Ss,"ACA Drivers"),t(e,6,0,n.repo),t(e,16,0,n.search_str),t(e,21,0,n.filtered_list),t(e,23,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,3,0,Zs(e,8).ngClassUntouched,Zs(e,8).ngClassTouched,Zs(e,8).ngClassPristine,Zs(e,8).ngClassDirty,Zs(e,8).ngClassValid,Zs(e,8).ngClassInvalid,Zs(e,8).ngClassPending),t(e,13,0,Zs(e,18).ngClassUntouched,Zs(e,18).ngClassTouched,Zs(e,18).ngClassPristine,Zs(e,18).ngClassDirty,Zs(e,18).ngClassValid,Zs(e,18).ngClassInvalid,Zs(e,18).ngClassPending)})}var Pv=Xn({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:20em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}.formatted-driver-name{display:flex;align-items:center}.formatted-driver-name .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:1.5em}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:28em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Av(t){return to(0,[(t()(),Lr(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var s=!0;return"menuChange"===e&&(s=!1!==(t.component.show_menu=n)&&s),s},Sv,xv)),ai(3,49152,null,0,Cv,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Lr(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Lr(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(6,0,null,null,1,"sidebar",[],null,null,null,Rv,Tv)),ai(7,245760,null,0,kv,[dv],null,null),(t()(),Lr(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Lr(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),ai(10,212992,null,0,xd,[Cd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function Mv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"app-root",[],null,null,null,Av,Pv)),ai(1,49152,null,0,pl,[],null,null)],null,null)}var Nv=Ls("app-root",pl,Mv,{},{},[]);class Dv{}class Vv{}var $v=ol(dl,[pl],function(t){return function(t){const e={},n=[];let s=!1;for(let i=0;i(t[e.name]=e.token,t),{}))),()=>lc),Fd(e),rv(n,s,i,r)];var o},[[2,pr],zd,Dt,iv,sv,Di]),Is(512,Ri,Ri,[[2,Ii]]),Is(131584,vr,vr,[Ji,$i,Dt,ie,Xe,Ri]),Is(1073742336,Vr,Vr,[vr]),Is(1073742336,Kc,Kc,[[3,Kc]]),Is(1024,Pd,$d,[[3,wd]]),Is(512,zu,Fu,[]),Is(512,Cd,Cd,[]),Is(256,Rd,{useHash:!0},[]),Is(1024,ml,Vd,[fl,[2,_l],Rd]),Is(512,vl,vl,[ml,fl]),Is(512,Hi,Hi,[]),Is(512,Oi,Cr,[Hi,[2,wr]]),Is(1024,pd,function(){return[[{path:"",component:pv},{path:":repo",component:pv},{path:":repo/:driver",component:pv}]]},[]),Is(1024,wd,jd,[vr,zu,Cd,vl,Dt,Oi,Hi,pd,Rd,[2,gd],[2,hd]]),Is(1073742336,Nd,Nd,[[2,Pd],[2,wd]]),Is(1073742336,Dv,Dv,[]),Is(1073742336,lv,lv,[]),Is(1073742336,Em,Em,[]),Is(1073742336,Tm,Tm,[]),Is(1073742336,Om,Om,[]),Is(1073742336,Wm,Wm,[]),Is(1073742336,e_,e_,[]),Is(1073742336,zm,zm,[]),Is(1073742336,sg,sg,[]),Is(1073742336,gf,gf,[]),Is(1073742336,Fp,Fp,[]),Is(1073742336,of,of,[]),Is(1073742336,Hf,Hf,[]),Is(1073742336,tg,tg,[]),Is(1073742336,l_,l_,[]),Is(1073742336,Kd,Kd,[]),Is(1073742336,Vv,Vv,[]),Is(1073742336,z_,z_,[]),Is(1073742336,F_,F_,[]),Is(1073742336,dl,dl,[]),Is(256,Ge,!0,[]),Is(256,D_,"XSRF-TOKEN",[]),Is(256,V_,"X-XSRF-TOKEN",[])])});(function(){if(oe)throw new Error("Cannot enable prod mode after platform setup.");re=!1})(),Qc().bootstrapModuleFactory($v).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",s="hour",i="day",r="week",o="month",l="quarter",a="year",c=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,u=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var s=String(t);return!s||s.length>=e?t:""+Array(e+1-s.length).join(n)+t},d={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),s=Math.floor(n/60),i=n%60;return(e<=0?"+":"-")+h(s,2,"0")+":"+h(i,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,o),i=e-s<0,r=t.clone().add(n+(i?-1:1),o);return Number(-(n+(e-s)/(i?s-r:r-s))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(c){return{M:o,y:a,w:r,d:i,h:s,m:n,s:e,ms:t,Q:l}[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},p={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=p;var m=function(t){return t instanceof w},_=function(t,e,n){var s;if(!t)return null;if("string"==typeof t)g[t]&&(s=t),e&&(g[t]=e,s=t);else{var i=t.name;g[i]=t,s=i}return n||(f=s),s},v=function(t,e,n){if(m(t))return t.clone();var s=e?"string"==typeof e?{format:e,pl:n}:e:{};return s.date=t,new w(s)},y=d;y.l=_,y.i=m,y.w=function(t,e){return v(t,{locale:e.$L,utc:e.$u})};var w=function(){function h(t){this.$L=this.$L||_(t.locale,null,!0)||f,this.parse(t)}var d=h.prototype;return d.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(y.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var s=e.match(c);if(s)return n?new Date(Date.UTC(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)):new Date(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)}return new Date(e)}(t),this.init()},d.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},d.$utils=function(){return y},d.isValid=function(){return!("Invalid Date"===this.$d.toString())},d.isSame=function(t,e){var n=v(t);return this.startOf(e)<=n&&n<=this.endOf(e)},d.isAfter=function(t,e){return v(t){throw t})}const l={closed:!0,next(t){},error(t){if(r.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},a=Array.isArray||(t=>t&&"number"==typeof t.length);function c(t){return null!==t&&"object"==typeof t}function u(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}u.prototype=Object.create(Error.prototype);const h=u,d=(()=>{class t{constructor(t){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let t,e=!1;if(this.closed)return;let{_parent:n,_parents:i,_unsubscribe:r,_subscriptions:o}=this;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;let l=-1,u=i?i.length:0;for(;n;)n.remove(this),n=++lt.concat(e instanceof h?e.errors:e),[])}const f="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class g extends d{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof g?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[f](){return this}static create(t,e,n){const s=new g(t,e,n);return s.syncErrorThrowable=!1,s}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parent:t,_parents:e}=this;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=t,this._parents=e,this}}class m extends g{constructor(t,e,n,i){let r;super(),this._parentSubscriber=t;let o=this;s(e)?r=e:e&&(r=e.next,n=e.error,i=e.complete,e!==l&&(s((o=Object.create(e)).unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=r,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;r.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=r;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):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);r.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),r.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!r.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(s){return r.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=s,t.syncErrorThrown=!0,!0):(o(s),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const _="function"==typeof Symbol&&Symbol.observable||"@@observable";function v(){}function y(...t){return w(t)}function w(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:v}const b=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:s}=this,i=function(t,e,n){if(t){if(t instanceof g)return t;if(t[f])return t[f]()}return t||e||n?new g(t,e,n):new g(l)}(t,e,n);if(i.add(s?s.call(i,this.source):this.source||r.useDeprecatedSynchronousErrorHandling&&!i.syncErrorThrowable?this._subscribe(i):this._trySubscribe(i)),r.useDeprecatedSynchronousErrorHandling&&i.syncErrorThrowable&&(i.syncErrorThrowable=!1,i.syncErrorThrown))throw i.syncErrorValue;return i}_trySubscribe(t){try{return this._subscribe(t)}catch(e){r.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:s}=t;if(e||s)return!1;t=n&&n instanceof g?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=C(e))((e,n)=>{let s;s=this.subscribe(e=>{try{t(e)}catch(i){n(i),s&&s.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[_](){return this}pipe(...t){return 0===t.length?this:w(t)(this)}toPromise(t){return new(t=C(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=(e=>new t(e)),t})();function C(t){if(t||(t=r.Promise||Promise),!t)throw new Error("no Promise impl found");return t}function x(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}x.prototype=Object.create(Error.prototype);const S=x;class E extends d{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class k extends g{constructor(t){super(t),this.destination=t}}const T=(()=>{class t extends b{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new k(this)}lift(t){const e=new O(this,this);return e.operator=t,e}next(t){if(this.closed)throw new S;if(!this.isStopped){const{observers:e}=this,n=e.length,s=e.slice();for(let i=0;inew O(t,e)),t})();class O extends T{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):d.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}class R extends g{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const P=t=>e=>{for(let n=0,s=t.length;ne=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,o),e);function M(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}const N=M(),D=t=>e=>{const n=t[N]();for(;;){const t=n.next();if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e},V=t=>e=>{const n=t[_]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)},$=t=>t&&"number"==typeof t.length&&"function"!=typeof t;function L(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const j=t=>{if(t instanceof b)return e=>t._isScalar?(e.next(t.value),void e.complete()):t.subscribe(e);if(t&&"function"==typeof t[_])return V(t);if($(t))return P(t);if(L(t))return A(t);if(t&&"function"==typeof t[N])return D(t);{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};function U(t,e,n,s,i=new R(t,n,s)){if(!i.closed)return j(e)(i)}class z extends g{notifyNext(t,e,n,s,i){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(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 H(t,e))}}class H{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new B(t,this.project,this.thisArg))}}class B extends g{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function G(t,e){return new b(e?n=>{const s=new d;let i=0;return s.add(e.schedule(function(){i!==t.length?(n.next(t[i++]),n.closed||s.add(this.schedule())):n.complete()})),s}:P(t))}function W(t,e){if(!e)return t instanceof b?t:new b(j(t));if(null!=t){if(function(t){return t&&"function"==typeof t[_]}(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>{const i=t[_]();s.add(i.subscribe({next(t){s.add(e.schedule(()=>n.next(t)))},error(t){s.add(e.schedule(()=>n.error(t)))},complete(){s.add(e.schedule(()=>n.complete()))}}))})),s}:V(t))}(t,e);if(L(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>t.then(t=>{s.add(e.schedule(()=>{n.next(t),s.add(e.schedule(()=>n.complete()))}))},t=>{s.add(e.schedule(()=>n.error(t)))}))),s}:A(t))}(t,e);if($(t))return G(t,e);if(function(t){return t&&"function"==typeof t[N]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new b(e?n=>{const s=new d;let i;return s.add(()=>{i&&"function"==typeof i.return&&i.return()}),s.add(e.schedule(()=>{i=t[N](),s.add(e.schedule(function(){if(n.closed)return;let t,e;try{const r=i.next();t=r.value,e=r.done}catch(s){return void n.error(s)}e?n.complete():(n.next(t),this.schedule())}))})),s}:D(t))}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}function Y(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?s=>s.pipe(Y((n,s)=>W(t(n,s)).pipe(F((t,i)=>e(n,t,s,i))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new Z(t,this.project,this.concurrent))}}class Z extends z{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Q(t){return t}function X(t=Number.POSITIVE_INFINITY){return Y(Q,t)}function K(...t){let e=Number.POSITIVE_INFINITY,n=null,s=t[t.length-1];return I(s)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof s&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof b?t[0]:X(e)(G(t,n))}function J(){return function(t){return t.lift(new tt(t))}}class tt{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const s=new et(t,n),i=e.subscribe(s);return s.closed||(s.connection=n.connect()),i}}class et extends g{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,s=t._connection;this.connection=null,!s||n&&s!==n||s.unsubscribe()}}const nt=class extends b{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new d).add(this.source.subscribe(new it(this.getSubject(),this))),t.closed?(this._connection=null,t=d.EMPTY):this._connection=t),t}refCount(){return J()(this)}}.prototype,st={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:nt._subscribe},_isComplete:{value:nt._isComplete,writable:!0},getSubject:{value:nt.getSubject},connect:{value:nt.connect},refCount:{value:nt.refCount}};class it extends k{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function rt(t,e){return function(n){let s;if(s="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new ot(s,e));const i=Object.create(n,st);return i.source=n,i.subjectFactory=s,i}}class ot{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,s=this.subjectFactory(),i=n(s).subscribe(t);return i.add(e.subscribe(s)),i}}function lt(){return new T}const at="__parameters__";function ct(t,e,n){const s=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function i(...t){if(this instanceof i)return s.apply(this,t),this;const e=new i(...t);return n.annotation=e,n;function n(t,n,s){const i=t.hasOwnProperty(at)?t[at]:Object.defineProperty(t,at,{value:[]})[at];for(;i.length<=s;)i.push(null);return(i[s]=i[s]||[]).push(e),t}}return n&&(i.prototype=Object.create(n.prototype)),i.prototype.ngMetadataName=t,i.annotationCls=i,i}const ut=ct("Inject",t=>({token:t})),ht=ct("Optional"),dt=ct("Self"),pt=ct("SkipSelf");var ft=function(t){return 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",t}({});function gt(t){for(let e in t)if(t[e]===gt)return e;throw Error("Could not find renamed property on target object.")}function mt(t){return{providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function _t(t){return t&&t.hasOwnProperty(vt)?t[vt]:null}const vt=gt({ngInjectableDef:gt});function yt(t){if("string"==typeof t)return t;if(t instanceof Array)return"["+t.map(yt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}const wt=gt({__forward_ref__:gt});function bt(t){return t.__forward_ref__=bt,t.toString=function(){return yt(this())},t}function Ct(t){const e=t;return"function"==typeof e&&e.hasOwnProperty(wt)&&e.__forward_ref__===bt?e():t}function xt(){const t="undefined"!=typeof globalThis&&globalThis,e="undefined"!=typeof window&&window,n="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,s="undefined"!=typeof global&&global;return t||s||e||n}const St=xt();let Et,kt=void 0;function Tt(t){const e=kt;return kt=t,e}function Ot(t,e=ft.Default){return(Et||function(t,e=ft.Default){if(void 0===kt)throw new Error("inject() must be called from an injection context");return null===kt?function(t,e,n){const s=_t(t);if(s&&"root"==s.providedIn)return void 0===s.value?s.value=s.factory():s.value;if(n&ft.Optional)return null;throw new Error(`Injector: NOT_FOUND [${yt(t)}]`)}(t,0,e):kt.get(t,e&ft.Optional?null:void 0,e)})(t,e)}const It=Ot;class Rt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ngInjectableDef=mt({providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Pt="__source",At=new Object,Mt=new Rt("INJECTOR",-1);class Nt{get(t,e=At){if(e===At){const e=new Error(`NullInjectorError: No provider for ${yt(t)}!`);throw e.name="NullInjectorError",e}return e}}const Dt=(()=>{class t{static create(t,e){return Array.isArray(t)?new Gt(t,e):new Gt(t.providers,t.parent,t.name||null)}}return t.THROW_IF_NOT_FOUND=At,t.NULL=new Nt,t.ngInjectableDef=mt({providedIn:"any",factory:()=>Ot(Mt)}),t.__NG_ELEMENT_ID__=-1,t})(),Vt=function(t){return t},$t=[],Lt=Vt,jt=function(){return Array.prototype.slice.call(arguments)},Ut=gt({provide:String,useValue:gt}),zt="ngTokenPath",Ft="ngTempTokenPath",Ht=/\n/gm,Bt="\u0275";class Gt{constructor(t,e=Dt.NULL,n=null){this.parent=e,this.source=n;const s=this._records=new Map;s.set(Dt,{token:Dt,fn:Vt,deps:$t,value:this,useNew:!1}),s.set(Mt,{token:Mt,fn:Vt,deps:$t,value:this,useNew:!1}),function t(e,n){if(n)if((n=Ct(n))instanceof Array)for(let s=0;st.push(yt(n))),`StaticInjector[${t.join(", ")}]`}}function Wt(t){return qt("Cannot mix multi providers and regular providers",t)}function Yt(t,e,n,s=null){t=t&&"\n"===t.charAt(0)&&t.charAt(1)==Bt?t.substr(2):t;let i=yt(e);if(e instanceof Array)i=e.map(yt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let s=e[n];t.push(n+":"+("string"==typeof s?JSON.stringify(s):yt(s)))}i=`{${t.join(", ")}}`}return`${n}${s?"("+s+")":""}[${i}]: ${t.replace(Ht,"\n ")}`}function qt(t,e){return new Error(Yt(t,e,"StaticInjectorError"))}const Zt="ngDebugContext",Qt="ngOriginalError",Xt="ngErrorLogger",Kt=new Rt("AnalyzeForEntryComponents"),Jt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}(),te=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(St))();function ee(t){return t[Zt]}function ne(t){return t[Qt]}function se(t,...e){t.error(...e)}class ie{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),s=function(t){return t[Xt]||se}(t);s(this._console,"ERROR",t),e&&s(this._console,"ORIGINAL ERROR",e),n&&s(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?ee(t)?ee(t):this._findContext(ne(t)):null}_findOriginalError(t){let e=ne(t);for(;e&&ne(e);)e=ne(e);return e}}let re=!0,oe=!1;function le(){return oe=!0,re}class ae{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),this.inertBodyElement=this.inertDocument.createElement("body"),t.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t=""+t+"";try{t=encodeURI(t)}catch(s){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t=""+t+"";try{const n=(new window.DOMParser).parseFromString(t,"text/html").body;return n.removeChild(n.firstChild),n}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(t){const e=t.attributes;for(let s=e.length-1;0he(t.trim())).join(", ")),this.buf.push(" ",e,'="',ke(o),'"')}var s;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();ve.hasOwnProperty(e)&&!fe.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(ke(t))}checkClobberedElement(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}}const Se=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ee=/([^\#-~ |!])/g;function ke(t){return t.replace(/&/g,"&").replace(Se,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ee,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let Te;function Oe(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const Ie=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}();class Re{}const Pe=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ae=/^url\(([^)]+)\)$/,Me=/([A-Z])/g;function Ne(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function De(t){return!!t&&"function"==typeof t.then}function Ve(t){return!!t&&"function"==typeof t.subscribe}let $e=null;function Le(){if(!$e){const t=St.Symbol;if(t&&t.iterator)$e=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e{class t{}return t.NULL=new Qe,t})();class Ke{constructor(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(let s=0;s{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=(()=>rn(t)),t})(),rn=nn;class on{}class ln{}const an=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}(),cn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>un()),t})(),un=nn;class hn{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const dn=new hn("8.0.0");class pn{constructor(){}supports(t){return Fe(t)}create(t){return new gn(t)}}const fn=(t,e)=>e;class gn{constructor(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||fn}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,s=0,i=null;for(;e||n;){const r=!n||e&&e.currentIndex{s=this._trackByFn(e,t),null!==i&&je(i.trackById,s)?(r&&(i=this._verifyReinsertion(i,t,s,e)),je(i.item,t)||this._addIdentityChange(i,t)):(i=this._mismatch(i,t,s,e),r=!0),i=i._next,e++}),this.length=e;return this._truncate(i),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;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}}_mismatch(t,e,n,s){let i;return null===t?i=this._itTail:(i=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,s))?(je(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,i,s)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(je(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,i,s)):t=this._addAfter(new mn(e,n),i,s),t}_verifyReinsertion(t,e,n,s){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==i?t=this._reinsertAfter(i,t._prev,s):t.currentIndex!=s&&(t.currentIndex=s,this._addToMoves(t,s)),t}_truncate(t){for(;null!==t;){const 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)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const s=t._prevRemoved,i=t._nextRemoved;return null===s?this._removalsHead=i:s._nextRemoved=i,null===i?this._removalsTail=s:i._prevRemoved=s,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const s=null===e?this._itHead:e._next;return t._next=s,t._prev=e,null===s?this._itTail=t:s._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new vn),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e?t:(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t,t)}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new vn),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}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class mn{constructor(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}}class _n{constructor(){this._head=null,this._tail=null}add(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)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&je(n.trackById,t))return n;return null}remove(t){const 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}}class vn{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _n,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function yn(t,e,n){const s=t.previousIndex;if(null===s)return s;let i=0;return n&&s{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const s=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,s)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const 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}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const s=n._prev,i=n._next;return s&&(s._next=i),i&&(i._prev=s),n._next=null,n._prev=null,n}const n=new Cn(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;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}}_maybeAddToChanges(t,e){je(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Cn{constructor(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}}const xn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new pn])}),t})(),Sn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new wn])}),t})(),En=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>kn()),t})(),kn=(...t)=>{},Tn=[new wn],On=new xn([new pn]),In=new Sn(Tn),Rn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Pn(t,sn)),t})(),Pn=nn,An=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Mn(t,sn)),t})(),Mn=nn;function Nn(t,e,n,s){let i=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${e}'. Current value: '${n}'.`;return s&&(i+=" 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){const n=new Error(t);return Dn(n,e),n}(i,t)}function Dn(t,e){t[Zt]=e,t[Xt]=e.logError.bind(e)}function Vn(t){return new Error(`ViewDestroyedError: Attempt to use a destroyed view: ${t}`)}function $n(t,e,n){const s=t.state,i=1792&s;return i===e?(t.state=-1793&s|n,t.initIndex=-1,!0):i===n}function Ln(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function jn(t,e){return t.nodes[e]}function Un(t,e){return t.nodes[e]}function zn(t,e){return t.nodes[e]}function Fn(t,e){return t.nodes[e]}function Hn(t,e){return t.nodes[e]}const Bn={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},Gn=()=>{},Wn=new Map;function Yn(t){let e=Wn.get(t);return e||(e=yt(t)+"_"+Wn.size,Wn.set(t,e)),e}function qn(t,e,n,s){if(ze.isWrapped(s)){s=ze.unwrap(s);const i=t.def.nodes[e].bindingIndex+n,r=ze.unwrap(t.oldValues[i]);t.oldValues[i]=new ze(r)}return s}const Zn="$$undefined",Qn="$$empty";function Xn(t){return{id:Zn,styles:t.styles,encapsulation:t.encapsulation,data:t.data}}let Kn=0;function Jn(t,e,n,s){return!(!(2&t.state)&&je(t.oldValues[e.bindingIndex+n],s))}function ts(t,e,n,s){return!!Jn(t,e,n,s)&&(t.oldValues[e.bindingIndex+n]=s,!0)}function es(t,e,n,s){const i=t.oldValues[e.bindingIndex+n];if(1&t.state||!Ue(i,s)){const r=e.bindings[n].name;throw Nn(Bn.createDebugContext(t,e.nodeIndex),`${r}: ${i}`,`${r}: ${s}`,0!=(1&t.state))}}function ns(t){let e=t;for(;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function ss(t,e){let n=t;for(;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function is(t,e,n,s){try{return ns(33554432&t.def.nodes[e].flags?Un(t,e).componentView:t),Bn.handleEvent(t,e,n,s)}catch(i){t.root.errorHandler.handleError(i)}}function rs(t){return t.parent?Un(t.parent,t.parentNodeDef.nodeIndex):null}function os(t){return t.parent?t.parentNodeDef.parent:null}function ls(t,e){switch(201347067&e.flags){case 1:return Un(t,e.nodeIndex).renderElement;case 2:return jn(t,e.nodeIndex).renderText}}function as(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function cs(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function us(t){return 1<{"number"==typeof t?(e[t]=i,n|=us(t)):s[t]=i}),{matchedQueries:e,references:s,matchedQueryIds:n}}function ds(t,e){return t.map(t=>{let n,s;return Array.isArray(t)?[s,n]=t:(s=0,n=t),n&&("function"==typeof n||"object"==typeof n)&&e&&Object.defineProperty(n,Pt,{value:e,configurable:!0}),{flags:s,token:n,tokenKey:Yn(n)}})}function ps(t,e,n){let s=n.renderParent;return s?0==(1&s.flags)||0==(33554432&s.flags)||s.element.componentRendererType&&s.element.componentRendererType.encapsulation===Jt.Native?Un(t,n.renderParent.nodeIndex).renderElement:void 0:e}const fs=new WeakMap;function gs(t){let e=fs.get(t);return e||((e=t(()=>Gn)).factory=t,fs.set(t,e)),e}function ms(t,e,n,s,i){3===e&&(n=t.renderer.parentNode(ls(t,t.def.lastRenderRootNode))),_s(t,e,0,t.def.nodes.length-1,n,s,i)}function _s(t,e,n,s,i,r,o){for(let l=n;l<=s;l++){const n=t.def.nodes[l];11&n.flags&&ys(t,n,e,i,r,o),l+=n.childCount}}function vs(t,e,n,s,i,r){let o=t;for(;o&&!as(o);)o=o.parent;const l=o.parent,a=os(o),c=a.nodeIndex+a.childCount;for(let u=a.nodeIndex+1;u<=c;u++){const t=l.def.nodes[u];t.ngContentIndex===e&&ys(l,t,n,s,i,r),u+=t.childCount}if(!l.parent){const o=t.root.projectableNodes[e];if(o)for(let e=0;e-1}(i)||"root"===r.providedIn&&i._def.isRoot))){const n=t._providers.length;return t._def.providers[n]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:n,token:e.token},t._providers[n]=Es,t._providers[n]=Ps(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Tt(s)}var i,r}function Ps(t,e){let n;switch(201347067&e.flags){case 512:n=function(t,e,n){const s=n.length;switch(s){case 0:return new e;case 1:return new e(Rs(t,n[0]));case 2:return new e(Rs(t,n[0]),Rs(t,n[1]));case 3:return new e(Rs(t,n[0]),Rs(t,n[1]),Rs(t,n[2]));default:const i=new Array(s);for(let e=0;e=n.length)&&(e=n.length-1),e<0)return null;const s=n[e];return s.viewContainerParent=null,Vs(n,e),Bn.dirtyParentQueries(s),Ns(s),s}function Ms(t,e,n){const s=e?ls(e,e.def.lastRenderRootNode):t.renderElement,i=n.renderer.parentNode(s),r=n.renderer.nextSibling(s);ms(n,2,i,r,void 0)}function Ns(t){ms(t,3,null,null,void 0)}function Ds(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Vs(t,e){e>=t.length-1?t.pop():t.splice(e,1)}const $s=new Object;function Ls(t,e,n,s,i,r){return new js(t,e,n,s,i,r)}class js extends Ye{constructor(t,e,n,s,i,r){super(),this.selector=t,this.componentType=e,this._inputs=s,this._outputs=i,this.ngContentSelectors=r,this.viewDefFactory=n}get inputs(){const t=[],e=this._inputs;for(let n in e)t.push({propName:n,templateName:e[n]});return t}get outputs(){const t=[];for(let e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t}create(t,e,n,s){if(!s)throw new Error("ngModule should be provided");const i=gs(this.viewDefFactory),r=i.nodes[0].element.componentProvider.nodeIndex,o=Bn.createRootView(t,e||[],n,i,s,$s),l=zn(o,r).instance;return n&&o.renderer.setAttribute(Un(o,0).renderElement,"ng-version",dn.full),new Us(o,new Bs(o),l)}}class Us extends We{constructor(t,e,n){super(),this._view=t,this._viewRef=e,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=e,this.changeDetectorRef=e,this.instance=n}get location(){return new sn(Un(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new qs(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(t){this._viewRef.onDestroy(t)}}function zs(t,e,n){return new Fs(t,e,n)}class Fs{constructor(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}get element(){return new sn(this._data.renderElement)}get injector(){return new qs(this._view,this._elDef)}get parentInjector(){let t=this._view,e=this._elDef.parent;for(;!e&&t;)e=os(t),t=t.parent;return t?new qs(t,e):new qs(this._view,null)}clear(){for(let t=this._embeddedViews.length-1;t>=0;t--){const e=As(this._data,t);Bn.destroyView(e)}}get(t){const e=this._embeddedViews[t];if(e){const t=new Bs(e);return t.attachToViewContainerRef(this),t}return null}get length(){return this._embeddedViews.length}createEmbeddedView(t,e,n){const s=t.createEmbeddedView(e||{});return this.insert(s,n),s}createComponent(t,e,n,s,i){const r=n||this.parentInjector;i||t instanceof Je||(i=r.get(tn));const o=t.create(r,s,void 0,i);return this.insert(o.hostView,e),o}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=t;return function(t,e,n,s){let i=e.viewContainer._embeddedViews;null==n&&(n=i.length),s.viewContainerParent=t,Ds(i,n,s),function(t,e){const n=rs(e);if(!n||n===t||16&e.state)return;e.state|=16;let s=n.template._projectedViews;s||(s=n.template._projectedViews=[]),s.push(e),function(t,n){if(4&n.flags)return;e.parent.def.nodeFlags|=4,n.flags|=4;let s=n.parent;for(;s;)s.childFlags|=4,s=s.parent}(0,e.parentNodeDef)}(e,s),Bn.dirtyParentQueries(s),Ms(e,n>0?i[n-1]:null,s)}(this._view,this._data,e,n._view),n.attachToViewContainerRef(this),t}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(t._view);return function(t,e,s){const i=t.viewContainer._embeddedViews,r=i[n];Vs(i,n),null==s&&(s=i.length),Ds(i,s,r),Bn.dirtyParentQueries(r),Ns(r),Ms(t,s>0?i[s-1]:null,r)}(this._data,0,e),t}indexOf(t){return this._embeddedViews.indexOf(t._view)}remove(t){const e=As(this._data,t);e&&Bn.destroyView(e)}detach(t){const e=As(this._data,t);return e?new Bs(e):null}}function Hs(t){return new Bs(t)}class Bs{constructor(t){this._view=t,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(t){const e=[];return ms(t,0,void 0,void 0,e),e}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){ns(this._view)}detach(){this._view.state&=-5}detectChanges(){const t=this._view.root.rendererFactory;t.begin&&t.begin();try{Bn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}}checkNoChanges(){Bn.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Bn.destroyView(this._view)}detachFromAppRef(){this._appRef=null,Ns(this._view),Bn.dirtyParentQueries(this._view)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}}function Gs(t,e){return new Ws(t,e)}class Ws extends Rn{constructor(t,e){super(),this._parentView=t,this._def=e}createEmbeddedView(t){return new Bs(Bn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))}get elementRef(){return new sn(Un(this._parentView,this._def.nodeIndex).renderElement)}}function Ys(t,e){return new qs(t,e)}class qs{constructor(t,e){this.view=t,this.elDef=e}get(t,e=Dt.THROW_IF_NOT_FOUND){return Bn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:Yn(t)},e)}}function Zs(t,e){const n=t.def.nodes[e];if(1&n.flags){const e=Un(t,n.nodeIndex);return n.element.template?e.template:e.renderElement}if(2&n.flags)return jn(t,n.nodeIndex).renderText;if(20240&n.flags)return zn(t,n.nodeIndex).instance;throw new Error(`Illegal state: read nodeValue for node index ${e}`)}function Qs(t){return new Xs(t.renderer)}class Xs{constructor(t){this.delegate=t}selectRootElement(t){return this.delegate.selectRootElement(t)}createElement(t,e){const[n,s]=Cs(e),i=this.delegate.createElement(s,n);return t&&this.delegate.appendChild(t,i),i}createViewRoot(t){return t}createTemplateAnchor(t){const e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e}createText(t,e){const n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n}projectNodes(t,e){for(let n=0;nt())}onDestroy(t){this._destroyListeners.push(t)}}const ti=Yn(on),ei=Yn(cn),ni=Yn(sn),si=Yn(An),ii=Yn(Rn),ri=Yn(En),oi=Yn(Dt),li=Yn(Mt);function ai(t,e,n,s,i,r,o,l){const a=[];if(o)for(let u in o){const[t,e]=o[u];a[t]={flags:8,name:u,nonMinifiedName:e,ns:null,securityContext:null,suffix:null}}const c=[];if(l)for(let u in l)c.push({type:1,propName:u,target:null,eventName:l[u]});return hi(t,e|=16384,n,s,i,i,r,a,c)}function ci(t,e,n){return hi(-1,t|=16,null,0,e,e,n)}function ui(t,e,n,s,i){return hi(-1,t,e,0,n,s,i)}function hi(t,e,n,s,i,r,o,l,a){const{matchedQueries:c,references:u,matchedQueryIds:h}=hs(n);a||(a=[]),l||(l=[]),r=Ct(r);const d=ds(o,yt(i));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:h,references:u,ngContentIndex:-1,childCount:s,bindings:l,bindingFlags:xs(l),outputs:a,element:null,provider:{token:i,value:r,deps:d},text:null,query:null,ngContent:null}}function di(t,e){return mi(t,e)}function pi(t,e){let n=t;for(;n.parent&&!as(n);)n=n.parent;return _i(n.parent,os(n),!0,e.provider.value,e.provider.deps)}function fi(t,e){const n=_i(t,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(let s=0;sis(t,e,n,s)}function mi(t,e){const n=(8192&e.flags)>0,s=e.provider;switch(201347067&e.flags){case 512:return _i(t,e.parent,n,s.value,s.deps);case 1024:return function(t,e,n,s,i){const r=i.length;switch(r){case 0:return s();case 1:return s(yi(t,e,n,i[0]));case 2:return s(yi(t,e,n,i[0]),yi(t,e,n,i[1]));case 3:return s(yi(t,e,n,i[0]),yi(t,e,n,i[1]),yi(t,e,n,i[2]));default:const o=Array(r);for(let s=0;ste});class ki extends T{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let s,i=t=>null,r=()=>null;t&&"object"==typeof t?(s=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(i=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(r=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(i=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(r=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(s,i,r);return t instanceof d&&t.add(o),o}}class Ti{constructor(){this.dirty=!0,this._results=[],this.changes=new ki,this.length=0}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}[Le()](){return this._results[Le()]()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let s=0;s(class{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}))(),Pi=new Rt("AppId");function Ai(){return`${Mi()}${Mi()}${Mi()}`}function Mi(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const Ni=new Rt("Platform Initializer"),Di=new Rt("Platform ID"),Vi=new Rt("appBootstrapListener"),$i=(()=>(class{log(t){console.log(t)}warn(t){console.warn(t)}}))();function Li(){throw new Error("Runtime compiler is not loaded")}const ji=Li,Ui=Li,zi=Li,Fi=Li,Hi=(()=>(class{constructor(){this.compileModuleSync=ji,this.compileModuleAsync=Ui,this.compileModuleAndAllComponentsSync=zi,this.compileModuleAndAllComponentsAsync=Fi}clearCache(){}clearCacheFor(t){}getModuleId(t){}}))();class Bi{}let Gi,Wi;function Yi(){const t=St.wtf;return!(!t||!(Gi=t.trace)||(Wi=Gi.events,0))}const qi=Yi(),Zi=qi?function(t,e=null){return Wi.createScope(t,e)}:(t,e)=>(function(t,e){return null}),Qi=qi?function(t,e){return Gi.leaveScope(t,e),e}:(t,e)=>e,Xi=(()=>Promise.resolve(0))();function Ki(t){"undefined"==typeof Zone?Xi.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Ji{constructor({enableLongStackTrace:t=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new ki(!1),this.onMicrotaskEmpty=new ki(!1),this.onStable=new ki(!1),this.onError=new ki(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var e;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)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,n,s,i,r,o)=>{try{return sr(e),t.invokeTask(s,i,r,o)}finally{ir(e)}},onInvoke:(t,n,s,i,r,o,l)=>{try{return sr(e),t.invoke(s,i,r,o,l)}finally{ir(e)}},onHasTask:(t,n,s,i)=>{t.hasTask(s,i),n===s&&("microTask"==i.change?(e.hasPendingMicrotasks=i.microTask,nr(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(t,n,s,i)=>(t.handleError(s,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Ji.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Ji.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,s){const i=this._inner,r=i.scheduleEventTask("NgZoneEvent: "+s,t,er,tr,tr);try{return i.runTask(r,e,n)}finally{i.cancelTask(r)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function tr(){}const er={};function nr(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(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function sr(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ir(t){t._nesting--,nr(t)}class rr{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new ki,this.onMicrotaskEmpty=new ki,this.onStable=new ki,this.onError=new ki}run(t){return t()}runGuarded(t){return t()}runOutsideAngular(t){return t()}runTask(t){return t()}}const or=(()=>(class{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Ji.assertNotInAngularZone(),Ki(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Ki(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let s=-1;e&&e>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==s),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:s,updateCb:n})}whenStable(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()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}))(),lr=(()=>{class t{constructor(){this._applications=new Map,ur.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return ur.findTestabilityInTree(this,t,e)}}return t.ctorParameters=(()=>[]),t})();class ar{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let cr,ur=new ar,hr=function(t){return t instanceof Je};const dr=new Rt("AllowMultipleToken");class pr{constructor(t,e){this.name=t,this.token=e}}function fr(t,e,n=[]){const s=`Platform: ${e}`,i=new Rt(s);return(e=[])=>{let r=gr();if(!r||r.injector.get(dr,!1))if(t)t(n.concat(e).concat({provide:i,useValue:!0}));else{const t=n.concat(e).concat({provide:i,useValue:!0});!function(t){if(cr&&!cr.destroyed&&!cr.injector.get(dr,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");cr=t.get(mr);const e=t.get(Ni,null);e&&e.forEach(t=>t())}(Dt.create({providers:t,name:s}))}return function(t){const e=gr();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}(i)}}function gr(){return cr&&!cr.destroyed?cr:null}const mr=(()=>(class{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n="noop"===(i=e?e.ngZone:void 0)?new rr:("zone.js"===i?void 0:i)||new Ji({enableLongStackTrace:le()}),s=[{provide:Ji,useValue:n}];var i;return n.run(()=>{const e=Dt.create({providers:s,parent:this.injector,name:t.moduleType.name}),i=t.create(e),r=i.injector.get(ie,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return i.onDestroy(()=>yr(this._modules,i)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{r.handleError(t)}})),function(t,e,n){try{const i=n();return De(i)?i.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):i}catch(s){throw e.runOutsideAngular(()=>t.handleError(s)),s}}(r,n,()=>{const t=i.injector.get(Ri);return t.runInitializers(),t.donePromise.then(()=>(this._moduleDoBootstrap(i),i))})})}bootstrapModule(t,e=[]){const n=_r({},e);return function(t,e,n){return t.get(Bi).createCompiler([e]).compileModuleAsync(n)}(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(vr);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${yt(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)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}))();function _r(t,e){return Array.isArray(e)?e.reduce(_r,t):Object.assign({},t,e)}const vr=(()=>{class t{constructor(t,e,n,s,i,r){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=s,this._componentFactoryResolver=i,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=le(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new b(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new b(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Ji.assertNotInAngularZone(),Ki(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Ji.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=K(o,l.pipe(t=>J()(rt(lt)(t))))}bootstrap(t,e){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.");let n;n=t instanceof Ye?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const s=hr(n)?null:this._injector.get(tn),i=n.create(Dt.NULL,[],e||n.selector,s);i.onDestroy(()=>{this._unloadComponent(i)});const r=i.injector.get(or,null);return r&&i.injector.get(lr).registerApplication(i.location.nativeElement,r),this._loadComponent(i),le()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const e=t._tickScope();try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,Qi(e)}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;yr(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Vi,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),yr(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t._tickScope=Zi("ApplicationRef#tick()"),t})();function yr(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class wr{}const br={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Cr=(()=>(class{constructor(t,e){this._compiler=t,this._config=e||br}load(t){return this._compiler instanceof Hi?this.loadFactory(t):this.loadAndCompile(t)}loadAndCompile(t){let[e,s]=t.split("#");return void 0===s&&(s="default"),n("zn8P")(e).then(t=>t[s]).then(t=>xr(t,e,s)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,s]=t.split("#"),i="NgFactory";return void 0===s&&(s="default",i=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[s+i]).then(t=>xr(t,e,s))}}))();function xr(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}class Sr{constructor(t,e){this.name=t,this.callback=e}}class Er{constructor(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof kr&&e.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class kr extends Er{constructor(t,e,n){super(t,e,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=t}addChild(t){t&&(this.childNodes.push(t),t.parent=this)}removeChild(t){const e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))}insertChildrenAfter(t,e){const n=this.childNodes.indexOf(t);-1!==n&&(this.childNodes.splice(n+1,0,...e),e.forEach(e=>{e.parent&&e.parent.removeChild(e),t.parent=this}))}insertBefore(t,e){const 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))}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return function t(e,n,s){e.childNodes.forEach(e=>{e instanceof kr&&(n(e)&&s.push(e),t(e,n,s))})}(this,t,e),e}queryAllNodes(t){const e=[];return function t(e,n,s){e instanceof kr&&e.childNodes.forEach(e=>{n(e)&&s.push(e),e instanceof kr&&t(e,n,s)})}(this,t,e),e}get children(){return this.childNodes.filter(t=>t instanceof kr)}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name==t&&n.callback(e)})}}const Tr=new Map,Or=function(t){return Tr.get(t)||null};function Ir(t){Tr.set(t.nativeNode,t)}const Rr=fr(null,"core",[{provide:Di,useValue:"unknown"},{provide:mr,deps:[Dt]},{provide:lr,deps:[]},{provide:$i,deps:[]}]),Pr=new Rt("LocaleId");function Ar(){return On}function Mr(){return In}function Nr(t){return t||"en-US"}function Dr(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}const Vr=(()=>(class{constructor(t){}}))();function $r(t,e,n,s,i,r){t|=1;const{matchedQueries:o,references:l,matchedQueryIds:a}=hs(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:o,matchedQueryIds:a,references:l,ngContentIndex:n,childCount:s,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:r?gs(r):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:i||Gn},provider:null,text:null,query:null,ngContent:null}}function Lr(t,e,n,s,i,r,o=[],l,a,c,u,h){c||(c=Gn);const{matchedQueries:d,references:p,matchedQueryIds:f}=hs(n);let g=null,m=null;r&&([g,m]=Cs(r)),l=l||[];const _=new Array(l.length);for(let w=0;w{const[n,s]=Cs(t);return[n,s,e]});return h=function(t){if(t&&t.id===Zn){const e=null!=t.encapsulation&&t.encapsulation!==Jt.None||t.styles.length||Object.keys(t.data).length;t.id=e?`c${Kn++}`:Qn}return t&&t.id===Qn&&(t=null),t||null}(h),u&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:d,matchedQueryIds:f,references:p,ngContentIndex:s,childCount:i,bindings:_,bindingFlags:xs(_),outputs:v,element:{ns:g,name:m,attrs:y,template:null,componentProvider:null,componentView:u||null,componentRendererType:h,publicProviders:null,allProviders:null,handleEvent:c||Gn},provider:null,text:null,query:null,ngContent:null}}function jr(t,e,n){const s=n.element,i=t.root.selectorOrNode,r=t.renderer;let o;if(t.parent||!i){o=s.name?r.createElement(s.name,s.ns):r.createComment("");const i=ps(t,e,n);i&&r.appendChild(i,o)}else o=r.selectRootElement(i,!!s.componentRendererType&&s.componentRendererType.encapsulation===Jt.ShadowDom);if(s.attrs)for(let l=0;lis(t,e,n,s)}function Fr(t,e,n,s){if(!ts(t,e,n,s))return!1;const i=e.bindings[n],r=Un(t,e.nodeIndex),o=r.renderElement,l=i.name;switch(15&i.flags){case 1:!function(t,e,n,s,i,r){const o=e.securityContext;let l=o?t.root.sanitizer.sanitize(o,r):r;l=null!=l?l.toString():null;const a=t.renderer;null!=r?a.setAttribute(n,i,l,s):a.removeAttribute(n,i,s)}(t,i,o,i.ns,l,s);break;case 2:!function(t,e,n,s){const i=t.renderer;s?i.addClass(e,n):i.removeClass(e,n)}(t,o,l,s);break;case 4:!function(t,e,n,s,i){let r=t.root.sanitizer.sanitize(Ie.STYLE,i);if(null!=r){r=r.toString();const t=e.suffix;null!=t&&(r+=t)}else r=null;const o=t.renderer;null!=r?o.setStyle(n,s,r):o.removeStyle(n,s)}(t,i,o,l,s);break;case 8:!function(t,e,n,s,i){const r=e.securityContext;let o=r?t.root.sanitizer.sanitize(r,i):i;t.renderer.setProperty(n,s,o)}(33554432&e.flags&&32&i.flags?r.componentView:t,i,o,l,s)}return!0}function Hr(t,e,n){let s=[];for(let i in n)s.push({propName:i,bindingType:n[i]});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:us(e),bindings:s},ngContent:null}}function Br(t){const e=t.def.nodeMatchedQueries;for(;t.parent&&cs(t);){let n=t.parentNodeDef;t=t.parent;const s=n.nodeIndex+n.childCount;for(let i=0;i<=s;i++){const s=t.def.nodes[i];67108864&s.flags&&536870912&s.flags&&(s.query.filterId&e)===s.query.filterId&&Hn(t,i).setDirty(),!(1&s.flags&&i+s.childCount0)c=t,eo(t)||(u=t);else for(;c&&f===c.nodeIndex+c.childCount;){const t=c.parent;t&&(t.childFlags|=c.childFlags,t.childMatchedQueries|=c.childMatchedQueries),u=(c=t)&&eo(c)?c.renderParent:c}}return{factory:null,nodeFlags:o,rootNodeFlags:l,nodeMatchedQueries:a,flags:t,nodes:e,updateDirectives:n||Gn,updateRenderer:s||Gn,handleEvent:(t,n,s,i)=>e[n].element.handleEvent(t,s,i),bindingCount:i,outputCount:r,lastRenderRootNode:p}}function eo(t){return 0!=(1&t.flags)&&null===t.element.name}function no(t,e,n){const s=e.element&&e.element.template;if(s){if(!s.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(s.lastRenderRootNode&&16777216&s.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){const s=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=s&&e.nodeIndex+e.childCount>s)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${e.nodeIndex}!`)}}function so(t,e,n,s){const i=oo(t.root,t.renderer,t,e,n);return lo(i,t.component,s),ao(i),i}function io(t,e,n){const s=oo(t,t.renderer,null,null,e);return lo(s,n,n),ao(s),s}function ro(t,e,n,s){const i=e.element.componentRendererType;let r;return r=i?t.root.rendererFactory.createRenderer(s,i):t.root.renderer,oo(t.root,r,t,e.element.componentProvider,n)}function oo(t,e,n,s,i){const r=new Array(i.nodes.length),o=i.outputCount?new Array(i.outputCount):null;return{def:i,parent:n,viewContainerParent:null,parentNodeDef:s,context:null,component:null,nodes:r,state:13,root:t,renderer:e,oldValues:new Array(i.bindingCount),disposables:o,initIndex:-1}}function lo(t,e,n){t.component=e,t.context=n}function ao(t){let e;as(t)&&(e=Un(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);const n=t.def,s=t.nodes;for(let i=0;i0&&Fr(t,e,0,n)&&(p=!0),d>1&&Fr(t,e,1,s)&&(p=!0),d>2&&Fr(t,e,2,i)&&(p=!0),d>3&&Fr(t,e,3,r)&&(p=!0),d>4&&Fr(t,e,4,o)&&(p=!0),d>5&&Fr(t,e,5,l)&&(p=!0),d>6&&Fr(t,e,6,a)&&(p=!0),d>7&&Fr(t,e,7,c)&&(p=!0),d>8&&Fr(t,e,8,u)&&(p=!0),d>9&&Fr(t,e,9,h)&&(p=!0),p}(t,e,n,s,i,r,o,l,a,c,u,h);case 2:return function(t,e,n,s,i,r,o,l,a,c,u,h){let d=!1;const p=e.bindings,f=p.length;if(f>0&&ts(t,e,0,n)&&(d=!0),f>1&&ts(t,e,1,s)&&(d=!0),f>2&&ts(t,e,2,i)&&(d=!0),f>3&&ts(t,e,3,r)&&(d=!0),f>4&&ts(t,e,4,o)&&(d=!0),f>5&&ts(t,e,5,l)&&(d=!0),f>6&&ts(t,e,6,a)&&(d=!0),f>7&&ts(t,e,7,c)&&(d=!0),f>8&&ts(t,e,8,u)&&(d=!0),f>9&&ts(t,e,9,h)&&(d=!0),d){let d=e.text.prefix;f>0&&(d+=Jr(n,p[0])),f>1&&(d+=Jr(s,p[1])),f>2&&(d+=Jr(i,p[2])),f>3&&(d+=Jr(r,p[3])),f>4&&(d+=Jr(o,p[4])),f>5&&(d+=Jr(l,p[5])),f>6&&(d+=Jr(a,p[6])),f>7&&(d+=Jr(c,p[7])),f>8&&(d+=Jr(u,p[8])),f>9&&(d+=Jr(h,p[9]));const g=jn(t,e.nodeIndex).renderText;t.renderer.setValue(g,d)}return d}(t,e,n,s,i,r,o,l,a,c,u,h);case 16384:return function(t,e,n,s,i,r,o,l,a,c,u,h){const d=zn(t,e.nodeIndex),p=d.instance;let f=!1,g=void 0;const m=e.bindings.length;return m>0&&Jn(t,e,0,n)&&(f=!0,g=bi(t,d,e,0,n,g)),m>1&&Jn(t,e,1,s)&&(f=!0,g=bi(t,d,e,1,s,g)),m>2&&Jn(t,e,2,i)&&(f=!0,g=bi(t,d,e,2,i,g)),m>3&&Jn(t,e,3,r)&&(f=!0,g=bi(t,d,e,3,r,g)),m>4&&Jn(t,e,4,o)&&(f=!0,g=bi(t,d,e,4,o,g)),m>5&&Jn(t,e,5,l)&&(f=!0,g=bi(t,d,e,5,l,g)),m>6&&Jn(t,e,6,a)&&(f=!0,g=bi(t,d,e,6,a,g)),m>7&&Jn(t,e,7,c)&&(f=!0,g=bi(t,d,e,7,c,g)),m>8&&Jn(t,e,8,u)&&(f=!0,g=bi(t,d,e,8,u,g)),m>9&&Jn(t,e,9,h)&&(f=!0,g=bi(t,d,e,9,h,g)),g&&p.ngOnChanges(g),65536&e.flags&&Ln(t,256,e.nodeIndex)&&p.ngOnInit(),262144&e.flags&&p.ngDoCheck(),f}(t,e,n,s,i,r,o,l,a,c,u,h);case 32:case 64:case 128:return function(t,e,n,s,i,r,o,l,a,c,u,h){const d=e.bindings;let p=!1;const f=d.length;if(f>0&&ts(t,e,0,n)&&(p=!0),f>1&&ts(t,e,1,s)&&(p=!0),f>2&&ts(t,e,2,i)&&(p=!0),f>3&&ts(t,e,3,r)&&(p=!0),f>4&&ts(t,e,4,o)&&(p=!0),f>5&&ts(t,e,5,l)&&(p=!0),f>6&&ts(t,e,6,a)&&(p=!0),f>7&&ts(t,e,7,c)&&(p=!0),f>8&&ts(t,e,8,u)&&(p=!0),f>9&&ts(t,e,9,h)&&(p=!0),p){const p=Fn(t,e.nodeIndex);let g;switch(201347067&e.flags){case 32:g=new Array(d.length),f>0&&(g[0]=n),f>1&&(g[1]=s),f>2&&(g[2]=i),f>3&&(g[3]=r),f>4&&(g[4]=o),f>5&&(g[5]=l),f>6&&(g[6]=a),f>7&&(g[7]=c),f>8&&(g[8]=u),f>9&&(g[9]=h);break;case 64:g={},f>0&&(g[d[0].name]=n),f>1&&(g[d[1].name]=s),f>2&&(g[d[2].name]=i),f>3&&(g[d[3].name]=r),f>4&&(g[d[4].name]=o),f>5&&(g[d[5].name]=l),f>6&&(g[d[6].name]=a),f>7&&(g[d[7].name]=c),f>8&&(g[d[8].name]=u),f>9&&(g[d[9].name]=h);break;case 128:const t=n;switch(f){case 1:g=t.transform(n);break;case 2:g=t.transform(s);break;case 3:g=t.transform(s,i);break;case 4:g=t.transform(s,i,r);break;case 5:g=t.transform(s,i,r,o);break;case 6:g=t.transform(s,i,r,o,l);break;case 7:g=t.transform(s,i,r,o,l,a);break;case 8:g=t.transform(s,i,r,o,l,a,c);break;case 9:g=t.transform(s,i,r,o,l,a,c,u);break;case 10:g=t.transform(s,i,r,o,l,a,c,u,h)}}p.value=g}return p}(t,e,n,s,i,r,o,l,a,c,u,h);default:throw"unreachable"}}(t,e,s,i,r,o,l,a,c,u,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){let s=!1;for(let i=0;i0&&es(t,e,0,n),d>1&&es(t,e,1,s),d>2&&es(t,e,2,i),d>3&&es(t,e,3,r),d>4&&es(t,e,4,o),d>5&&es(t,e,5,l),d>6&&es(t,e,6,a),d>7&&es(t,e,7,c),d>8&&es(t,e,8,u),d>9&&es(t,e,9,h)}(t,e,s,i,r,o,l,a,c,u,h,d):function(t,e,n){for(let s=0;s{const s=Ro.get(t.token);3840&t.flags&&s&&(e=!0,n=n||s.deprecatedBehavior)}),t.modules.forEach(t=>{Po.forEach((s,i)=>{_t(i).providedIn===t&&(e=!0,n=n||s.deprecatedBehavior)})}),{hasOverrides:e,hasDeprecatedOverrides:n})}(t);return e?(function(t){for(let e=0;e0){let e=new Set(t.modules);Po.forEach((s,i)=>{if(e.has(_t(i).providedIn)){let e={token:i,flags:s.flags|(n?4096:0),deps:ds(s.deps),value:s.value,index:t.providers.length};t.providers.push(e),t.providersByKey[Yn(i)]=e}})}}(t=t.factory(()=>Gn)),t):t}(s))}const Ro=new Map,Po=new Map,Ao=new Map;function Mo(t){let e;Ro.set(t.token,t),"function"==typeof t.token&&(e=_t(t.token))&&"function"==typeof e.providedIn&&Po.set(t.token,t)}function No(t,e){const n=gs(e.viewDefFactory),s=gs(n.nodes[0].element.componentView);Ao.set(t,s)}function Do(){Ro.clear(),Po.clear(),Ao.clear()}function Vo(t){if(0===Ro.size)return t;const e=function(t){const e=[];let n=null;for(let s=0;sGn);for(let s=0;s"-"+t[1].toLowerCase())}`)]=Ne(l))}const s=e.parent,l=Un(t,s.nodeIndex).renderElement;if(s.element.name)for(let e in n){const s=n[e];null!=s?t.renderer.setAttribute(l,e,s):t.renderer.removeAttribute(l,e)}else t.renderer.setValue(l,`bindings=${JSON.stringify(n,null,2)}`)}}var i,r}function Xo(t,e,n,s){fo(t,e,n,...s)}function Ko(t,e){for(let n=e;n++r===i?t.error.bind(t,...e):Gn),rnew tl(t,e),handleEvent:Yo,updateDirectives:qo,updateRenderer:Zo}:{setCurrentNode:()=>{},createRootView:So,createEmbeddedView:so,createComponentView:ro,createNgModuleRef:Ks,overrideProvider:Gn,overrideComponentView:Gn,clearOverrides:Gn,checkAndUpdateView:uo,checkNoChangesView:co,destroyView:mo,createDebugContext:(t,e)=>new tl(t,e),handleEvent:(t,e,n,s)=>t.def.handleEvent(t,e,n,s),updateDirectives:(t,e)=>t.def.updateDirectives(0===e?$o:Lo,t),updateRenderer:(t,e)=>t.def.updateRenderer(0===e?$o:Lo,t)};Bn.setCurrentNode=t.setCurrentNode,Bn.createRootView=t.createRootView,Bn.createEmbeddedView=t.createEmbeddedView,Bn.createComponentView=t.createComponentView,Bn.createNgModuleRef=t.createNgModuleRef,Bn.overrideProvider=t.overrideProvider,Bn.overrideComponentView=t.overrideComponentView,Bn.clearOverrides=t.clearOverrides,Bn.checkAndUpdateView=t.checkAndUpdateView,Bn.checkNoChangesView=t.checkNoChangesView,Bn.destroyView=t.destroyView,Bn.resolveDep=yi,Bn.createDebugContext=t.createDebugContext,Bn.handleEvent=t.handleEvent,Bn.updateDirectives=t.updateDirectives,Bn.updateRenderer=t.updateRenderer,Bn.dirtyParentQueries=Br}();const e=function(t){const e=Array.from(t.providers),n=Array.from(t.modules),s={};for(const i in t.providersByKey)s[i]=t.providersByKey[i];return{factory:t.factory,isRoot:t.isRoot,providers:e,modules:n,providersByKey:s}}(gs(this._ngModuleDefFactory));return Bn.createNgModuleRef(this.moduleType,t||Dt.NULL,this._bootstrapComponents,e)}}const al="Test Runner";function cl(t){let e="";if(t)for(const n in t)t.hasOwnProperty(n)&&null!=t[n]&&(e+=`${e?"&":""}${n}=${t[n]}`);return e}function ul(t,e){const n=t.shift();return e[n]?t.length>0?ul(t,e[n]):e[n]:null}var hl=n("Wgwc");const dl=(()=>{class t{constructor(){if(this.build=hl(),!t.init){const e=hl();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][APP] ${al} - ${t} | ${e}`):console[n](`%c[ACA]%c[APP] %c${al} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0",t.init=!1,t})();class pl{constructor(){this.show_menu=!0}}class fl{}const gl=new Rt("Location Initialized");class ml{}const _l=new Rt("appBaseHref"),vl=(()=>{class t{constructor(e,n){this._subject=new ki,this._urlChangeListeners=[],this._platformStrategy=e;const s=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=t.stripTrailingSlash(yl(s)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(e,n=""){return this.path()==this.normalize(e+t.normalizeQueryParams(n))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,yl(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(e,n="",s=null){this._platformStrategy.pushState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}replaceState(e,n="",s=null){this._platformStrategy.replaceState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}static normalizeQueryParams(t){return t&&"?"!==t[0]?"?"+t:t}static joinWithSlash(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}static stripTrailingSlash(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}}return t})();function yl(t){return t.replace(/\/index.html$/,"")}const wl=(()=>(class extends ml{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=vl.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,s){let i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));0==i.length&&(i=this._platformLocation.pathname),this._platformLocation.pushState(t,e,i)}replaceState(t,e,n,s){let i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));0==i.length&&(i=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,i)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),bl=(()=>(class extends ml{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)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.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return vl.joinWithSlash(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+vl.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,s){const i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));this._platformLocation.pushState(t,e,i)}replaceState(t,e,n,s){const i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));this._platformLocation.replaceState(t,e,i)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),Cl=void 0;var xl=["en",[["a","p"],["AM","PM"],Cl],[["AM","PM"],Cl,Cl],[["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"]],Cl,[["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"]],Cl,[["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}",Cl,"{1} 'at' {0}",Cl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];const Sl={},El=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),kl=new Rt("UseV4Plurals");class Tl{}const Ol=(()=>(class extends Tl{constructor(t,e){super(),this.locale=t,this.deprecatedPluralFn=e}getPluralCategory(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){const e=t.toLowerCase().replace(/_/g,"-");let n=Sl[e];if(n)return n;const s=e.split("-")[0];if(n=Sl[s])return n;if("en"===s)return xl;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[18]}(e||this.locale)(t)){case El.Zero:return"zero";case El.One:return"one";case El.Two:return"two";case El.Few:return"few";case El.Many:return"many";default:return"other"}}}))();function Il(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[s,i]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(s.trim()===e)return decodeURIComponent(i)}return null}const Rl=(()=>(class{constructor(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}ngOnChanges(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){const e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){const t=e.get(tn);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(t.injector)}else this._moduleRef=null;const n=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(Xe)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(n,this._viewContainerRef.length,e,this.ngComponentOutletContent)}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}))();class Pl{constructor(t,e,n,s){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=s}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}const Al=(()=>(class{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){le()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,s)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Pl(null,this._ngForOf,-1,-1),s),i=new Ml(t,n);e.push(i)}else if(null==s)this._viewContainer.remove(n);else{const i=this._viewContainer.get(n);this._viewContainer.move(i,s);const r=new Ml(t,i);e.push(r)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}))();class Ml{constructor(t,e){this.record=t,this.view=e}}const Nl=(()=>(class{constructor(t,e){this._viewContainer=t,this._context=new Dl,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){Vl("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Vl("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){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)))}static ngTemplateGuard_ngIf(t,e){return!0}}))();class Dl{constructor(){this.$implicit=null,this.ngIf=null}}function Vl(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${yt(e)}'.`)}class $l{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}const Ll=(()=>(class{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const 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}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e(class{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new $l(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}))(),Ul=(()=>(class{constructor(t,e,n){n._addDefault(new $l(t,e))}}))(),zl=(()=>(class{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){this._shouldRecreateView(t)?(this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))):this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)}_shouldRecreateView(t){const e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)}_hasContextShapeChanged(t){const e=Object.keys(t.previousValue||{}),n=Object.keys(t.currentValue||{});if(e.length===n.length){for(let t of n)if(-1===e.indexOf(t))return!0;return!1}return!0}_updateExistingContext(t){for(let e of Object.keys(t))this._viewRef.context[e]=this.ngTemplateOutletContext[e]}}))(),Fl=(()=>(class{}))(),Hl=new Rt("DocumentToken"),Bl="browser";function Gl(t){return t===Bl}const Wl=(()=>{class t{}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new Yl(Ot(Hl),window,Ot(ie))}),t})();class Yl{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=(()=>[0,0])}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const n=this.document.querySelector(`#${t}`);if(n)return void this.scrollToElement(n);const s=this.document.querySelector(`[name='${t}']`);if(s)return void this.scrollToElement(s)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,s=e.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(n-i[0],s-i[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}const ql=new b(t=>t.complete());function Zl(t){return t?function(t){return new b(e=>t.schedule(()=>e.complete()))}(t):ql}function Ql(t){const e=new b(e=>{e.next(t),e.complete()});return e._isScalar=!0,e.value=t,e}function Xl(...t){let e=t[t.length-1];switch(I(e)?t.pop():e=void 0,t.length){case 0:return Zl(e);case 1:return e?G(t,e):Ql(t[0]);default:return G(t,e)}}class Kl extends T{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new S;return this._value}next(t){super.next(this._value=t)}}function Jl(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}Jl.prototype=Object.create(Error.prototype);const ta=Jl,ea={};class na{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new sa(t,this.resultSelector))}}class sa extends z{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(ea),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{let n;try{n=t()}catch(s){return void e.error(s)}return(n?W(n):Zl()).subscribe(e)})}function ra(){return X(1)}function oa(t,e){return function(n){return n.lift(new la(t,e))}}class la{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new aa(t,this.predicate,this.thisArg))}}class aa extends g{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}function ca(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}ca.prototype=Object.create(Error.prototype);const ua=ca;function ha(t){return function(e){return 0===t?Zl():e.lift(new da(t))}}class da{constructor(t){if(this.total=t,this.total<0)throw new ua}call(t,e){return e.subscribe(new pa(t,this.total))}}class pa extends g{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,s=this.count++;e.length0){const n=this.count>=this.total?this.total:this.count,s=this.ring;for(let i=0;ifa({hasValue:!1,next(){this.hasValue=!0},complete(){if(!this.hasValue)throw t()}});function va(t=null){return e=>e.lift(new ya(t))}class ya{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new wa(t,this.defaultValue))}}class wa extends g{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}function ba(t,e){const n=arguments.length>=2;return s=>s.pipe(t?oa((e,n)=>t(e,n,s)):Q,ha(1),n?va(e):_a(()=>new ta))}function Ca(t){return function(e){const n=new xa(t),s=e.lift(n);return n.caught=s}}class xa{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Sa(t,this.selector,this.caught))}}class Sa extends z{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const s=new R(this,void 0,void 0);this.add(s),U(this,n,void 0,void 0,s)}}}function Ea(t){return e=>0===t?Zl():e.lift(new ka(t))}class ka{constructor(t){if(this.total=t,this.total<0)throw new ua}call(t,e){return e.subscribe(new Ta(t,this.total))}}class Ta extends g{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}function Oa(t,e){const n=arguments.length>=2;return s=>s.pipe(t?oa((e,n)=>t(e,n,s)):Q,Ea(1),n?va(e):_a(()=>new ta))}class Ia{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new Ra(t,this.predicate,this.thisArg,this.source))}}class Ra extends g{constructor(t,e,n,s){super(t),this.predicate=e,this.thisArg=n,this.source=s,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}function Pa(t,e){return"function"==typeof e?n=>n.pipe(Pa((n,s)=>W(t(n,s)).pipe(F((t,i)=>e(n,t,s,i))))):e=>e.lift(new Aa(t))}class Aa{constructor(t){this.project=t}call(t,e){return e.subscribe(new Ma(t,this.project))}}class Ma extends z{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(s){return void this.destination.error(s)}this._innerSub(e,t,n)}_innerSub(t,e,n){const s=this.innerSubscription;s&&s.unsubscribe();const i=new R(this,void 0,void 0);this.destination.add(i),this.innerSubscription=U(this,t,e,n,i)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,s,i){this.destination.next(e)}}function Na(...t){return ra()(Xl(...t))}function Da(...t){return e=>{let n=t[t.length-1];I(n)?t.pop():n=null;const s=t.length;return Na(1!==s||n?s>0?G(t,n):Zl(n):Ql(t[0]),e)}}function Va(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(s){return s.lift(new $a(t,e,n))}}class $a{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new La(t,this.accumulator,this.seed,this.hasSeed))}}class La extends g{constructor(t,e,n,s){super(t),this.accumulator=e,this._seed=n,this.hasSeed=s,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(s){this.destination.error(s)}this.seed=n,this.destination.next(n)}}function ja(t,e){return Y(t,e,1)}class Ua{constructor(t){this.callback=t}call(t,e){return e.subscribe(new za(t,this.callback))}}class za extends g{constructor(t,e){super(t),this.add(new d(e))}}let Fa=null;function Ha(){return Fa}class Ba{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(t){this._attrToPropMap=t}}class Ga extends Ba{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const e=this.createElement("div",document);if(null!=this.getStyle(e,"animationName"))this._animationPrefix="";else{const t=["Webkit","Moz","O","ms"];for(let n=0;n{null!=this.getStyle(e,t)&&(this._transitionEnd=n[t])})}catch(t){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(t){return t.getDistributedNodes()}resolveAndSetHref(t,e,n){t.href=null==n?e:e+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}const Wa={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},Ya=3,qa={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Za={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},Qa=(()=>{if(St.Node)return St.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))}})();class Xa extends Ga{parse(t){throw new Error("parse not implemented")}static makeCurrent(){var t;t=new Xa,Fa||(Fa=t)}hasProperty(t,e){return e in t}setProperty(t,e,n){t[e]=n}getProperty(t,e){return t[e]}invoke(t,e,n){t[e](...n)}logError(t){window.console&&(console.error?console.error(t):console.log(t))}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return Wa}contains(t,e){return Qa.call(t,e)}querySelector(t,e){return t.querySelector(e)}querySelectorAll(t,e){return t.querySelectorAll(e)}on(t,e,n){t.addEventListener(e,n,!1)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}createMouseEvent(t){const e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(t,!0,!0),e}createEvent(t){const e=this.getDefaultDocument().createEvent("Event");return e.initEvent(t,!0,!0),e}preventDefault(t){t.preventDefault(),t.returnValue=!1}isPrevented(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue}getInnerHTML(t){return t.innerHTML}getTemplateContent(t){return"content"in t&&this.isTemplateElement(t)?t.content:null}getOuterHTML(t){return t.outerHTML}nodeName(t){return t.nodeName}nodeValue(t){return t.nodeValue}type(t){return t.type}content(t){return this.hasProperty(t,"content")?t.content:t}firstChild(t){return t.firstChild}nextSibling(t){return t.nextSibling}parentElement(t){return t.parentNode}childNodes(t){return t.childNodes}childNodesAsList(t){const e=t.childNodes,n=new Array(e.length);for(let s=0;st.insertBefore(n,e))}insertAfter(t,e,n){t.insertBefore(n,e.nextSibling)}setInnerHTML(t,e){t.innerHTML=e}getText(t){return t.textContent}setText(t,e){t.textContent=e}getValue(t){return t.value}setValue(t,e){t.value=e}getChecked(t){return t.checked}setChecked(t,e){t.checked=e}createComment(t){return this.getDefaultDocument().createComment(t)}createTemplate(t){const e=this.getDefaultDocument().createElement("template");return e.innerHTML=t,e}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createElementNS(t,e,n){return(n=n||this.getDefaultDocument()).createElementNS(t,e)}createTextNode(t,e){return(e=e||this.getDefaultDocument()).createTextNode(t)}createScriptTag(t,e,n){const s=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return s.setAttribute(t,e),s}createStyleElement(t,e){const n=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(t,e)),n}createShadowRoot(t){return t.createShadowRoot()}getShadowRoot(t){return t.shadowRoot}getHost(t){return t.host}clone(t){return t.cloneNode(!0)}getElementsByClassName(t,e){return t.getElementsByClassName(e)}getElementsByTagName(t,e){return t.getElementsByTagName(e)}classList(t){return Array.prototype.slice.call(t.classList,0)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}hasClass(t,e){return t.classList.contains(e)}setStyle(t,e,n){t.style[e]=n}removeStyle(t,e){t.style[e]=""}getStyle(t,e){return t.style[e]}hasStyle(t,e,n){const s=this.getStyle(t,e)||"";return n?s==n:s.length>0}tagName(t){return t.tagName}attributeMap(t){const e=new Map,n=t.attributes;for(let s=0;s{class t extends fl{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=Ha().getLocation(),this._history=Ha().getHistory()}getBaseHrefFromDOM(){return Ha().getBaseHref(this._doc)}onPopState(t){Ha().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){Ha().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){tc()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){tc()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return t.ctorParameters=(()=>[{type:void 0,decorators:[{type:ut,args:[Hl]}]}]),t})(),nc=new Rt("TRANSITION_ID"),sc=[{provide:Ii,useFactory:function(t,e,n){return()=>{n.get(Ri).donePromise.then(()=>{const n=Ha();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(e=>n.getAttribute(e,"ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[nc,Hl,Dt],multi:!0}];class ic{static init(){var t;t=new ic,ur=t}addToWindow(t){St.getAngularTestability=((e,n=!0)=>{const s=t.findTestabilityInTree(e,n);if(null==s)throw new Error("Could not find testability for element.");return s}),St.getAllAngularTestabilities=(()=>t.getAllTestabilities()),St.getAllAngularRootElements=(()=>t.getAllRootElements()),St.frameworkStabilizers||(St.frameworkStabilizers=[]),St.frameworkStabilizers.push(t=>{const e=St.getAllAngularTestabilities();let n=e.length,s=!1;const i=function(e){s=s||e,0==--n&&t(s)};e.forEach(function(t){t.whenStable(i)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const s=t.getTestability(e);return null!=s?s:n?Ha().isShadowRoot(e)?this.findTestabilityInTree(t,Ha().getHost(e),!0):this.findTestabilityInTree(t,Ha().parentElement(e),!0):null}}function rc(t,e){"undefined"!=typeof COMPILED&&COMPILED||((St.ng=St.ng||{})[t]=e)}const oc=(()=>({ApplicationRef:vr,NgZone:Ji}))();function lc(t){return Or(t)}const ac=new Rt("EventManagerPlugins"),cc=(()=>(class{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let s=0;s(class{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}))(),dc=(()=>(class extends hc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>Ha().remove(t))}}))(),pc={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/"},fc=/%COMP%/g,gc="_nghost-%COMP%",mc="_ngcontent-%COMP%";function _c(t,e,n){for(let s=0;s{!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}const yc=(()=>(class{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new wc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case Jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new xc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case Jt.Native:case Jt.ShadowDom:return new Sc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=_c(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}))();class wc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(pc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let 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}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,s){if(s){e=`${s}:${e}`;const i=pc[s];i?t.setAttributeNS(i,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const s=pc[n];s?t.removeAttributeNS(s,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&an.DashCase?t.style.setProperty(e,n,s&an.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&an.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){Cc(e,"property"),t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return Cc(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,vc(n)):this.eventManager.addEventListener(t,e,vc(n))}}const bc=(()=>"@".charCodeAt(0))();function Cc(t,e){if(t.charCodeAt(0)===bc)throw new Error(`Found the synthetic ${e} ${t}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class xc extends wc{constructor(t,e,n,s){super(t),this.component=n;const i=_c(s+"-"+n.id,n.styles,[]);e.addStyles(i),this.contentAttr=mc.replace(fc,s+"-"+n.id),this.hostAttr=gc.replace(fc,s+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Sc extends wc{constructor(t,e,n,s){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=s,this.shadowRoot=s.encapsulation===Jt.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const i=_c(s.id,s.styles,[]);for(let r=0;r"undefined"!=typeof Zone&&Zone.__symbol__||function(t){return"__zone_symbol__"+t})(),kc=Ec("addEventListener"),Tc=Ec("removeEventListener"),Oc={},Ic="__zone_symbol__propagationStopped",Rc=(()=>{const t="undefined"!=typeof Zone&&Zone[Ec("BLACK_LISTED_EVENTS")];if(t){const e={};return t.forEach(t=>{e[t]=t}),e}})(),Pc=function(t){return!!Rc&&Rc.hasOwnProperty(t)},Ac=function(t){const e=Oc[t.type];if(!e)return;const n=this[e];if(!n)return;const s=[t];if(1===n.length){const t=n[0];return t.zone!==Zone.current?t.zone.run(t.handler,this,s):t.handler.apply(this,s)}{const e=n.slice();for(let n=0;n(class extends uc{constructor(t,e,n){super(t),this.ngZone=e,n&&function(t){return"server"===t}(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const t=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[Ic]=!0),t&&t.apply(this,arguments)}}supports(t){return!0}addEventListener(t,e,n){let s=n;if(!t[kc]||Ji.isInAngularZone()&&!Pc(e))t.addEventListener(e,s,!1);else{let n=Oc[e];n||(n=Oc[e]=Ec("ANGULAR"+e+"FALSE"));let i=t[n];const r=i&&i.length>0;i||(i=t[n]=[]);const o=Pc(e)?Zone.root:Zone.current;if(0===i.length)i.push({zone:o,handler:s});else{let t=!1;for(let e=0;ethis.removeEventListener(t,e,s)}removeEventListener(t,e,n){let s=t[Tc];if(!s)return t.removeEventListener.apply(t,[e,n,!1]);let i=Oc[e],r=i&&t[i];if(!r)return t.removeEventListener.apply(t,[e,n,!1]);let o=!1;for(let l=0;l(class{constructor(){this.events=[],this.overrides={}}buildHammer(t){const e=new Hammer(t,this.options);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(const n in this.overrides)e.get(n).set(this.overrides[n]);return e}}))(),Lc=(()=>(class extends uc{constructor(t,e,n,s){super(t),this._config=e,this.console=n,this.loader=s}supports(t){return!(!Nc.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))}addEventListener(t,e,n){const s=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){let s=!1,i=()=>{s=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(i=(()=>{}));s||(i=this.addEventListener(t,e,n))}).catch(()=>{this.console.warn(`The "${e}" event cannot be bound because the custom `+"Hammer.JS loader failed."),i=(()=>{})}),()=>{i()}}return s.runOutsideAngular(()=>{const i=this._config.buildHammer(t),r=function(t){s.runGuarded(function(){n(t)})};return i.on(e,r),()=>{i.off(e,r),"function"==typeof i.destroy&&i.destroy()}})}isCustomEvent(t){return this._config.events.indexOf(t)>-1}}))(),jc=["alt","control","meta","shift"],Uc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},zc=(()=>{class t extends uc{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,s){const i=t.parseEventName(n),r=t.eventCallback(i.fullKey,s,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ha().onAndCancel(e,i.domEventName,r))}static parseEventName(e){const n=e.toLowerCase().split("."),s=n.shift();if(0===n.length||"keydown"!==s&&"keyup"!==s)return null;const i=t._normalizeKey(n.pop());let r="";if(jc.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),r+=t+".")}),r+=i,0!=n.length||0===i.length)return null;const o={};return o.domEventName=s,o.fullKey=r,o}static getEventFullKey(t){let e="",n=Ha().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),jc.forEach(s=>{s!=n&&(0,Uc[s])(t)&&(e+=s+".")}),e+=n}static eventCallback(e,n,s){return i=>{t.getEventFullKey(i)===e&&s.runGuarded(()=>n(i))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t})();class Fc{}const Hc=(()=>(class extends Fc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case Ie.NONE:return e;case Ie.HTML:return e instanceof Gc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){let n=null;try{Te=Te||new ae(t);let s=e?String(e):"";n=Te.getInertBodyElement(s);let i=5,r=s;do{if(0===i)throw new Error("Failed to sanitize html because the input is unstable");i--,s=r,r=n.innerHTML,n=Te.getInertBodyElement(s)}while(s!==r);const o=new xe,l=o.sanitizeChildren(Oe(n)||n);return le()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),l}finally{if(n){const t=Oe(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e)));case Ie.STYLE:return e instanceof Wc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";const e=t.match(Ae);return e&&he(e[1])===e[1]||t.match(Pe)&&function(t){let e=!0,n=!0;for(let s=0;s{class t{constructor(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.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Pi,useValue:e.appId},{provide:nc,useExisting:Pi},sc]}}}return t})();function Jc(){return new tu(Ot(Hl))}const tu=(()=>{class t{constructor(t){this._doc=t}getTitle(){return Ha().getTitle(this._doc)}setTitle(t){Ha().setTitle(this._doc,t)}}return t.ngInjectableDef=mt({factory:Jc,token:t,providedIn:"root"}),t})();"undefined"!=typeof window&&window;class eu{constructor(t,e){this.id=t,this.url=e}}class nu extends eu{constructor(t,e,n="imperative",s=null){super(t,e),this.navigationTrigger=n,this.restoredState=s}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class su extends eu{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class iu extends eu{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class ru extends eu{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ou extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class lu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class au extends eu{constructor(t,e,n,s,i){super(t,e),this.urlAfterRedirects=n,this.state=s,this.shouldActivate=i}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class cu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class uu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class hu{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class du{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class pu{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class fu{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class gu{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class mu{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class _u{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const vu=(()=>(class{}))(),yu="primary";class wu{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function bu(t){return new wu(t)}const Cu="ngNavigationCancelingError";function xu(t){const e=Error("NavigationCancelingError: "+t);return e[Cu]=!0,e}function Su(t,e,n){const s=n.path.split("/");if(s.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||s.length0?t[t.length-1]:null}function Mu(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Nu(t){return Ve(t)?t:De(t)?W(Promise.resolve(t)):Xl(t)}function Du(t,e,n){return n?function(t,e){return Ru(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!ju(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const s in n.children){if(!e.children[s])return!1;if(!t(e.children[s],n.children[s]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>e[n]===t[n])}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,s,i){if(n.segments.length>i.length){return!!ju(n.segments.slice(0,i.length),i)&&!s.hasChildren()}if(n.segments.length===i.length){if(!ju(n.segments,i))return!1;for(const e in s.children){if(!n.children[e])return!1;if(!t(n.children[e],s.children[e]))return!1}return!0}{const t=i.slice(0,n.segments.length),r=i.slice(n.segments.length);return!!ju(n.segments,t)&&!!n.children[yu]&&e(n.children[yu],s,r)}}(e,n,n.segments)}(t.root,e.root)}class Vu{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=bu(this.queryParams)),this._queryParamMap}toString(){return Hu.serialize(this)}}class $u{constructor(t,e){this.segments=t,this.children=e,this.parent=null,Mu(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Bu(this)}}class Lu{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=bu(this.parameters)),this._parameterMap}toString(){return Qu(this)}}function ju(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Uu(t,e){let n=[];return Mu(t.children,(t,s)=>{s===yu&&(n=n.concat(e(t,s)))}),Mu(t.children,(t,s)=>{s!==yu&&(n=n.concat(e(t,s)))}),n}class zu{}class Fu{parse(t){const e=new eh(t);return new Vu(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){var e;return`${`/${function t(e,n){if(!e.hasChildren())return Bu(e);if(n){const n=e.children[yu]?t(e.children[yu],!1):"",s=[];return Mu(e.children,(e,n)=>{n!==yu&&s.push(`${n}:${t(e,!1)}`)}),s.length>0?`${n}(${s.join("//")})`:n}{const n=Uu(e,(n,s)=>s===yu?[t(e.children[yu],!1)]:[`${s}:${t(n,!1)}`]);return`${Bu(e)}/(${n.join("//")})`}}(t.root,!0)}`}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Wu(e)}=${Wu(t)}`).join("&"):`${Wu(e)}=${Wu(n)}`});return e.length?`?${e.join("&")}`:""}(t.queryParams)}${"string"==typeof t.fragment?`#${e=t.fragment,encodeURI(e)}`:""}`}}const Hu=new Fu;function Bu(t){return t.segments.map(t=>Qu(t)).join("/")}function Gu(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Wu(t){return Gu(t).replace(/%3B/gi,";")}function Yu(t){return Gu(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function qu(t){return decodeURIComponent(t)}function Zu(t){return qu(t.replace(/\+/g,"%20"))}function Qu(t){return`${Yu(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Yu(t)}=${Yu(e[t])}`).join("")}`;var e}const Xu=/^[^\/()?;=#]+/;function Ku(t){const e=t.match(Xu);return e?e[0]:""}const Ju=/^[^=?&#]+/,th=/^[^?&#]+/;class eh{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new $u([],{}):new $u([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[yu]=new $u(t,e)),n}parseSegment(){const t=Ku(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Lu(qu(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Ku(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Ku(this.remaining);t&&this.capture(n=t)}t[qu(e)]=qu(n)}parseQueryParam(t){const e=function(t){const e=t.match(Ju);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(th);return e?e[0]:""}(this.remaining);t&&this.capture(n=t)}const s=Zu(e),i=Zu(n);if(t.hasOwnProperty(s)){let e=t[s];Array.isArray(e)||(t[s]=e=[e]),e.push(i)}else t[s]=i}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Ku(this.remaining),s=this.remaining[n.length];if("/"!==s&&")"!==s&&";"!==s)throw new Error(`Cannot parse url '${this.url}'`);let i=void 0;n.indexOf(":")>-1?(i=n.substr(0,n.indexOf(":")),this.capture(i),this.capture(":")):t&&(i=yu);const r=this.parseChildren();e[i]=1===Object.keys(r).length?r[yu]:new $u([],r),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class nh{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=sh(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=sh(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=ih(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return ih(t,this._root).map(t=>t.value)}}function sh(t,e){if(t===e.value)return e;for(const n of e.children){const e=sh(t,n);if(e)return e}return null}function ih(t,e){if(t===e.value)return[e];for(const n of e.children){const s=ih(t,n);if(s.length)return s.unshift(e),s}return[]}class rh{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function oh(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class lh extends nh{constructor(t,e){super(t),this.snapshot=e,ph(this,t)}toString(){return this.snapshot.toString()}}function ah(t,e){const n=function(t,e){const n=new hh([],{},{},"",{},yu,e,null,t.root,-1,{});return new dh("",new rh(n,[]))}(t,e),s=new Kl([new Lu("",{})]),i=new Kl({}),r=new Kl({}),o=new Kl({}),l=new Kl(""),a=new ch(s,i,o,l,r,yu,e,n.root);return a.snapshot=n.root,new lh(new rh(a,[]),n)}class ch{constructor(t,e,n,s,i,r,o,l){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=i,this.outlet=r,this.component=o,this._futureSnapshot=l}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(F(t=>bu(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(F(t=>bu(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function uh(t,e="emptyOnly"){const n=t.pathFromRoot;let s=0;if("always"!==e)for(s=n.length-1;s>=1;){const t=n[s],e=n[s-1];if(t.routeConfig&&""===t.routeConfig.path)s--;else{if(e.component)break;s--}}return function(t){return t.reduce((t,e)=>({params:Object.assign({},t.params,e.params),data:Object.assign({},t.data,e.data),resolve:Object.assign({},t.resolve,e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(s))}class hh{constructor(t,e,n,s,i,r,o,l,a,c,u){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=i,this.outlet=r,this.component=o,this.routeConfig=l,this._urlSegment=a,this._lastPathIndex=c,this._resolve=u}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=bu(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=bu(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class dh extends nh{constructor(t,e){super(e),this.url=t,ph(this,e)}toString(){return fh(this._root)}}function ph(t,e){e.value._routerState=t,e.children.forEach(e=>ph(t,e))}function fh(t){const e=t.children.length>0?` { ${t.children.map(fh).join(", ")} } `:"";return`${t.value}${e}`}function gh(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Ru(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Ru(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nRu(t.parameters,s[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||mh(t.parent,e.parent))}function _h(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function vh(t,e,n,s,i){let r={};return s&&Mu(s,(t,e)=>{r[e]=Array.isArray(t)?t.map(t=>`${t}`):`${t}`}),new Vu(n.root===t?e:function t(e,n,s){const i={};return Mu(e.children,(e,r)=>{i[r]=e===n?s:t(e,n,s)}),new $u(e.segments,i)}(n.root,t,e),r,i)}class yh{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&_h(n[0]))throw new Error("Root segment cannot have matrix parameters");const s=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(s&&s!==Au(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class wh{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function bh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[yu]:`${t}`}function Ch(t,e,n){if(t||(t=new $u([],{})),0===t.segments.length&&t.hasChildren())return xh(t,e,n);const s=function(t,e,n){let s=0,i=e;const r={match:!1,pathIndex:0,commandIndex:0};for(;i=n.length)return r;const e=t.segments[i],o=bh(n[s]),l=s0&&void 0===o)break;if(o&&l&&"object"==typeof l&&void 0===l.outlets){if(!Th(o,l,e))return r;s+=2}else{if(!Th(o,{},e))return r;s++}i++}return{match:!0,pathIndex:i,commandIndex:s}}(t,e,n),i=n.slice(s.commandIndex);if(s.match&&s.pathIndex{null!==n&&(i[s]=Ch(t.children[s],e,n))}),Mu(t.children,(t,e)=>{void 0===s[e]&&(i[e]=t)}),new $u(t.segments,i)}}function Sh(t,e,n){const s=t.segments.slice(0,e);let i=0;for(;i{null!==t&&(e[n]=Sh(new $u([],{}),0,t))}),e}function kh(t){const e={};return Mu(t,(t,n)=>e[n]=`${t}`),e}function Th(t,e,n){return t==n.path&&Ru(e,n.parameters)}const Oh=(t,e,n)=>F(s=>(new Ih(e,s.targetRouterState,s.currentRouterState,n).activate(t),s));class Ih{constructor(t,e,n,s){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=s}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),gh(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const s=oh(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,s[e],n),delete s[e]}),Mu(s,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const s=t.value,i=e?e.value:null;if(s===i)if(s.component){const i=n.getContext(s.outlet);i&&this.deactivateChildRoutes(t,e,i.children)}else this.deactivateChildRoutes(t,e,n);else i&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),s=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:s})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const s=oh(t),i=t.value.component?n.children:e;Mu(s,(t,e)=>this.deactivateRouteAndItsChildren(t,i)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const s=oh(e);t.children.forEach(t=>{this.activateRoutes(t,s[t.value.outlet],n),this.forwardEvent(new mu(t.value.snapshot))}),t.children.length&&this.forwardEvent(new fu(t.value.snapshot))}activateRoutes(t,e,n){const s=t.value,i=e?e.value:null;if(gh(s),s===i)if(s.component){const i=n.getOrCreateContext(s.outlet);this.activateChildRoutes(t,e,i.children)}else this.activateChildRoutes(t,e,n);else if(s.component){const e=n.getOrCreateContext(s.outlet);if(this.routeReuseStrategy.shouldAttach(s.snapshot)){const t=this.routeReuseStrategy.retrieve(s.snapshot);this.routeReuseStrategy.store(s.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),Rh(t.route)}else{const n=function(t){for(let e=s.snapshot.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(),i=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=s,e.resolver=i,e.outlet&&e.outlet.activateWith(s,i),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Rh(t){gh(t.value),t.children.forEach(Rh)}function Ph(t){return"function"==typeof t}function Ah(t){return t instanceof Vu}class Mh{constructor(t){this.segmentGroup=t||null}}class Nh{constructor(t){this.urlTree=t}}function Dh(t){return new b(e=>e.error(new Mh(t)))}function Vh(t){return new b(e=>e.error(new Nh(t)))}function $h(t){return new b(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class Lh{constructor(t,e,n,s,i){this.configLoader=e,this.urlSerializer=n,this.urlTree=s,this.config=i,this.allowRedirects=!0,this.ngModule=t.get(tn)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,yu).pipe(F(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(Ca(t=>{if(t instanceof Nh)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof Mh)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,yu).pipe(F(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(Ca(t=>{if(t instanceof Mh)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const s=t.segments.length>0?new $u([],{[yu]:t}):t;return new Vu(s,e,n)}expandSegmentGroup(t,e,n,s){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(F(t=>new $u([],t))):this.expandSegment(t,n,e,n.segments,s,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Xl({});const n=[],s=[],i={};return Mu(t,(t,r)=>{const o=e(r,t).pipe(F(t=>i[r]=t));r===yu?n.push(o):s.push(o)}),Xl.apply(null,n.concat(s)).pipe(ra(),ba(),F(()=>i))}(n.children,(n,s)=>this.expandSegmentGroup(t,e,s,n))}expandSegment(t,e,n,s,i,r){return Xl(...n).pipe(F(o=>this.expandSegmentAgainstRoute(t,e,n,o,s,i,r).pipe(Ca(t=>{if(t instanceof Mh)return Xl(null);throw t}))),ra(),Oa(t=>!!t),Ca((t,n)=>{if(t instanceof ta||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,s,i))return Xl(new $u([],{}));throw new Mh(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,s,i,r,o){return Fh(s)!==r?Dh(e):void 0===s.redirectTo?this.matchSegmentAgainstRoute(t,e,s,i):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r):Dh(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r){return"**"===s.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,s,r):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,s){const i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Vh(i):this.lineralizeSegments(n,i).pipe(Y(n=>{const i=new $u(n,{});return this.expandSegment(t,i,e,n,s,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r){const{matched:o,consumedSegments:l,lastChild:a,positionalParamSegments:c}=jh(e,s,i);if(!o)return Dh(e);const u=this.applyRedirectCommands(l,s.redirectTo,c);return s.redirectTo.startsWith("/")?Vh(u):this.lineralizeSegments(s,u).pipe(Y(s=>this.expandSegment(t,e,n,s.concat(i.slice(a)),r,!1)))}matchSegmentAgainstRoute(t,e,n,s){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(F(t=>(n._loadedConfig=t,new $u(s,{})))):Xl(new $u(s,{}));const{matched:i,consumedSegments:r,lastChild:o}=jh(e,n,s);if(!i)return Dh(e);const l=s.slice(o);return this.getChildConfig(t,n,s).pipe(Y(t=>{const n=t.module,s=t.routes,{segmentGroup:i,slicedSegments:o}=function(t,e,n,s){return n.length>0&&function(t,e,n){return s.some(n=>zh(t,e,n)&&Fh(n)!==yu)}(t,n)?{segmentGroup:Uh(new $u(e,function(t,e){const n={};n[yu]=e;for(const s of t)""===s.path&&Fh(s)!==yu&&(n[Fh(s)]=new $u([],{}));return n}(s,new $u(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return s.some(n=>zh(t,e,n))}(t,n)?{segmentGroup:Uh(new $u(t.segments,function(t,e,n,s){const i={};for(const r of n)zh(t,e,r)&&!s[Fh(r)]&&(i[Fh(r)]=new $u([],{}));return Object.assign({},s,i)}(t,n,s,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,r,l,s);return 0===o.length&&i.hasChildren()?this.expandChildren(n,s,i).pipe(F(t=>new $u(r,t))):0===s.length&&0===o.length?Xl(new $u(r,{})):this.expandSegment(n,i,s,o,yu,!0).pipe(F(t=>new $u(r.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Xl(new Eu(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Xl(e._loadedConfig):function(t,e,n){const s=e.canLoad;return s&&0!==s.length?W(s).pipe(F(s=>{const i=t.get(s);let r;if(function(t){return t&&Ph(t.canLoad)}(i))r=i.canLoad(e,n);else{if(!Ph(i))throw new Error("Invalid CanLoad guard");r=i(e,n)}return Nu(r)})).pipe(ra(),(i=(t=>!0===t),t=>t.lift(new Ia(i,void 0,t)))):Xl(!0);var i}(t.injector,e,n).pipe(Y(n=>n?this.configLoader.load(t.injector,e).pipe(F(t=>(e._loadedConfig=t,t))):function(t){return new b(e=>e.error(xu(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Xl(new Eu([],t))}lineralizeSegments(t,e){let n=[],s=e.root;for(;;){if(n=n.concat(s.segments),0===s.numberOfChildren)return Xl(n);if(s.numberOfChildren>1||!s.children[yu])return $h(t.redirectTo);s=s.children[yu]}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,s){const i=this.createSegmentGroup(t,e.root,n,s);return new Vu(i,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return Mu(t,(t,s)=>{if("string"==typeof t&&t.startsWith(":")){const i=t.substring(1);n[s]=e[i]}else n[s]=t}),n}createSegmentGroup(t,e,n,s){const i=this.createSegments(t,e.segments,n,s);let r={};return Mu(e.children,(e,i)=>{r[i]=this.createSegmentGroup(t,e,n,s)}),new $u(i,r)}createSegments(t,e,n,s){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,s):this.findOrReturn(e,n))}findPosParam(t,e,n){const s=n[e.path.substring(1)];if(!s)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return s}findOrReturn(t,e){let n=0;for(const s of e){if(s.path===t.path)return e.splice(n),s;n++}return t}}function jh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const s=(e.matcher||Su)(n,t,e);return s?{matched:!0,consumedSegments:s.consumed,lastChild:s.consumed.length,positionalParamSegments:s.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Uh(t){if(1===t.numberOfChildren&&t.children[yu]){const e=t.children[yu];return new $u(t.segments.concat(e.segments),e.children)}return t}function zh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Fh(t){return t.outlet||yu}class Hh{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Bh{constructor(t,e){this.component=t,this.route=e}}function Gh(t,e,n){const s=t._root;return function t(e,n,s,i,r={canDeactivateChecks:[],canActivateChecks:[]}){const o=oh(n);return e.children.forEach(e=>{!function(e,n,s,i,r={canDeactivateChecks:[],canActivateChecks:[]}){const o=e.value,l=n?n.value:null,a=s?s.getContext(e.value.outlet):null;if(l&&o.routeConfig===l.routeConfig){const c=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!ju(t.url,e.url);case"pathParamsOrQueryParamsChange":return!ju(t.url,e.url)||!Ru(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!mh(t,e)||!Ru(t.queryParams,e.queryParams);case"paramsChange":default:return!mh(t,e)}}(l,o,o.routeConfig.runGuardsAndResolvers);if(c?r.canActivateChecks.push(new Hh(i)):(o.data=l.data,o._resolvedData=l._resolvedData),t(e,n,o.component?a?a.children:null:s,i,r),c){r.canDeactivateChecks.push(new Bh(a&&a.outlet&&a.outlet.component||null,l))}}else l&&Yh(n,a,r),r.canActivateChecks.push(new Hh(i)),t(e,null,o.component?a?a.children:null:s,i,r)}(e,o[e.value.outlet],s,i.concat([e.value]),r),delete o[e.value.outlet]}),Mu(o,(t,e)=>Yh(t,s.getContext(e),r)),r}(s,e?e._root:null,n,[s.value])}function Wh(t,e,n){const s=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(s?s.module.injector:n).get(t)}function Yh(t,e,n){const s=oh(t),i=t.value;Mu(s,(t,s)=>{Yh(t,i.component?e?e.children.getContext(s):null:e,n)}),n.canDeactivateChecks.push(new Bh(i.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,i))}const qh=Symbol("INITIAL_VALUE");function Zh(){return Pa(t=>(function(...t){let e=null,n=null;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&a(t[0])&&(t=t[0]),G(t,n).lift(new na(e))})(...t.map(t=>t.pipe(Ea(1),Da(qh)))).pipe(Va((t,e)=>{let n=!1;return e.reduce((t,s,i)=>{if(t!==qh)return t;if(s===qh&&(n=!0),!n){if(!1===s)return s;if(i===e.length-1||Ah(s))return s}return t},t)},qh),oa(t=>t!==qh),F(t=>Ah(t)?t:!0===t),Ea(1)))}function Qh(t,e){return null!==t&&e&&e(new gu(t)),Xl(!0)}function Xh(t,e){return null!==t&&e&&e(new pu(t)),Xl(!0)}function Kh(t,e,n){const s=e.routeConfig?e.routeConfig.canActivate:null;return s&&0!==s.length?Xl(s.map(s=>ia(()=>{const i=Wh(s,e,n);let r;if(function(t){return t&&Ph(t.canActivate)}(i))r=Nu(i.canActivate(e,t));else{if(!Ph(i))throw new Error("Invalid CanActivate guard");r=Nu(i(e,t))}return r.pipe(Oa())}))).pipe(Zh()):Xl(!0)}function Jh(t,e,n){const s=e[e.length-1],i=e.slice(0,e.length-1).reverse().map(t=>(function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null})(t)).filter(t=>null!==t).map(e=>ia(()=>Xl(e.guards.map(i=>{const r=Wh(i,e.node,n);let o;if(function(t){return t&&Ph(t.canActivateChild)}(r))o=Nu(r.canActivateChild(s,t));else{if(!Ph(r))throw new Error("Invalid CanActivateChild guard");o=Nu(r(s,t))}return o.pipe(Oa())})).pipe(Zh())));return Xl(i).pipe(Zh())}class td{}class ed{constructor(t,e,n,s,i,r){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=s,this.paramsInheritanceStrategy=i,this.relativeLinkResolution=r}recognize(){try{const e=id(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,n=this.processSegmentGroup(this.config,e,yu),s=new hh([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},yu,this.rootComponentType,null,this.urlTree.root,-1,{}),i=new rh(s,n),r=new dh(this.url,i);return this.inheritParamsAndData(r._root),Xl(r)}catch(t){return new b(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=uh(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Uu(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};n.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),s=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${s}'.`)}e[t.value.outlet]=t.value})}(),n.sort((t,e)=>t.value.outlet===yu?-1:e.value.outlet===yu?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,s){for(const r of t)try{return this.processSegmentAgainstRoute(r,e,n,s)}catch(i){if(!(i instanceof td))throw i}if(this.noLeftoversInUrl(e,n,s))return[];throw new td}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,s){if(t.redirectTo)throw new td;if((t.outlet||yu)!==s)throw new td;let i,r=[],o=[];if("**"===t.path){const r=n.length>0?Au(n).parameters:{};i=new hh(n,r,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,ld(t),s,t.component,t,nd(e),sd(e)+n.length,ad(t))}else{const l=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new td;return{consumedSegments:[],lastChild:0,parameters:{}}}const s=(e.matcher||Su)(n,t,e);if(!s)throw new td;const i={};Mu(s.posParams,(t,e)=>{i[e]=t.path});const r=s.consumed.length>0?Object.assign({},i,s.consumed[s.consumed.length-1].parameters):i;return{consumedSegments:s.consumed,lastChild:s.consumed.length,parameters:r}}(e,t,n);r=l.consumedSegments,o=n.slice(l.lastChild),i=new hh(r,l.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,ld(t),s,t.component,t,nd(e),sd(e)+r.length,ad(t))}const l=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:a,slicedSegments:c}=id(e,r,o,l,this.relativeLinkResolution);if(0===c.length&&a.hasChildren()){const t=this.processChildren(l,a);return[new rh(i,t)]}if(0===l.length&&0===c.length)return[new rh(i,[])];const u=this.processSegment(l,a,c,yu);return[new rh(i,u)]}}function nd(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function sd(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function id(t,e,n,s,i){if(n.length>0&&function(t,e,n){return s.some(n=>rd(t,e,n)&&od(n)!==yu)}(t,n)){const i=new $u(e,function(t,e,n,s){const i={};i[yu]=s,s._sourceSegment=t,s._segmentIndexShift=e.length;for(const r of n)if(""===r.path&&od(r)!==yu){const n=new $u([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,i[od(r)]=n}return i}(t,e,s,new $u(n,t.children)));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return s.some(n=>rd(t,e,n))}(t,n)){const r=new $u(t.segments,function(t,e,n,s,i,r){const o={};for(const l of s)if(rd(t,n,l)&&!i[od(l)]){const n=new $u([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===r?t.segments.length:e.length,o[od(l)]=n}return Object.assign({},i,o)}(t,e,n,s,t.children,i));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:n}}const r=new $u(t.segments,t.children);return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:n}}function rd(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function od(t){return t.outlet||yu}function ld(t){return t.data||{}}function ad(t){return t.resolve||{}}function cd(t,e,n,s){const i=Wh(t,e,s);return Nu(i.resolve?i.resolve(e,n):i(e,n))}function ud(t){return function(e){return e.pipe(Pa(e=>{const n=t(e);return n?W(n).pipe(F(()=>e)):W([e])}))}}class hd{}class dd{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const pd=new Rt("ROUTES");class fd{constructor(t,e,n,s){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=s}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(F(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const s=n.create(t);return new Eu(Pu(s.injector.get(pd)).map(Iu),s)}))}loadModuleFactory(t){return"string"==typeof t?W(this.loader.load(t)):Nu(t()).pipe(Y(t=>t instanceof en?Xl(t):W(this.compiler.compileModuleAsync(t))))}}class gd{}class md{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function _d(t){throw t}function vd(t,e,n){return e.parse("/")}function yd(t,e){return Xl(null)}class wd{constructor(t,e,n,s,i,r,o,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=s,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new T,this.errorHandler=_d,this.malformedUriErrorHandler=vd,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:yd,afterPreactivation:yd},this.urlHandlingStrategy=new md,this.routeReuseStrategy=new dd,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=i.get(tn),this.console=i.get($i);const a=i.get(Ji);this.isNgZoneEnabled=a instanceof Ji,this.resetConfig(l),this.currentUrlTree=new Vu(new $u([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new fd(r,o,t=>this.triggerEvent(new hu(t)),t=>this.triggerEvent(new du(t))),this.routerState=ah(this.currentUrlTree,this.rootComponentType),this.transitions=new Kl({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(oa(t=>0!==t.id),F(t=>Object.assign({},t,{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Pa(t=>{let n=!1,s=!1;return Xl(t).pipe(fa(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign({},this.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Pa(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Xl(t).pipe(Pa(t=>{const n=this.transitions.getValue();return e.next(new nu(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?ql:[t]}),Pa(t=>Promise.resolve(t)),function(t,e,n,s){return function(i){return i.pipe(Pa(i=>(function(t,e,n,s,r){return new Lh(t,e,n,i.extractedUrl,r).apply()})(t,e,n,0,s).pipe(F(t=>Object.assign({},i,{urlAfterRedirects:t})))))}}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),fa(t=>{this.currentNavigation=Object.assign({},this.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,e,n,s,i){return function(r){return r.pipe(Y(r=>(function(t,e,n,s,i="emptyOnly",r="legacy"){return new ed(t,e,n,s,i,r).recognize()})(t,e,r.urlAfterRedirects,n(r.urlAfterRedirects),s,i).pipe(F(t=>Object.assign({},r,{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),fa(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),fa(t=>{const n=new ou(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:s,source:i,restoredState:r,extras:o}=t,l=new nu(n,this.serializeUrl(s),i,r);e.next(l);const a=ah(s,this.rootComponentType).snapshot;return Xl(Object.assign({},t,{targetSnapshot:a,urlAfterRedirects:s,extras:Object.assign({},o,{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),ql}),ud(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:i,extras:{skipLocationChange:r,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:i,skipLocationChange:!!r,replaceUrl:!!o})}),fa(t=>{const e=new lu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),F(t=>Object.assign({},t,{guards:Gh(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,currentSnapshot:i,guards:{canActivateChecks:r,canDeactivateChecks:o}}=n;return 0===o.length&&0===r.length?Xl(Object.assign({},n,{guardsResult:!0})):function(t,e,n,s){return W(o).pipe(Y(t=>(function(t,e,n,s,i){const r=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return r&&0!==r.length?Xl(r.map(r=>{const o=Wh(r,e,i);let l;if(function(t){return t&&Ph(t.canDeactivate)}(o))l=Nu(o.canDeactivate(t,e,n,s));else{if(!Ph(o))throw new Error("Invalid CanDeactivate guard");l=Nu(o(t,e,n,s))}return l.pipe(Oa())})).pipe(Zh()):Xl(!0)})(t.component,t.route,n,e,s)),Oa(t=>!0!==t,!0))}(0,s,i,t).pipe(Y(n=>n&&function(t){return"boolean"==typeof n}()?function(t,e,n,s){return W(r).pipe(ja(e=>W([Xh(e.route.parent,s),Qh(e.route,s),Jh(t,e.path,n),Kh(t,e.route,n)]).pipe(ra(),Oa(t=>!0!==t,!0))),Oa(t=>!0!==t,!0))}(s,0,t,e):Xl(n)),F(t=>Object.assign({},n,{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),fa(t=>{if(Ah(t.guardsResult)){const e=xu(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),fa(t=>{const e=new au(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),oa(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new iu(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),ud(t=>{if(t.guards.canActivateChecks.length)return Xl(t).pipe(fa(t=>{const e=new cu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,guards:{canActivateChecks:i}}=n;return i.length?W(i).pipe(ja(n=>(function(t,e,n,i){return function(t,e,n,s){const i=Object.keys(t);if(0===i.length)return Xl({});if(1===i.length){const r=i[0];return cd(t[r],e,n,s).pipe(F(t=>({[r]:t})))}const r={};return W(i).pipe(Y(i=>cd(t[i],e,n,s).pipe(F(t=>(r[i]=t,t))))).pipe(ba(),F(()=>r))}(t._resolve,t,s,i).pipe(F(e=>(t._resolvedData=e,t.data=Object.assign({},t.data,uh(t,n).resolve),null)))})(n.route,0,t,e)),function(t,e){return arguments.length>=2?function(e){return y(Va(t,void 0),ha(1),va(void 0))(e)}:function(e){return y(Va((e,n,s)=>t(e)),ha(1))(e)}}((t,e)=>t),F(t=>n)):Xl(n)}))}}(this.paramsInheritanceStrategy,this.ngModule.injector),fa(t=>{const e=new uu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}))}),ud(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:i,extras:{skipLocationChange:r,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:i,skipLocationChange:!!r,replaceUrl:!!o})}),F(t=>{const e=function(t,e,n){const s=function t(e,n,s){if(s&&e.shouldReuseRoute(n.value,s.value.snapshot)){const i=s.value;i._futureSnapshot=n.value;const r=function(e,n,s){return n.children.map(n=>{for(const i of s.children)if(e.shouldReuseRoute(i.value.snapshot,n.value))return t(e,n,i);return t(e,n)})}(e,n,s);return new rh(i,r)}{const s=e.retrieve(n.value);if(s){const t=s.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let s=0;st(e,n));return new rh(s,r)}}var i}(t,e._root,n?n._root:void 0);return new lh(s,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign({},t,{targetRouterState:e})}),fa(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),Oh(this.rootContexts,this.routeReuseStrategy,t=>this.triggerEvent(t)),fa({next(){n=!0},complete(){n=!0}}),function(t){return e=>e.lift(new Ua(t))}(()=>{if(!n&&!s){this.resetUrlToCurrentUrlTree();const n=new iu(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null}),Ca(n=>{if(s=!0,function(t){return n&&n[Cu]}()){const s=Ah(n.url);s||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const i=new iu(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(i),t.resolve(!1),s&&this.navigateByUrl(n.url)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const s=new ru(t.id,this.serializeUrl(t.extractedUrl),n);e.next(s);try{t.resolve(this.errorHandler(n))}catch(i){t.reject(i)}}return ql}))}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign({},this.getTransition(),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",s=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,s,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){ku(t),this.config=t.map(Iu),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:s,fragment:i,preserveQueryParams:r,queryParamsHandling:o,preserveFragment:l}=e;le()&&r&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const a=n||this.routerState.root,c=l?this.currentUrlTree.fragment:i;let u=null;if(o)switch(o){case"merge":u=Object.assign({},this.currentUrlTree.queryParams,s);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=s||null}else u=r?this.currentUrlTree.queryParams:s||null;return null!==u&&(u=this.removeEmptyProps(u)),function(t,e,n,s,i){if(0===n.length)return vh(e.root,e.root,e,s,i);const r=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new yh(!0,0,t);let e=0,n=!1;const s=t.reduce((t,s,i)=>{if("object"==typeof s&&null!=s){if(s.outlets){const e={};return Mu(s.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(s.segmentPath)return[...t,s.segmentPath]}return"string"!=typeof s?[...t,s]:0===i?(s.split("/").forEach((s,i)=>{0==i&&"."===s||(0==i&&""===s?n=!0:".."===s?e++:""!=s&&t.push(s))}),t):[...t,s]},[]);return new yh(n,e,s)}(n);if(r.toRoot())return vh(e.root,new $u([],{}),e,s,i);const o=function(t,n,s){if(t.isAbsolute)return new wh(e.root,!0,0);if(-1===s.snapshot._lastPathIndex)return new wh(s.snapshot._urlSegment,!0,0);const i=_h(t.commands[0])?0:1;return function(e,n,r){let o=s.snapshot._urlSegment,l=s.snapshot._lastPathIndex+i,a=t.numberOfDoubleDots;for(;a>l;){if(a-=l,!(o=o.parent))throw new Error("Invalid number of '../'");l=o.segments.length}return new wh(o,!1,l-a)}()}(r,0,t),l=o.processChildren?xh(o.segmentGroup,o.index,r.commands):Ch(o.segmentGroup,o.index,r.commands);return vh(o.segmentGroup,l,e,s,i)}(a,this.currentUrlTree,t,u,c)}navigateByUrl(t,e={skipLocationChange:!1}){le()&&this.isNgZoneEnabled&&!Ji.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=Ah(t)?t:this.parseUrl(t),s=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(s,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const s=t[n];return null!=s&&(e[n]=s),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new su(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,s){const i=this.getTransition();if(i&&"imperative"!==e&&"imperative"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(i&&"hashchange"==e&&"popstate"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(i&&"popstate"==e&&"hashchange"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);let r=null,o=null;const l=new Promise((t,e)=>{r=t,o=e}),a=++this.navigationId;return this.setTransition({id:a,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:s,resolve:r,reject:o,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,s){const i=this.urlSerializer.serialize(t);s=s||{},this.location.isCurrentPathEqualTo(i)||e?this.location.replaceState(i,"",Object.assign({},s,{navigationId:n})):this.location.go(i,"",Object.assign({},s,{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}class bd{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new Cd,this.attachRef=null}}class Cd{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new bd,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}const xd=(()=>(class{constructor(t,e,n,s,i){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=i,this.activated=null,this._activatedRoute=null,this.activateEvents=new ki,this.deactivateEvents=new ki,this.name=s||yu,t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),s=this.parentContexts.getOrCreateContext(this.name).children,i=new Sd(t,s,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,i),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}))();class Sd{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===ch?this.route:t===Cd?this.childContexts:this.parent.get(t,e)}}class Ed{}class kd{preload(t,e){return e().pipe(Ca(()=>Xl(null)))}}class Td{preload(t,e){return Xl(null)}}const Od=(()=>(class{constructor(t,e,n,s,i){this.router=t,this.injector=s,this.preloadingStrategy=i,this.loader=new fd(e,n,e=>t.triggerEvent(new hu(e)),e=>t.triggerEvent(new du(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(oa(t=>t instanceof su),ja(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(tn);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const s of e)if(s.loadChildren&&!s.canLoad&&s._loadedConfig){const t=s._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else s.loadChildren&&!s.canLoad?n.push(this.preloadConfig(t,s)):s.children&&n.push(this.processRoutes(t,s.children));return W(n).pipe(X(),F(t=>void 0))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Y(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}))();class Id{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof nu?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof su&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof _u&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new _u(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}const Rd=new Rt("ROUTER_CONFIGURATION"),Pd=new Rt("ROUTER_FORROOT_GUARD"),Ad=[vl,{provide:zu,useClass:Fu},{provide:wd,useFactory:jd,deps:[vr,zu,Cd,vl,Dt,Oi,Hi,pd,Rd,[gd,new ht],[hd,new ht]]},Cd,{provide:ch,useFactory:Ud,deps:[wd]},{provide:Oi,useClass:Cr},Od,Td,kd,{provide:Rd,useValue:{enableTracing:!1}}];function Md(){return new pr("Router",wd)}const Nd=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[Ad,Ld(e),{provide:Pd,useFactory:$d,deps:[[wd,new ht,new pt]]},{provide:Rd,useValue:n||{}},{provide:ml,useFactory:Vd,deps:[fl,[new ut(_l),new ht],Rd]},{provide:Id,useFactory:Dd,deps:[wd,Wl,Rd]},{provide:Ed,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:Td},{provide:pr,multi:!0,useFactory:Md},[zd,{provide:Ii,multi:!0,useFactory:Fd,deps:[zd]},{provide:Bd,useFactory:Hd,deps:[zd]},{provide:Vi,multi:!0,useExisting:Bd}]]}}static forChild(e){return{ngModule:t,providers:[Ld(e)]}}}return t})();function Dd(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Id(t,e,n)}function Vd(t,e,n={}){return n.useHash?new wl(t,e):new bl(t,e)}function $d(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function Ld(t){return[{provide:Kt,multi:!0,useValue:t},{provide:pd,multi:!0,useValue:t}]}function jd(t,e,n,s,i,r,o,l,a={},c,u){const h=new wd(null,e,n,s,i,r,o,Pu(l));if(c&&(h.urlHandlingStrategy=c),u&&(h.routeReuseStrategy=u),a.errorHandler&&(h.errorHandler=a.errorHandler),a.malformedUriErrorHandler&&(h.malformedUriErrorHandler=a.malformedUriErrorHandler),a.enableTracing){const t=Ha();h.events.subscribe(e=>{t.logGroup(`Router Event: ${e.constructor.name}`),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return a.onSameUrlNavigation&&(h.onSameUrlNavigation=a.onSameUrlNavigation),a.paramsInheritanceStrategy&&(h.paramsInheritanceStrategy=a.paramsInheritanceStrategy),a.urlUpdateStrategy&&(h.urlUpdateStrategy=a.urlUpdateStrategy),a.relativeLinkResolution&&(h.relativeLinkResolution=a.relativeLinkResolution),h}function Ud(t){return t.routerState.root}const zd=(()=>(class{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new T}appInitializer(){return this.injector.get(gl,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(wd),s=this.injector.get(Rd);if(this.isLegacyDisabled(s)||this.isLegacyEnabled(s))t(!0);else if("disabled"===s.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==s.initialNavigation)throw new Error(`Invalid initialNavigation options: '${s.initialNavigation}'`);n.hooks.afterPreactivation=(()=>this.initNavigation?Xl(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone)),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(Rd),n=this.injector.get(Od),s=this.injector.get(Id),i=this.injector.get(wd),r=this.injector.get(vr);t===r.components[0]&&(this.isLegacyEnabled(e)?i.initialNavigation():this.isLegacyDisabled(e)&&i.setUpLocationChangeListener(),n.setUpPreloading(),s.init(),i.resetRootComponentType(r.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}))();function Fd(t){return t.appInitializer.bind(t)}function Hd(t){return t.bootstrapListener.bind(t)}const Bd=new Rt("Router Initializer");var Gd=Xn({encapsulation:2,styles:[],data:{}});function Wd(t){return to(0,[(t()(),Lr(0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),ai(1,212992,null,0,xd,[Cd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,1,0)},null)}function Yd(t){return to(0,[(t()(),Lr(0,0,null,null,1,"ng-component",[],null,null,null,Wd,Gd)),ai(1,49152,null,0,vu,[],null,null)],null,null)}var qd=Ls("ng-component",vu,Yd,{},{},[]);const Zd="Dropdowns",Qd=(()=>(class{constructor(){this.klass="default",this.items=[],this.placeholder="Select item",this.searchChange=new ki,this.font_size=16,this.width=128,this.filtered_items=[]}ngOnChanges(t){t.items&&(this.list=this.items.map(t=>t instanceof Object?t:{id:t,name:t}),this.longest=this.list.reduce((t,e)=>e.name.length>t.name.length?e:t,{id:"",name:""}),this.filter())}ngAfterViewInit(){this.resize()}trackByFn(t,e){return e?"string"==typeof e?e:e.id:t}resize(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)}filter(){if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(t=>("string"==typeof t?t:t.name).toLowerCase().indexOf(this.search.toLowerCase())>=0)),this.options&&this.options.hide_active&&this.selected)){const t="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(e=>("string"==typeof e?e:e.id).indexOf(t)<0)}}toggleShow(){this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(()=>{this.input&&this.input.nativeElement.focus()},100)}updateScroll(){if(!this.viewport||!this.scroll_el)return setTimeout(()=>this.updateScroll(),50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;const t="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(e=>("string"==typeof e?e:e.id)===t))}select(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)}change(t){const e="string"==typeof this.selected?this.selected:this.selected.id,n=this.filtered_items.findIndex(t=>("string"==typeof t?t:t.id)==e)+t;n>=0&&nthis.updateScroll(),100))}close(){this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null),this.close_timer=setTimeout(()=>this.show=!1,100)}cancelClose(){setTimeout(()=>{this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null)},50)}writeValue(t){this.selected=t,this.show=!1}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Xd=hl,Kd=(()=>{class t{constructor(){if(this.build=Xd(),!t.init){const e=Xd();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Zd} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Zd} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();function Jd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function tp(t){return Array.isArray(t)?t:[t]}function ep(t){return null==t?"":"string"==typeof t?t:`${t}px`}function np(t,e,n,i){return s(n)&&(i=n,n=void 0),i?np(t,e,n).pipe(F(t=>a(t)?i(...t):i(t))):new b(s=>{!function t(e,n,s,i,r){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,s,r),o=(()=>t.removeEventListener(n,s,r))}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,s),o=(()=>t.off(n,s))}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,s),o=(()=>t.removeListener(n,s))}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,l=e.length;o1?Array.prototype.slice.call(arguments):t)},s,n)})}class sp extends d{constructor(t,e){super()}schedule(t,e=0){return this}}class ip extends sp{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,s=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(s,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(s,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,s=void 0;try{this.work(t)}catch(i){n=!0,s=!!i&&i||new Error(i)}if(n)return this.unsubscribe(),s}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,s=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==s&&n.splice(s,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}class rp extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}const op=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=(()=>Date.now()),t})();class lp extends op{constructor(t,e=op.now){super(t,()=>lp.delegate&&lp.delegate!==this?lp.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return lp.delegate&&lp.delegate!==this?lp.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let 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}}}class ap extends lp{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,i=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s(function(t){const e=hp[t];e&&e()})(e)),e},clearImmediate(t){delete hp[t]}};class pp extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=dp.setImmediate(t.flush.bind(t,null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(dp.clearImmediate(e),t.scheduled=void 0)}}class fp extends lp{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,i=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s=0}function Cp(t){const{index:e,period:n,subscriber:s}=t;if(s.next(e),!s.closed){if(-1===n)return s.complete();t.index=e+1,this.schedule(t,n)}}function xp(t,e=vp){return n=(()=>(function(t=0,e,n){let s=-1;return bp(e)?s=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=vp),new b(e=>{const i=bp(t)?t:+t-n.now();return n.schedule(Cp,i,{index:0,period:s,subscriber:e})})})(t,e)),function(t){return t.lift(new yp(n))};var n}function Sp(t){return e=>e.lift(new Ep(t))}class Ep{constructor(t){this.notifier=t}call(t,e){const n=new kp(t),s=U(n,this.notifier);return s&&!n.seenValue?(n.add(s),e.subscribe(n)):n}}class kp extends z{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,s,i){this.seenValue=!0,this.complete()}notifyComplete(){}}class Tp{call(t,e){return e.subscribe(new Op(t))}}class Op extends g{constructor(t){super(t),this.hasPrev=!1}_next(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t}}class Ip extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}class Rp extends lp{}const Pp=new Rp(Ip);function Ap(t,e){return new b(e?n=>e.schedule(Mp,0,{error:t,subscriber:n}):e=>e.error(t))}function Mp({error:t,subscriber:e}){e.error(t)}var Np;!function(t){t.NEXT="N",t.ERROR="E",t.COMPLETE="C"}(Np||(Np={}));const Dp=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(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()}}do(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()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Xl(this.value);case"E":return Ap(this.error);case"C":return Zl()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})();class Vp extends g{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(Vp.dispatch,this.delay,new $p(t,this.destination)))}_next(t){this.scheduleMessage(Dp.createNext(t))}_error(t){this.scheduleMessage(Dp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(Dp.createComplete()),this.unsubscribe()}}class $p{constructor(t,e){this.notification=t,this.destination=e}}class Lp extends T{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift(),super.next(t)}nextTimeWindow(t){this._events.push(new jp(this._getNow(),t)),this._trimBufferThenGetEvents(),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),s=this.scheduler,i=n.length;let r;if(this.closed)throw new S;if(this.isStopped||this.hasError?r=d.EMPTY:(this.observers.push(t),r=new E(this,t)),s&&t.add(t=new Vp(t,s)),e)for(let o=0;oe&&(r=Math.max(r,i-e)),r>0&&s.splice(0,r),s}}class jp{constructor(t,e){this.time=t,this.value=e}}let Up;try{Up="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Lv){Up=!1}const zp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Gl(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&&!Up)&&"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.ngInjectableDef=mt({factory:function(){return new t(Ot(Di,8))},token:t,providedIn:"root"}),t})(),Fp=(()=>(class{}))(),Hp=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();let Bp;function Gp(){if("object"!=typeof document||!document)return Hp.NORMAL;if(!Bp){const 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";const n=document.createElement("div"),s=n.style;s.width="2px",s.height="1px",t.appendChild(n),document.body.appendChild(t),Bp=Hp.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Bp=0===t.scrollLeft?Hp.NEGATED:Hp.INVERTED),t.parentNode.removeChild(t)}return Bp}class Wp{}class Yp extends Wp{constructor(t){super(),this._data=t}connect(){return this._data instanceof b?this._data:Xl(this._data)}disconnect(){}}const qp=new Rt("VIRTUAL_SCROLL_STRATEGY");class Zp{constructor(t,e,n){this._scrolledIndexChange=new T,this.scrolledIndexChange=this._scrolledIndexChange.pipe(t=>t.lift(new mp(void 0,void 0))),this._viewport=null,this._itemSize=t,this._minBufferPx=e,this._maxBufferPx=n}attach(t){this._viewport=t,this._updateTotalContentSize(),this._updateRenderedRange()}detach(){this._scrolledIndexChange.complete(),this._viewport=null}updateItemAndBufferSize(t,e,n){if(n0&&(s.end=Math.min(r,s.end+t),s.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(s),this._viewport.setRenderedContentOffset(this._itemSize*s.start),this._scrolledIndexChange.next(Math.floor(e))}}function Qp(t){return t._scrollStrategy}const Xp=(()=>(class{constructor(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Zp(this.itemSize,this.minBufferPx,this.maxBufferPx)}get itemSize(){return this._itemSize}set itemSize(t){this._itemSize=Jd(t)}get minBufferPx(){return this._minBufferPx}set minBufferPx(t){this._minBufferPx=Jd(t)}get maxBufferPx(){return this._maxBufferPx}set maxBufferPx(t){this._maxBufferPx=Jd(t)}ngOnChanges(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}}))(),Kp=20,Jp=(()=>{class t{constructor(t,e){this._ngZone=t,this._platform=e,this._scrolled=new T,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=Kp){return this._platform.isBrowser?new b(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(xp(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Xl()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(oa(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,s)=>{this._scrollableContainsElement(s,t)&&e.push(s)}),e}_scrollableContainsElement(t,e){let n=e.nativeElement,s=t.getElementRef().nativeElement;do{if(n==s)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>np(window.document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Ji),Ot(zp))},token:t,providedIn:"root"}),t})(),tf=(()=>(class{constructor(t,e,n,s){this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=s,this._destroyed=new T,this._elementScrolled=new b(t=>this.ngZone.runOutsideAngular(()=>np(this.elementRef.nativeElement,"scroll").pipe(Sp(this._destroyed)).subscribe(t)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(t){const e=this.elementRef.nativeElement,n=this.dir&&"rtl"==this.dir.value;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Gp()!=Hp.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Gp()==Hp.INVERTED?t.left=t.right:Gp()==Hp.NEGATED&&(t.left=t.right?-t.right:t.right)):null!=t.right&&(t.left=e.scrollWidth-e.clientWidth-t.right),this._applyScrollToOptions(t)}_applyScrollToOptions(t){const e=this.elementRef.nativeElement;"object"==typeof document&&"scrollBehavior"in document.documentElement.style?e.scrollTo(t):(null!=t.top&&(e.scrollTop=t.top),null!=t.left&&(e.scrollLeft=t.left))}measureScrollOffset(t){const e=this.elementRef.nativeElement;if("top"==t)return e.scrollTop;if("bottom"==t)return e.scrollHeight-e.clientHeight-e.scrollTop;const n=this.dir&&"rtl"==this.dir.value;return"start"==t?t=n?"right":"left":"end"==t&&(t=n?"left":"right"),n&&Gp()==Hp.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Gp()==Hp.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft}}))(),ef="undefined"!=typeof requestAnimationFrame?cp:gp,nf=(()=>(class extends tf{constructor(t,e,n,s,i,r){if(super(t,r,n,i),this.elementRef=t,this._changeDetectorRef=e,this._scrollStrategy=s,this._detachedSubject=new T,this._renderedRangeSubject=new T,this.orientation="vertical",this.scrolledIndexChange=new b(t=>this._scrollStrategy.scrolledIndexChange.subscribe(e=>Promise.resolve().then(()=>this.ngZone.run(()=>t.next(e))))),this.renderedRangeStream=this._renderedRangeSubject.asObservable(),this._totalContentSizeTransform="",this._totalContentSize=0,this._renderedRange={start:0,end:0},this._dataLength=0,this._viewportSize=0,this._renderedContentOffset=0,this._renderedContentOffsetNeedsRewrite=!1,this._isChangeDetectionPending=!1,this._runAfterChangeDetection=[],!s)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.')}ngOnInit(){super.ngOnInit(),this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._measureViewportSize(),this._scrollStrategy.attach(this),this.elementScrolled().pipe(Da(null),xp(0,ef)).subscribe(()=>this._scrollStrategy.onContentScrolled()),this._markChangeDetectionNeeded()}))}ngOnDestroy(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),super.ngOnDestroy()}attach(t){if(this._forOf)throw Error("CdkVirtualScrollViewport is already attached.");this.ngZone.runOutsideAngular(()=>{this._forOf=t,this._forOf.dataStream.pipe(Sp(this._detachedSubject)).subscribe(t=>{const e=t.length;e!==this._dataLength&&(this._dataLength=e,this._scrollStrategy.onDataLengthChanged()),this._doChangeDetection()})})}detach(){this._forOf=null,this._detachedSubject.next()}getDataLength(){return this._dataLength}getViewportSize(){return this._viewportSize}getRenderedRange(){return this._renderedRange}setTotalContentSize(t){this._totalContentSize!==t&&(this._totalContentSize=t,this._totalContentSizeTransform=`scale${"horizontal"==this.orientation?"X":"Y"}(${this._totalContentSize})`,this._markChangeDetectionNeeded())}setRenderedRange(t){var e,n;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(()=>this._scrollStrategy.onContentRendered()))}getOffsetToRenderedContentStart(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}setRenderedContentOffset(t,e="to-start"){const n="horizontal"==this.orientation,s=n?"X":"Y";let i=`translate${s}(${Number((n&&this.dir&&"rtl"==this.dir.value?-1:1)*t)}px)`;this._renderedContentOffset=t,"to-end"===e&&(i+=` translate${s}(-100%)`,this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,this._markChangeDetectionNeeded(()=>{this._renderedContentOffsetNeedsRewrite?(this._renderedContentOffset-=this.measureRenderedContentSize(),this._renderedContentOffsetNeedsRewrite=!1,this.setRenderedContentOffset(this._renderedContentOffset)):this._scrollStrategy.onRenderedOffsetChanged()}))}scrollToOffset(t,e="auto"){const n={behavior:e};"horizontal"===this.orientation?n.start=t:n.top=t,this.scrollTo(n)}scrollToIndex(t,e="auto"){this._scrollStrategy.scrollToIndex(t,e)}measureScrollOffset(t){return super.measureScrollOffset(t||("horizontal"===this.orientation?"start":"top"))}measureRenderedContentSize(){const t=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?t.offsetWidth:t.offsetHeight}measureRangeSize(t){return this._forOf?this._forOf.measureRangeSize(t,this.orientation):0}checkViewportSize(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}_measureViewportSize(){const t=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?t.clientWidth:t.clientHeight}_markChangeDetectionNeeded(t){t&&this._runAfterChangeDetection.push(t),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._doChangeDetection()})))}_doChangeDetection(){this._isChangeDetectionPending=!1,this.ngZone.run(()=>this._changeDetectorRef.markForCheck()),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;const t=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(const e of t)e()}}))();function sf(t,e){if(!e.getBoundingClientRect)return 0;const n=e.getBoundingClientRect();return"horizontal"==t?n.width:n.height}const rf=(()=>(class{constructor(t,e,n,s,i){this._viewContainerRef=t,this._template=e,this._differs=n,this._viewport=s,this.viewChange=new T,this._dataSourceChanges=new T,this.cdkVirtualForTemplateCacheSize=20,this.dataStream=this._dataSourceChanges.pipe(Da(null),t=>t.lift(new Tp),Pa(([t,e])=>this._changeDataSource(t,e)),function(t,e,n){let s;return s={bufferSize:1,windowTime:void 0,refCount:!1,scheduler:void 0},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:s}){let i,r,o=0,l=!1,a=!1;return function(c){o++,i&&!l||(l=!1,i=new Lp(t,e,s),r=c.subscribe({next(t){i.next(t)},error(t){l=!0,i.error(t)},complete(){a=!0,i.complete()}}));const u=i.subscribe(this);this.add(()=>{o--,u.unsubscribe(),r&&!a&&n&&0===o&&(r.unsubscribe(),r=void 0,i=void 0)})}}(s))}()),this._differ=null,this._templateCache=[],this._needsUpdate=!1,this._destroyed=new T,this.dataStream.subscribe(t=>{this._data=t,this._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe(Sp(this._destroyed)).subscribe(t=>{this._renderedRange=t,i.run(()=>this.viewChange.next(this._renderedRange)),this._onRenderedDataChange()}),this._viewport.attach(this)}get cdkVirtualForOf(){return this._cdkVirtualForOf}set cdkVirtualForOf(t){this._cdkVirtualForOf=t;const e=function(t){return t&&"function"==typeof t.connect}(t)?t:new Yp(t instanceof b?t:Array.prototype.slice.call(t||[]));this._dataSourceChanges.next(e)}get cdkVirtualForTrackBy(){return this._cdkVirtualForTrackBy}set cdkVirtualForTrackBy(t){this._needsUpdate=!0,this._cdkVirtualForTrackBy=t?(e,n)=>t(e+(this._renderedRange?this._renderedRange.start:0),n):void 0}set cdkVirtualForTemplate(t){t&&(this._needsUpdate=!0,this._template=t)}measureRangeSize(t,e){if(t.start>=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");const n=t.start-this._renderedRange.start;let s=0,i=t.end-t.start;for(;i--;){const t=this._viewContainerRef.get(i+n);let r=t?t.rootNodes.length:0;for(;r--;)s+=sf(e,t.rootNodes[r])}return s}ngDoCheck(){if(this._differ&&this._needsUpdate){const t=this._differ.diff(this._renderedItems);t?this._applyChanges(t):this._updateContext(),this._needsUpdate=!1}}ngOnDestroy(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(let t of this._templateCache)t.destroy()}_onRenderedDataChange(){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)}_changeDataSource(t,e){return t&&t.disconnect(this),this._needsUpdate=!0,e?e.connect(this):Xl()}_updateContext(){const t=this._data.length;let e=this._viewContainerRef.length;for(;e--;){let n=this._viewContainerRef.get(e);n.context.index=this._renderedRange.start+e,n.context.count=t,this._updateComputedContextProperties(n.context),n.detectChanges()}}_applyChanges(t){t.forEachOperation((t,e,n)=>{if(null==t.previousIndex)this._insertViewForNewItem(n).context.$implicit=t.item;else if(null==n)this._cacheView(this._detachView(e));else{const s=this._viewContainerRef.get(e);this._viewContainerRef.move(s,n),s.context.$implicit=t.item}}),t.forEachIdentityChange(t=>{this._viewContainerRef.get(t.currentIndex).context.$implicit=t.item});const e=this._data.length;let n=this._viewContainerRef.length;for(;n--;){const t=this._viewContainerRef.get(n);t.context.index=this._renderedRange.start+n,t.context.count=e,this._updateComputedContextProperties(t.context)}}_cacheView(t){if(this._templateCache.length(class{}))(),lf=20,af=(()=>{class t{constructor(t,e){this._platform=t,e.runOutsideAngular(()=>{this._change=t.isBrowser?K(np(window,"resize"),np(window,"orientationchange")):Xl(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=document.documentElement,e=t.getBoundingClientRect();return{top:-e.top||document.body.scrollTop||window.scrollY||t.scrollTop||0,left:-e.left||document.body.scrollLeft||window.scrollX||t.scrollLeft||0}}change(t=lf){return t>0?this._change.pipe(xp(t)):this._change}_updateViewportSize(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zp),Ot(Ji))},token:t,providedIn:"root"}),t})();function cf(){throw Error("Host already has a portal attached")}class uf{attach(t){return null==t&&function(){throw Error("Attempting to attach a portal to a null PortalOutlet")}(),t.hasAttached()&&cf(),this._attachedHost=t,t.attach(this)}detach(){let 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())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class hf extends uf{constructor(t,e,n,s){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=s}}class df extends uf{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class pf{constructor(){this._isDisposed=!1}hasAttached(){return!!this._attachedPortal}attach(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&cf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof hf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof df?(this._attachedPortal=t,this.attachTemplatePortal(t)):void function(){throw Error("Attempting to attach an unknown Portal type. BasePortalOutlet accepts either a ComponentPortal or a TemplatePortal.")}()}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class ff extends pf{constructor(t,e,n,s){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=s}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.detectChanges(),n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}const gf=(()=>(class{}))();class mf{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=ep(-this._previousScrollPosition.left),t.style.top=ep(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,s=e.scrollBehavior||"",i=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=s,n.scrollBehavior=i}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}function _f(){return Error("Scroll strategy has already been attached.")}class vf{constructor(t,e,n,s){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=s,this._scrollSubscription=null,this._detach=(()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())})}attach(t){if(this._overlayRef)throw _f();this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class yf{enable(){}disable(){}attach(){}}function wf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function bf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class Cf{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=s,this._scrollSubscription=null}attach(t){if(this._overlayRef)throw _f();this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();wf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}const xf=(()=>{class t{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=(()=>new yf),this.close=(t=>new vf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t)),this.block=(()=>new mf(this._viewportRuler,this._document)),this.reposition=(t=>new Cf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t)),this._document=s}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Jp),Ot(af),Ot(Ji),Ot(Hl))},token:t,providedIn:"root"}),t})();class Sf{constructor(t){this.scrollStrategy=new yf,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(e=>{void 0!==t[e]&&(this[e]=t[e])})}}class Ef{constructor(t,e,n,s,i){this.offsetX=n,this.offsetY=s,this.panelClass=i,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}const kf=(()=>(class{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}))();function Tf(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "top", "bottom" or "center".')}function Of(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "start", "end" or "center".')}const If=(()=>{class t{constructor(t){this._attachedOverlays=[],this._keydownListener=(t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEventSubscriptions>0){e[n]._keydownEvents.next(t);break}}),this._document=t}ngOnDestroy(){this._detach()}add(t){this.remove(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this._detach()}_detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Hl))},token:t,providedIn:"root"}),t})(),Rf=(()=>{class t{constructor(t){this._document=t}ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Hl))},token:t,providedIn:"root"}),t})();class Pf{constructor(t,e,n,s,i,r,o,l){this._portalOutlet=t,this._host=e,this._pane=n,this._config=s,this._ngZone=i,this._keyboardDispatcher=r,this._document=o,this._location=l,this._backdropElement=null,this._backdropClick=new T,this._attachments=new T,this._detachments=new T,this._locationChanges=d.EMPTY,this._keydownEventsObservable=new b(t=>{const e=this._keydownEvents.subscribe(t);return this._keydownEventSubscriptions++,()=>{e.unsubscribe(),this._keydownEventSubscriptions--}}),this._keydownEvents=new T,this._keydownEventSubscriptions=0,s.scrollStrategy&&(this._scrollStrategy=s.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=s.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return this._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Ea(1)).subscribe(()=>{this.hasAttached()&&this.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(()=>this.dispose())),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),t}dispose(){const 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()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick.asObservable()}attachments(){return this._attachments.asObservable()}detachments(){return this._detachments.asObservable()}keydownEvents(){return this._keydownEventsObservable}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign({},this._config,t),this._updateElementSize()}setDirection(t){this._config=Object.assign({},this._config,{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){const t=this._pane.style;t.width=ep(this._config.width),t.height=ep(this._config.height),t.minWidth=ep(this._config.minWidth),t.minHeight=ep(this._config.minHeight),t.maxWidth=ep(this._config.maxWidth),t.maxHeight=ep(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"auto":"none"}_attachBackdrop(){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",t=>this._backdropClick.next(t)),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add("cdk-overlay-backdrop-showing")})}):this._backdropElement.classList.add("cdk-overlay-backdrop-showing")}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t,e=this._backdropElement;if(!e)return;let n=()=>{e&&e.parentNode&&e.parentNode.removeChild(e),this._backdropElement==e&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(e,this._config.backdropClass,!1),clearTimeout(t)};e.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{e.addEventListener("transitionend",n)}),e.style.pointerEvents="none",t=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const s=t.classList;tp(e).forEach(t=>{n?s.add(t):s.remove(t)})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.asObservable().pipe(Sp(K(this._attachments,this._detachments))).subscribe(()=>{this._pane&&this._host&&0!==this._pane.children.length||(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const Af="cdk-overlay-connected-position-bounding-box";class Mf{constructor(t,e,n,s,i){this._viewportRuler=e,this._document=n,this._platform=s,this._overlayContainer=i,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 T,this._resizeSubscription=d.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges.asObservable(),this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){if(this._overlayRef&&t!==this._overlayRef)throw Error("This position strategy is already attached to an overlay");this._validatePositions(),t.hostElement.classList.add(Af),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(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,s=[];let i;for(let r of this._preferredPositions){let o=this._getOriginPoint(t,r),l=this._getOverlayPoint(o,e,r),a=this._getOverlayFit(l,e,n,r);if(a.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(r,o);this._canFitWithFlexibleDimensions(a,l,n)?s.push({position:r,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,r)}):(!i||i.overlayFit.visibleAreae&&(e=s,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(i.position,i.originPoint);this._applyPosition(i.position,i.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&Nf(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Af),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,s;if("center"==e.originX)n=t.left+t.width/2;else{const s=this._isRtl()?t.right:t.left,i=this._isRtl()?t.left:t.right;n="start"==e.originX?s:i}return{x:n,y:s="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom}}_getOverlayPoint(t,e,n){let s,i;return s="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+s,y:t.y+(i="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}}_getOverlayFit(t,e,n,s){let{x:i,y:r}=t,o=this._getOffset(s,"x"),l=this._getOffset(s,"y");o&&(i+=o),l&&(r+=l);let a=0-r,c=r+e.height-n.height,u=this._subtractOverflows(e.width,0-i,i+e.width-n.width),h=this._subtractOverflows(e.height,a,c),d=u*h;return{visibleArea:d,isCompletelyWithinViewport:e.width*e.height===d,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:u==e.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const s=n.bottom-e.y,i=n.right-e.x,r=this._overlayRef.getConfig().minHeight,o=this._overlayRef.getConfig().minWidth,l=t.fitsInViewportHorizontally||null!=o&&o<=i;return(t.fitsInViewportVertically||null!=r&&r<=s)&&l}}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const s=this._viewportRect,i=Math.max(t.x+e.width-s.right,0),r=Math.max(t.y+e.height-s.bottom,0),o=Math.max(s.top-n.top-t.y,0),l=Math.max(s.left-n.left-t.x,0);let a=0,c=0;return this._previousPushAmount={x:a=e.width<=s.width?l||-i:t.xs&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-s/2)}if("end"===e.overlayX&&!s||"start"===e.overlayX&&s)c=n.right-t.x+this._viewportMargin,l=t.x-n.left;else if("start"===e.overlayX&&!s||"end"===e.overlayX&&s)a=t.x,l=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),s=this._lastBoundingBoxSize.width;a=t.x-e,(l=2*e)>s&&!this._isInitialRender&&!this._growAfterOpen&&(a=t.x-s/2)}return{top:r,left:a,bottom:o,right:c,width:l,height:i}}_setBoundingBoxStyles(t,e){const 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));const s={};if(this._hasExactPosition())s.top=s.left="0",s.bottom=s.right="",s.width=s.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;s.height=ep(n.height),s.top=ep(n.top),s.bottom=ep(n.bottom),s.width=ep(n.width),s.left=ep(n.left),s.right=ep(n.right),s.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",s.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(s.maxHeight=ep(t)),i&&(s.maxWidth=ep(i))}this._lastBoundingBoxSize=n,Nf(this._boundingBox.style,s)}_resetBoundingBoxStyles(){Nf(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){Nf(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={};if(this._hasExactPosition()){const s=this._viewportRuler.getViewportScrollPosition();Nf(n,this._getExactOverlayY(e,t,s)),Nf(n,this._getExactOverlayX(e,t,s))}else n.position="static";let s="",i=this._getOffset(e,"x"),r=this._getOffset(e,"y");i&&(s+=`translateX(${i}px) `),r&&(s+=`translateY(${r}px)`),n.transform=s.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Nf(this._pane.style,n)}_getExactOverlayY(t,e,n){let s={top:null,bottom:null},i=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(i=this._pushOverlayOnScreen(i,this._overlayRect,n));let r=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return i.y-=r,"bottom"===t.overlayY?s.bottom=`${this._document.documentElement.clientHeight-(i.y+this._overlayRect.height)}px`:s.top=ep(i.y),s}_getExactOverlayX(t,e,n){let s,i={left:null,right:null},r=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n)),"right"==(s=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?i.right=`${this._document.documentElement.clientWidth-(r.x+this._overlayRect.width)}px`:i.left=ep(r.x),i}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:bf(t,n),isOriginOutsideView:wf(t,n),isOverlayClipped:bf(e,n),isOverlayOutsideView:wf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const 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}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){if(!this._preferredPositions.length)throw Error("FlexibleConnectedPositionStrategy: At least one position is required.");this._preferredPositions.forEach(t=>{Of("originX",t.originX),Tf("originY",t.originY),Of("overlayX",t.overlayX),Tf("overlayY",t.overlayY)})}_addPanelClasses(t){this._pane&&tp(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;return t instanceof sn?t.nativeElement.getBoundingClientRect():t instanceof HTMLElement?t.getBoundingClientRect():{top:t.y,bottom:t.y,left:t.x,right:t.x,height:0,width:0}}}function Nf(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}class Df{constructor(t,e,n,s,i,r,o){this._preferredPositions=[],this._positionStrategy=new Mf(n,s,i,r,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e)}get _isRtl(){return"rtl"===this._overlayRef.getDirection()}get onPositionChange(){return this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,s){const i=new Ef(t,e,n,s);return this._preferredPositions.push(i),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Vf="cdk-global-overlay-wrapper";class $f{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const 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(Vf),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig();t.position=this._cssPosition,t.marginLeft="100%"===n.width?"0":this._leftOffset,t.marginTop="100%"===n.height?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,"100%"===n.width?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="100%"===n.height?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Vf),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}const Lf=(()=>{class t{constructor(t,e,n,s){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=s}global(){return new $f}connectedTo(t,e,n){return new Df(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new Mf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(af),Ot(Hl),Ot(zp),Ot(Rf))},token:t,providedIn:"root"}),t})();let jf=0;const Uf=(()=>(class{constructor(t,e,n,s,i,r,o,l,a,c){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=s,this._keyboardDispatcher=i,this._injector=r,this._ngZone=o,this._document=l,this._directionality=a,this._location=c}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),s=this._createPortalOutlet(n),i=new Sf(t);return i.direction=i.direction||this._directionality.value,new Pf(s,e,n,i,this._ngZone,this._keyboardDispatcher,this._document,this._location)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id=`cdk-overlay-${jf++}`,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(vr)),new ff(t,this._componentFactoryResolver,this._appRef,this._injector)}}))(),zf=new Rt("cdk-connected-overlay-scroll-strategy");function Ff(t){return()=>t.scrollStrategies.reposition()}const Hf=(()=>(class{}))(),Bf="Pipes";function Gf(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}class Wf{constructor(t,e){this._parentInjector=t,this._customTokens=e}get(t,e){const n=this._customTokens.get(t);return void 0!==n?n:this._parentInjector.get(t,e)}}const Yf=(()=>(class{constructor(t){this.injector=t,this.klass="default",this._overlay=t.get(qf)}ngOnInit(){setTimeout(()=>{this.offset=this._overlay.details.offset,this.setMethod()},1)}setMethod(){this.method="component",this.content=this._overlay.content,this.klass=this._overlay.details.klass||"default","string"==typeof this.content?this.method="text":this.content instanceof Rn&&(this.method="template",this.context=Object.assign({},this._overlay.details.data||{},{event:this._overlay.post.bind(this._overlay),close:this._overlay.close.bind(this._overlay)}),Object.defineProperty(this.context,"position",{get:()=>this._overlay.position}))}}))();class qf{constructor(t,e,n,s,i){this.id=t,this.service=e,this.injector=n,this.overlay=s,this.details=i,this.onClose=new T,this.event=new T,this.position_subject=new Kl(null),this.subs=[],this._overlay=this.overlay.create(this.details.config),this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null))}open(t,e){this._overlay&&this._close("reopen",null),e&&(delete this._overlay,this._overlay=this.overlay.create(e),this.details.config=e,this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null)));const n=this._createInjector(this,this.injector);this.onClose=new T,this.event=new T,this._overlay.attach(new hf(Yf,null,n)),this.set(t)}set(t,e=!0){this._data=t,e&&setTimeout(()=>this.updatePosition(),100)}get data(){return this._data||this.details.data||null}get content(){return this.details.content}get ID(){return this.id}listen(t){const e=this.event.subscribe(t);return this.subs.push(e),e}post(t,e){this.event.next({type:t,data:e})}get position(){return this.position_subject?this.position_subject.getValue():null}close(t){this._close("close",t)}_close(t,e){this._overlay&&this._overlay.dispose(),"reopen"!==t&&this.onClose.next({type:t,data:e}),this.onClose.complete(),this.event.complete(),this.subs=[]}_createInjector(t,e){const n=new WeakMap([[qf,t]]);return new Wf(e,n)}updatePosition(){const t=this.details.config;this._overlay.updatePosition();const e=t.positionStrategy;e instanceof Mf&&setTimeout(()=>{e._lastPosition&&this.position_subject.next({x:e._lastPosition.originX,y:e._lastPosition.originY})},1)}}const Zf=(()=>(class{constructor(t,e){this.overlay=t,this.renderer=e,this.events=[],this.displayed_events=[],this.subs={},this.delay=5e3,this.offset=0}ngOnInit(){this.context=this.overlay.details.data,this.subs.add=this.context.add.subscribe(t=>this.add(t)),this.subs.remove=this.context.remove.subscribe(t=>this.remove(t)),this.subs.delay=this.context.delay.subscribe(t=>this.delay=t)}ngOnDestroy(){for(const t in this.subs)this.subs[t]&&this.subs[t]instanceof d&&this.subs[t].unsubscribe()}add(t){this.events.findIndex(e=>e.id===t.id)<0&&(t.method="component","string"==typeof t.content?t.method="text":t.content instanceof Rn&&(t.method="template",t.context={close:()=>this.remove(t.id)}),this.events=this.events&&this.events.length>0?[...this.events,t]:[t],this.displayed_events=this.events.slice(-8),t.close=(()=>this.remove(t.id)),0!==t.delay&&setTimeout(()=>this.remove(t.id),t.delay||this.delay||5e3))}remove(t){this.events=this.events.filter(e=>e.id!==t),this.displayed_events=this.events.slice(-8)}action(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)}grab(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=n,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",e=>this.pull(t,e)),touchmove:this.renderer.listen("window","touchmove",e=>this.pull(t,e)),mouseup:this.renderer.listen("window","mouseup",e=>this.release(t)),touchend:this.renderer.listen("window","touchend",e=>this.release(t))}}pull(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)}release(t){t.offset>128&&this.remove(t.id);for(const e in t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0}trackByFn(t,e){return(t?t.id:null)||e}}))(),Qf=(()=>{class t{constructor(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new T,this._notify.remove=new T,this._notify.delay=new T,this.registerPreset("default",new Sf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new Sf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}register(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new qf(t,this,this.injector,this.overlay,e),this._refs[t]}open(t,e,n,s){if(e.config?e.config instanceof Sf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error(`No content set for the overlay ${t}`);const i=this._refs[t],r=i.details.config instanceof Sf?i.details.config:this.preset(i.details.config);i.open(e.data,e.config||r||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),s&&this._refs[t].onClose.subscribe(s))}update(t,e){this._refs[t]&&this._refs[t].set(e)}close(t){this._refs[t]&&this._refs[t].close(null)}remove(t){this._refs[t]&&(this._refs[t]=null)}registerPreset(t,e){this._presets[t]=e}preset(t="default"){return this._presets[t]||this._presets.default}loadNotificationsOutlet(){this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(()=>{this.registerPreset("ACA_NOTIFICATIONS_OUTLET",new Sf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:this.overlay.position().global().bottom("0").right("0"),scrollStrategy:this.overlay.scrollStrategies.noop()})),this.open("ACA_NOTIFICATIONS_OUTLET",{content:Zf,data:this._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)}notify(t,e,n,s,i){let r=null;return this._notify.add&&(r=`notification-${Math.floor(999999*Math.random())}`,this._notify.add.next({id:r,content:t,action:e,on_action:n,type:s,delay:i,event:t=>n?n(t):null})),r}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Uf),Ot(Mt))},token:t,providedIn:"root"}),t})(),Xf=(()=>(class{constructor(t,e,n,s){this.el=t,this.service=e,this.overlay=n,this.renderer=s,this.id=`tooltip-${Math.floor(9999999*Math.random())}`,this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new ki,this.event=new ki,this.close=new ki,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}ngOnInit(){this.updateConfig(),this.el&&this.listenForScroll()}ngOnDestroy(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()}ngOnChanges(t){if(t.config&&this.updateConfig(),t.reposition){const t=this.overlay.scrollStrategies;this.strategy=this.reposition?t.reposition():t.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(()=>this.open(),10):this.closeTooltip(t.show.previousValue))}open(){this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},t=>this.event.emit(t),t=>{this.show=!1,this.showChange.emit(!1),this.close.emit(t),this.clearListeners()})}getOverlayPosition(t){const e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)}getPositions(){const t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}}updateConfig(){this.service.registerPreset(this.id,new Sf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))}listenForScroll(){if(this.show){let t=this.el.nativeElement.parentElement;for(;t;t=t.parentElement)this.listeners.push(this.renderer.listen(t,"scroll",()=>this.update()))}}clearListeners(){for(const t of this.listeners)t();this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)}update(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))}listenForHover(){this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",t=>{this.show=!0,this.showChange.emit(this.show),this._leave_listener=this.renderer.listen(this.el.nativeElement,"mouseleave",t=>{this.show=!1,this.showChange.emit(this.show),this.closeTooltip(this.show)}),this.open()})}closeTooltip(t){!this.content&&this.el?function(t,e,n,s="debug",i){if(window.debug){const t=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Gf()?console[s](`%c[${Bf}]%c[Tooltip] %c${e}`,...t,n):console[s](`[${Bf}][Tooltip] ${e}`,n):Gf()?console[s](`%c[${Bf}]%c[Tooltip] %c${e}`,...t):console[s](`[${Bf}][Tooltip] ${e}`)}}(0,"No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()}}))(),Kf=(()=>(class{constructor(t,e){this.item=t,this.service=e}ngOnInit(){setTimeout(()=>{this.text=this.item.details.data.text,this.center=this.item.details.data.center},10),setTimeout(()=>this.service.close(this.item.ID),1e3)}}))(),Jf=hl,tg=(()=>{class t{constructor(){if(this.build=Jf(),!t.init){const e=Jf();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){Gf()?console[n](`%c[ACA]%c[LIB] %c${Bf} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"):console[n](`[ACA][LIB] ${Bf} - ${t} | ${e}`)}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),eg=new Rt("cdk-dir-doc",{providedIn:"root",factory:function(){return It(Hl)}}),ng=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new ki,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(eg,8))},token:t,providedIn:"root"}),t})(),sg=(()=>(class{}))();var ig=Xn({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function rg(t){return to(0,[(t()(),Lr(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function og(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function lg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,og)),ai(2,540672,null,0,zl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function ag(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function cg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,ag)),ai(2,671744,null,0,Rl,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ug(t){return to(0,[(t()(),Lr(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Lr(1,0,null,null,7,null,null,null,null,null,null,null)),ai(2,16384,null,0,Ll,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),$r(16777216,null,null,1,null,rg)),ai(4,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,lg)),ai(6,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,cg)),ai(8,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function hg(t){return to(0,[(t()(),$r(16777216,null,null,1,null,ug)),ai(1,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function dg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"overlay-outlet",[],null,null,null,hg,ig)),ai(1,114688,null,0,Yf,[Dt],null,null)],function(t,e){t(e,1,0)},null)}var pg=Ls("overlay-outlet",Yf,dg,{},{},[]),fg=Xn({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function gg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Xr(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function mg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"a-floating-text",[],null,null,null,gg,fg)),ai(1,114688,null,0,Kf,[qf,Qf],null,null)],function(t,e){t(e,1,0)},null)}var _g=Ls("a-floating-text",Kf,mg,{},{},[]),vg=Xn({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function yg(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function wg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,yg)),ai(2,540672,null,0,zl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function bg(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Cg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,bg)),ai(2,671744,null,0,Rl,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function xg(t){return to(0,[(t()(),Lr(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function Sg(t){return to(0,[(t()(),Lr(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Xr(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function Eg(t){return to(0,[(t()(),Lr(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function kg(t){return to(0,[(t()(),Lr(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Lr(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==i.grab(t.context.$implicit,n)&&s),"touchstart"===e&&(s=!1!==i.grab(t.context.$implicit,n)&&s),s},null,null)),(t()(),Lr(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Lr(4,0,null,null,7,null,null,null,null,null,null,null)),ai(5,16384,null,0,Ll,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),$r(16777216,null,null,1,null,wg)),ai(7,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,Cg)),ai(9,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,xg)),ai(11,16384,null,0,Ul,[An,Rn,Ll],null,null),(t()(),Lr(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var s=!0,i=t.component;return"click"===e&&(i.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),"touchend"===e&&(i.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),s},null,null)),(t()(),$r(16777216,null,null,1,null,Sg)),ai(14,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),$r(16777216,null,null,1,null,Eg)),ai(16,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function Tg(t){return to(0,[(t()(),Lr(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,kg)),ai(2,278528,null,0,Al,[An,Rn,xn],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function Og(t){return to(0,[(t()(),Lr(0,0,null,null,1,"notification-outlet",[],null,null,null,Tg,vg)),ai(1,245760,null,0,Zf,[qf,cn],null,null)],function(t,e){t(e,1,0)},null)}var Ig=Ls("notification-outlet",Zf,Og,{},{},[]);class Rg extends z{constructor(t,e){super(t),this.sources=e,this.completed=0,this.haveValues=0;const n=e.length;this.values=new Array(n);for(let s=0;s(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Mg=new Rt("CompositionEventMode"),Ng=(()=>(class{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Ha()?Ha().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}))();class Dg{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class Vg extends Dg{get formDirective(){return null}get path(){return null}}function $g(){throw new Error("unimplemented")}class Lg extends Dg{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return $g()}get asyncValidator(){return $g()}}const jg=(()=>(class extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}))();function Ug(t){return null==t||0===t.length}const zg=/^(?=.{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])?)*$/;class Fg{static min(t){return e=>{if(Ug(e.value)||Ug(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(Ug(e.value)||Ug(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return Ug(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return Ug(t.value)?null:zg.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(Ug(e.value))return null;const n=e.value?e.value.length:0;return n{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return Fg.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(Ug(t.value))return null;const s=t.value;return e.test(s)?null:{pattern:{requiredPattern:n,actualValue:s}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(Hg);return 0==e.length?null:function(t){return Gg(function(t,n){return e.map(e=>e(t))}(t))}}static composeAsync(t){if(!t)return null;const e=t.filter(Hg);return 0==e.length?null:function(t){return function t(...e){let n;return"function"==typeof e[e.length-1]&&(n=e.pop()),1===e.length&&a(e[0])&&(e=e[0]),0===e.length?ql:n?t(e).pipe(F(t=>n(...t))):new b(t=>new Rg(t,e))}(function(t,n){return e.map(e=>e(t))}(t).map(Bg)).pipe(F(Gg))}}}function Hg(t){return null!=t}function Bg(t){const e=De(t)?W(t):t;if(!Ve(e))throw new Error("Expected validator to return Promise or Observable.");return e}function Gg(t){const e=t.reduce((t,e)=>null!=e?Object.assign({},t,e):t,{});return 0===Object.keys(e).length?null:e}function Wg(t){return t.validate?e=>t.validate(e):t}function Yg(t){return t.validate?e=>t.validate(e):t}const qg=(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Zg=(()=>(class{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}))(),Qg=(()=>(class{constructor(t,e,n,s){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=s,this.onChange=(()=>{}),this.onTouched=(()=>{})}ngOnInit(){this._control=this._injector.get(Lg),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=(()=>{t(this.value),this._registry.select(this)})}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}))(),Xg={formControlName:'\n

\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',formGroupName:'\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',formArrayName:'\n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });',ngModelGroup:'\n
\n
\n \n
\n
',ngModelWithFormGroup:'\n
\n \n \n
\n '};function Kg(t,e){return[...e.path,t]}function Jg(t,e){t||em(e,"Cannot find control with"),e.valueAccessor||em(e,"No value accessor for form control with"),t.validator=Fg.compose([t.validator,e.validator]),t.asyncValidator=Fg.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&tm(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&tm(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function tm(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function em(t,e){let 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 nm(t){return null!=t?Fg.compose(t.map(Wg)):null}function sm(t){return null!=t?Fg.composeAsync(t.map(Yg)):null}const im=[Ag,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),qg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?`${e}`:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=(e=>{this.value=this._getOptionValue(e),t(this.value)})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}))(),(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=((t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)})}else e=((t,e)=>{t._setSelected(!1)});this._optionMap.forEach(e)}registerOnChange(t){this.onChange=(e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e{}),this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return this.status===rm}get invalid(){return this.status===om}get pending(){return this.status==lm}get disabled(){return this.status===am}get enabled(){return this.status!==am}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=cm(t)}setAsyncValidators(t){this.asyncValidator=um(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=lm,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=am,this.errors=null,this._forEachChild(e=>{e.disable(Object.assign({},t,{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=rm,this._forEachChild(e=>{e.enable(Object.assign({},t,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==rm&&this.status!==lm||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)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?am:rm}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=lm;const e=Bg(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(".")),e instanceof Array&&0===e.length?null:e.reduce((t,e)=>t instanceof fm?t.controls.hasOwnProperty(e)?t.controls[e]:null:t instanceof gm&&t.at(e)||null,t))}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new ki,this.statusChanges=new ki}_calculateStatus(){return this._allControlsDisabled()?am:this.errors?om:this._anyControlsHaveStatus(lm)?lm:this._anyControlsHaveStatus(om)?om:rm}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){hm(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class pm extends dm{constructor(t=null,e,n){super(cm(e),um(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=(()=>{})}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(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}}class fm extends dm{constructor(t,e,n){super(cm(e),um(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof pm?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,s)=>{e=e||this.contains(s)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,s)=>{n=e(n,t,s)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class gm extends dm{constructor(t,e,n){super(cm(e),um(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof pm?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}`)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const mm=(()=>Promise.resolve(null))(),_m=(()=>(class extends Vg{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new ki,this.form=new fm({},nm(t),sm(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){mm.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Jg(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){mm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),function(e,n){const s=e.indexOf(t);s>-1&&e.splice(s,1)}(this._directives)})}addFormGroup(t){mm.then(()=>{const e=this._findContainer(t.path),n=new fm({});(function(t,e){null==t&&em(e,"Cannot find control with"),t.validator=Fg.compose([t.validator,e.validator]),t.asyncValidator=Fg.composeAsync([t.asyncValidator,e.asyncValidator])})(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){mm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){mm.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,e=this._directives,this.form._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}))();class vm{static modelParentException(){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 ${Xg.formControlName}\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 ${Xg.ngModelWithFormGroup}`)}static formGroupNameException(){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 ${Xg.formGroupName}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Xg.ngModelGroup}`)}static missingNameException(){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: \n Example 2: ')}static modelGroupParentException(){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 ${Xg.formGroupName}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Xg.ngModelGroup}`)}static ngFormWarning(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")}}const ym=new Rt("NgFormSelectorWarning");class wm extends Vg{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Kg(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return nm(this._validators)}get asyncValidator(){return sm(this._asyncValidators)}_checkParentType(){}}const bm=(()=>{class t extends wm{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof _m||vm.modelGroupParentException()}}return t})(),Cm=(()=>Promise.resolve(null))(),xm=(()=>(class extends Lg{constructor(t,e,n,s){super(),this.control=new pm,this._registered=!1,this.update=new ki,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||em(t,"Value accessor was not provided as an array for form control with");let n=void 0,s=void 0,i=void 0;return e.forEach(e=>{e.constructor===Ng?n=e:function(t){return im.some(e=>t.constructor===e)}(e)?(s&&em(t,"More than one built-in value accessor matches form control with"),s=e):(i&&em(t,"More than one custom value accessor matches form control with"),i=e)}),i||s||n||(em(t,"No valid value accessor for form control with"),null)}(this,s)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!je(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Kg(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return nm(this._rawValidators)}get asyncValidator(){return sm(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Jg(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof bm)&&this._parent instanceof wm?vm.formGroupNameException():this._parent instanceof bm||this._parent instanceof _m||vm.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||vm.missingNameException()}_updateValue(t){Cm.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;Cm.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}))(),Sm=new Rt("NgModelWithFormControlWarning"),Em=(()=>(class{}))(),km=(()=>(class{group(t,e=null){const n=this._reduceControls(t);let s=null,i=null,r=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(s=null!=e.validators?e.validators:null,i=null!=e.asyncValidators?e.asyncValidators:null,r=null!=e.updateOn?e.updateOn:void 0):(s=null!=e.validator?e.validator:null,i=null!=e.asyncValidator?e.asyncValidator:null)),new fm(n,{asyncValidators:i,updateOn:r,validators:s})}control(t,e,n){return new pm(t,e,n)}array(t,e,n){const s=t.map(t=>this._createControl(t));return new gm(s,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof pm||t instanceof fm||t instanceof gm?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}))(),Tm=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:ym,useValue:e.warnOnDeprecatedNgFormSelector}]}}}return t})(),Om=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Sm,useValue:e.warnOnNgModelWithFormControl}]}}}return t})();var Im=Xn({encapsulation:2,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:0}.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:0}.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}"],data:{}});function Rm(t){return to(2,[Hr(402653184,1,{_contentWrapper:0}),(t()(),Lr(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),qr(null,0),(t()(),Lr(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Pm=Xn({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function Am(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,i=t.component;return"input"===e&&(s=!1!==Zs(t,5)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==Zs(t,5).onTouched()&&s),"compositionstart"===e&&(s=!1!==Zs(t,5)._compositionStart()&&s),"compositionend"===e&&(s=!1!==Zs(t,5)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(i.search=n)&&s),"ngModelChange"===e&&(i.searchChange.emit(n),s=!1!==i.filter()&&s),s},null,null)),ai(5,16384,null,0,Ng,[cn,sn,[2,Mg]],null,null),ui(1024,null,Pg,function(t){return[t]},[Ng]),ai(7,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(9,16384,null,0,jg,[[4,Lg]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,Zs(e,9).ngClassUntouched,Zs(e,9).ngClassTouched,Zs(e,9).ngClassPristine,Zs(e,9).ngClassDirty,Zs(e,9).ngClassValid,Zs(e,9).ngClassInvalid,Zs(e,9).ngClassPending)})}function Mm(t){return to(0,[(t()(),Lr(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.select(t.context.$implicit)&&s),s},null,null)),(t()(),Lr(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Nm(t){return to(0,[(t()(),Lr(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,Rm,Im)),ui(6144,null,tf,null,[nf]),ai(3,540672,null,0,Xp,[],{itemSize:[0,"itemSize"]},null),ui(1024,null,qp,Qp,[Xp]),ai(5,245760,[[4,4],[5,4],["viewport",4]],0,nf,[sn,En,Ji,[2,qp],[2,ng],Jp],null,null),(t()(),$r(16777216,[[2,2]],0,1,null,Mm)),ai(7,409600,null,0,rf,[An,Rn,xn,[1,nf],Ji],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===Zs(e,5).orientation,"horizontal"!==Zs(e,5).orientation)})}function Dm(t){return to(0,[(t()(),Lr(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Vm(t){return to(0,[(t()(),Lr(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.cancelClose()&&s),s},null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var s=!0,i=t.component;return"click"===e&&(s=0!=(i.show=!i.show)&&s),s},null,null)),(t()(),Lr(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),$r(16777216,[[2,2]],null,1,null,Am)),ai(7,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),$r(16777216,[[2,2]],null,1,null,Nm)),ai(10,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),$r(0,[[2,2],["noItems",2]],null,0,null,Dm))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,Zs(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function $m(t){return to(0,[Hr(402653184,1,{reference:0}),Hr(402653184,2,{dropdown_tooltip:0}),Hr(402653184,3,{input:0}),Hr(402653184,4,{viewport:0}),Hr(402653184,5,{scroll_el:0}),(t()(),Lr(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var s=!0,i=t.component;return"keyup.enter"===e&&(s=!1!==i.toggleShow()&&s),"keydown.arrowup"===e&&(s=!1!==n.preventDefault()&&s),"keydown.arrowdown"===e&&(s=!1!==n.preventDefault()&&s),"keyup.arrowup"===e&&(s=!1!==(i.focus?i.change(-1):"")&&s),"keyup.arrowdown"===e&&(s=!1!==(i.focus?i.change(1):"")&&s),"focus"===e&&(s=0!=(i.focus=!0)&&s),"blur"===e&&(s=0!=(i.focus=!1)&&s),"window:resize"===e&&(s=!1!==i.resize()&&s),"window:click"===e&&(s=!1!==(i.show?i.close():"")&&s),s},null,null)),(t()(),Lr(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Lr(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var s=!0,i=t.component;return"showChange"===e&&(s=!1!==(i.show=n)&&s),"showChange"===e&&(s=!1!==i.updateScroll()&&s),"click"===e&&(s=!1!==i.toggleShow()&&s),s},null,null)),ai(8,737280,null,0,Xf,[sn,Qf,Uf,cn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Lr(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),Xr(10,null,["",""])),(t()(),Lr(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Lr(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Lr(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(15,null,["",""])),(t()(),Lr(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),$r(0,[[2,2],["dropdown",2]],null,0,null,Vm))],function(t,e){t(e,8,0,e.component.show,Zs(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}const Lm="Checkbox",jm=(()=>(class{constructor(){this.klass="default"}toggle(){this.state=!this.state,this.onChange&&this.onChange(this.state)}writeValue(t){this.state=t}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouch=t}}))(),Um=hl,zm=(()=>{class t{constructor(){if(this.build=Um(),!t.init){const e=Um();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Lm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Lm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Fm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}handleMouse(t){this.handleEvent(t)}handleTouch(t){this.handleEvent(t)}ngOnInit(){}ngAfterViewInit(){setTimeout(()=>{this.element&&this.element.nativeElement&&(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width)))})}ngOnDestroy(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}handleEvent(t){this.cancelled=!1;const e=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX,n=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:`${n-this.cached_box.top}px`,left:`${e-this.cached_box.left}px`},this.mouse_release_cancel=this.renderer.listen("window","mouseup",t=>this.handleRelease(t)),this.touch_release_cancel=this.renderer.listen("window","touchend",t=>this.handleRelease(t)),this.transitioning=!0,setTimeout(()=>{this.transitioning=!1,this.cancelled&&(this.show=!1)},350)}handleRelease(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}}))(),Hm=(()=>(class{constructor(t,e){this.el=t,this.renderer=e,this.tapped=new ki,this.touchrelease=new ki,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}ngAfterViewInit(){this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",t=>this.handleHold(t)),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",t=>this.handleHold(t)))}ngOnDestroy(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}}remove(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)}handleHold(t){const e={x:window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=e,this.mouse_listener=this.renderer.listen(window,"mouseup",t=>this.handleRelease(t)),this.touch_listener=this.renderer.listen(window,"touchend",t=>this.handleRelease(t)),this.timer=setTimeout(()=>this.remove(),this.max_delay)}handleRelease(t){this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(()=>{const e=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX;window.TouchEvent&&TouchEvent,Math.sqrt(Math.pow(e-this.start.x,2)+2){this.tapped.emit(t),this.touchrelease.emit(t)},100)),this.start={x:-999,y:-999}},50)}}))(),Bm="Custom Events",Gm=hl,Wm=(()=>{class t{constructor(){if(this.build=Gm(),!t.init){const e=Gm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Bm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Bm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var Ym=Xn({encapsulation:0,styles:["[_nghost-%COMP%]{position:relative;overflow:hidden}.event-feedback[_ngcontent-%COMP%]{position:absolute;border-radius:100%;background-color:rgba(0,0,0,.1);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;pointer-events:none}.event-feedback.show[_ngcontent-%COMP%]{-webkit-animation:.5s feedback;animation:.5s feedback;opacity:1}.event-feedback.hide[_ngcontent-%COMP%]{-webkit-animation:.5s fadeout;animation:.5s fadeout}.event-feedback.light[_ngcontent-%COMP%]{background-color:rgba(255,255,255,.1)}@-webkit-keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@-webkit-keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}@keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}"],data:{}});function qm(t){return to(0,[qr(null,0),(t()(),Lr(1,0,null,null,0,"div",[],[[8,"className",0],[4,"top",null],[4,"left",null],[4,"height",null],[4,"width",null],[2,"show",null],[2,"hide",null]],null,null,null,null))],null,function(t,e){var n=e.component;t(e,1,0,"event-feedback"+(n.klass?" "+n.klass:""),n.position.top,n.position.left,n.size+"px",n.size+"px",n.show,!1===n.show)})}var Zm=Xn({encapsulation:0,styles:[".checkbox[_ngcontent-%COMP%]{display:flex;align-items:center}.box[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;margin:.25em;font-size:.8em;height:1.5em;width:1.5em;border-radius:4px;padding:0;border:2px solid #ccc;cursor:pointer;outline:0;transition:background-color .2s,border-color .2s}.box[_ngcontent-%COMP%]:hover{background-color:#ccc}.box[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function Qm(t){return to(0,[(t()(),Lr(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.toggle()&&s),s},null,null)),ai(1,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Xr(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Xm(t){return to(0,[(t()(),Lr(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Lr(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,2).handleTouch(n)&&s),"keyup.enter"===e&&(s=!1!==i.toggle()&&s),"tapped"===e&&(s=!1!==i.toggle()&&s),s},qm,Ym)),ai(2,4440064,null,0,Fm,[sn,cn],{center:[0,"center"]},null),ai(3,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,Qm)),ai(6,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}const Km="Buttons",Jm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new ki,this.id=`button-${Math.floor(999999*Math.random())}`}ngOnChanges(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()}ngAfterViewInit(){this.setClass(this.klass)}setClass(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))}setGroup(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")}setState(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")}tap(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))}writeValue(t){this.state=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),t_=hl,e_=(()=>{class t{constructor(){if(this.build=t_(),!t.init){const e=t_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Km} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Km} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var n_=Xn({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function s_(t){return to(0,[(t()(),Lr(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,1).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,1).handleTouch(n)&&s),"tapped"===e&&(s=!1!==i.tap()&&s),s},qm,Ym)),ai(1,4440064,null,0,Fm,[sn,cn],null,null),ai(2,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),qr(0,0)],function(t,e){t(e,1,0)},null)}const i_=(()=>(class{constructor(t){this.sanitizer=t}transform(t,e="html"){switch(e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}}}))(),r_="Pipes",o_=hl,l_=(()=>{class t{constructor(){if(this.build=o_(),!t.init){const e=o_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${r_} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${r_} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();class a_{constructor(){this._timers={},this._intervals={},this._subscriptions={}}timeout(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(()=>{e(),this._timers[t]=null},n)}clearTimeout(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)}interval(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(()=>e(),n)}clearInterval(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)}subscription(t,e){this.unsub(t),this._subscriptions[t]=e}unsub(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof d?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)}}class c_ extends a_{ngOnDestroy(){for(const t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(const t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(const t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)}}function u_(t,e,n,s){return new(n||(n=Promise))(function(i,r){function o(t){try{a(s.next(t))}catch(e){r(e)}}function l(t){try{a(s.throw(t))}catch(e){r(e)}}function a(t){t.done?i(t.value):new n(function(e){e(t.value)}).then(o,l)}a((s=s.apply(t,e||[])).next())})}class h_{}class d_{}class p_{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),s=n.toLowerCase(),i=t.slice(e+1).trim();this.maybeSetNormalizedName(n,s),this.headers.has(s)?this.headers.get(s).push(i):this.headers.set(s,[i])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const s=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(s,n),this.maybeSetNormalizedName(e,s))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof p_?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new p_;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof p_?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const s=("a"===t.op?this.headers.get(e):void 0)||[];s.push(...n),this.headers.set(e,s);break;case"d":const i=t.value;if(i){let t=this.headers.get(e);if(!t)return;0===(t=t.filter(t=>-1===i.indexOf(t))).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class f_{encodeKey(t){return g_(t)}encodeValue(t){return g_(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function g_(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class m_{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new f_,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const s=t.indexOf("="),[i,r]=-1==s?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,s)),e.decodeValue(t.slice(s+1))],o=n.get(i)||[];o.push(r),n.set(i,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).join("&")}clone(t){const e=new m_({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function __(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function v_(t){return"undefined"!=typeof Blob&&t instanceof Blob}function y_(t){return"undefined"!=typeof FormData&&t instanceof FormData}class w_{constructor(t,e,n,s){let i;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||s?(this.body=void 0!==n?n:null,i=s):i=n,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.params&&(this.params=i.params)),this.headers||(this.headers=new p_),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),l)),t.setParams&&(a=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),a)),new w_(e,n,i,{params:a,headers:l,reportProgress:o,responseType:s,withCredentials:r})}}const b_=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class C_{constructor(t,e=200,n="OK"){this.headers=t.headers||new p_,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class x_ extends C_{constructor(t={}){super(t),this.type=b_.ResponseHeader}clone(t={}){return new x_({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class S_ extends C_{constructor(t={}){super(t),this.type=b_.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new S_({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class E_ extends C_{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function k_(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}const T_=(()=>(class{constructor(t){this.handler=t}request(t,e,n={}){let s;if(t instanceof w_)s=t;else{let i=void 0;i=n.headers instanceof p_?n.headers:new p_(n.headers);let r=void 0;n.params&&(r=n.params instanceof m_?n.params:new m_({fromObject:n.params})),s=new w_(t,e,void 0!==n.body?n.body:null,{headers:i,params:r,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const i=Xl(s).pipe(ja(t=>this.handler.handle(t)));if(t instanceof w_||"events"===n.observe)return i;const r=i.pipe(oa(t=>t instanceof S_));switch(n.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return r.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return r.pipe(F(t=>t.body))}case"response":return r;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new m_).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,k_(n,e))}post(t,e,n={}){return this.request("POST",t,k_(n,e))}put(t,e,n={}){return this.request("PUT",t,k_(n,e))}}))();class O_{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const I_=new Rt("HTTP_INTERCEPTORS"),R_=(()=>(class{intercept(t,e){return e.handle(t)}}))(),P_=/^\)\]\}',?\n/;class A_{}const M_=(()=>(class{constructor(){}build(){return new XMLHttpRequest}}))(),N_=(()=>(class{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new b(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const s=t.serializeBody();let i=null;const r=()=>{if(null!==i)return i;const e=1223===n.status?204:n.status,s=n.statusText||"OK",r=new p_(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return i=new x_({headers:r,status:e,statusText:s,url:o})},o=()=>{let{headers:s,status:i,statusText:o,url:l}=r(),a=null;204!==i&&(a=void 0===n.response?n.responseText:n.response),0===i&&(i=a?200:0);let c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof a){const t=a;a=a.replace(P_,"");try{a=""!==a?JSON.parse(a):null}catch(u){a=t,c&&(c=!1,a={error:u,text:a})}}c?(e.next(new S_({body:a,headers:s,status:i,statusText:o,url:l||void 0})),e.complete()):e.error(new E_({error:a,headers:s,status:i,statusText:o,url:l||void 0}))},l=t=>{const{url:s}=r(),i=new E_({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:s||void 0});e.error(i)};let a=!1;const c=s=>{a||(e.next(r()),a=!0);let i={type:b_.DownloadProgress,loaded:s.loaded};s.lengthComputable&&(i.total=s.total),"text"===t.responseType&&n.responseText&&(i.partialText=n.responseText),e.next(i)},u=t=>{let n={type:b_.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",l),t.reportProgress&&(n.addEventListener("progress",c),null!==s&&n.upload&&n.upload.addEventListener("progress",u)),n.send(s),e.next({type:b_.Sent}),()=>{n.removeEventListener("error",l),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",c),null!==s&&n.upload&&n.upload.removeEventListener("progress",u)),n.abort()}})}}))(),D_=new Rt("XSRF_COOKIE_NAME"),V_=new Rt("XSRF_HEADER_NAME");class $_{}const L_=(()=>(class{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Il(t,this.cookieName),this.lastCookieString=t),this.lastToken}}))(),j_=(()=>(class{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const s=this.tokenService.getToken();return null===s||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,s)})),e.handle(t)}}))(),U_=(()=>(class{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(I_,[]);this.chain=t.reduceRight((t,e)=>new O_(t,e),this.backend)}return this.chain.handle(t)}}))(),z_=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:j_,useClass:R_}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:D_,useValue:e.cookieName}:[],e.headerName?{provide:V_,useValue:e.headerName}:[]]}}}return t})(),F_=(()=>(class{}))(),H_=(()=>{class t{constructor(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new Kl(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}init(){return u_(this,void 0,void 0,function*(){yield this.loadFromFile("api"),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete()})}get setup(){return this._setup}get app_name(){return this._app_name}isSetup(t){return this._is_setup_observer.subscribe(t)}log(t,e,n,s="debug",i=!1){if(window.debug||i){const i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...i,n):console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...i)}}get(t){const e=t.split(".");let n=null;return"session"===e[0]?(e.shift(),n=ul(e,this._settings.session)):"local"===e[0]?(e.shift(),n=ul(e,this._settings.local)):n=ul(e,this._settings.api)||ul(e,this._settings.session)||ul(e,this._settings.local),n}loadStore(t,e){if(e)for(let n=0;n5)return Promise.resolve();const s=`load|${t}|${e}`;return this._promises[s]||(this._promises[s]=new Promise((i,r)=>{this.http.get(e).subscribe(e=>{this._settings[t]=Object.assign({},this._settings[t]||{},e||{})},r=>{this.log("Settings",`Failed to load settings from "${e}"`),this._promises[s]=null,this.loadFromFile(t,e,++n).then(()=>i())},()=>i())})),this._promises[s]})}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),B_=["control","shift","alt","meta","os"],G_=(()=>{class t{constructor(){this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.last_down!==e&&(this.keydown_states[e]||(this.keydown_states[e]=new Kl(null),this.keydown_observers[e]=this.keydown_states[e].asObservable()),this.keydown_states[e].next(this.counter++),this.combo_end.indexOf(e)>=0&&t.preventDefault(),this.last_down=e)}),window.addEventListener("keyup",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.keydown_states[e].next(null),this.last_down===e&&(this.last_down=null)})}listen(t,e){const n=(t=t instanceof Array?t:t.split("+")).map(t=>this.mapKey(t.toLowerCase()));if(n.length>0&&this.validCombination(n)){this.registered_combos.push(n);const t=n[n.length-1];return this.keydown_states[t]||(this.keydown_states[t]=new Kl(null),this.keydown_observers[t]=this.keydown_states[t].asObservable()),this.updateCombinationEndList(),this.keydown_observers[t].subscribe(t=>{if(t){const t=[];if(n.length>1){for(const e of n){const n=this.keydown_states[e];t.push(n&&n.getValue()||-1)}for(let e=0;et[e+1])return}e()}})}return null}mapKey(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t}updateCombinationEndList(){for(const t of this.registered_combos)this.combo_end.push(t[t.length-1]);this.combo_end=function(t,e=""){return[].filter((t,n,s)=>s.indexOf(s.find(e?n=>n[e]===t[e]:e=>e===t))===n)}()}validCombination(t){let e=0;for(const n of t)B_.indexOf(n)<0&&e++;return e>0}}return t.ngInjectableDef=mt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),W_=[],Y_=(()=>{class t extends a_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=cl(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let i;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>i=t,t=>{s(t),delete this._promises[n]},()=>{t(i),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}repositories(){const t="repositories";return this._promises[t]||(this._promises[t]=new Promise((e,n)=>{let s;this.http.get(`${this.api_route}/repositories`).subscribe(t=>s=t,e=>{n(e),delete this._promises[t]},()=>{e(s),this.timeout(t,()=>delete this._promises[t],1e3)})})),this._promises[t]}commits(t){const e=`commits|${cl(t)}`;return this._promises[e]||(this._promises[e]=new Promise((t,n)=>{let s;this.http.get(`${this.api_route}/repositories_commits`).subscribe(t=>s=t,t=>{n(t),delete this._promises[e]},()=>{t(s),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}versions(t){const e=`versions|${t}`;return this._promises[e]||(this._promises[e]=new Promise((n,s)=>{const i=`${this.api_route}/${encodeURIComponent(t)}`;let r;this.http.get(i).subscribe(t=>r=t,t=>{s(t),delete this._promises[e]},()=>{n(r),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}driverCommits(t,e){const n=cl(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const i=`${this.api_route}/${encodeURIComponent(t)}/commits`;let r;this.http.get(i).subscribe(t=>r=t,t=>{n(t),delete this._promises[s]},()=>{e(r),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}build(t){const e=cl(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{this.http.post(`${this.api_route}`,e).subscribe(t=>null,t=>{s(t),delete this._promises[n]},()=>{t(),delete this._promises[n]})})),this._promises[n]}clean(t,e){const n=cl(e),s=`clean|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((t,e)=>{this.http.delete(`${this.api_route}${n?"?"+n:""}`).subscribe(t=>null,t=>{e(t),delete this._promises[s]},()=>{t(),delete this._promises[s]})})),this._promises[s]}get api_route(){return this.parent?`${this.parent.endpoint}/build`:"/build"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),q_=(()=>{class t extends a_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=cl(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let i;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>i=t,t=>{s(t),delete this._promises[n]},()=>{t(i),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}specCommits(t,e){const n=cl(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const i=`${this.api_route}/${encodeURIComponent(t)}/commits`;let r;this.http.get(i).subscribe(t=>r=t,t=>{n(t),delete this._promises[s]},()=>{e(r),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}run(t){for(const s in t)null==t[s]&&delete t[s];const e=cl(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((s,i)=>{let r;this.http.post(`${this.api_route}${e?"?"+e:""}`,t,{responseType:"text"}).subscribe(t=>r=t,t=>{i(t),delete this._promises[n]},()=>{s(r),delete this._promises[n]})})),this._promises[n]}get api_route(){return this.parent?`${this.parent.endpoint}/test`:"/test"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),Z_=new b(v);class Q_{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new X_(t,this.delay,this.scheduler))}}class X_ extends g{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,s=t.scheduler,i=t.destination;for(;n.length>0&&n[0].time-s.now()<=0;)n.shift().notification.observe(i);if(n.length>0){const e=Math.max(0,n[0].time-s.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(X_.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new K_(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Dp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Dp.createComplete()),this.unsubscribe()}}class K_{constructor(t,e){this.time=t,this.notification=e}}const J_="Service workers are disabled or not supported by this browser";class tv{constructor(t){if(this.serviceWorker=t,t){const e=np(t,"controllerchange").pipe(F(()=>t.controller)),n=Na(ia(()=>Xl(t.controller)),e);this.worker=n.pipe(oa(t=>!!t)),this.registration=this.worker.pipe(Pa(()=>t.getRegistration()));const s=np(t,"message").pipe(F(t=>t.data)).pipe(oa(t=>t&&t.type)).pipe(rt(new T));s.connect(),this.events=s}else this.worker=this.events=this.registration=(e=J_,ia(()=>Ap(new Error(e))));var e}postMessage(t,e){return this.worker.pipe(Ea(1),fa(n=>{n.postMessage(Object.assign({action:t},e))})).toPromise().then(()=>void 0)}postMessageWithStatus(t,e,n){const s=this.waitForStatus(n),i=this.postMessage(t,e);return Promise.all([s,i]).then(()=>void 0)}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(t){return this.events.pipe(oa(e=>e.type===t))}nextEventOfType(t){return this.eventsOfType(t).pipe(Ea(1))}waitForStatus(t){return this.eventsOfType("STATUS").pipe(oa(e=>e.nonce===t),Ea(1),F(t=>{if(!t.status)throw new Error(t.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}const ev=(()=>(class{constructor(t){if(this.sw=t,this.subscriptionChanges=new T,!t.isEnabled)return this.messages=Z_,this.notificationClicks=Z_,void(this.subscription=Z_);this.messages=this.sw.eventsOfType("PUSH").pipe(F(t=>t.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(F(t=>t.data)),this.pushManager=this.sw.registration.pipe(F(t=>t.pushManager));const e=this.pushManager.pipe(Pa(t=>t.getSubscription()));this.subscription=K(e,this.subscriptionChanges)}get isEnabled(){return this.sw.isEnabled}requestSubscription(t){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const e={userVisibleOnly:!0};let n=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),s=new Uint8Array(new ArrayBuffer(n.length));for(let i=0;it.subscribe(e)),Ea(1)).toPromise().then(t=>(this.subscriptionChanges.next(t),t))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe(Ea(1),Pa(t=>{if(null===t)throw new Error("Not subscribed to push notifications.");return t.unsubscribe().then(t=>{if(!t)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(J_))}decodeBase64(t){return atob(t)}}))(),nv=(()=>(class{constructor(t){if(this.sw=t,!t.isEnabled)return this.available=Z_,void(this.activated=Z_);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED")}get isEnabled(){return this.sw.isEnabled}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:t},t)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:t},t)}}))();class sv{}const iv=new Rt("NGSW_REGISTER_SCRIPT");function rv(t,e,n,s){return()=>{if(!(Gl(s)&&"serviceWorker"in navigator&&!1!==n.enabled))return;let i;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof n.registrationStrategy)i=n.registrationStrategy();else{const[e,...s]=(n.registrationStrategy||"registerWhenStable").split(":");switch(e){case"registerImmediately":i=Xl(null);break;case"registerWithDelay":i=Xl(null).pipe(function(t,e=vp){var n;const s=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new Q_(s,e))}(+s[0]||0));break;case"registerWhenStable":i=t.get(vr).isStable.pipe(oa(t=>t));break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${n.registrationStrategy}`)}}i.pipe(Ea(1)).subscribe(()=>navigator.serviceWorker.register(e,{scope:n.scope}))}}function ov(t,e){return new tv(Gl(e)&&!1!==t.enabled?navigator.serviceWorker:void 0)}const lv=(()=>{class t{static register(e,n={}){return{ngModule:t,providers:[{provide:iv,useValue:e},{provide:sv,useValue:n},{provide:tv,useFactory:ov,deps:[sv,Di]},{provide:Ii,useFactory:rv,deps:[Dt,iv,sv,Di],multi:!0}]}}}return t})(),av="Google Analytics";function cv(t,e,n,s="debug",i){if(window.debug){const r=["color: #0288D1",`color:${i||"#009688"}`,"color:rgba(0,0,0,0.87)"];n?uv()?console[s](`%c[${av}]%c[${t}] %c${e}`,...r,n):console[s](`[${av}][${t}] ${e}`,n):uv()?console[s](`%c[${av}]%c[${t}] %c${e}`,...r):console[s](`[${av}][${t}] ${e}`)}}function uv(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}const hv=(()=>{class t{constructor(t){var e,n,s,i,r;this.title=t,this.enabled=!0,this.app_name="GA_APP",this.timers={},e=window,n=document,s="script",e.GoogleAnalyticsObject="ga",e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,i=n.createElement(s),r=n.getElementsByTagName(s)[0],i.async=1,i.src="https://www.google-analytics.com/analytics.js",r.parentNode.insertBefore(i,r),cv("Service","Injected Google Analytics into page"),this.service=window.ga}load(t){if(!this.enabled)throw new Error("Google Analytics needs to be enabled before being initialised");if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.service("create",t,"auto"),this.service("send","pageview")}setUser(t){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`user|${t}`,()=>{cv("Service",`Set user ID: ${t}`),this.service("set","userId",t),this.event("authentication","user-id available")},100)}event(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`event|${t}|${e}|${n}|${s}`,()=>{cv("Service",`Event: ${t}, ${e}${n?", "+n:""}${s?", "+s:""}`),this.service("send","event",`${this.app_prefix?this.app_prefix+"_":""}${t}`,e,n,s)},100)}screen(t,e){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");t&&this.enabled&&this.timeout(`event|${t}|${e||this.app_name}`,()=>{cv("Service",`Screen: ${t}${e?", "+e:""}`),this.service("send","screenview",{appName:e||this.app_name,screenName:t})},100)}page(t,e=!1){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&(this.last_route=t||"/",this.timeout(`page|${t}`,()=>{cv("Service",`Page: ${t}`),this.service("send","pageview",`${e?location.origin:""}${t}`)},100))}timing(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`page|${t}|${e}|${n}|${s}`,()=>{cv("Service",`Timing: ${t}, ${e}, ${n}${s?", "+s:""}`),this.service("send","timing",t,e,n,s)},100)}timeout(t,e,n=300){this.timers[t]&&(clearTimeout(this.timers[t]),this.timers[t]=null),this.timers[t]=setTimeout(()=>{e instanceof Function&&e(),this.timers[t]=null},n)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(tu))},token:t,providedIn:"root"}),t})(),dv=(()=>{class t extends a_{constructor(t,e,n,s,i,r,o,l,a){super(),this._title=t,this._router=e,this._version=n,this._settings=s,this._overlay=i,this._analytics=r,this._hotkeys=o,this._build=l,this._test=a,this._route_trail=[],this._subjects={},this._observers={},this.set("system",null),this._build.parent=this._test.parent=this,this.init(),this.registerOverlays()}get Overlay(){return this._overlay}get Analytics(){return this._analytics}get Hotkeys(){return this._hotkeys}get Build(){return this._build}get Test(){return this._test}setting(t){return this._settings.get(t)}get name(){return this._settings.app_name}set title(t){const e=this.setting("app.title");this._title.setTitle(`${t?t+" | ":""}${e}`)}get title(){return this._title.getTitle()}get endpoint(){return`${location.origin}`}get engine_endpoint(){return"/control/api/"}get is_ready(){return this._settings.setup}notify(t,e,n,s){this._overlay.notify(`
${e}
`,n,s,t)}notifySuccess(t,e,n){this.notify("success",t,e,n)}notifyError(t,e,n){this.notify("error",t,e,n)}notifyInfo(t,e,n){this.notify("info",t,e,n)}log(t,e,n,s="debug",i=!1){this._settings.log(t,e,n,s,i)}navigate(t,e){const n=t instanceof Array?[...t]:[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})}navigateBack(){if(this._route_trail&&this._route_trail.length>0){const t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])}get(t){return this._subjects[t]&&this._subjects[t]instanceof Kl?this._subjects[t].getValue():null}listen(t,e){return this._observers[t]?this._observers[t].subscribe(e):null}set(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new Kl(e),this._observers[t]=this._subjects[t].asObservable())}init(){if(!this._settings.setup)return this.timeout("init",()=>this.init());this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(t=>{this.log("CACHE",`Update available: ${`current version is ${t.current.hash}`} ${`available version is ${t.available.hash}`}`),this.notifyInfo("Newer version of the app is available","Refresh",()=>location.reload())}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],()=>{this.navigate("bootstrap",{clear:!0})})}registerOverlays(){if(W_)for(const t of W_)this._overlay.register(t.id,t.config)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(tu),Ot(wd),Ot(nv),Ot(H_),Ot(Qf),Ot(hv),Ot(G_),Ot(Y_),Ot(q_))},token:t,providedIn:"root"}),t})();class pv extends c_{constructor(t,e){super(),this.service=t,this.route=e,this.commit_list=[],this.spec_list=[],this.spec_commit_list=[]}ngOnInit(){this.subscription("route.query",this.route.queryParamMap.subscribe(t=>{t.has("filter")&&(console.log("Filter:",t.get("filter")),this.timeout("filter_update",()=>{this.service.set("TEST.filter",t.get("filter")),console.log("Update filter")}))})),this.subscription("route.params",this.route.paramMap.subscribe(t=>{t.has("repo")&&(this.repo=t.get("repo"),this.timeout("repo_update",()=>this.service.set("TEST.repository",this.repo))),t.has("driver")?(this.driver=t.get("driver"),this.timeout("driver_update",()=>this.service.set("TEST.driver",this.driver)),this.test_results="",this.commit=null,this.updateCommits(),this.spec=null,this.spec_commit=null,this.updateSpecs(),this.show=!1):this.timeout("driver_update",()=>this.service.set("TEST.driver",""))})),this.updateCommits(),this.updateSpecs(),this.updateSpecCommits(),this.interval("update",()=>{this.updateCommits(),this.updateSpecs(),this.updateSpecCommits()},6e4)}updateCommits(){this.driver&&(this.loading_commits=!0,this.service.Build.driverCommits(this.driver,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:hl(t.date).format("DD MMM YYYY h:mm A")})),this.commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecs(){this.driver&&(this.loading_commits=!0,this.service.Test.query({repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_list=(t||[]).map(t=>({id:t,name:t})),this.spec||(this.spec=this.spec_list.reduce((t,e)=>t&&this.driver.localeCompare(t.id)>this.driver.localeCompare(e.id)?t:e,null),this.updateSpecCommits()),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecCommits(){this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:hl(t.date).format("DD MMM YYYY h:mm A")})),this.spec_commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}test(){if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";const t=t=>{t instanceof Object&&(t=t.error),this.test_results=this.styleResults(t||"");const e=this.service.get("TEST.results")||{},n=t.indexOf("exited with 0")>=0;e[`${this.repo}|${this.driver}`]=n?"passed":"failed",this.service.set("TEST.results",e),this.testing=!1,this.timeout("scroll",()=>this.body.nativeElement.scrollTo(0,this.body.nativeElement.scrollHeight),10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(t,t)}}styleResults(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')}}var fv=Xn({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function gv(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Spec Commit:"])),(t()(),Lr(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.spec_commit=n)&&s),s},$m,Pm)),ai(5,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(7,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(9,16384,null,0,jg,[[4,Lg]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,Zs(e,9).ngClassUntouched,Zs(e,9).ngClassTouched,Zs(e,9).ngClassPristine,Zs(e,9).ngClassDirty,Zs(e,9).ngClassValid,Zs(e,9).ngClassInvalid,Zs(e,9).ngClassPending)})}function mv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),Qr(1,2)],null,function(t,e){var n=e.component,s=qn(e,0,0,t(e,1,0,Zs(e.parent.parent,0),n.test_results,"html"));t(e,0,0,s)})}function _v(t){return to(0,[(t()(),Lr(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Repository:"])),(t()(),Lr(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Xr(6,null,["",""])),(t()(),Lr(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Driver:"])),(t()(),Lr(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Xr(11,null,["",""])),(t()(),Lr(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Commit:"])),(t()(),Lr(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.commit=n)&&s),s},$m,Pm)),ai(17,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(19,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(21,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Spec:"])),(t()(),Lr(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,i=t.component;return"ngModelChange"===e&&(s=!1!==(i.spec=n)&&s),"ngModelChange"===e&&(s=!1!==i.updateSpecCommits()&&s),s},$m,Pm)),ai(27,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(29,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(31,16384,null,0,jg,[[4,Lg]],null,null),(t()(),$r(16777216,null,null,1,null,gv)),ai(33,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Lr(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Lr(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Lr(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.force=n)&&s),s},Xm,Zm)),ai(38,49152,null,0,jm,[],{klass:[0,"klass"],label:[1,"label"]},null),ui(1024,null,Pg,function(t){return[t]},[jm]),ai(40,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(42,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Lr(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.debug=n)&&s),s},Xm,Zm)),ai(45,49152,null,0,jm,[],{klass:[0,"klass"],label:[1,"label"]},null),ui(1024,null,Pg,function(t){return[t]},[jm]),ai(47,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(49,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Lr(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Lr(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.test()&&s),s},s_,n_)),ui(5120,null,Pg,function(t){return[t]},[Jm]),ai(55,4767744,null,0,Jm,[sn,cn],null,{tapped:"tapped"}),ai(56,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Xr(-1,0,["Run!"])),(t()(),Lr(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),Xr(59,null,[" "," "])),(t()(),$r(16777216,null,null,1,null,mv)),ai(61,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,63).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,63).handleTouch(n)&&s),"tapped"===e&&(s=0!=(i.show=!i.show)&&s),s},qm,Ym)),ai(63,4440064,null,0,Fm,[sn,cn],{klass:[0,"klass"],center:[1,"center"]},null),ai(64,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,Zs(e,21).ngClassUntouched,Zs(e,21).ngClassTouched,Zs(e,21).ngClassPristine,Zs(e,21).ngClassDirty,Zs(e,21).ngClassValid,Zs(e,21).ngClassInvalid,Zs(e,21).ngClassPending),t(e,26,0,Zs(e,31).ngClassUntouched,Zs(e,31).ngClassTouched,Zs(e,31).ngClassPristine,Zs(e,31).ngClassDirty,Zs(e,31).ngClassValid,Zs(e,31).ngClassInvalid,Zs(e,31).ngClassPending),t(e,37,0,Zs(e,42).ngClassUntouched,Zs(e,42).ngClassTouched,Zs(e,42).ngClassPristine,Zs(e,42).ngClassDirty,Zs(e,42).ngClassValid,Zs(e,42).ngClassInvalid,Zs(e,42).ngClassPending),t(e,44,0,Zs(e,49).ngClassUntouched,Zs(e,49).ngClassTouched,Zs(e,49).ngClassPristine,Zs(e,49).ngClassDirty,Zs(e,49).ngClassValid,Zs(e,49).ngClassInvalid,Zs(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_down":"keyboard_arrow_up")})}function vv(t){return to(0,[(t()(),Lr(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["arrow_back"])),(t()(),Lr(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(-1,null,["Select a driver from the sidebar"]))],null,null)}function yv(t){return to(0,[ci(0,i_,[Fc]),Hr(671088640,1,{body:0}),(t()(),Lr(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,_v)),ai(4,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),$r(0,[["select",2]],null,0,null,vv))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,Zs(e,5))},null)}function wv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"app-workspace",[],null,null,null,yv,fv)),ai(1,245760,null,0,pv,[dv,ch],null,null)],function(t,e){t(e,1,0)},null)}var bv=Ls("app-workspace",pv,wv,{},{},[]);class Cv{constructor(){this.menu=!0,this.menuChange=new ki}toggleMenu(){this.menu=!this.menu,this.menuChange.emit(this.menu)}}var xv=Xn({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function Sv(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,2).handleTouch(n)&&s),"tapped"===e&&(s=!1!==i.toggleMenu()&&s),s},qm,Ym)),ai(2,4440064,null,0,Fm,[sn,cn],{klass:[0,"klass"]},null),ai(3,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["menu"])),(t()(),Lr(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Lr(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Lr(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),Xr(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}class Ev{transform(t){if(t.indexOf("/")>=0){const e=t.split("/");return e.splice(0,1),`
${e.map(t=>`
${t}
`).join('
keyboard_arrow_right
')}
`}return t}}class kv extends c_{constructor(t){super(),this.service=t,this.repository_list=[],this.status={}}ngOnInit(){this.service.set("TEST.repository",""),this.service.set("TEST.filter",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",()=>this.updateRepositoryList(),6e4),this.subscription("test_results",this.service.listen("TEST.filter",t=>{console.log("Filter:",t),this.search_str=t||"",this.filter(this.search_str)})),this.subscription("test_results",this.service.listen("TEST.results",t=>{this.status=t||{}})),this.subscription("repository",this.service.listen("TEST.repository",t=>{t&&(this.repo={id:t,name:t},this.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",t=>{this.driver=t}))}setRepository(t){this.service.navigate([t],{filter:this.search_str}),this.search_str="",this.updateDriverList()}setDriver(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t],{filter:this.search_str})}filter(t){this.filtered_list=(this.driver_list||[]).filter(e=>e.toLowerCase().indexOf(t.toLowerCase())>=0)}updateDriverList(){this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(t=>{this.driver_list=t||[],this.filter(this.search_str),this.loading=!1},t=>this.loading=!1)}updateRepositoryList(){this.service.Build.repositories().then(t=>{this.repository_list=(t||[]).map(t=>({id:t,name:t})),this.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),this.updateDriverList()})}}var Tv=Xn({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function Ov(t){return to(0,[(t()(),Lr(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.setDriver(t.context.$implicit)&&s),s},null,null)),ai(1,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Lr(3,0,null,null,1,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null)),Qr(4,1)],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]);var s=qn(e,3,0,t(e,4,0,Zs(e.parent,0),e.context.$implicit));t(e,3,0,s)})}function Iv(t){return to(0,[(t()(),Lr(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function Rv(t){return to(0,[ci(0,Ev,[]),(t()(),Lr(1,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,i=t.component;return"ngModelChange"===e&&(s=!1!==(i.repo=n)&&s),"ngModelChange"===e&&(s=!1!==i.setRepository(n.id)&&s),s},$m,Pm)),ai(4,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(6,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(8,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(9,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Lr(10,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(11,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["search"])),(t()(),Lr(13,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,i=t.component;return"input"===e&&(s=!1!==Zs(t,14)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==Zs(t,14).onTouched()&&s),"compositionstart"===e&&(s=!1!==Zs(t,14)._compositionStart()&&s),"compositionend"===e&&(s=!1!==Zs(t,14)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(i.search_str=n)&&s),"ngModelChange"===e&&(s=!1!==i.filter(n)&&s),s},null,null)),ai(14,16384,null,0,Ng,[cn,sn,[2,Mg]],null,null),ui(1024,null,Pg,function(t){return[t]},[Ng]),ai(16,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(18,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(19,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,Ov)),ai(21,278528,null,0,Al,[An,Rn,xn],{ngForOf:[0,"ngForOf"]},null),(t()(),$r(16777216,null,null,1,null,Iv)),ai(23,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,4,0,"simple",n.repository_list||Ss,"ACA Drivers"),t(e,6,0,n.repo),t(e,16,0,n.search_str),t(e,21,0,n.filtered_list),t(e,23,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,3,0,Zs(e,8).ngClassUntouched,Zs(e,8).ngClassTouched,Zs(e,8).ngClassPristine,Zs(e,8).ngClassDirty,Zs(e,8).ngClassValid,Zs(e,8).ngClassInvalid,Zs(e,8).ngClassPending),t(e,13,0,Zs(e,18).ngClassUntouched,Zs(e,18).ngClassTouched,Zs(e,18).ngClassPristine,Zs(e,18).ngClassDirty,Zs(e,18).ngClassValid,Zs(e,18).ngClassInvalid,Zs(e,18).ngClassPending)})}var Pv=Xn({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:20em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}.formatted-driver-name{display:flex;align-items:center}.formatted-driver-name .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:1.5em}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:28em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Av(t){return to(0,[(t()(),Lr(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var s=!0;return"menuChange"===e&&(s=!1!==(t.component.show_menu=n)&&s),s},Sv,xv)),ai(3,49152,null,0,Cv,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Lr(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Lr(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(6,0,null,null,1,"sidebar",[],null,null,null,Rv,Tv)),ai(7,245760,null,0,kv,[dv],null,null),(t()(),Lr(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Lr(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),ai(10,212992,null,0,xd,[Cd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function Mv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"app-root",[],null,null,null,Av,Pv)),ai(1,49152,null,0,pl,[],null,null)],null,null)}var Nv=Ls("app-root",pl,Mv,{},{},[]);class Dv{}class Vv{}var $v=ol(dl,[pl],function(t){return function(t){const e={},n=[];let s=!1;for(let i=0;i(t[e.name]=e.token,t),{}))),()=>lc),Fd(e),rv(n,s,i,r)];var o},[[2,pr],zd,Dt,iv,sv,Di]),Is(512,Ri,Ri,[[2,Ii]]),Is(131584,vr,vr,[Ji,$i,Dt,ie,Xe,Ri]),Is(1073742336,Vr,Vr,[vr]),Is(1073742336,Kc,Kc,[[3,Kc]]),Is(1024,Pd,$d,[[3,wd]]),Is(512,zu,Fu,[]),Is(512,Cd,Cd,[]),Is(256,Rd,{useHash:!0},[]),Is(1024,ml,Vd,[fl,[2,_l],Rd]),Is(512,vl,vl,[ml,fl]),Is(512,Hi,Hi,[]),Is(512,Oi,Cr,[Hi,[2,wr]]),Is(1024,pd,function(){return[[{path:"",component:pv},{path:":repo",component:pv},{path:":repo/:driver",component:pv}]]},[]),Is(1024,wd,jd,[vr,zu,Cd,vl,Dt,Oi,Hi,pd,Rd,[2,gd],[2,hd]]),Is(1073742336,Nd,Nd,[[2,Pd],[2,wd]]),Is(1073742336,Dv,Dv,[]),Is(1073742336,lv,lv,[]),Is(1073742336,Em,Em,[]),Is(1073742336,Tm,Tm,[]),Is(1073742336,Om,Om,[]),Is(1073742336,Wm,Wm,[]),Is(1073742336,e_,e_,[]),Is(1073742336,zm,zm,[]),Is(1073742336,sg,sg,[]),Is(1073742336,gf,gf,[]),Is(1073742336,Fp,Fp,[]),Is(1073742336,of,of,[]),Is(1073742336,Hf,Hf,[]),Is(1073742336,tg,tg,[]),Is(1073742336,l_,l_,[]),Is(1073742336,Kd,Kd,[]),Is(1073742336,Vv,Vv,[]),Is(1073742336,z_,z_,[]),Is(1073742336,F_,F_,[]),Is(1073742336,dl,dl,[]),Is(256,Ge,!0,[]),Is(256,D_,"XSRF-TOKEN",[]),Is(256,V_,"X-XSRF-TOKEN",[])])});(function(){if(oe)throw new Error("Cannot enable prod mode after platform setup.");re=!1})(),Qc().bootstrapModuleFactory($v).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file diff --git a/www/main-es5.37b7e9a21a91f80edc18.js b/www/main-es5.72cbbae2b0ff73724475.js similarity index 83% rename from www/main-es5.37b7e9a21a91f80edc18.js rename to www/main-es5.72cbbae2b0ff73724475.js index 51fa27c103c..b512f256295 100644 --- a/www/main-es5.37b7e9a21a91f80edc18.js +++ b/www/main-es5.72cbbae2b0ff73724475.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",r="hour",o="day",i="week",s="month",a="quarter",l="year",u=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,c=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},p={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+h(r,2,"0")+":"+h(o,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,s),o=e-r<0,i=t.clone().add(n+(o?-1:1),s);return Number(-(n+(e-r)/(o?r-i:i-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(u){return{M:s,y:l,w:i,d:o,h:r,m:n,s:e,ms:t,Q:a}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},d={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=d;var v=function(t){return t instanceof b},y=function(t,e,n){var r;if(!t)return null;if("string"==typeof t)g[t]&&(r=t),e&&(g[t]=e,r=t);else{var o=t.name;g[o]=t,r=o}return n||(f=r),r},m=function(t,e,n){if(v(t))return t.clone();var r=e?"string"==typeof e?{format:e,pl:n}:e:{};return r.date=t,new b(r)},_=p;_.l=y,_.i=v,_.w=function(t,e){return m(t,{locale:e.$L,utc:e.$u})};var b=function(){function h(t){this.$L=this.$L||y(t.locale,null,!0)||f,this.parse(t)}var p=h.prototype;return p.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(_.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(u);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},p.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},p.$utils=function(){return _},p.isValid=function(){return!("Invalid Date"===this.$d.toString())},p.isSame=function(t,e){var n=m(t);return this.startOf(e)<=n&&n<=this.endOf(e)},p.isAfter=function(t,e){return m(t)=0;a--)(o=t[a])&&(s=(i<3?o(s):i>3?o(e,n,s):o(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}function a(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function l(t,e,n,r){return new(n||(n=Promise))(function(o,i){function s(t){try{l(r.next(t))}catch(e){i(e)}}function a(t){try{l(r.throw(t))}catch(e){i(e)}}function l(t){t.done?o(t.value):new n(function(e){e(t.value)}).then(s,a)}l((r=r.apply(t,e||[])).next())})}function u(t,e){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,r=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function h(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(a){o={error:a}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function p(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(X);function st(t){return t}function at(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),rt(st,t)}function lt(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof o&&(n=t.pop()),null===r&&1===t.length&&t[0]instanceof R?t[0]:at(n)(et(t,r))}function ut(){return function(t){return t.lift(new ct(t))}}var ct=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var r=new ht(t,n),o=e.subscribe(r);return r.closed||(r.connection=n.connect()),o},t}(),ht=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},e}(E),pt=function(t){function e(e,n){var r=t.call(this)||this;return r.source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return o(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 m).add(this.source.subscribe(new ft(this.getSubject(),this))),t.closed?(this._connection=null,t=m.EMPTY):this._connection=t),t},e.prototype.refCount=function(){return ut()(this)},e}(R).prototype,dt={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:pt._subscribe},_isComplete:{value:pt._isComplete,writable:!0},getSubject:{value:pt.getSubject},connect:{value:pt.connect},refCount:{value:pt.refCount}},ft=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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}(j);function gt(t,e){return function(n){var r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new vt(r,e));var o=Object.create(n,dt);return o.source=n,o.subjectFactory=r,o}}var vt=function(){function t(t,e){this.subjectFactory=t,this.selector=e}return t.prototype.call=function(t,e){var n=this.selector,r=this.subjectFactory(),o=n(r).subscribe(t);return o.add(e.subscribe(r)),o},t}();function yt(){return new V}var mt="__parameters__";function _t(t,e,n){var r=function(t){return function(){for(var e=[],n=0;n ");else if("object"==typeof e){var i=[];for(var s in e)if(e.hasOwnProperty(s)){var a=e[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):Tt(a)))}o="{"+i.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+o+"]: "+t.replace(Xt,"\n ")}function ne(t,e){return new Error(ee(t,e,"StaticInjectorError"))}var re="ngDebugContext",oe="ngOriginalError",ie="ngErrorLogger",se=new Ut("AnalyzeForEntryComponents"),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({}),le=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt)}();function ue(t){return t[re]}function ce(t){return t[oe]}function he(t){for(var e=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return t.prototype.getInertBodyElement_XHR=function(t){t=""+t+"";try{t=encodeURI(t)}catch(r){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=""+t+"";try{var e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(n){return null}},t.prototype.getInertBodyElement_InertDocument=function(t){var e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},t.prototype.stripCustomNsAttrs=function(t){for(var e=t.attributes,n=e.length-1;0"),!0},t.prototype.endElement=function(t){var e=t.nodeName.toLowerCase();ke.hasOwnProperty(e)&&!xe.hasOwnProperty(e)&&(this.buf.push(""))},t.prototype.chars=function(t){this.buf.push(De(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}(),Me=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ne=/([^\#-~ |!])/g;function De(t){return t.replace(/&/g,"&").replace(Me,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ne,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}function je(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Ve=function(t){return 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",t}({}),Le=function(){return function(){}}(),ze=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ue=/^url\(([^)]+)\)$/,Fe=/([A-Z])/g;function He(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function Be(t){return!!t&&"function"==typeof t.then}function We(t){return!!t&&"function"==typeof t.subscribe}var Ge=null;function Ye(){if(!Ge){var t=Dt.Symbol;if(t&&t.iterator)Ge=t.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),n=0;n-1}(r)||"root"===o.providedIn&&r._def.isRoot))){var c=t._providers.length;return t._def.providers[c]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:c,token:e.token},t._providers[c]=Ar,t._providers[c]=Lr(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Vt(i)}}function Lr(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(Vr(t,n[0]));case 2:return new e(Vr(t,n[0]),Vr(t,n[1]));case 3:return new e(Vr(t,n[0]),Vr(t,n[1]),Vr(t,n[2]));default:for(var o=new Array(r),i=0;i=n.length)&&(e=n.length-1),e<0)return null;var r=n[e];return r.viewContainerParent=null,Br(n,e),Xn.dirtyParentQueries(r),Fr(r),r}function Ur(t,e,n){var r=e?fr(e,e.def.lastRenderRootNode):t.renderElement,o=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);xr(n,2,o,i,void 0)}function Fr(t){xr(t,3,null,null,void 0)}function Hr(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Br(t,e){e>=t.length-1?t.pop():t.splice(e,1)}var Wr=new Object;function Gr(t,e,n,r,o,i){return new Yr(t,e,n,r,o,i)}var Yr=function(t){function e(e,n,r,o,i,s){var a=t.call(this)||this;return a.selector=e,a.componentType=n,a._inputs=o,a._outputs=i,a.ngContentSelectors=s,a.viewDefFactory=r,a}return o(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){var t=[],e=this._inputs;for(var n in e)t.push({propName:n,templateName:e[n]});return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var t=[];for(var e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,r){if(!r)throw new Error("ngModule should be provided");var o=Cr(this.viewDefFactory),i=o.nodes[0].element.componentProvider.nodeIndex,s=Xn.createRootView(t,e||[],n,o,r,Wr),a=Zn(s,i).instance;return n&&s.renderer.setAttribute(qn(s,0).renderElement,"ng-version",_n.full),new qr(s,new Xr(s),a)},e}(en),qr=function(t){function e(e,n,r){var o=t.call(this)||this;return o._view=e,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o.hostView=n,o.changeDetectorRef=n,o.instance=r,o}return o(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return new pn(qn(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new eo(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}(tn);function Zr(t,e,n){return new $r(t,e,n)}var $r=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 pn(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new eo(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=dr(t),t=t.parent;return t?new eo(t,e):new eo(this._view,null)},enumerable:!0,configurable:!0}),t.prototype.clear=function(){for(var t=this._embeddedViews.length-1;t>=0;t--){var e=zr(this._data,t);Xn.destroyView(e)}},t.prototype.get=function(t){var e=this._embeddedViews[t];if(e){var n=new Xr(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 r=t.createEmbeddedView(e||{});return this.insert(r,n),r},t.prototype.createComponent=function(t,e,n,r,o){var i=n||this.parentInjector;o||t instanceof ln||(o=i.get(un));var s=t.create(i,r,void 0,o);return this.insert(s.hostView,e),s},t.prototype.insert=function(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n,r,o,i,s=t;return i=(n=this._data).viewContainer._embeddedViews,null==(r=e)&&(r=i.length),(o=s._view).viewContainerParent=this._view,Hr(i,r,o),function(t,e){var n=pr(e);if(n&&n!==t&&!(16&e.state)){e.state|=16;var r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(e),function(t,n){if(!(4&n.flags)){e.parent.def.nodeFlags|=4,n.flags|=4;for(var r=n.parent;r;)r.childFlags|=4,r=r.parent}}(0,e.parentNodeDef)}}(n,o),Xn.dirtyParentQueries(o),Ur(n,r>0?i[r-1]:null,o),s.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,r,o,i,s,a=this._embeddedViews.indexOf(t._view);return o=e,s=(i=(n=this._data).viewContainer._embeddedViews)[r=a],Br(i,r),null==o&&(o=i.length),Hr(i,o,s),Xn.dirtyParentQueries(s),Fr(s),Ur(n,o>0?i[o-1]:null,s),t},t.prototype.indexOf=function(t){return this._embeddedViews.indexOf(t._view)},t.prototype.remove=function(t){var e=zr(this._data,t);e&&Xn.destroyView(e)},t.prototype.detach=function(t){var e=zr(this._data,t);return e?new Xr(e):null},t}();function Qr(t){return new Xr(t)}var Xr=function(){function t(t){this._view=t,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){return xr(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(){ur(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{Xn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}},t.prototype.checkNoChanges=function(){Xn.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)),Xn.destroyView(this._view)},t.prototype.detachFromAppRef=function(){this._appRef=null,Fr(this._view),Xn.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 Kr(t,e){return new Jr(t,e)}var Jr=function(t){function e(e,n){var r=t.call(this)||this;return r._parentView=e,r._def=n,r}return o(e,t),e.prototype.createEmbeddedView=function(t){return new Xr(Xn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new pn(qn(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),e}(Vn);function to(t,e){return new eo(t,e)}var eo=function(){function t(t,e){this.view=t,this.elDef=e}return t.prototype.get=function(t,e){return void 0===e&&(e=Gt.THROW_IF_NOT_FOUND),Xn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:tr(t)},e)},t}();function no(t,e){var n=t.def.nodes[e];if(1&n.flags){var r=qn(t,n.nodeIndex);return n.element.template?r.template:r.renderElement}if(2&n.flags)return Yn(t,n.nodeIndex).renderText;if(20240&n.flags)return Zn(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function ro(t){return new oo(t.renderer)}var oo=function(){function t(t){this.delegate=t}return t.prototype.selectRootElement=function(t){return this.delegate.selectRootElement(t)},t.prototype.createElement=function(t,e){var n=h(Tr(e),2),r=this.delegate.createElement(n[1],n[0]);return t&&this.delegate.appendChild(t,r),r},t.prototype.createViewRoot=function(t){return t},t.prototype.createTemplateAnchor=function(t){var e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e},t.prototype.createText=function(t,e){var n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n},t.prototype.projectNodes=function(t,e){for(var n=0;n0,e.provider.value,e.provider.deps);if(e.outputs.length)for(var r=0;r0,r=e.provider;switch(201347067&e.flags){case 512:return Eo(t,e.parent,n,r.value,r.deps);case 1024:return function(t,e,n,r,o){var i=o.length;switch(i){case 0:return r();case 1:return r(ko(t,e,n,o[0]));case 2:return r(ko(t,e,n,o[0]),ko(t,e,n,o[1]));case 3:return r(ko(t,e,n,o[0]),ko(t,e,n,o[1]),ko(t,e,n,o[2]));default:for(var s=Array(i),a=0;a0&&(o=setTimeout(function(){r._callbacks=r._callbacks.filter(function(t){return t.timeoutId!==o}),t(r._didWork,r.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:o,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}(),yi=function(){function t(){this._applications=new Map,mi.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),mi.findTestabilityInTree(this,t,e)},s([a("design:paramtypes",[])],t)}(),mi=new(function(){function t(){}return t.prototype.addToWindow=function(t){},t.prototype.findTestabilityInTree=function(t,e,n){return null},t}()),_i=new Ut("AllowMultipleToken"),bi=function(){return function(t,e){this.name=t,this.token=e}}();function wi(t,e,n){void 0===n&&(n=[]);var r="Platform: "+e,o=new Ut(r);return function(e){void 0===e&&(e=[]);var i=Ci();if(!i||i.injector.get(_i,!1))if(t)t(n.concat(e).concat({provide:o,useValue:!0}));else{var s=n.concat(e).concat({provide:o,useValue:!0});!function(t){if(fi&&!fi.destroyed&&!fi.injector.get(_i,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");fi=t.get(xi);var e=t.get(Ho,null);e&&e.forEach(function(t){return t()})}(Gt.create({providers:s,name:r}))}return function(t){var e=Ci();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}(o)}}function Ci(){return fi&&!fi.destroyed?fi:null}var xi=function(){function t(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return t.prototype.bootstrapModuleFactory=function(t,e){var n,r=this,o="noop"===(n=e?e.ngZone:void 0)?new gi:("zone.js"===n?void 0:n)||new li({enableLongStackTrace:ge()}),i=[{provide:li,useValue:o}];return o.run(function(){var e=Gt.create({providers:i,parent:r.injector,name:t.moduleType.name}),n=t.create(e),s=n.injector.get(pe,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy(function(){return Oi(r._modules,n)}),o.runOutsideAngular(function(){return o.onError.subscribe({next:function(t){s.handleError(t)}})}),function(t,e,o){try{var i=((s=n.injector.get(Lo)).runInitializers(),s.donePromise.then(function(){return r._moduleDoBootstrap(n),n}));return Be(i)?i.catch(function(n){throw e.runOutsideAngular(function(){return t.handleError(n)}),n}):i}catch(a){throw e.runOutsideAngular(function(){return t.handleError(a)}),a}var s}(s,o)})},t.prototype.bootstrapModule=function(t,e){var n=this;void 0===e&&(e=[]);var r=Si({},e);return function(t,e,n){return t.get(ti).createCompiler([e]).compileModuleAsync(n)}(this.injector,r,t).then(function(t){return n.bootstrapModuleFactory(t,r)})},t.prototype._moduleDoBootstrap=function(t){var e=t.injector.get(Ei);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(function(t){return e.bootstrap(t)});else{if(!t.instance.ngDoBootstrap)throw new Error("The module "+Tt(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}();function Si(t,e){return Array.isArray(e)?e.reduce(Si,t):i({},t,e)}var Ei=function(){function t(t,e,n,r,o,i){var s=this;this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ge(),this._zone.onMicrotaskEmpty.subscribe({next:function(){s._zone.run(function(){s.tick()})}});var a=new R(function(t){s._stable=s._zone.isStable&&!s._zone.hasPendingMacrotasks&&!s._zone.hasPendingMicrotasks,s._zone.runOutsideAngular(function(){t.next(s._stable),t.complete()})}),l=new R(function(t){var e;s._zone.runOutsideAngular(function(){e=s._zone.onStable.subscribe(function(){li.assertNotInAngularZone(),ai(function(){s._stable||s._zone.hasPendingMacrotasks||s._zone.hasPendingMicrotasks||(s._stable=!0,t.next(!0))})})});var n=s._zone.onUnstable.subscribe(function(){li.assertInAngularZone(),s._stable&&(s._stable=!1,s._zone.runOutsideAngular(function(){t.next(!1)}))});return function(){e.unsubscribe(),n.unsubscribe()}});this.isStable=lt(a,l.pipe(function(t){return ut()(gt(yt)(t))}))}var e;return e=t,t.prototype.bootstrap=function(t,e){var n,r=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 en?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);var o=n instanceof ln?null:this._injector.get(un),i=n.create(Gt.NULL,[],e||n.selector,o);i.onDestroy(function(){r._unloadComponent(i)});var s=i.injector.get(vi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ge()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i},t.prototype.tick=function(){var t,n,r,o,i=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var s=e._tickScope();try{this._runningTick=!0;try{for(var a=c(this._views),l=a.next();!l.done;l=a.next())l.value.detectChanges()}catch(p){t={error:p}}finally{try{l&&!l.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}if(this._enforceNoNewChanges)try{for(var u=c(this._views),h=u.next();!h.done;h=u.next())h.value.checkNoChanges()}catch(d){r={error:d}}finally{try{h&&!h.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}catch(f){this._zone.runOutsideAngular(function(){return i._exceptionHandler.handleError(f)})}finally{this._runningTick=!1,ii(s)}},t.prototype.attachView=function(t){var e=t;this._views.push(e),e.attachToAppRef(this)},t.prototype.detachView=function(t){var e=t;Oi(this._views,e),e.detachFromAppRef()},t.prototype._loadComponent=function(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach(function(e){return e(t)})},t.prototype._unloadComponent=function(t){this.detachView(t.hostView),Oi(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._tickScope=oi("ApplicationRef#tick()"),t}();function Oi(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}var ki=function(){return function(){}}(),Pi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Ti=function(){function t(t,e){this._compiler=t,this._config=e||Pi}return t.prototype.load=function(t){return this._compiler instanceof Jo?this.loadFactory(t):this.loadAndCompile(t)},t.prototype.loadAndCompile=function(t){var e=this,r=h(t.split("#"),2),o=r[0],i=r[1];return void 0===i&&(i="default"),n("zn8P")(o).then(function(t){return t[i]}).then(function(t){return Ii(t,o,i)}).then(function(t){return e._compiler.compileModuleAsync(t)})},t.prototype.loadFactory=function(t){var e=h(t.split("#"),2),r=e[0],o=e[1],i="NgFactory";return void 0===o&&(o="default",i=""),n("zn8P")(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(t){return t[o+i]}).then(function(t){return Ii(t,r,o)})},t}();function Ii(t,e,n){if(!t)throw new Error("Cannot find '"+n+"' in '"+e+"'");return t}var Ri=function(){return function(t,e){this.name=t,this.callback=e}}(),Ai=function(){function t(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Mi&&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}(),Mi=function(t){function e(e,n,r){var o=t.call(this,e,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=e,o}return o(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,p([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,r){e.childNodes.forEach(function(e){e instanceof Mi&&(n(e)&&r.push(e),t(e,n,r))})}(this,t,e),e},e.prototype.queryAllNodes=function(t){var e=[];return function t(e,n,r){e instanceof Mi&&e.childNodes.forEach(function(e){n(e)&&r.push(e),e instanceof Mi&&t(e,n,r)})}(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}(Ai),Ni=new Map,Di=function(t){return Ni.get(t)||null};function ji(t){Ni.set(t.nativeNode,t)}var Vi=wi(null,"core",[{provide:Bo,useValue:"unknown"},{provide:xi,deps:[Gt]},{provide:yi,deps:[]},{provide:Go,deps:[]}]),Li=new Ut("LocaleId");function zi(){return Dn}function Ui(){return jn}function Fi(t){return t||"en-US"}function Hi(t){var e=[];return t.onStable.subscribe(function(){for(;e.length;)e.pop()()}),function(t){e.push(t)}}var Bi=function(){return function(t){}}();function Wi(t,e,n,r,o,i){t|=1;var s=mr(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s.matchedQueries,matchedQueryIds:s.matchedQueryIds,references:s.references,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?Cr(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Kn},provider:null,text:null,query:null,ngContent:null}}function Gi(t,e,n,r,o,i,s,a,l,u,c,p){var d;void 0===s&&(s=[]),u||(u=Kn);var f=mr(n),g=f.matchedQueries,v=f.references,y=f.matchedQueryIds,m=null,_=null;i&&(m=(d=h(Tr(i),2))[0],_=d[1]),a=a||[];for(var b=new Array(a.length),w=0;w0)u=g,ls(g)||(c=g);else for(;u&&f===u.nodeIndex+u.childCount;){var m=u.parent;m&&(m.childFlags|=u.childFlags,m.childMatchedQueries|=u.childMatchedQueries),c=(u=m)&&ls(u)?u.renderParent:u}}return{factory:null,nodeFlags:s,rootNodeFlags:a,nodeMatchedQueries:l,flags:t,nodes:e,updateDirectives:n||Kn,updateRenderer:r||Kn,handleEvent:function(t,n,r,o){return e[n].element.handleEvent(t,r,o)},bindingCount:o,outputCount:i,lastRenderRootNode:d}}function ls(t){return 0!=(1&t.flags)&&null===t.element.name}function us(t,e,n){var r=e.element&&e.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.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 o=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=o&&e.nodeIndex+e.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.nodeIndex+"!")}}function cs(t,e,n,r){var o=ds(t.root,t.renderer,t,e,n);return fs(o,t.component,r),gs(o),o}function hs(t,e,n){var r=ds(t,t.renderer,null,null,e);return fs(r,n,n),gs(r),r}function ps(t,e,n,r){var o,i=e.element.componentRendererType;return o=i?t.root.rendererFactory.createRenderer(r,i):t.root.renderer,ds(t.root,o,t,e.element.componentProvider,n)}function ds(t,e,n,r,o){var i=new Array(o.nodes.length),s=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(o.bindingCount),disposables:s,initIndex:-1}}function fs(t,e,n){t.component=e,t.context=n}function gs(t){var e;gr(t)&&(e=qn(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);for(var n=t.def,r=t.nodes,o=0;o0&&$i(t,e,0,n)&&(d=!0),p>1&&$i(t,e,1,r)&&(d=!0),p>2&&$i(t,e,2,o)&&(d=!0),p>3&&$i(t,e,3,i)&&(d=!0),p>4&&$i(t,e,4,s)&&(d=!0),p>5&&$i(t,e,5,a)&&(d=!0),p>6&&$i(t,e,6,l)&&(d=!0),p>7&&$i(t,e,7,u)&&(d=!0),p>8&&$i(t,e,8,c)&&(d=!0),p>9&&$i(t,e,9,h)&&(d=!0),d}(t,e,n,r,o,i,s,a,l,u,c,h);case 2:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=!1,d=e.bindings,f=d.length;if(f>0&&ar(t,e,0,n)&&(p=!0),f>1&&ar(t,e,1,r)&&(p=!0),f>2&&ar(t,e,2,o)&&(p=!0),f>3&&ar(t,e,3,i)&&(p=!0),f>4&&ar(t,e,4,s)&&(p=!0),f>5&&ar(t,e,5,a)&&(p=!0),f>6&&ar(t,e,6,l)&&(p=!0),f>7&&ar(t,e,7,u)&&(p=!0),f>8&&ar(t,e,8,c)&&(p=!0),f>9&&ar(t,e,9,h)&&(p=!0),p){var g=e.text.prefix;f>0&&(g+=ss(n,d[0])),f>1&&(g+=ss(r,d[1])),f>2&&(g+=ss(o,d[2])),f>3&&(g+=ss(i,d[3])),f>4&&(g+=ss(s,d[4])),f>5&&(g+=ss(a,d[5])),f>6&&(g+=ss(l,d[6])),f>7&&(g+=ss(u,d[7])),f>8&&(g+=ss(c,d[8])),f>9&&(g+=ss(h,d[9]));var v=Yn(t,e.nodeIndex).renderText;t.renderer.setValue(v,g)}return p}(t,e,n,r,o,i,s,a,l,u,c,h);case 16384:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=Zn(t,e.nodeIndex),d=p.instance,f=!1,g=void 0,v=e.bindings.length;return v>0&&sr(t,e,0,n)&&(f=!0,g=To(t,p,e,0,n,g)),v>1&&sr(t,e,1,r)&&(f=!0,g=To(t,p,e,1,r,g)),v>2&&sr(t,e,2,o)&&(f=!0,g=To(t,p,e,2,o,g)),v>3&&sr(t,e,3,i)&&(f=!0,g=To(t,p,e,3,i,g)),v>4&&sr(t,e,4,s)&&(f=!0,g=To(t,p,e,4,s,g)),v>5&&sr(t,e,5,a)&&(f=!0,g=To(t,p,e,5,a,g)),v>6&&sr(t,e,6,l)&&(f=!0,g=To(t,p,e,6,l,g)),v>7&&sr(t,e,7,u)&&(f=!0,g=To(t,p,e,7,u,g)),v>8&&sr(t,e,8,c)&&(f=!0,g=To(t,p,e,8,c,g)),v>9&&sr(t,e,9,h)&&(f=!0,g=To(t,p,e,9,h,g)),g&&d.ngOnChanges(g),65536&e.flags&&Gn(t,256,e.nodeIndex)&&d.ngOnInit(),262144&e.flags&&d.ngDoCheck(),f}(t,e,n,r,o,i,s,a,l,u,c,h);case 32:case 64:case 128:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=e.bindings,d=!1,f=p.length;if(f>0&&ar(t,e,0,n)&&(d=!0),f>1&&ar(t,e,1,r)&&(d=!0),f>2&&ar(t,e,2,o)&&(d=!0),f>3&&ar(t,e,3,i)&&(d=!0),f>4&&ar(t,e,4,s)&&(d=!0),f>5&&ar(t,e,5,a)&&(d=!0),f>6&&ar(t,e,6,l)&&(d=!0),f>7&&ar(t,e,7,u)&&(d=!0),f>8&&ar(t,e,8,c)&&(d=!0),f>9&&ar(t,e,9,h)&&(d=!0),d){var g=$n(t,e.nodeIndex),v=void 0;switch(201347067&e.flags){case 32:v=new Array(p.length),f>0&&(v[0]=n),f>1&&(v[1]=r),f>2&&(v[2]=o),f>3&&(v[3]=i),f>4&&(v[4]=s),f>5&&(v[5]=a),f>6&&(v[6]=l),f>7&&(v[7]=u),f>8&&(v[8]=c),f>9&&(v[9]=h);break;case 64:v={},f>0&&(v[p[0].name]=n),f>1&&(v[p[1].name]=r),f>2&&(v[p[2].name]=o),f>3&&(v[p[3].name]=i),f>4&&(v[p[4].name]=s),f>5&&(v[p[5].name]=a),f>6&&(v[p[6].name]=l),f>7&&(v[p[7].name]=u),f>8&&(v[p[8].name]=c),f>9&&(v[p[9].name]=h);break;case 128:var y=n;switch(f){case 1:v=y.transform(n);break;case 2:v=y.transform(r);break;case 3:v=y.transform(r,o);break;case 4:v=y.transform(r,o,i);break;case 5:v=y.transform(r,o,i,s);break;case 6:v=y.transform(r,o,i,s,a);break;case 7:v=y.transform(r,o,i,s,a,l);break;case 8:v=y.transform(r,o,i,s,a,l,u);break;case 9:v=y.transform(r,o,i,s,a,l,u,c);break;case 10:v=y.transform(r,o,i,s,a,l,u,c,h)}}g.value=v}return d}(t,e,n,r,o,i,s,a,l,u,c,h);default:throw"unreachable"}}(t,e,r,o,i,s,a,l,u,c,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){for(var r=!1,o=0;o0&&lr(t,e,0,n),p>1&&lr(t,e,1,r),p>2&&lr(t,e,2,o),p>3&&lr(t,e,3,i),p>4&&lr(t,e,4,s),p>5&&lr(t,e,5,a),p>6&&lr(t,e,6,l),p>7&&lr(t,e,7,u),p>8&&lr(t,e,8,c),p>9&&lr(t,e,9,h)}(t,e,r,o,i,s,a,l,u,c,h,p):function(t,e,n){for(var r=0;r0){var i=new Set(t.modules);Vs.forEach(function(e,r){if(i.has(kt(r).providedIn)){var o={token:r,flags:e.flags|(n?4096:0),deps:_r(e.deps),value:e.value,index:t.providers.length};t.providers.push(o),t.providersByKey[tr(r)]=o}})}}(t=t.factory(function(){return Kn})),t):t}(r))}var js=new Map,Vs=new Map,Ls=new Map;function zs(t){var e;js.set(t.token,t),"function"==typeof t.token&&(e=kt(t.token))&&"function"==typeof e.providedIn&&Vs.set(t.token,t)}function Us(t,e){var n=Cr(e.viewDefFactory),r=Cr(n.nodes[0].element.componentView);Ls.set(t,r)}function Fs(){js.clear(),Vs.clear(),Ls.clear()}function Hs(t){if(0===js.size)return t;var e=function(t){for(var e=[],n=null,r=0;r0?va(t,e[n]):e[n]:null}var ya=n("Wgwc"),ma=function(){function t(){if(this.build=ya(),!t.init){var e=ya();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][APP] "+fa+" - "+t+" | "+e):console[n].apply(console,["%c[ACA]%c[APP] %c"+fa+" - "+t+" | "+e].concat(["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0",t.init=!1,t}(),_a=function(){return function(){this.show_menu=!0}}(),ba=function(){return function(){}}(),wa=new Ut("Location Initialized"),Ca=function(){return function(){}}(),xa=new Ut("appBaseHref"),Sa=function(){function t(t,n){var r=this;this._subject=new No,this._urlChangeListeners=[],this._platformStrategy=t;var o=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=e.stripTrailingSlash(Ea(o)),this._platformStrategy.onPopState(function(t){r._subject.emit({url:r.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,n){return void 0===n&&(n=""),this.path()==this.normalize(t+e.normalizeQueryParams(n))},t.prototype.normalize=function(t){return e.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,Ea(t)))},t.prototype.prepareExternalUrl=function(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)},t.prototype.go=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.pushState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},t.prototype.replaceState=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.replaceState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},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=function(t){return t&&"?"!==t[0]?"?"+t:t},t.joinWithSlash=function(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},t.stripTrailingSlash=function(t){var e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)},t}();function Ea(t){return t.replace(/\/index.html$/,"")}var Oa=function(t){function e(e,n){var r=t.call(this)||this;return r._platformLocation=e,r._baseHref="",null!=n&&(r._baseHref=n),r}return o(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=Sa.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(Ca),ka=function(t){function e(e,n){var r=t.call(this)||this;if(r._platformLocation=e,null==n&&(n=r._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 r._baseHref=n,r}return o(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 Sa.joinWithSlash(this._baseHref,t)},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.pathname+Sa.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?""+e+n:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(Ca),Pa=void 0,Ta=["en",[["a","p"],["AM","PM"],Pa],[["AM","PM"],Pa,Pa],[["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"]],Pa,[["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"]],Pa,[["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}",Pa,"{1} 'at' {0}",Pa],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}],Ia={},Ra=function(t){return 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",t}({}),Aa=new Ut("UseV4Plurals"),Ma=function(){return function(){}}(),Na=function(t){function e(e,n){var r=t.call(this)||this;return r.locale=e,r.deprecatedPluralFn=n,r}return o(e,t),e.prototype.getPluralCategory=function(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){var e=t.toLowerCase().replace(/_/g,"-"),n=Ia[e];if(n)return n;var r=e.split("-")[0];if(n=Ia[r])return n;if("en"===r)return Ta;throw new Error('Missing locale data for the locale "'+t+'".')}(t)[18]}(e||this.locale)(t)){case Ra.Zero:return"zero";case Ra.One:return"one";case Ra.Two:return"two";case Ra.Few:return"few";case Ra.Many:return"many";default:return"other"}},e}(Ma);function Da(t,e){var n,r;e=encodeURIComponent(e);try{for(var o=c(t.split(";")),i=o.next();!i.done;i=o.next()){var s=i.value,a=s.indexOf("="),l=h(-1==a?[s,""]:[s.slice(0,a),s.slice(a+1)],2),u=l[1];if(l[0].trim()===e)return decodeURIComponent(u)}}catch(p){n={error:p}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}var ja=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(un);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(n.injector)}else this._moduleRef=null;var r=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(sn)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(r,this._viewContainerRef.length,e,this.ngComponentOutletContent)}},t.prototype.ngOnDestroy=function(){this._moduleRef&&this._moduleRef.destroy()},t}(),Va=function(){function t(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}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}(),La=function(){function t(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,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){ge()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(t)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#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(r){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;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,r,o){if(null==t.previousIndex){var i=e._viewContainer.createEmbeddedView(e._template,new Va(null,e._ngForOf,-1,-1),o),s=new za(t,i);n.push(s)}else null==o?e._viewContainer.remove(r):(i=e._viewContainer.get(r),e._viewContainer.move(i,o),s=new za(t,i),n.push(s))});for(var r=0;r0)for(var n=this.count>=this.total?this.total:this.count,r=this.ring,o=0;o=2;return function(r){return r.pipe(t?dl(function(e,n){return t(e,n,r)}):st,ml(1),n?Ol(e):Sl(function(){return new al}))}}function Il(t){return function(e){var n=new Rl(t),r=e.lift(n);return n.caught=r}}var Rl=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new Al(t,this.selector,this.caught))},t}(),Al=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.selector=n,o.caught=r,o}return o(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(o){return void t.prototype.error.call(this,o)}this._unsubscribeAndRecycle();var r=new U(this,void 0,void 0);this.add(r),Q(this,n,void 0,void 0,r)}},e}(X);function Ml(t){return function(e){return 0===t?nl():e.lift(new Nl(t))}}var Nl=function(){function t(t){if(this.total=t,this.total<0)throw new yl}return t.prototype.call=function(t,e){return e.subscribe(new Dl(t,this.total))},t}(),Dl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.total=n,r.count=0,r}return o(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}(E);function jl(t,e){var n=arguments.length>=2;return function(r){return r.pipe(t?dl(function(e,n){return t(e,n,r)}):st,Ml(1),n?Ol(e):Sl(function(){return new al}))}}var Vl=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new Ll(t,this.predicate,this.thisArg,this.source))},t}(),Ll=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.predicate=n,i.thisArg=r,i.source=o,i.index=0,i.thisArg=r||i,i}return o(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(E);function zl(t,e){return"function"==typeof e?function(n){return n.pipe(zl(function(n,r){return nt(t(n,r)).pipe(K(function(t,o){return e(n,t,r,o)}))}))}:function(e){return e.lift(new Ul(t))}}var Ul=function(){function t(t){this.project=t}return t.prototype.call=function(t,e){return e.subscribe(new Fl(t,this.project))},t}(),Fl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.project=n,r.index=0,r}return o(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(r){return void this.destination.error(r)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var r=this.innerSubscription;r&&r.unsubscribe();var o=new U(this,void 0,void 0);this.destination.add(o),this.innerSubscription=Q(this,t,e,n,o)},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,r,o){this.destination.next(e)},e}(X);function Hl(){for(var t=[],e=0;e0?et(t,n):nl(n):rl(t[0]),e)}}function Wl(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new Gl(t,e,n))}}var Gl=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new Yl(t,this.accumulator,this.seed,this.hasSeed))},t}(),Yl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.accumulator=n,i._seed=r,i.hasSeed=o,i.index=0,i}return o(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(r){this.destination.error(r)}this.seed=e,this.destination.next(e)},e}(E);function ql(t,e){return rt(t,e,1)}var Zl=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new $l(t,this.callback))},t}(),$l=function(t){function e(e,n){var r=t.call(this,e)||this;return r.add(new m(n)),r}return o(e,t),e}(E),Ql=null;function Xl(){return Ql}var Kl,Jl=function(t){function e(){var e=t.call(this)||this;e._animationPrefix=null,e._transitionEnd=null;try{var n=e.createElement("div",document);if(null!=e.getStyle(n,"animationName"))e._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o0},e.prototype.tagName=function(t){return t.tagName},e.prototype.attributeMap=function(t){for(var e=new Map,n=t.attributes,r=0;r0;s||(s=t[i]=[]);var l=Vu(e)?Zone.root:Zone.current;if(0===s.length)s.push({zone:l,handler:o});else{for(var u=!1,c=0;c-1},e}(vu),Gu=["alt","control","meta","shift"],Yu={alt:function(t){return t.altKey},control:function(t){return t.ctrlKey},meta:function(t){return t.metaKey},shift:function(t){return t.shiftKey}},qu=function(t){function e(e){return t.call(this,e)||this}var n;return o(e,t),n=e,e.prototype.supports=function(t){return null!=n.parseEventName(t)},e.prototype.addEventListener=function(t,e,r){var o=n.parseEventName(e),i=n.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return Xl().onAndCancel(t,o.domEventName,i)})},e.parseEventName=function(t){var e=t.toLowerCase().split("."),r=e.shift();if(0===e.length||"keydown"!==r&&"keyup"!==r)return null;var o=n._normalizeKey(e.pop()),i="";if(Gu.forEach(function(t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),i+=t+".")}),i+=o,0!=e.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s},e.getEventFullKey=function(t){var e="",n=Xl().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),Gu.forEach(function(r){r!=n&&(0,Yu[r])(t)&&(e+=r+".")}),e+=n},e.eventCallback=function(t,e,r){return function(o){n.getEventFullKey(o)===t&&r.runGuarded(function(){return e(o)})}},e._normalizeKey=function(t){switch(t){case"esc":return"escape";default:return t}},e}(vu),Zu=function(){return function(){}}(),$u=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n}return o(e,t),e.prototype.sanitize=function(t,e){if(null==e)return null;switch(t){case Ve.NONE:return e;case Ve.HTML:return e instanceof Xu?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){var n=null;try{Ce=Ce||new ve(t);var r=e?String(e):"";n=Ce.getInertBodyElement(r);var o=5,i=r;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=Ce.getInertBodyElement(r)}while(r!==i);var s=new Ae,a=s.sanitizeChildren(je(n)||n);return ge()&&s.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n)for(var l=je(n)||n;l.firstChild;)l.removeChild(l.firstChild)}}(this._doc,String(e)));case Ve.STYLE:return e instanceof Ku?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";var e=t.match(Ue);return e&&_e(e[1])===e[1]||t.match(ze)&&function(t){for(var e=!0,n=!0,r=0;rt.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||r.length0?t[t.length-1]:null}function zc(t,e){for(var n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Uc(t){return We(t)?t:Be(t)?nt(Promise.resolve(t)):ol(t)}function Fc(t,e,n){return n?function(t,e){return jc(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!Gc(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(var r in n.children){if(!e.children[r])return!1;if(!t(e.children[r],n.children[r]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(function(n){return e[n]===t[n]})}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,r,o){if(n.segments.length>o.length)return!!Gc(s=n.segments.slice(0,o.length),o)&&!r.hasChildren();if(n.segments.length===o.length){if(!Gc(n.segments,o))return!1;for(var i in r.children){if(!n.children[i])return!1;if(!t(n.children[i],r.children[i]))return!1}return!0}var s=o.slice(0,n.segments.length),a=o.slice(n.segments.length);return!!Gc(n.segments,s)&&!!n.children[Ec]&&e(n.children[Ec],r,a)}(e,n,n.segments)}(t.root,e.root)}var Hc=function(){function t(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}return Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=kc(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return $c.serialize(this)},t}(),Bc=function(){function t(t,e){var n=this;this.segments=t,this.children=e,this.parent=null,zc(e,function(t,e){return t.parent=n})}return t.prototype.hasChildren=function(){return this.numberOfChildren>0},Object.defineProperty(t.prototype,"numberOfChildren",{get:function(){return Object.keys(this.children).length},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return Qc(this)},t}(),Wc=function(){function t(t,e){this.path=t,this.parameters=e}return Object.defineProperty(t.prototype,"parameterMap",{get:function(){return this._parameterMap||(this._parameterMap=kc(this.parameters)),this._parameterMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return nh(this)},t}();function Gc(t,e){return t.length===e.length&&t.every(function(t,n){return t.path===e[n].path})}function Yc(t,e){var n=[];return zc(t.children,function(t,r){r===Ec&&(n=n.concat(e(t,r)))}),zc(t.children,function(t,r){r!==Ec&&(n=n.concat(e(t,r)))}),n}var qc=function(){return function(){}}(),Zc=function(){function t(){}return t.prototype.parse=function(t){var e=new ah(t);return new Hc(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())},t.prototype.serialize=function(t){var e,n;return"/"+function t(e,n){if(!e.hasChildren())return Qc(e);if(n){var r=e.children[Ec]?t(e.children[Ec],!1):"",o=[];return zc(e.children,function(e,n){n!==Ec&&o.push(n+":"+t(e,!1))}),o.length>0?r+"("+o.join("//")+")":r}var i=Yc(e,function(n,r){return r===Ec?[t(e.children[Ec],!1)]:[r+":"+t(n,!1)]});return Qc(e)+"/("+i.join("//")+")"}(t.root,!0)+(e=t.queryParams,(n=Object.keys(e).map(function(t){var n=e[t];return Array.isArray(n)?n.map(function(e){return Kc(t)+"="+Kc(e)}).join("&"):Kc(t)+"="+Kc(n)})).length?"?"+n.join("&"):"")+("string"==typeof t.fragment?"#"+encodeURI(t.fragment):"")},t}(),$c=new Zc;function Qc(t){return t.segments.map(function(t){return nh(t)}).join("/")}function Xc(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Kc(t){return Xc(t).replace(/%3B/gi,";")}function Jc(t){return Xc(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function th(t){return decodeURIComponent(t)}function eh(t){return th(t.replace(/\+/g,"%20"))}function nh(t){return""+Jc(t.path)+(e=t.parameters,Object.keys(e).map(function(t){return";"+Jc(t)+"="+Jc(e[t])}).join(""));var e}var rh=/^[^\/()?;=#]+/;function oh(t){var e=t.match(rh);return e?e[0]:""}var ih=/^[^=?&#]+/,sh=/^[^?&#]+/,ah=function(){function t(t){this.url=t,this.remaining=t}return t.prototype.parseRootSegment=function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Bc([],{}):new Bc([],this.parseChildren())},t.prototype.parseQueryParams=function(){var t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t},t.prototype.parseFragment=function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null},t.prototype.parseChildren=function(){if(""===this.remaining)return{};this.consumeOptional("/");var t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());var e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));var n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[Ec]=new Bc(t,e)),n},t.prototype.parseSegment=function(){var t=oh(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '"+this.remaining+"'.");return this.capture(t),new Wc(th(t),this.parseMatrixParams())},t.prototype.parseMatrixParams=function(){for(var t={};this.consumeOptional(";");)this.parseParam(t);return t},t.prototype.parseParam=function(t){var e=oh(this.remaining);if(e){this.capture(e);var n="";if(this.consumeOptional("=")){var r=oh(this.remaining);r&&this.capture(n=r)}t[th(e)]=th(n)}},t.prototype.parseQueryParam=function(t){var e,n=(e=this.remaining.match(ih))?e[0]:"";if(n){this.capture(n);var r="";if(this.consumeOptional("=")){var o=function(t){var e=t.match(sh);return e?e[0]:""}(this.remaining);o&&this.capture(r=o)}var i=eh(n),s=eh(r);if(t.hasOwnProperty(i)){var a=t[i];Array.isArray(a)||(t[i]=a=[a]),a.push(s)}else t[i]=s}},t.prototype.parseParens=function(t){var e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var n=oh(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error("Cannot parse url '"+this.url+"'");var o=void 0;n.indexOf(":")>-1?(o=n.substr(0,n.indexOf(":")),this.capture(o),this.capture(":")):t&&(o=Ec);var i=this.parseChildren();e[o]=1===Object.keys(i).length?i[Ec]:new Bc([],i),this.consumeOptional("//")}return e},t.prototype.peekStartsWith=function(t){return this.remaining.startsWith(t)},t.prototype.consumeOptional=function(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)},t.prototype.capture=function(t){if(!this.consumeOptional(t))throw new Error('Expected "'+t+'".')},t}(),lh=function(){function t(t){this._root=t}return Object.defineProperty(t.prototype,"root",{get:function(){return this._root.value},enumerable:!0,configurable:!0}),t.prototype.parent=function(t){var e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null},t.prototype.children=function(t){var e=uh(t,this._root);return e?e.children.map(function(t){return t.value}):[]},t.prototype.firstChild=function(t){var e=uh(t,this._root);return e&&e.children.length>0?e.children[0].value:null},t.prototype.siblings=function(t){var e=ch(t,this._root);return e.length<2?[]:e[e.length-2].children.map(function(t){return t.value}).filter(function(e){return e!==t})},t.prototype.pathFromRoot=function(t){return ch(t,this._root).map(function(t){return t.value})},t}();function uh(t,e){var n,r;if(t===e.value)return e;try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=uh(t,i.value);if(s)return s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}function ch(t,e){var n,r;if(t===e.value)return[e];try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=ch(t,i.value);if(s.length)return s.unshift(e),s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return[]}var hh=function(){function t(t,e){this.value=t,this.children=e}return t.prototype.toString=function(){return"TreeNode("+this.value+")"},t}();function ph(t){var e={};return t&&t.children.forEach(function(t){return e[t.value.outlet]=t}),e}var dh=function(t){function e(e,n){var r=t.call(this,e)||this;return r.snapshot=n,_h(r,e),r}return o(e,t),e.prototype.toString=function(){return this.snapshot.toString()},e}(lh);function fh(t,e){var n=function(t,e){var n=new yh([],{},{},"",{},Ec,e,null,t.root,-1,{});return new mh("",new hh(n,[]))}(t,e),r=new il([new Wc("",{})]),o=new il({}),i=new il({}),s=new il({}),a=new il(""),l=new gh(r,o,s,a,i,Ec,e,n.root);return l.snapshot=n.root,new dh(new hh(l,[]),n)}var gh=function(){function t(t,e,n,r,o,i,s,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this._futureSnapshot=a}return Object.defineProperty(t.prototype,"routeConfig",{get:function(){return this._futureSnapshot.routeConfig},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=this.params.pipe(K(function(t){return kc(t)}))),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(function(t){return kc(t)}))),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return this.snapshot?this.snapshot.toString():"Future("+this._futureSnapshot+")"},t}();function vh(t,e){void 0===e&&(e="emptyOnly");var n=t.pathFromRoot,r=0;if("always"!==e)for(r=n.length-1;r>=1;){var o=n[r],s=n[r-1];if(o.routeConfig&&""===o.routeConfig.path)r--;else{if(s.component)break;r--}}return function(t){return t.reduce(function(t,e){return{params:i({},t.params,e.params),data:i({},t.data,e.data),resolve:i({},t.resolve,e._resolvedData)}},{params:{},data:{},resolve:{}})}(n.slice(r))}var yh=function(){function t(t,e,n,r,o,i,s,a,l,u,c){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this.routeConfig=a,this._urlSegment=l,this._lastPathIndex=u,this._resolve=c}return Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=kc(this.params)),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=kc(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return"Route(url:'"+this.url.map(function(t){return t.toString()}).join("/")+"', path:'"+(this.routeConfig?this.routeConfig.path:"")+"')"},t}(),mh=function(t){function e(e,n){var r=t.call(this,n)||this;return r.url=e,_h(r,n),r}return o(e,t),e.prototype.toString=function(){return bh(this._root)},e}(lh);function _h(t,e){e.value._routerState=t,e.children.forEach(function(e){return _h(t,e)})}function bh(t){var e=t.children.length>0?" { "+t.children.map(bh).join(", ")+" } ":"";return""+t.value+e}function wh(t){if(t.snapshot){var e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,jc(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),jc(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(var n=0;n0&&xh(n[0]))throw new Error("Root segment cannot have matrix parameters");var r=n.find(function(t){return"object"==typeof t&&null!=t&&t.outlets});if(r&&r!==Lc(n))throw new Error("{outlets:{}} has to be the last command")}return t.prototype.toRoot=function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]},t}(),Oh=function(){return function(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}();function kh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[Ec]:""+t}function Ph(t,e,n){if(t||(t=new Bc([],{})),0===t.segments.length&&t.hasChildren())return Th(t,e,n);var r=function(t,e,n){for(var r=0,o=e,i={match:!1,pathIndex:0,commandIndex:0};o=n.length)return i;var s=t.segments[o],a=kh(n[r]),l=r0&&void 0===a)break;if(a&&l&&"object"==typeof l&&void 0===l.outlets){if(!Mh(a,l,s))return i;r+=2}else{if(!Mh(a,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(t,e,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndex0?new Bc([],((r={})[Ec]=t,r)):t;return new Hc(o,e,n)},t.prototype.expandSegmentGroup=function(t,e,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(K(function(t){return new Bc([],t)})):this.expandSegment(t,n,e,n.segments,r,!0)},t.prototype.expandChildren=function(t,e,n){var r=this;return function(n,o){if(0===Object.keys(n).length)return ol({});var i=[],s=[],a={};return zc(n,function(n,o){var l,u,c=(l=o,u=n,r.expandSegmentGroup(t,e,u,l)).pipe(K(function(t){return a[o]=t}));o===Ec?i.push(c):s.push(c)}),ol.apply(null,i.concat(s)).pipe(pl(),Tl(),K(function(){return a}))}(n.children)},t.prototype.expandSegment=function(t,e,n,r,o,i){var s=this;return ol.apply(void 0,p(n)).pipe(K(function(a){return s.expandSegmentAgainstRoute(t,e,n,a,r,o,i).pipe(Il(function(t){if(t instanceof Lh)return ol(null);throw t}))}),pl(),jl(function(t){return!!t}),Il(function(t,n){if(t instanceof al||"EmptyError"===t.name){if(s.noLeftoversInUrl(e,r,o))return ol(new Bc([],{}));throw new Lh(e)}throw t}))},t.prototype.noLeftoversInUrl=function(t,e,n){return 0===e.length&&!t.children[n]},t.prototype.expandSegmentAgainstRoute=function(t,e,n,r,o,i,s){return qh(r)!==i?Uh(e):void 0===r.redirectTo?this.matchSegmentAgainstRoute(t,e,r,o):s&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i):Uh(e)},t.prototype.expandSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,r,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i)},t.prototype.expandWildCardWithParamsAgainstRouteUsingRedirect=function(t,e,n,r){var o=this,i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Fh(i):this.lineralizeSegments(n,i).pipe(rt(function(n){var i=new Bc(n,{});return o.expandSegment(t,i,e,n,r,!1)}))},t.prototype.expandRegularSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){var s=this,a=Wh(e,r,o),l=a.consumedSegments,u=a.lastChild,c=a.positionalParamSegments;if(!a.matched)return Uh(e);var h=this.applyRedirectCommands(l,r.redirectTo,c);return r.redirectTo.startsWith("/")?Fh(h):this.lineralizeSegments(r,h).pipe(rt(function(r){return s.expandSegment(t,e,n,r.concat(o.slice(u)),i,!1)}))},t.prototype.matchSegmentAgainstRoute=function(t,e,n,r){var o=this;if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(K(function(t){return n._loadedConfig=t,new Bc(r,{})})):ol(new Bc(r,{}));var s=Wh(e,n,r),a=s.consumedSegments,l=s.lastChild;if(!s.matched)return Uh(e);var u=r.slice(l);return this.getChildConfig(t,n,r).pipe(rt(function(t){var n=t.module,r=t.routes,s=function(t,e,n,r){return n.length>0&&function(t,e,n){return r.some(function(n){return Yh(t,e,n)&&qh(n)!==Ec})}(t,n)?{segmentGroup:Gh(new Bc(e,function(t,e){var n,r,o={};o[Ec]=e;try{for(var i=c(t),s=i.next();!s.done;s=i.next()){var a=s.value;""===a.path&&qh(a)!==Ec&&(o[qh(a)]=new Bc([],{}))}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o}(r,new Bc(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return r.some(function(n){return Yh(t,e,n)})}(t,n)?{segmentGroup:Gh(new Bc(t.segments,function(t,e,n,r){var o,s,a={};try{for(var l=c(n),u=l.next();!u.done;u=l.next()){var h=u.value;Yh(t,e,h)&&!r[qh(h)]&&(a[qh(h)]=new Bc([],{}))}}catch(p){o={error:p}}finally{try{u&&!u.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}return i({},r,a)}(t,n,r,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,a,u,r),l=s.segmentGroup,h=s.slicedSegments;return 0===h.length&&l.hasChildren()?o.expandChildren(n,r,l).pipe(K(function(t){return new Bc(a,t)})):0===r.length&&0===h.length?ol(new Bc(a,{})):o.expandSegment(n,l,r,h,Ec,!0).pipe(K(function(t){return new Bc(a.concat(t.segments),t.children)}))}))},t.prototype.getChildConfig=function(t,e,n){var r=this;return e.children?ol(new Rc(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?ol(e._loadedConfig):function(t,e,n){var r,o=e.canLoad;return o&&0!==o.length?nt(o).pipe(K(function(r){var o,i=t.get(r);if(function(t){return t&&jh(t.canLoad)}(i))o=i.canLoad(e,n);else{if(!jh(i))throw new Error("Invalid CanLoad guard");o=i(e,n)}return Uc(o)})).pipe(pl(),(r=function(t){return!0===t},function(t){return t.lift(new Vl(r,void 0,t))})):ol(!0)}(t.injector,e,n).pipe(rt(function(n){return n?r.configLoader.load(t.injector,e).pipe(K(function(t){return e._loadedConfig=t,t})):function(t){return new R(function(e){return e.error(Tc("Cannot load children because the guard of the route \"path: '"+t.path+"'\" returned false"))})}(e)})):ol(new Rc([],t))},t.prototype.lineralizeSegments=function(t,e){for(var n=[],r=e.root;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return ol(n);if(r.numberOfChildren>1||!r.children[Ec])return Hh(t.redirectTo);r=r.children[Ec]}},t.prototype.applyRedirectCommands=function(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)},t.prototype.applyRedirectCreatreUrlTree=function(t,e,n,r){var o=this.createSegmentGroup(t,e.root,n,r);return new Hc(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)},t.prototype.createQueryParams=function(t,e){var n={};return zc(t,function(t,r){if("string"==typeof t&&t.startsWith(":")){var o=t.substring(1);n[r]=e[o]}else n[r]=t}),n},t.prototype.createSegmentGroup=function(t,e,n,r){var o=this,i=this.createSegments(t,e.segments,n,r),s={};return zc(e.children,function(e,i){s[i]=o.createSegmentGroup(t,e,n,r)}),new Bc(i,s)},t.prototype.createSegments=function(t,e,n,r){var o=this;return e.map(function(e){return e.path.startsWith(":")?o.findPosParam(t,e,r):o.findOrReturn(e,n)})},t.prototype.findPosParam=function(t,e,n){var r=n[e.path.substring(1)];if(!r)throw new Error("Cannot redirect to '"+t+"'. Cannot find '"+e.path+"'.");return r},t.prototype.findOrReturn=function(t,e){var n,r,o=0;try{for(var i=c(e),s=i.next();!s.done;s=i.next()){var a=s.value;if(a.path===t.path)return e.splice(o),a;o++}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return t},t}();function Wh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};var r=(e.matcher||Ic)(n,t,e);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Gh(t){if(1===t.numberOfChildren&&t.children[Ec]){var e=t.children[Ec];return new Bc(t.segments.concat(e.segments),e.children)}return t}function Yh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function qh(t){return t.outlet||Ec}var Zh=function(){return function(t){this.path=t,this.route=this.path[this.path.length-1]}}(),$h=function(){return function(t,e){this.component=t,this.route=e}}();function Qh(t,e,n){var r=function(t){if(!t)return null;for(var e=t.parent;e;e=e.parent){var n=e.routeConfig;if(n&&n._loadedConfig)return n._loadedConfig}return null}(e);return(r?r.module.injector:n).get(t)}function Xh(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=ph(e);return t.children.forEach(function(t){!function(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=t.value,s=e?e.value:null,a=n?n.getContext(t.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){var l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!Gc(t.url,e.url);case"pathParamsOrQueryParamsChange":return!Gc(t.url,e.url)||!jc(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Ch(t,e)||!jc(t.queryParams,e.queryParams);case"paramsChange":default:return!Ch(t,e)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Zh(r)):(i.data=s.data,i._resolvedData=s._resolvedData),Xh(t,e,i.component?a?a.children:null:n,r,o),l&&o.canDeactivateChecks.push(new $h(a&&a.outlet&&a.outlet.component||null,s))}else s&&Kh(e,a,o),o.canActivateChecks.push(new Zh(r)),Xh(t,null,i.component?a?a.children:null:n,r,o)}(t,i[t.value.outlet],n,r.concat([t.value]),o),delete i[t.value.outlet]}),zc(i,function(t,e){return Kh(t,n.getContext(e),o)}),o}function Kh(t,e,n){var r=ph(t),o=t.value;zc(r,function(t,r){Kh(t,o.component?e?e.children.getContext(r):null:e,n)}),n.canDeactivateChecks.push(new $h(o.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,o))}var Jh=Symbol("INITIAL_VALUE");function tp(){return zl(function(t){return(function(){for(var t=[],e=0;e0?Lc(n).parameters:{};o=new yh(n,l,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,pp(t),r,t.component,t,ap(e),lp(e)+n.length,dp(t))}else{var u=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new ip;return{consumedSegments:[],lastChild:0,parameters:{}}}var r=(e.matcher||Ic)(n,t,e);if(!r)throw new ip;var o={};zc(r.posParams,function(t,e){o[e]=t.path});var s=r.consumed.length>0?i({},o,r.consumed[r.consumed.length-1].parameters):o;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:s}}(e,t,n);s=u.consumedSegments,a=n.slice(u.lastChild),o=new yh(s,u.parameters,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,pp(t),r,t.component,t,ap(e),lp(e)+s.length,dp(t))}var c=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),h=up(e,s,a,c,this.relativeLinkResolution),p=h.segmentGroup,d=h.slicedSegments;if(0===d.length&&p.hasChildren()){var f=this.processChildren(c,p);return[new hh(o,f)]}if(0===c.length&&0===d.length)return[new hh(o,[])];var g=this.processSegment(c,p,d,Ec);return[new hh(o,g)]},t}();function ap(t){for(var e=t;e._sourceSegment;)e=e._sourceSegment;return e}function lp(t){for(var e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function up(t,e,n,r,o){if(n.length>0&&function(t,e,n){return r.some(function(n){return cp(t,e,n)&&hp(n)!==Ec})}(t,n)){var s=new Bc(e,function(t,e,n,r){var o,i,s={};s[Ec]=r,r._sourceSegment=t,r._segmentIndexShift=e.length;try{for(var a=c(n),l=a.next();!l.done;l=a.next()){var u=l.value;if(""===u.path&&hp(u)!==Ec){var h=new Bc([],{});h._sourceSegment=t,h._segmentIndexShift=e.length,s[hp(u)]=h}}}catch(p){o={error:p}}finally{try{l&&!l.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return s}(t,e,r,new Bc(n,t.children)));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return r.some(function(n){return cp(t,e,n)})}(t,n)){var a=new Bc(t.segments,function(t,e,n,r,o,s){var a,l,u={};try{for(var h=c(r),p=h.next();!p.done;p=h.next()){var d=p.value;if(cp(t,n,d)&&!o[hp(d)]){var f=new Bc([],{});f._sourceSegment=t,f._segmentIndexShift="legacy"===s?t.segments.length:e.length,u[hp(d)]=f}}}catch(g){a={error:g}}finally{try{p&&!p.done&&(l=h.return)&&l.call(h)}finally{if(a)throw a.error}}return i({},o,u)}(t,e,n,r,t.children,o));return a._sourceSegment=t,a._segmentIndexShift=e.length,{segmentGroup:a,slicedSegments:n}}var l=new Bc(t.segments,t.children);return l._sourceSegment=t,l._segmentIndexShift=e.length,{segmentGroup:l,slicedSegments:n}}function cp(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function hp(t){return t.outlet||Ec}function pp(t){return t.data||{}}function dp(t){return t.resolve||{}}function fp(t,e,n,r){var o=Qh(t,e,r);return Uc(o.resolve?o.resolve(e,n):o(e,n))}function gp(t){return function(e){return e.pipe(zl(function(e){var n=t(e);return n?nt(n).pipe(K(function(){return e})):nt([e])}))}}var vp=function(){return function(){}}(),yp=function(){function t(){}return t.prototype.shouldDetach=function(t){return!1},t.prototype.store=function(t,e){},t.prototype.shouldAttach=function(t){return!1},t.prototype.retrieve=function(t){return null},t.prototype.shouldReuseRoute=function(t,e){return t.routeConfig===e.routeConfig},t}(),mp=new Ut("ROUTES"),_p=function(){function t(t,e,n,r){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=r}return t.prototype.load=function(t,e){var n=this;return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(K(function(r){n.onLoadEndListener&&n.onLoadEndListener(e);var o=r.create(t);return new Rc(Vc(o.injector.get(mp)).map(Dc),o)}))},t.prototype.loadModuleFactory=function(t){var e=this;return"string"==typeof t?nt(this.loader.load(t)):Uc(t()).pipe(rt(function(t){return t instanceof cn?ol(t):nt(e.compiler.compileModuleAsync(t))}))},t}(),bp=function(){return function(){}}(),wp=function(){function t(){}return t.prototype.shouldProcessUrl=function(t){return!0},t.prototype.extract=function(t){return t},t.prototype.merge=function(t,e){return t},t}();function Cp(t){throw t}function xp(t,e,n){return e.parse("/")}function Sp(t,e){return ol(null)}var Ep=function(){function t(t,e,n,r,o,i,s,a){var l=this;this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=r,this.config=a,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new V,this.errorHandler=Cp,this.malformedUriErrorHandler=xp,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Sp,afterPreactivation:Sp},this.urlHandlingStrategy=new wp,this.routeReuseStrategy=new yp,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=o.get(un),this.console=o.get(Go);var u=o.get(li);this.isNgZoneEnabled=u instanceof li,this.resetConfig(a),this.currentUrlTree=new Hc(new Bc([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new _p(i,s,function(t){return l.triggerEvent(new yc(t))},function(t){return l.triggerEvent(new mc(t))}),this.routerState=fh(this.currentUrlTree,this.rootComponentType),this.transitions=new il({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return t.prototype.setupNavigations=function(t){var e=this,n=this.events;return t.pipe(dl(function(t){return 0!==t.id}),K(function(t){return i({},t,{extractedUrl:e.urlHandlingStrategy.extract(t.rawUrl)})}),zl(function(t){var r,o,s,a,l=!1,u=!1;return ol(t).pipe(wl(function(t){e.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:e.lastSuccessfulNavigation?i({},e.lastSuccessfulNavigation,{previousNavigation:null}):null}}),zl(function(t){var r,o,s,a,l=!e.navigated||t.extractedUrl.toString()!==e.browserUrlTree.toString();if(("reload"===e.onSameUrlNavigation||l)&&e.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return ol(t).pipe(zl(function(t){var r=e.transitions.getValue();return n.next(new lc(t.id,e.serializeUrl(t.extractedUrl),t.source,t.restoredState)),r!==e.transitions.getValue()?el:[t]}),zl(function(t){return Promise.resolve(t)}),(r=e.ngModule.injector,o=e.configLoader,s=e.urlSerializer,a=e.config,function(t){return t.pipe(zl(function(t){return function(e,n,r,o,i){return new Bh(e,n,r,t.extractedUrl,i).apply()}(r,o,s,0,a).pipe(K(function(e){return i({},t,{urlAfterRedirects:e})}))}))}),wl(function(t){e.currentNavigation=i({},e.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,n,r,o,s){return function(r){return r.pipe(rt(function(r){return function(t,e,n,r,o,i){return void 0===o&&(o="emptyOnly"),void 0===i&&(i="legacy"),new sp(t,e,n,r,o,i).recognize()}(t,n,r.urlAfterRedirects,(a=r.urlAfterRedirects,e.serializeUrl(a)),o,s).pipe(K(function(t){return i({},r,{targetSnapshot:t})}));var a}))}}(e.rootComponentType,e.config,0,e.paramsInheritanceStrategy,e.relativeLinkResolution),wl(function(t){"eager"===e.urlUpdateStrategy&&(t.extras.skipLocationChange||e.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),e.browserUrlTree=t.urlAfterRedirects)}),wl(function(t){var r=new pc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);n.next(r)}));if(l&&e.rawUrlTree&&e.urlHandlingStrategy.shouldProcessUrl(e.rawUrlTree)){var u=t.extractedUrl,c=t.source,h=t.restoredState,p=t.extras,d=new lc(t.id,e.serializeUrl(u),c,h);n.next(d);var f=fh(u,e.rootComponentType).snapshot;return ol(i({},t,{targetSnapshot:f,urlAfterRedirects:u,extras:i({},p,{skipLocationChange:!1,replaceUrl:!1})}))}return e.rawUrlTree=t.rawUrl,e.browserUrlTree=t.urlAfterRedirects,t.resolve(null),el}),gp(function(t){var n=t.extras;return e.hooks.beforePreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),wl(function(t){var n=new dc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),K(function(t){return i({},t,{guards:(n=t.targetSnapshot,r=t.currentSnapshot,o=e.rootContexts,s=n._root,Xh(s,r?r._root:null,o,[s.value]))});var n,r,o,s}),function(t,e){return function(n){return n.pipe(rt(function(n){var r=n.targetSnapshot,o=n.currentSnapshot,s=n.guards,a=s.canActivateChecks,l=s.canDeactivateChecks;return 0===l.length&&0===a.length?ol(i({},n,{guardsResult:!0})):function(t,e,n,r){return nt(l).pipe(rt(function(t){return function(t,e,n,r,o){var i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?ol(i.map(function(i){var s,a=Qh(i,e,o);if(function(t){return t&&jh(t.canDeactivate)}(a))s=Uc(a.canDeactivate(t,e,n,r));else{if(!jh(a))throw new Error("Invalid CanDeactivate guard");s=Uc(a(t,e,n,r))}return s.pipe(jl())})).pipe(tp()):ol(!0)}(t.component,t.route,n,e,r)}),jl(function(t){return!0!==t},!0))}(0,r,o,t).pipe(rt(function(n){return n&&"boolean"==typeof n?function(t,e,n,r){return nt(a).pipe(ql(function(e){return nt([np(e.route.parent,r),ep(e.route,r),op(t,e.path,n),rp(t,e.route,n)]).pipe(pl(),jl(function(t){return!0!==t},!0))}),jl(function(t){return!0!==t},!0))}(r,0,t,e):ol(n)}),K(function(t){return i({},n,{guardsResult:t})}))}))}}(e.ngModule.injector,function(t){return e.triggerEvent(t)}),wl(function(t){if(Vh(t.guardsResult)){var n=Tc('Redirecting to "'+e.serializeUrl(t.guardsResult)+'"');throw n.url=t.guardsResult,n}}),wl(function(t){var n=new fc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);e.triggerEvent(n)}),dl(function(t){if(!t.guardsResult){e.resetUrlToCurrentUrlTree();var r=new cc(t.id,e.serializeUrl(t.extractedUrl),"");return n.next(r),t.resolve(!1),!1}return!0}),gp(function(t){if(t.guards.canActivateChecks.length)return ol(t).pipe(wl(function(t){var n=new gc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),(n=e.paramsInheritanceStrategy,r=e.ngModule.injector,function(t){return t.pipe(rt(function(t){var e=t.targetSnapshot,o=t.guards.canActivateChecks;return o.length?nt(o).pipe(ql(function(t){return function(t,n,r,o){return function(t,e,n,r){var o=Object.keys(t);if(0===o.length)return ol({});if(1===o.length){var i=o[0];return fp(t[i],e,n,r).pipe(K(function(t){var e;return(e={})[i]=t,e}))}var s={};return nt(o).pipe(rt(function(o){return fp(t[o],e,n,r).pipe(K(function(t){return s[o]=t,t}))})).pipe(Tl(),K(function(){return s}))}(t._resolve,t,e,o).pipe(K(function(e){return t._resolvedData=e,t.data=i({},t.data,vh(t,r).resolve),null}))}(t.route,0,n,r)}),function(t,e){return arguments.length>=2?function(e){return T(Wl(t,void 0),ml(1),Ol(void 0))(e)}:function(e){return T(Wl(function(e,n,r){return t(e)}),ml(1))(e)}}(function(t,e){return t}),K(function(e){return t})):ol(t)}))}),wl(function(t){var n=new vc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}));var n,r}),gp(function(t){var n=t.extras;return e.hooks.afterPreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),K(function(t){var n,r,o,s=(o=function t(e,n,r){if(r&&e.shouldReuseRoute(n.value,r.value.snapshot)){(l=r.value)._futureSnapshot=n.value;var o=function(e,n,r){return n.children.map(function(n){var o,i;try{for(var s=c(r.children),a=s.next();!a.done;a=s.next()){var l=a.value;if(e.shouldReuseRoute(l.value.snapshot,n.value))return t(e,n,l)}}catch(u){o={error:u}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(o)throw o.error}}return t(e,n)})}(e,n,r);return new hh(l,o)}var i=e.retrieve(n.value);if(i){var s=i.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(var r=0;ra;){if(l-=a,!(s=s.parent))throw new Error("Invalid number of '../'");a=s.segments.length}return new Oh(s,!1,a-l)}()}(i,0,t),a=s.processChildren?Th(s.segmentGroup,s.index,i.commands):Ph(s.segmentGroup,s.index,i.commands);return Sh(s.segmentGroup,a,e,r,o)}(u,this.currentUrlTree,t,h,c)},t.prototype.navigateByUrl=function(t,e){void 0===e&&(e={skipLocationChange:!1}),ge()&&this.isNgZoneEnabled&&!li.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");var n=Vh(t)?t:this.parseUrl(t),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,e)},t.prototype.navigate=function(t,e){return void 0===e&&(e={skipLocationChange:!1}),function(t){for(var e=0;et.name.length?e:t},{id:"",name:""}),this.filter())},t.prototype.ngAfterViewInit=function(){this.resize()},t.prototype.trackByFn=function(t,e){return e?"string"==typeof e?e:e.id:t},t.prototype.resize=function(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)},t.prototype.filter=function(){var t=this;if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(function(e){return("string"==typeof e?e:e.name).toLowerCase().indexOf(t.search.toLowerCase())>=0})),this.options&&this.options.hide_active&&this.selected)){var e="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(function(t){return("string"==typeof t?t:t.id).indexOf(e)<0})}},t.prototype.toggleShow=function(){var t=this;this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(function(){t.input&&t.input.nativeElement.focus()},100)},t.prototype.updateScroll=function(){var t=this;if(!this.viewport||!this.scroll_el)return setTimeout(function(){return t.updateScroll()},50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;var e="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)===e}))},t.prototype.select=function(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)},t.prototype.change=function(t){var e=this,n="string"==typeof this.selected?this.selected:this.selected.id,r=this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)==n})+t;r>=0&&r1?Array.prototype.slice.call(arguments):t)},r,n)})}var ld=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r.pending=!1,r}return o(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,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(r,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,r=void 0;try{this.work(t)}catch(o){n=!0,r=!!o&&o||new Error(o)}if(n)return this.unsubscribe(),r},e.prototype._unsubscribe=function(){var t=this.id,e=this.scheduler,n=e.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,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 o(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(m)),ud=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(e,t),e.prototype.requestAsyncId=function(e,n,r){return void 0===r&&(r=0),null!==r&&r>0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame(function(){return e.flush(null)})))},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(cancelAnimationFrame(n),e.scheduled=void 0)},e}(ld),cd=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}(),hd=function(t){function e(n,r){void 0===r&&(r=cd.now);var o=t.call(this,n,function(){return e.delegate&&e.delegate!==o?e.delegate.now():r()})||this;return o.actions=[],o.active=!1,o.scheduled=void 0,o}return o(e,t),e.prototype.schedule=function(n,r,o){return void 0===r&&(r=0),e.delegate&&e.delegate!==this?e.delegate.schedule(n,r,o):t.prototype.schedule.call(this,n,r,o)},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}(cd),pd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=(o=e.flush.bind(e,null),i=dd++,fd[i]=o,Promise.resolve().then(function(){return function(t){var e=fd[t];e&&e()}(i)}),i)));var o,i},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(delete fd[n],e.scheduled=void 0)},e}(ld),vd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r=0}function xd(t){var e=t.index,n=t.period,r=t.subscriber;if(r.next(e),!r.closed){if(-1===n)return r.complete();t.index=e+1,this.schedule(t,n)}}function Sd(t,e){return void 0===e&&(e=_d),n=function(){return function(t,e,n){void 0===t&&(t=0);var r=-1;return Cd(e)?r=Number(e)<1?1:Number(e):z(e)&&(n=e),z(n)||(n=_d),new R(function(e){var o=Cd(t)?t:+t-n.now();return n.schedule(xd,o,{index:0,period:r,subscriber:e})})}(t,e)},function(t){return t.lift(new bd(n))};var n}function Ed(t){return function(e){return e.lift(new kd(t))}}var Od,kd=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new Pd(t),r=Q(n,this.notifier);return r&&!n.seenValue?(n.add(r),e.subscribe(n)):n},t}(),Pd=function(t){function e(e){var n=t.call(this,e)||this;return n.seenValue=!1,n}return o(e,t),e.prototype.notifyNext=function(t,e,n,r,o){this.seenValue=!0,this.complete()},e.prototype.notifyComplete=function(){},e}(X),Td=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new Id(t))},t}(),Id=function(t){function e(e){var n=t.call(this,e)||this;return n.hasPrev=!1,n}return o(e,t),e.prototype._next=function(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t},e}(E),Rd=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(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,r){return void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,r):e.flush(this)},e}(ld),Ad=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e}(hd))(Rd);function Md(t,e){return new R(e?function(n){return e.schedule(Nd,0,{error:t,subscriber:n})}:function(e){return e.error(t)})}function Nd(t){t.subscriber.error(t.error)}Od||(Od={});var Dd,jd=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 ol(this.value);case"E":return Md(this.error);case"C":return nl()}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}(),Vd=function(t){function e(e,n,r){void 0===r&&(r=0);var o=t.call(this,e)||this;return o.scheduler=n,o.delay=r,o}return o(e,t),e.dispatch=function(t){t.notification.observe(t.destination),this.unsubscribe()},e.prototype.scheduleMessage=function(t){this.destination.add(this.scheduler.schedule(e.dispatch,this.delay,new Ld(t,this.destination)))},e.prototype._next=function(t){this.scheduleMessage(jd.createNext(t))},e.prototype._error=function(t){this.scheduleMessage(jd.createError(t)),this.unsubscribe()},e.prototype._complete=function(){this.scheduleMessage(jd.createComplete()),this.unsubscribe()},e}(E),Ld=function(){return function(t,e){this.notification=t,this.destination=e}}(),zd=function(t){function e(e,n,r){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=Number.POSITIVE_INFINITY);var o=t.call(this)||this;return o.scheduler=r,o._events=[],o._infiniteTimeWindow=!1,o._bufferSize=e<1?1:e,o._windowTime=n<1?1:n,n===Number.POSITIVE_INFINITY?(o._infiniteTimeWindow=!0,o.next=o.nextInfiniteTimeWindow):o.next=o.nextTimeWindow,o}return o(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 Ud(this._getNow(),e)),this._trimBufferThenGetEvents(),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,n=this._infiniteTimeWindow,r=n?this._events:this._trimBufferThenGetEvents(),o=this.scheduler,i=r.length;if(this.closed)throw new N;if(this.isStopped||this.hasError?e=m.EMPTY:(this.observers.push(t),e=new D(this,t)),o&&t.add(t=new Vd(t,o)),n)for(var s=0;se&&(i=Math.max(i,o-e)),i>0&&r.splice(0,i),r},e}(V),Ud=function(){return function(t,e){this.time=t,this.value=e}}();try{Dd="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Pm){Dd=!1}var Fd,Hd=function(){function t(t){this._platformId=t,this.isBrowser=this._platformId?Ka(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&&!Dd)&&"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.ngInjectableDef=Ot({factory:function(){return new t(Lt(Bo,8))},token:t,providedIn:"root"}),t}(),Bd=function(){return function(){}}(),Wd=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();function Gd(){if("object"!=typeof document||!document)return Wd.NORMAL;if(!Fd){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"),r=n.style;r.width="2px",r.height="1px",t.appendChild(n),document.body.appendChild(t),Fd=Wd.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Fd=0===t.scrollLeft?Wd.NEGATED:Wd.INVERTED),t.parentNode.removeChild(t)}return Fd}var Yd=function(t){function e(e){var n=t.call(this)||this;return n._data=e,n}return o(e,t),e.prototype.connect=function(){return this._data instanceof R?this._data:ol(this._data)},e.prototype.disconnect=function(){},e}(function(){return function(){}}()),qd=new Ut("VIRTUAL_SCROLL_STRATEGY"),Zd=function(){function t(t,e,n){this._scrolledIndexChange=new V,this.scrolledIndexChange=this._scrolledIndexChange.pipe(function(t){return t.lift(new yd(void 0,void 0))}),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(n0&&(r.end=Math.min(i,r.end+u),r.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(r),this._viewport.setRenderedContentOffset(this._itemSize*r.start),this._scrolledIndexChange.next(Math.floor(e))}},t}();function $d(t){return t._scrollStrategy}var Qd=function(){function t(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Zd(this.itemSize,this.minBufferPx,this.maxBufferPx)}return Object.defineProperty(t.prototype,"itemSize",{get:function(){return this._itemSize},set:function(t){this._itemSize=od(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minBufferPx",{get:function(){return this._minBufferPx},set:function(t){this._minBufferPx=od(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxBufferPx",{get:function(){return this._maxBufferPx},set:function(t){this._maxBufferPx=od(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)},t}(),Xd=function(){function t(t,e){this._ngZone=t,this._platform=e,this._scrolled=new V,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}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 R(function(n){e._globalSubscription||e._addGlobalListener();var r=t>0?e._scrolled.pipe(Sd(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){r.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):ol()},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(dl(function(t){return!t||n.indexOf(t)>-1}))},t.prototype.getAncestorScrollContainers=function(t){var e=this,n=[];return this.scrollContainers.forEach(function(r,o){e._scrollableContainsElement(o,t)&&n.push(o)}),n},t.prototype._scrollableContainsElement=function(t,e){var n=e.nativeElement,r=t.getElementRef().nativeElement;do{if(n==r)return!0}while(n=n.parentElement);return!1},t.prototype._addGlobalListener=function(){var t=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){return ad(window.document,"scroll").subscribe(function(){return t._scrolled.next()})})},t.prototype._removeGlobalListener=function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(li),Lt(Hd))},token:t,providedIn:"root"}),t}(),Kd=function(){function t(t,e,n,r){var o=this;this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=r,this._destroyed=new V,this._elementScrolled=new R(function(t){return o.ngZone.runOutsideAngular(function(){return ad(o.elementRef.nativeElement,"scroll").pipe(Ed(o._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;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Gd()!=Wd.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Gd()==Wd.INVERTED?t.left=t.right:Gd()==Wd.NEGATED&&(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"==typeof document&&"scrollBehavior"in document.documentElement.style?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&&Gd()==Wd.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Gd()==Wd.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft},t}(),Jd="undefined"!=typeof requestAnimationFrame?pd:vd,tf=function(t){function e(e,n,r,o,i,s){var a=t.call(this,e,s,r,i)||this;if(a.elementRef=e,a._changeDetectorRef=n,a._scrollStrategy=o,a._detachedSubject=new V,a._renderedRangeSubject=new V,a.orientation="vertical",a.scrolledIndexChange=new R(function(t){return a._scrollStrategy.scrolledIndexChange.subscribe(function(e){return Promise.resolve().then(function(){return a.ngZone.run(function(){return t.next(e)})})})}),a.renderedRangeStream=a._renderedRangeSubject.asObservable(),a._totalContentSizeTransform="",a._totalContentSize=0,a._renderedRange={start:0,end:0},a._dataLength=0,a._viewportSize=0,a._renderedContentOffset=0,a._renderedContentOffsetNeedsRewrite=!1,a._isChangeDetectionPending=!1,a._runAfterChangeDetection=[],!o)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.');return a}return o(e,t),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(Bl(null),Sd(0,Jd)).subscribe(function(){return e._scrollStrategy.onContentScrolled()}),e._markChangeDetectionNeeded()})})},e.prototype.ngOnDestroy=function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),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(Ed(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._totalContentSizeTransform="scale"+("horizontal"==this.orientation?"X":"Y")+"("+this._totalContentSize+")",this._markChangeDetectionNeeded())},e.prototype.setRenderedRange=function(t){var e,n,r=this;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(function(){return r._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 r="horizontal"==this.orientation,o=r?"X":"Y",i="translate"+o+"("+Number((r&&this.dir&&"rtl"==this.dir.value?-1:1)*t)+"px)";this._renderedContentOffset=t,"to-end"===e&&(i+=" translate"+o+"(-100%)",this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,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 t.prototype.measureScrollOffset.call(this,e||("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=this;this._isChangeDetectionPending=!1,this.ngZone.run(function(){return t._changeDetectorRef.markForCheck()}),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;var e=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(var n=0,r=e;n=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");for(var n=t.start-this._renderedRange.start,r=0,o=t.end-t.start;o--;)for(var i=this._viewContainerRef.get(o+n),s=i?i.rootNodes.length:0;s--;)r+=ef(e,i.rootNodes[s]);return r},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(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(var t=0,e=this._templateCache;t0?this._change.pipe(Sd(t)):this._change},t.prototype._updateViewportSize=function(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Hd),Lt(li))},token:t,providedIn:"root"}),t}();function sf(){throw Error("Host already has a portal attached")}var af=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()&&sf(),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}(),lf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.component=e,i.viewContainerRef=n,i.injector=r,i.componentFactoryResolver=o,i}return o(e,t),e}(af),uf=function(t){function e(e,n,r){var o=t.call(this)||this;return o.templateRef=e,o.viewContainerRef=n,o.context=r,o}return o(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}(af),cf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.outletElement=e,i._componentFactoryResolver=n,i._appRef=r,i._defaultInjector=o,i}return o(e,t),e.prototype.attachComponentPortal=function(t){var e,n=this,r=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);return t.viewContainerRef?(e=t.viewContainerRef.createComponent(r,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(function(){return e.destroy()})):(e=r.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,r=n.createEmbeddedView(t.templateRef,t.context);return r.detectChanges(),r.rootNodes.forEach(function(t){return e.outletElement.appendChild(t)}),this.setDisposeFn(function(){var t=n.indexOf(r);-1!==t&&n.remove(t)}),r},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}(function(){function t(){this._isDisposed=!1}return t.prototype.hasAttached=function(){return!!this._attachedPortal},t.prototype.attach=function(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&sf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof lf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof uf?(this._attachedPortal=t,this.attachTemplatePortal(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}()),hf=function(){return function(){}}(),pf=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=sd(-this._previousScrollPosition.left),t.style.top=sd(-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=t.style,n=this._document.body.style,r=e.scrollBehavior||"",o=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=r,n.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}();function df(){return Error("Scroll strategy has already been attached.")}var ff=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return t.prototype.attach=function(t){if(this._overlayRef)throw df();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}(),gf=function(){function t(){}return t.prototype.enable=function(){},t.prototype.disable=function(){},t.prototype.attach=function(){},t}();function vf(t,e){return e.some(function(e){return t.bottome.bottom||t.righte.right})}function yf(t,e){return e.some(function(e){return t.tope.bottom||t.lefte.right})}var mf=function(){function t(t,e,n,r){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=r,this._scrollSubscription=null}return t.prototype.attach=function(t){if(this._overlayRef)throw df();this._overlayRef=t},t.prototype.enable=function(){var t=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(t._overlayRef.updatePosition(),t._config&&t._config.autoClose){var e=t._overlayRef.overlayElement.getBoundingClientRect(),n=t._viewportRuler.getViewportSize(),r=n.width,o=n.height;vf(e,[{width:r,height:o,bottom:o,right:r,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}(),_f=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=function(){return new gf},this.close=function(t){return new ff(o._scrollDispatcher,o._ngZone,o._viewportRuler,t)},this.block=function(){return new pf(o._viewportRuler,o._document)},this.reposition=function(t){return new mf(o._scrollDispatcher,o._viewportRuler,o._ngZone,t)},this._document=r}return t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Xd),Lt(of),Lt(li),Lt($a))},token:t,providedIn:"root"}),t}(),bf=function(){return function(t){var e=this;this.scrollStrategy=new gf,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(function(n){void 0!==t[n]&&(e[n]=t[n])})}}(),wf=function(){return function(t,e,n,r,o){this.offsetX=n,this.offsetY=r,this.panelClass=o,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}(),Cf=function(){return function(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}();function xf(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "top", "bottom" or "center".')}function Sf(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "start", "end" or "center".')}var Ef=function(){function t(t){var e=this;this._attachedOverlays=[],this._keydownListener=function(t){for(var n=e._attachedOverlays,r=n.length-1;r>-1;r--)if(n[r]._keydownEventSubscriptions>0){n[r]._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.ngInjectableDef=Ot({factory:function(){return new t(Lt($a))},token:t,providedIn:"root"}),t}(),Of=function(){function t(t){this._document=t}return t.prototype.ngOnDestroy=function(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)},t.prototype.getContainerElement=function(){return this._containerElement||this._createContainer(),this._containerElement},t.prototype._createContainer=function(){var t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t},t.ngInjectableDef=Ot({factory:function(){return new t(Lt($a))},token:t,providedIn:"root"}),t}(),kf=function(){function t(t,e,n,r,o,i,s,a){var l=this;this._portalOutlet=t,this._host=e,this._pane=n,this._config=r,this._ngZone=o,this._keyboardDispatcher=i,this._document=s,this._location=a,this._backdropElement=null,this._backdropClick=new V,this._attachments=new V,this._detachments=new V,this._locationChanges=m.EMPTY,this._keydownEventsObservable=new R(function(t){var e=l._keydownEvents.subscribe(t);return l._keydownEventSubscriptions++,function(){e.unsubscribe(),l._keydownEventSubscriptions--}}),this._keydownEvents=new V,this._keydownEventSubscriptions=0,r.scrollStrategy&&(this._scrollStrategy=r.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=r.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._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Ml(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=i({},this._config,t),this._updateElementSize()},t.prototype.setDirection=function(t){this._config=i({},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(){var t=this._pane.style;t.width=sd(this._config.width),t.height=sd(this._config.height),t.minWidth=sd(this._config.minWidth),t.minHeight=sd(this._config.minHeight),t.maxWidth=sd(this._config.maxWidth),t.maxHeight=sd(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",function(e){return t._backdropClick.next(e)}),"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,r=function(){e&&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",r)}),e.style.pointerEvents="none",n=this._ngZone.runOutsideAngular(function(){return setTimeout(r,500)})}},t.prototype._toggleClasses=function(t,e,n){var r=t.classList;id(e).forEach(function(t){n?r.add(t):r.remove(t)})},t.prototype._detachContentWhenStable=function(){var t=this;this._ngZone.runOutsideAngular(function(){var e=t._ngZone.onStable.asObservable().pipe(Ed(lt(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}(),Pf=function(){function t(t,e,n,r,o){this._viewportRuler=e,this._document=n,this._platform=r,this._overlayContainer=o,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 V,this._resizeSubscription=m.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(){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();for(var t,e=this._originRect,n=this._overlayRect,r=this._viewportRect,o=[],i=0,s=this._preferredPositions;ip&&(p=v,h=g)}return this._isPushed=!1,void this._applyPosition(h.position,h.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(t.position,t.originPoint);this._applyPosition(t.position,t.originPoint)}},t.prototype.detach=function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()},t.prototype.dispose=function(){this._isDisposed||(this._boundingBox&&Tf(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 r=this._isRtl()?t.right:t.left,o=this._isRtl()?t.left:t.right;n="start"==e.originX?r:o}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 r;return r="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+r,y:t.y+("center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}},t.prototype._getOverlayFit=function(t,e,n,r){var o=t.x,i=t.y,s=this._getOffset(r,"x"),a=this._getOffset(r,"y");s&&(o+=s),a&&(i+=a);var l=0-i,u=i+e.height-n.height,c=this._subtractOverflows(e.width,0-o,o+e.width-n.width),h=this._subtractOverflows(e.height,l,u),p=c*h;return{visibleArea:p,isCompletelyWithinViewport:e.width*e.height===p,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:c==e.width}},t.prototype._canFitWithFlexibleDimensions=function(t,e,n){if(this._hasFlexibleDimensions){var r=n.bottom-e.y,o=n.right-e.x,i=this._overlayRef.getConfig().minHeight,s=this._overlayRef.getConfig().minWidth;return(t.fitsInViewportVertically||null!=i&&i<=r)&&(t.fitsInViewportHorizontally||null!=s&&s<=o)}},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 r,o,i=this._viewportRect,s=Math.max(t.x+e.width-i.right,0),a=Math.max(t.y+e.height-i.bottom,0),l=Math.max(i.top-n.top-t.y,0),u=Math.max(i.left-n.left-t.x,0);return this._previousPushAmount={x:r=e.width<=i.width?u||-s:t.xh&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-h/2)}if("end"===e.overlayX&&!u||"start"===e.overlayX&&u)a=l.right-t.x+this._viewportMargin,i=t.x-l.left;else if("start"===e.overlayX&&!u||"end"===e.overlayX&&u)s=t.x,i=l.right-t.x;else{c=Math.min(l.right-t.x+l.left,t.x);var p=this._lastBoundingBoxSize.width;s=t.x-c,(i=2*c)>p&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.x-p/2)}return{top:r,left:s,bottom:o,right:a,width:i,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 r={};if(this._hasExactPosition())r.top=r.left="0",r.bottom=r.right="",r.width=r.height="100%";else{var o=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;r.height=sd(n.height),r.top=sd(n.top),r.bottom=sd(n.bottom),r.width=sd(n.width),r.left=sd(n.left),r.right=sd(n.right),r.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",r.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",o&&(r.maxHeight=sd(o)),i&&(r.maxWidth=sd(i))}this._lastBoundingBoxSize=n,Tf(this._boundingBox.style,r)},t.prototype._resetBoundingBoxStyles=function(){Tf(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})},t.prototype._resetOverlayElementStyles=function(){Tf(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})},t.prototype._setOverlayElementStyles=function(t,e){var n={};if(this._hasExactPosition()){var r=this._viewportRuler.getViewportScrollPosition();Tf(n,this._getExactOverlayY(e,t,r)),Tf(n,this._getExactOverlayX(e,t,r))}else n.position="static";var o="",i=this._getOffset(e,"x"),s=this._getOffset(e,"y");i&&(o+="translateX("+i+"px) "),s&&(o+="translateY("+s+"px)"),n.transform=o.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Tf(this._pane.style,n)},t.prototype._getExactOverlayY=function(t,e,n){var r={top:null,bottom:null},o=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n));var i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return o.y-=i,"bottom"===t.overlayY?r.bottom=this._document.documentElement.clientHeight-(o.y+this._overlayRect.height)+"px":r.top=sd(o.y),r},t.prototype._getExactOverlayX=function(t,e,n){var r={left:null,right:null},o=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n)),"right"==(this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=this._document.documentElement.clientWidth-(o.x+this._overlayRect.width)+"px":r.left=sd(o.x),r},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:yf(t,n),isOriginOutsideView:vf(t,n),isOverlayClipped:yf(e,n),isOverlayOutsideView:vf(e,n)}},t.prototype._subtractOverflows=function(t){for(var e=[],n=1;n0?p(this.events,[t]):[t],this.displayed_events=this.events.slice(-8),t.close=function(){return e.remove(t.id)},0!==t.delay&&setTimeout(function(){return e.remove(t.id)},t.delay||this.delay||5e3))},t.prototype.remove=function(t){this.events=this.events.filter(function(e){return e.id!==t}),this.displayed_events=this.events.slice(-8)},t.prototype.action=function(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)},t.prototype.grab=function(t,e){var n=this,r=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=r,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",function(e){return n.pull(t,e)}),touchmove:this.renderer.listen("window","touchmove",function(e){return n.pull(t,e)}),mouseup:this.renderer.listen("window","mouseup",function(e){return n.release(t)}),touchend:this.renderer.listen("window","touchend",function(e){return n.release(t)})}},t.prototype.pull=function(t,e){var n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)},t.prototype.release=function(t){for(var e in t.offset>128&&this.remove(t.id),t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0},t.prototype.trackByFn=function(t,e){return(t?t.id:null)||e},t}(),Wf=function(){function t(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new V,this._notify.remove=new V,this._notify.delay=new V,this.registerPreset("default",new bf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new bf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}return t.prototype.register=function(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Hf(t,this,this.injector,this.overlay,e),this._refs[t]},t.prototype.open=function(t,e,n,r){if(e.config?e.config instanceof bf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error("No content set for the overlay "+t);var o=this._refs[t],i=o.details.config instanceof bf?o.details.config:this.preset(o.details.config);o.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),r&&this._refs[t].onClose.subscribe(r))},t.prototype.update=function(t,e){this._refs[t]&&this._refs[t].set(e)},t.prototype.close=function(t){this._refs[t]&&this._refs[t].close(null)},t.prototype.remove=function(t){this._refs[t]&&(this._refs[t]=null)},t.prototype.registerPreset=function(t,e){this._presets[t]=e},t.prototype.preset=function(t){return void 0===t&&(t="default"),this._presets[t]||this._presets.default},t.prototype.loadNotificationsOutlet=function(){var t=this;this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(function(){t.registerPreset("ACA_NOTIFICATIONS_OUTLET",new bf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:t.overlay.position().global().bottom("0").right("0"),scrollStrategy:t.overlay.scrollStrategies.noop()})),t.open("ACA_NOTIFICATIONS_OUTLET",{content:Bf,data:t._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)},t.prototype.notify=function(t,e,n,r,o){var i=null;return this._notify.add&&(i="notification-"+Math.floor(999999*Math.random()),this._notify.add.next({id:i,content:t,action:e,on_action:n,type:r,delay:o,event:function(t){return n?n(t):null}})),i},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Nf),Lt(Bt))},token:t,providedIn:"root"}),t}(),Gf=function(){function t(t,e,n,r){this.el=t,this.service=e,this.overlay=n,this.renderer=r,this.id="tooltip-"+Math.floor(9999999*Math.random()),this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new No,this.event=new No,this.close=new No,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}return t.prototype.ngOnInit=function(){this.updateConfig(),this.el&&this.listenForScroll()},t.prototype.ngOnDestroy=function(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()},t.prototype.ngOnChanges=function(t){var e=this;if(t.config&&this.updateConfig(),t.reposition){var n=this.overlay.scrollStrategies;this.strategy=this.reposition?n.reposition():n.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(function(){return e.open()},10):this.closeTooltip(t.show.previousValue))},t.prototype.open=function(){var t=this;this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},function(e){return t.event.emit(e)},function(e){t.show=!1,t.showChange.emit(!1),t.close.emit(e),t.clearListeners()})},t.prototype.getOverlayPosition=function(t){var e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)},t.prototype.getPositions=function(){var t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}},t.prototype.updateConfig=function(){this.service.registerPreset(this.id,new bf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))},t.prototype.listenForScroll=function(){var t=this;if(this.show)for(var e=this.el.nativeElement.parentElement;e;e=e.parentElement)this.listeners.push(this.renderer.listen(e,"scroll",function(){return t.update()}))},t.prototype.clearListeners=function(){var t,e;try{for(var n=c(this.listeners),r=n.next();!r.done;r=n.next())(0,r.value)()}catch(o){t={error:o}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)},t.prototype.update=function(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))},t.prototype.listenForHover=function(){var t=this;this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",function(e){t.show=!0,t.showChange.emit(t.show),t._leave_listener=t.renderer.listen(t.el.nativeElement,"mouseleave",function(e){t.show=!1,t.showChange.emit(t.show),t.closeTooltip(t.show)}),t.open()})},t.prototype.closeTooltip=function(t){!this.content&&this.el?function(t,e,n,r,o){if(void 0===r&&(r="debug"),window.debug){var i=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?zf()?console[r].apply(console,p(["%c["+Lf+"]%c["+t+"] %c"+e],i,[n])):console[r]("["+Lf+"]["+t+"] "+e,n):zf()?console[r].apply(console,p(["%c["+Lf+"]%c["+t+"] %c"+e],i)):console[r]("["+Lf+"]["+t+"] "+e)}}("Tooltip","No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()},t}(),Yf=function(){function t(t,e){this.item=t,this.service=e}return t.prototype.ngOnInit=function(){var t=this;setTimeout(function(){t.text=t.item.details.data.text,t.center=t.item.details.data.center},10),setTimeout(function(){return t.service.close(t.item.ID)},1e3)},t}(),qf=ya,Zf=function(){function t(){if(this.build=qf(),!t.init){var e=qf();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),zf()?console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Lf+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"])):console[n]("[ACA][LIB] "+Lf+" - "+t+" | "+e)}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),$f=new Ut("cdk-dir-doc",{providedIn:"root",factory:function(){return zt($a)}}),Qf=function(){function t(t){if(this.value="ltr",this.change=new No,t){var e=(t.body?t.body.dir:null)||(t.documentElement?t.documentElement.dir:null);this.value="ltr"===e||"rtl"===e?e:"ltr"}}return t.prototype.ngOnDestroy=function(){this.change.complete()},t.ngInjectableDef=Ot({factory:function(){return new t(Lt($f,8))},token:t,providedIn:"root"}),t}(),Xf=function(){return function(){}}(),Kf=or({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function Jf(t){return as(0,[(t()(),Gi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function tg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function eg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,tg)),vo(2,540672,null,0,qa,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function ng(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function rg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,ng)),vo(2,671744,null,0,ja,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function og(t){return as(0,[(t()(),Gi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Gi(1,0,null,null,7,null,null,null,null,null,null,null)),vo(2,16384,null,0,Wa,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Wi(16777216,null,null,1,null,Jf)),vo(4,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,eg)),vo(6,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,rg)),vo(8,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function ig(t){return as(0,[(t()(),Wi(16777216,null,null,1,null,og)),vo(1,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function sg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"overlay-outlet",[],null,null,null,ig,Kf)),vo(1,114688,null,0,Ff,[Gt],null,null)],function(t,e){t(e,1,0)},null)}var ag=Gr("overlay-outlet",Ff,sg,{},{},[]),lg=or({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function ug(t){return as(0,[(t()(),Gi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),os(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function cg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"a-floating-text",[],null,null,null,ug,lg)),vo(1,114688,null,0,Yf,[Hf,Wf],null,null)],function(t,e){t(e,1,0)},null)}var hg=Gr("a-floating-text",Yf,cg,{},{},[]),pg=or({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function dg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function fg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,dg)),vo(2,540672,null,0,qa,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function gg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function vg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,gg)),vo(2,671744,null,0,ja,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function yg(t){return as(0,[(t()(),Gi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function mg(t){return as(0,[(t()(),Gi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),os(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function _g(t){return as(0,[(t()(),Gi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function bg(t){return as(0,[(t()(),Gi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Gi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),"touchstart"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),r},null,null)),(t()(),Gi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Gi(4,0,null,null,7,null,null,null,null,null,null,null)),vo(5,16384,null,0,Wa,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Wi(16777216,null,null,1,null,fg)),vo(7,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,vg)),vo(9,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,yg)),vo(11,16384,null,0,Ya,[zn,Vn,Wa],null,null),(t()(),Gi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),"touchend"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),r},null,null)),(t()(),Wi(16777216,null,null,1,null,mg)),vo(14,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Wi(16777216,null,null,1,null,_g)),vo(16,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function wg(t){return as(0,[(t()(),Gi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,bg)),vo(2,278528,null,0,La,[zn,Vn,In],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function Cg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"notification-outlet",[],null,null,null,wg,pg)),vo(1,245760,null,0,Bf,[Hf,yn],null,null)],function(t,e){t(e,1,0)},null)}var xg=Gr("notification-outlet",Bf,Cg,{},{},[]),Sg=function(t){function e(e,n){var r=t.call(this,e)||this;r.sources=n,r.completed=0,r.haveValues=0;var o=n.length;r.values=new Array(o);for(var i=0;it?{max:{max:t,actual:e.value}}:null}},t.required=function(t){return Ng(t.value)?{required:!0}:null},t.requiredTrue=function(t){return!0===t.value?null:{required:!0}},t.email=function(t){return Ng(t.value)?null:Dg.test(t.value)?null:{email:!0}},t.minLength=function(t){return function(e){if(Ng(e.value))return null;var n=e.value?e.value.length:0;return nt?{maxlength:{requiredLength:t,actualLength:n}}:null}},t.pattern=function(e){return e?("string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),n=new RegExp(r)):(r=e.toString(),n=e),function(t){if(Ng(t.value))return null;var e=t.value;return n.test(e)?null:{pattern:{requiredPattern:r,actualValue:e}}}):t.nullValidator;var n,r},t.nullValidator=function(t){return null},t.compose=function(t){if(!t)return null;var e=t.filter(Vg);return 0==e.length?null:function(t){return zg(function(t,n){return e.map(function(e){return e(t)})}(t))}},t.composeAsync=function(t){if(!t)return null;var e=t.filter(Vg);return 0==e.length?null:function(t){return function t(){for(var e,n=[],r=0;r=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}(),Wg=function(){function t(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return t.prototype.ngOnInit=function(){this._control=this._injector.get(Ag),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: \n ')},t}(),Gg='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Yg='\n
\n
\n \n
\n
';function qg(t,e){return p(e.path,[t])}function Zg(t,e){t||Qg(e,"Cannot find control with"),e.valueAccessor||Qg(e,"No value accessor for form control with"),t.validator=jg.compose([t.validator,e.validator]),t.asyncValidator=jg.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&&$g(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&&$g(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 $g(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Qg(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 Xg(t){return null!=t?jg.compose(t.map(Ug)):null}function Kg(t){return null!=t?jg.composeAsync(t.map(Fg)):null}var Jg=[Og,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}(),Hg,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=qe}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=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}(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=c(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var i=o.value;if(this._compareWith(this._optionMap.get(i),t))return i}}catch(s){e={error:s}}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},t}(),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=qe}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 r=t.map(function(t){return n._getOptionId(t)});e=function(t,e){t._setSelected(r.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 r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i0||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}(rv),sv=function(t){function e(e,n,r){var o=t.call(this,tv(n),ev(r,n))||this;return o.controls=e,o._initObservables(),o._setUpdateStrategy(n),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return o(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,r){n._throwIfControlMissing(r),n.at(r).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,r){n.at(r)&&n.at(r).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,r){n.reset(t[r],{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 ov?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=c(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(o){t={error:o}}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}(rv),av=function(){return Promise.resolve(null)}(),lv=function(t){function e(e,n){var r=t.call(this)||this;return r.submitted=!1,r._directives=[],r.ngSubmit=new No,r.form=new iv({},Xg(e),Kg(n)),r}return o(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;av.then(function(){var n=e._findContainer(t.path);t.control=n.registerControl(t.name,t.control),Zg(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;av.then(function(){var n,r,o=e._findContainer(t.path);o&&o.removeControl(t.name),(r=(n=e._directives).indexOf(t))>-1&&n.splice(r,1)})},e.prototype.addFormGroup=function(t){var e=this;av.then(function(){var n=e._findContainer(t.path),r=new iv({});(function(t,e){null==t&&Qg(e,"Cannot find control with"),t.validator=jg.compose([t.validator,e.validator]),t.asyncValidator=jg.composeAsync([t.asyncValidator,e.asyncValidator])})(r,t),n.registerControl(t.name,r),r.updateValueAndValidity({emitEvent:!1})})},e.prototype.removeFormGroup=function(t){var e=this;av.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;av.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,e=this._directives,this.form._syncPendingControls(),e.forEach(function(t){var e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e},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},e}(Ig),uv=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 \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\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
\n \n \n
\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 "+Gg+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+Yg)},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: \n Example 2: ')},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 "+Gg+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+Yg)},t.ngFormWarning=function(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")},t}(),cv=new Ut("NgFormSelectorWarning"),hv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(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 qg(this.name,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 Xg(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Kg(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){},e}(Ig),pv=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}var n;return o(e,t),n=e,e.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof lv||uv.modelGroupParentException()},e}(hv),dv=function(){return Promise.resolve(null)}(),fv=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.control=new ov,i._registered=!1,i.update=new No,i._parent=e,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Qg(t,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,o=void 0;return e.forEach(function(e){var i;e.constructor===Pg?n=e:(i=e,Jg.some(function(t){return i.constructor===t})?(r&&Qg(t,"More than one built-in value accessor matches form control with"),r=e):(o&&Qg(t,"More than one custom value accessor matches form control with"),o=e))}),o||r||n||(Qg(t,"No valid value accessor for form control with"),null)}(i,o),i}return o(e,t),e.prototype.ngOnChanges=function(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;var n=t.model;return!!n.isFirstChange()||!qe(e,n.currentValue)}(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?qg(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 Xg(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Kg(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(){Zg(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 pv)&&this._parent instanceof hv?uv.formGroupNameException():this._parent instanceof pv||this._parent instanceof lv||uv.modelParentException()},e.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||uv.missingNameException()},e.prototype._updateValue=function(t){var e=this;dv.then(function(){e.control.setValue(t,{emitViewToModelChange:!1})})},e.prototype._updateDisabled=function(t){var e=this,n=t.isDisabled.currentValue,r=""===n||n&&"false"!==n;dv.then(function(){r&&!e.control.disabled?e.control.disable():!r&&e.control.disabled&&e.control.enable()})},e}(Ag),gv=new Ut("NgModelWithFormControlWarning"),vv=function(){return function(){}}(),yv=function(){function t(){}return t.prototype.group=function(t,e){void 0===e&&(e=null);var n=this._reduceControls(t),r=null,o=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(r=null!=e.validators?e.validators:null,o=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(r=null!=e.validator?e.validator:null,o=null!=e.asyncValidator?e.asyncValidator:null)),new iv(n,{asyncValidators:o,updateOn:i,validators:r})},t.prototype.control=function(t,e,n){return new ov(t,e,n)},t.prototype.array=function(t,e,n){var r=this,o=t.map(function(t){return r._createControl(t)});return new sv(o,e,n)},t.prototype._reduceControls=function(t){var e=this,n={};return Object.keys(t).forEach(function(r){n[r]=e._createControl(t[r])}),n},t.prototype._createControl=function(t){return t instanceof ov||t instanceof iv||t instanceof sv?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)},t}(),mv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:cv,useValue:t.warnOnDeprecatedNgFormSelector}]}},t}(),_v=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:gv,useValue:t.warnOnNgModelWithFormControl}]}},t}(),bv=or({encapsulation:2,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:0}.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:0}.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}"],data:{}});function wv(t){return as(2,[Qi(402653184,1,{_contentWrapper:0}),(t()(),Gi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),es(null,0),(t()(),Gi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Cv=or({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function xv(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==no(t,5)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==no(t,5).onTouched()&&r),"compositionstart"===e&&(r=!1!==no(t,5)._compositionStart()&&r),"compositionend"===e&&(r=!1!==no(t,5)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search=n)&&r),"ngModelChange"===e&&(o.searchChange.emit(n),r=!1!==o.filter()&&r),r},null,null)),vo(5,16384,null,0,Pg,[yn,pn,[2,kg]],null,null),mo(1024,null,Eg,function(t){return[t]},[Pg]),vo(7,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(9,16384,null,0,Mg,[[4,Ag]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,no(e,9).ngClassUntouched,no(e,9).ngClassTouched,no(e,9).ngClassPristine,no(e,9).ngClassDirty,no(e,9).ngClassValid,no(e,9).ngClassInvalid,no(e,9).ngClassPending)})}function Sv(t){return as(0,[(t()(),Gi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.select(t.context.$implicit)&&r),r},null,null)),(t()(),Gi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Ev(t){return as(0,[(t()(),Gi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,wv,bv)),mo(6144,null,Kd,null,[tf]),vo(3,540672,null,0,Qd,[],{itemSize:[0,"itemSize"]},null),mo(1024,null,qd,$d,[Qd]),vo(5,245760,[[4,4],[5,4],["viewport",4]],0,tf,[pn,An,li,[2,qd],[2,Qf],Xd],null,null),(t()(),Wi(16777216,[[2,2]],0,1,null,Sv)),vo(7,409600,null,0,nf,[zn,Vn,In,[1,tf],li],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===no(e,5).orientation,"horizontal"!==no(e,5).orientation)})}function Ov(t){return as(0,[(t()(),Gi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function kv(t){return as(0,[(t()(),Gi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.cancelClose()&&r),r},null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(r=0!=(o.show=!o.show)&&r),r},null,null)),(t()(),Gi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Wi(16777216,[[2,2]],null,1,null,xv)),vo(7,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Wi(16777216,[[2,2]],null,1,null,Ev)),vo(10,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Wi(0,[[2,2],["noItems",2]],null,0,null,Ov))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,no(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Pv(t){return as(0,[Qi(402653184,1,{reference:0}),Qi(402653184,2,{dropdown_tooltip:0}),Qi(402653184,3,{input:0}),Qi(402653184,4,{viewport:0}),Qi(402653184,5,{scroll_el:0}),(t()(),Gi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var r=!0,o=t.component;return"keyup.enter"===e&&(r=!1!==o.toggleShow()&&r),"keydown.arrowup"===e&&(r=!1!==n.preventDefault()&&r),"keydown.arrowdown"===e&&(r=!1!==n.preventDefault()&&r),"keyup.arrowup"===e&&(r=!1!==(o.focus?o.change(-1):"")&&r),"keyup.arrowdown"===e&&(r=!1!==(o.focus?o.change(1):"")&&r),"focus"===e&&(r=0!=(o.focus=!0)&&r),"blur"===e&&(r=0!=(o.focus=!1)&&r),"window:resize"===e&&(r=!1!==o.resize()&&r),"window:click"===e&&(r=!1!==(o.show?o.close():"")&&r),r},null,null)),(t()(),Gi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Gi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"showChange"===e&&(r=!1!==(o.show=n)&&r),"showChange"===e&&(r=!1!==o.updateScroll()&&r),"click"===e&&(r=!1!==o.toggleShow()&&r),r},null,null)),vo(8,737280,null,0,Gf,[pn,Wf,Nf,yn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Gi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),os(10,null,["",""])),(t()(),Gi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Gi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Gi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(15,null,["",""])),(t()(),Gi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Wi(0,[[2,2],["dropdown",2]],null,0,null,kv))],function(t,e){t(e,8,0,e.component.show,no(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}var Tv="Checkbox",Iv=function(){function t(){this.klass="default"}return t.prototype.toggle=function(){this.state=!this.state,this.onChange&&this.onChange(this.state)},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouch=t},t}(),Rv=ya,Av=function(){function t(){if(this.build=Rv(),!t.init){var e=Rv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Tv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Tv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Mv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}return t.prototype.handleMouse=function(t){this.handleEvent(t)},t.prototype.handleTouch=function(t){this.handleEvent(t)},t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;setTimeout(function(){t.element&&t.element.nativeElement&&(t.cached_box=t.element.nativeElement.getBoundingClientRect(),t.size=Math.ceil(1.5*Math.max(t.cached_box.height,t.cached_box.width)))})},t.prototype.ngOnDestroy=function(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t.prototype.handleEvent=function(t){var e=this;this.cancelled=!1;var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX,r=t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:r-this.cached_box.top+"px",left:n-this.cached_box.left+"px"},this.mouse_release_cancel=this.renderer.listen("window","mouseup",function(t){return e.handleRelease(t)}),this.touch_release_cancel=this.renderer.listen("window","touchend",function(t){return e.handleRelease(t)}),this.transitioning=!0,setTimeout(function(){e.transitioning=!1,e.cancelled&&(e.show=!1)},350)},t.prototype.handleRelease=function(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t}(),Nv=function(){function t(t,e){this.el=t,this.renderer=e,this.tapped=new No,this.touchrelease=new No,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}return t.prototype.ngAfterViewInit=function(){var t=this;this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",function(e){return t.handleHold(e)}),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",function(e){return t.handleHold(e)}))},t.prototype.ngOnDestroy=function(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}},t.prototype.remove=function(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)},t.prototype.handleHold=function(t){var e=this,n={x:t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=n,this.mouse_listener=this.renderer.listen(window,"mouseup",function(t){return e.handleRelease(t)}),this.touch_listener=this.renderer.listen(window,"touchend",function(t){return e.handleRelease(t)}),this.timer=setTimeout(function(){return e.remove()},this.max_delay)},t.prototype.handleRelease=function(t){var e=this;this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(function(){var n=t instanceof TouchEvent?t.touches[0].clientX:t.clientX;TouchEvent,Math.sqrt(Math.pow(n-e.start.x,2)+2) div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function Fv(t){return as(0,[(t()(),Gi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.toggle()&&r),r},null,null)),vo(1,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),os(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Hv(t){return as(0,[(t()(),Gi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Gi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,2).handleTouch(n)&&r),"keyup.enter"===e&&(r=!1!==o.toggle()&&r),"tapped"===e&&(r=!1!==o.toggle()&&r),r},zv,Lv)),vo(2,4440064,null,0,Mv,[pn,yn],{center:[0,"center"]},null),vo(3,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,Fv)),vo(6,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}var Bv="Buttons",Wv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new No,this.id="button-"+Math.floor(999999*Math.random())}return t.prototype.ngOnChanges=function(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()},t.prototype.ngAfterViewInit=function(){this.setClass(this.klass)},t.prototype.setClass=function(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))},t.prototype.setGroup=function(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")},t.prototype.setState=function(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")},t.prototype.tap=function(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this._onChange=t},t.prototype.registerOnTouched=function(t){this._onTouch=t},t}(),Gv=ya,Yv=function(){function t(){if(this.build=Gv(),!t.init){var e=Gv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Bv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Bv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),qv=or({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function Zv(t){return as(0,[(t()(),Gi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,1).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,1).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.tap()&&r),r},zv,Lv)),vo(1,4440064,null,0,Mv,[pn,yn],null,null),vo(2,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),es(0,0)],function(t,e){t(e,1,0)},null)}var $v=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t,e){switch(void 0===e&&(e="html"),e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}},t}(),Qv="Pipes",Xv=ya,Kv=function(){function t(){if(this.build=Xv(),!t.init){var e=Xv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Qv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Qv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Jv=function(){function t(){this._timers={},this._intervals={},this._subscriptions={}}return t.prototype.timeout=function(t,e,n){var r=this;if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(function(){e(),r._timers[t]=null},n)},t.prototype.clearTimeout=function(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)},t.prototype.interval=function(t,e,n){if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(function(){return e()},n)},t.prototype.clearInterval=function(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)},t.prototype.subscription=function(t,e){this.unsub(t),this._subscriptions[t]=e},t.prototype.unsub=function(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof m?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)},t}(),ty=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.ngOnDestroy=function(){for(var t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(var t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(var t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)},e}(Jv),ey=function(){return function(){}}(),ny=function(){return function(){}}(),ry=function(){function t(t){var e=this;this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?function(){e.headers=new Map,t.split("\n").forEach(function(t){var n=t.indexOf(":");if(n>0){var r=t.slice(0,n),o=r.toLowerCase(),i=t.slice(n+1).trim();e.maybeSetNormalizedName(r,o),e.headers.has(o)?e.headers.get(o).push(i):e.headers.set(o,[i])}})}:function(){e.headers=new Map,Object.keys(t).forEach(function(n){var r=t[n],o=n.toLowerCase();"string"==typeof r&&(r=[r]),r.length>0&&(e.headers.set(o,r),e.maybeSetNormalizedName(n,o))})}:this.headers=new Map}return t.prototype.has=function(t){return this.init(),this.headers.has(t.toLowerCase())},t.prototype.get=function(t){this.init();var e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null},t.prototype.keys=function(){return this.init(),Array.from(this.normalizedNames.values())},t.prototype.getAll=function(t){return this.init(),this.headers.get(t.toLowerCase())||null},t.prototype.append=function(t,e){return this.clone({name:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({name:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({name:t,value:e,op:"d"})},t.prototype.maybeSetNormalizedName=function(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)},t.prototype.init=function(){var e=this;this.lazyInit&&(this.lazyInit instanceof t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(t){return e.applyUpdate(t)}),this.lazyUpdate=null))},t.prototype.copyFrom=function(t){var e=this;t.init(),Array.from(t.headers.keys()).forEach(function(n){e.headers.set(n,t.headers.get(n)),e.normalizedNames.set(n,t.normalizedNames.get(n))})},t.prototype.clone=function(e){var n=new t;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([e]),n},t.prototype.applyUpdate=function(t){var e=t.name.toLowerCase();switch(t.op){case"a":case"s":var n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);var r=("a"===t.op?this.headers.get(e):void 0)||[];r.push.apply(r,p(n)),this.headers.set(e,r);break;case"d":var o=t.value;if(o){var i=this.headers.get(e);if(!i)return;0===(i=i.filter(function(t){return-1===o.indexOf(t)})).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,i)}else this.headers.delete(e),this.normalizedNames.delete(e)}},t.prototype.forEach=function(t){var e=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return t(e.normalizedNames.get(n),e.headers.get(n))})},t}(),oy=function(){function t(){}return t.prototype.encodeKey=function(t){return iy(t)},t.prototype.encodeValue=function(t){return iy(t)},t.prototype.decodeKey=function(t){return decodeURIComponent(t)},t.prototype.decodeValue=function(t){return decodeURIComponent(t)},t}();function iy(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}var sy=function(){function t(t){var e,n,r,o=this;if(void 0===t&&(t={}),this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new oy,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=(e=t.fromString,n=this.encoder,r=new Map,e.length>0&&e.split("&").forEach(function(t){var e=t.indexOf("="),o=h(-1==e?[n.decodeKey(t),""]:[n.decodeKey(t.slice(0,e)),n.decodeValue(t.slice(e+1))],2),i=o[0],s=o[1],a=r.get(i)||[];a.push(s),r.set(i,a)}),r)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(function(e){var n=t.fromObject[e];o.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}return t.prototype.has=function(t){return this.init(),this.map.has(t)},t.prototype.get=function(t){this.init();var e=this.map.get(t);return e?e[0]:null},t.prototype.getAll=function(t){return this.init(),this.map.get(t)||null},t.prototype.keys=function(){return this.init(),Array.from(this.map.keys())},t.prototype.append=function(t,e){return this.clone({param:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({param:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({param:t,value:e,op:"d"})},t.prototype.toString=function(){var t=this;return this.init(),this.keys().map(function(e){var n=t.encoder.encodeKey(e);return t.map.get(e).map(function(e){return n+"="+t.encoder.encodeValue(e)}).join("&")}).join("&")},t.prototype.clone=function(e){var n=new t({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat([e]),n},t.prototype.init=function(){var t=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(e){return t.map.set(e,t.cloneFrom.map.get(e))}),this.updates.forEach(function(e){switch(e.op){case"a":case"s":var n=("a"===e.op?t.map.get(e.param):void 0)||[];n.push(e.value),t.map.set(e.param,n);break;case"d":if(void 0===e.value){t.map.delete(e.param);break}var r=t.map.get(e.param)||[],o=r.indexOf(e.value);-1!==o&&r.splice(o,1),r.length>0?t.map.set(e.param,r):t.map.delete(e.param)}}),this.cloneFrom=this.updates=null)},t}();function ay(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function ly(t){return"undefined"!=typeof Blob&&t instanceof Blob}function uy(t){return"undefined"!=typeof FormData&&t instanceof FormData}var cy=function(){function t(t,e,n,r){var o;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,o=r):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.params&&(this.params=o.params)),this.headers||(this.headers=new ry),this.params){var i=this.params.toString();if(0===i.length)this.urlWithParams=e;else{var s=e.indexOf("?");this.urlWithParams=e+(-1===s?"?":s=200&&this.status<300}}(),dy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=hy.ResponseHeader,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(py),fy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=hy.Response,n.body=void 0!==e.body?e.body:null,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(py),gy=function(t){function e(e){var n=t.call(this,e,0,"Unknown Error")||this;return n.name="HttpErrorResponse",n.ok=!1,n.message=n.status>=200&&n.status<300?"Http failure during parsing for "+(e.url||"(unknown url)"):"Http failure response for "+(e.url||"(unknown url)")+": "+e.status+" "+e.statusText,n.error=e.error||null,n}return o(e,t),e}(py);function vy(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}var yy=function(){function t(t){this.handler=t}return t.prototype.request=function(t,e,n){var r,o=this;if(void 0===n&&(n={}),t instanceof cy)r=t;else{var i;i=n.headers instanceof ry?n.headers:new ry(n.headers);var s=void 0;n.params&&(s=n.params instanceof sy?n.params:new sy({fromObject:n.params})),r=new cy(t,e,void 0!==n.body?n.body:null,{headers:i,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}var a=ol(r).pipe(ql(function(t){return o.handler.handle(t)}));if(t instanceof cy||"events"===n.observe)return a;var l=a.pipe(dl(function(t){return t instanceof fy}));switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return l.pipe(K(function(t){if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return l.pipe(K(function(t){return t.body}))}case"response":return l;default:throw new Error("Unreachable: unhandled observe type "+n.observe+"}")}},t.prototype.delete=function(t,e){return void 0===e&&(e={}),this.request("DELETE",t,e)},t.prototype.get=function(t,e){return void 0===e&&(e={}),this.request("GET",t,e)},t.prototype.head=function(t,e){return void 0===e&&(e={}),this.request("HEAD",t,e)},t.prototype.jsonp=function(t,e){return this.request("JSONP",t,{params:(new sy).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})},t.prototype.options=function(t,e){return void 0===e&&(e={}),this.request("OPTIONS",t,e)},t.prototype.patch=function(t,e,n){return void 0===n&&(n={}),this.request("PATCH",t,vy(n,e))},t.prototype.post=function(t,e,n){return void 0===n&&(n={}),this.request("POST",t,vy(n,e))},t.prototype.put=function(t,e,n){return void 0===n&&(n={}),this.request("PUT",t,vy(n,e))},t}(),my=function(){function t(t,e){this.next=t,this.interceptor=e}return t.prototype.handle=function(t){return this.interceptor.intercept(t,this.next)},t}(),_y=new Ut("HTTP_INTERCEPTORS"),by=function(){function t(){}return t.prototype.intercept=function(t,e){return e.handle(t)},t}(),wy=/^\)\]\}',?\n/,Cy=function(){return function(){}}(),xy=function(){function t(){}return t.prototype.build=function(){return new XMLHttpRequest},t}(),Sy=function(){function t(t){this.xhrFactory=t}return t.prototype.handle=function(t){var e=this;if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new R(function(n){var r=e.xhrFactory.build();if(r.open(t.method,t.urlWithParams),t.withCredentials&&(r.withCredentials=!0),t.headers.forEach(function(t,e){return r.setRequestHeader(t,e.join(","))}),t.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){var o=t.detectContentTypeHeader();null!==o&&r.setRequestHeader("Content-Type",o)}if(t.responseType){var i=t.responseType.toLowerCase();r.responseType="json"!==i?i:"text"}var s=t.serializeBody(),a=null,l=function(){if(null!==a)return a;var e=1223===r.status?204:r.status,n=r.statusText||"OK",o=new ry(r.getAllResponseHeaders()),i=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(r)||t.url;return a=new dy({headers:o,status:e,statusText:n,url:i})},u=function(){var e=l(),o=e.headers,i=e.status,s=e.statusText,a=e.url,u=null;204!==i&&(u=void 0===r.response?r.responseText:r.response),0===i&&(i=u?200:0);var c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof u){var h=u;u=u.replace(wy,"");try{u=""!==u?JSON.parse(u):null}catch(p){u=h,c&&(c=!1,u={error:p,text:u})}}c?(n.next(new fy({body:u,headers:o,status:i,statusText:s,url:a||void 0})),n.complete()):n.error(new gy({error:u,headers:o,status:i,statusText:s,url:a||void 0}))},c=function(t){var e=l().url,o=new gy({error:t,status:r.status||0,statusText:r.statusText||"Unknown Error",url:e||void 0});n.error(o)},h=!1,p=function(e){h||(n.next(l()),h=!0);var o={type:hy.DownloadProgress,loaded:e.loaded};e.lengthComputable&&(o.total=e.total),"text"===t.responseType&&r.responseText&&(o.partialText=r.responseText),n.next(o)},d=function(t){var e={type:hy.UploadProgress,loaded:t.loaded};t.lengthComputable&&(e.total=t.total),n.next(e)};return r.addEventListener("load",u),r.addEventListener("error",c),t.reportProgress&&(r.addEventListener("progress",p),null!==s&&r.upload&&r.upload.addEventListener("progress",d)),r.send(s),n.next({type:hy.Sent}),function(){r.removeEventListener("error",c),r.removeEventListener("load",u),t.reportProgress&&(r.removeEventListener("progress",p),null!==s&&r.upload&&r.upload.removeEventListener("progress",d)),r.abort()}})},t}(),Ey=new Ut("XSRF_COOKIE_NAME"),Oy=new Ut("XSRF_HEADER_NAME"),ky=function(){return function(){}}(),Py=function(){function t(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return t.prototype.getToken=function(){if("server"===this.platform)return null;var t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Da(t,this.cookieName),this.lastCookieString=t),this.lastToken},t}(),Ty=function(){function t(t,e){this.tokenService=t,this.headerName=e}return t.prototype.intercept=function(t,e){var n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);var r=this.tokenService.getToken();return null===r||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,r)})),e.handle(t)},t}(),Iy=function(){function t(t,e){this.backend=t,this.injector=e,this.chain=null}return t.prototype.handle=function(t){if(null===this.chain){var e=this.injector.get(_y,[]);this.chain=e.reduceRight(function(t,e){return new my(t,e)},this.backend)}return this.chain.handle(t)},t}(),Ry=function(){function t(){}var e;return e=t,t.disable=function(){return{ngModule:e,providers:[{provide:Ty,useClass:by}]}},t.withOptions=function(t){return void 0===t&&(t={}),{ngModule:e,providers:[t.cookieName?{provide:Ey,useValue:t.cookieName}:[],t.headerName?{provide:Oy,useValue:t.headerName}:[]]}},t}(),Ay=function(){return function(){}}(),My=function(){function t(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new il(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}return t.prototype.init=function(){return l(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.loadFromFile("api")];case 1:return t.sent(),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete(),[2]}})})},Object.defineProperty(t.prototype,"setup",{get:function(){return this._setup},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"app_name",{get:function(){return this._app_name},enumerable:!0,configurable:!0}),t.prototype.isSetup=function(t){return this._is_setup_observer.subscribe(t)},t.prototype.log=function(t,e,n,r,o){if(void 0===r&&(r="debug"),void 0===o&&(o=!1),window.debug||o){var i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i,[n])):console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i))}},t.prototype.get=function(t){var e=t.split("."),n=null;return"session"===e[0]?(e.shift(),n=va(e,this._settings.session)):"local"===e[0]?(e.shift(),n=va(e,this._settings.local)):n=va(e,this._settings.api)||va(e,this._settings.session)||va(e,this._settings.local),n},t.prototype.loadStore=function(t,e){if(e)for(var n=0;n5?[2,Promise.resolve()]:(this._promises[r="load|"+t+"|"+e]||(this._promises[r]=new Promise(function(s,a){o.http.get(e).subscribe(function(e){o._settings[t]=i({},o._settings[t]||{},e||{})},function(i){o.log("Settings",'Failed to load settings from "'+e+'"'),o._promises[r]=null,o.loadFromFile(t,e,++n).then(function(){return s()})},function(){return s()})})),[2,this._promises[r]])})})},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(yy))},token:t,providedIn:"root"}),t}(),Ny=["control","shift","alt","meta","os"],Dy=function(){function t(){var t=this;this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.last_down!==n&&(t.keydown_states[n]||(t.keydown_states[n]=new il(null),t.keydown_observers[n]=t.keydown_states[n].asObservable()),t.keydown_states[n].next(t.counter++),t.combo_end.indexOf(n)>=0&&e.preventDefault(),t.last_down=n)}),window.addEventListener("keyup",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.keydown_states[n].next(null),t.last_down===n&&(t.last_down=null)})}return t.prototype.listen=function(t,e){var n=this,r=(t=t instanceof Array?t:t.split("+")).map(function(t){return n.mapKey(t.toLowerCase())});if(r.length>0&&this.validCombination(r)){this.registered_combos.push(r);var o=r[r.length-1];return this.keydown_states[o]||(this.keydown_states[o]=new il(null),this.keydown_observers[o]=this.keydown_states[o].asObservable()),this.updateCombinationEndList(),this.keydown_observers[o].subscribe(function(t){if(t){var o=[];if(r.length>1){for(var i=0,s=r;io[l+1])return}e()}})}return null},t.prototype.mapKey=function(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t},t.prototype.updateCombinationEndList=function(){for(var t,e=0,n=this.registered_combos;e0},t.ngInjectableDef=Ot({factory:function(){return new t},token:t,providedIn:"root"}),t}(),jy=[],Vy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=ga(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.repositories=function(){var t=this,e="repositories";return this._promises[e]||(this._promises[e]=new Promise(function(n,r){var o;t.http.get(t.api_route+"/repositories").subscribe(function(t){return o=t},function(n){r(n),delete t._promises[e]},function(){n(o),t.timeout(e,function(){return delete t._promises[e]},1e3)})})),this._promises[e]},e.prototype.commits=function(t){var e=this,n="commits|"+ga(t);return this._promises[n]||(this._promises[n]=new Promise(function(t,r){var o;e.http.get(e.api_route+"/repositories_commits").subscribe(function(t){return o=t},function(t){r(t),delete e._promises[n]},function(){t(o),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.versions=function(t){var e=this,n="versions|"+t;return this._promises[n]||(this._promises[n]=new Promise(function(r,o){var i,s=e.api_route+"/"+encodeURIComponent(t);e.http.get(s).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[n]},function(){r(i),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.driverCommits=function(t,e){var n=this,r=ga(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.build=function(t){var e=this,n=ga(t),r="build|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){e.http.post(""+e.api_route,n).subscribe(function(t){return null},function(t){o(t),delete e._promises[r]},function(){t(),delete e._promises[r]})})),this._promises[r]},e.prototype.clean=function(t,e){var n=this,r=ga(e),o="clean|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(t,e){n.http.delete(n.api_route+(r?"?"+r:"")).subscribe(function(t){return null},function(t){e(t),delete n._promises[o]},function(){t(),delete n._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/build":"/build"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(yy))},token:e,providedIn:"root"}),e}(Jv),Ly=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=ga(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.specCommits=function(t,e){var n=this,r=ga(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.run=function(t){var e=this;for(var n in t)null==t[n]&&delete t[n];var r=ga(t),o="build|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(n,i){var s;e.http.post(e.api_route+(r?"?"+r:""),t,{responseType:"text"}).subscribe(function(t){return s=t},function(t){i(t),delete e._promises[o]},function(){n(s),delete e._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/test":"/test"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(yy))},token:e,providedIn:"root"}),e}(Jv),zy=new R(P),Uy=function(){function t(t,e){this.delay=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new Fy(t,this.delay,this.scheduler))},t}(),Fy=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.delay=n,o.scheduler=r,o.queue=[],o.active=!1,o.errored=!1,o}return o(e,t),e.dispatch=function(t){for(var e=t.source,n=e.queue,r=t.scheduler,o=t.destination;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(o);if(n.length>0){var i=Math.max(0,n[0].time-r.now());this.schedule(t,i)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.destination.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new Hy(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(jd.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.scheduleNotification(jd.createComplete()),this.unsubscribe()},e}(E),Hy=function(){return function(t,e){this.time=t,this.notification=e}}(),By="Service workers are disabled or not supported by this browser",Wy=function(){function t(t){if(this.serviceWorker=t,t){var e=ad(t,"controllerchange").pipe(K(function(){return t.controller})),n=Hl(hl(function(){return ol(t.controller)}),e);this.worker=n.pipe(dl(function(t){return!!t})),this.registration=this.worker.pipe(zl(function(){return t.getRegistration()}));var r=ad(t,"message").pipe(K(function(t){return t.data})).pipe(dl(function(t){return t&&t.type})).pipe(gt(new V));r.connect(),this.events=r}else this.worker=this.events=this.registration=(o=By,hl(function(){return Md(new Error(o))}));var o}return t.prototype.postMessage=function(t,e){return this.worker.pipe(Ml(1),wl(function(n){n.postMessage(i({action:t},e))})).toPromise().then(function(){})},t.prototype.postMessageWithStatus=function(t,e,n){var r=this.waitForStatus(n),o=this.postMessage(t,e);return Promise.all([r,o]).then(function(){})},t.prototype.generateNonce=function(){return Math.round(1e7*Math.random())},t.prototype.eventsOfType=function(t){return this.events.pipe(dl(function(e){return e.type===t}))},t.prototype.nextEventOfType=function(t){return this.eventsOfType(t).pipe(Ml(1))},t.prototype.waitForStatus=function(t){return this.eventsOfType("STATUS").pipe(dl(function(e){return e.nonce===t}),Ml(1),K(function(t){if(!t.status)throw new Error(t.error)})).toPromise()},Object.defineProperty(t.prototype,"isEnabled",{get:function(){return!!this.serviceWorker},enumerable:!0,configurable:!0}),t}(),Gy=function(){function t(t){if(this.sw=t,this.subscriptionChanges=new V,!t.isEnabled)return this.messages=zy,this.notificationClicks=zy,void(this.subscription=zy);this.messages=this.sw.eventsOfType("PUSH").pipe(K(function(t){return t.data})),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(K(function(t){return t.data})),this.pushManager=this.sw.registration.pipe(K(function(t){return t.pushManager}));var e=this.pushManager.pipe(zl(function(t){return t.getSubscription()}));this.subscription=lt(e,this.subscriptionChanges)}return Object.defineProperty(t.prototype,"isEnabled",{get:function(){return this.sw.isEnabled},enumerable:!0,configurable:!0}),t.prototype.requestSubscription=function(t){var e=this;if(!this.sw.isEnabled)return Promise.reject(new Error(By));for(var n={userVisibleOnly:!0},r=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),o=new Uint8Array(new ArrayBuffer(r.length)),i=0;i
'+e+"
",n,r,t)},e.prototype.notifySuccess=function(t,e,n){this.notify("success",t,e,n)},e.prototype.notifyError=function(t,e,n){this.notify("error",t,e,n)},e.prototype.notifyInfo=function(t,e,n){this.notify("info",t,e,n)},e.prototype.log=function(t,e,n,r,o){void 0===r&&(r="debug"),void 0===o&&(o=!1),this._settings.log(t,e,n,r,o)},e.prototype.navigate=function(t,e){var n=t instanceof Array?t.slice():[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})},e.prototype.navigateBack=function(){if(this._route_trail&&this._route_trail.length>0){var t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])},e.prototype.get=function(t){return this._subjects[t]&&this._subjects[t]instanceof il?this._subjects[t].getValue():null},e.prototype.listen=function(t,e){return this._observers[t]?this._observers[t].subscribe(e):null},e.prototype.set=function(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new il(e),this._observers[t]=this._subjects[t].asObservable())},e.prototype.init=function(){var t=this;if(!this._settings.setup)return this.timeout("init",function(){return t.init()});this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(function(e){t.log("CACHE","Update available: current version is "+e.current.hash+" available version is "+e.available.hash),t.notifyInfo("Newer version of the app is available","Refresh",function(){return location.reload()})}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],function(){t.navigate("bootstrap",{clear:!0})})},e.prototype.registerOverlays=function(){if(jy)for(var t=0,e=jy;tt.driver.localeCompare(n.id)?e:n},null),t.updateSpecCommits()),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.updateSpecCommits=function(){var t=this;this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(function(e){t.spec_commit_list=(e||[]).map(function(t){return{id:t.commit,name:t.commit,author:t.author,date:ya(t.date).format("DD MMM YYYY h:mm A")}}),t.spec_commit_list.unshift({id:null,name:"Latest Commit"}),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.test=function(){var t=this;if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";var e=function(e){e instanceof Object&&(e=e.error),t.test_results=t.styleResults(e||"");var n=t.service.get("TEST.results")||{},r=e.indexOf("exited with 0")>=0;n[t.repo+"|"+t.driver]=r?"passed":"failed",t.service.set("TEST.results",n),t.testing=!1,t.timeout("scroll",function(){return t.body.nativeElement.scrollTo(0,t.body.nativeElement.scrollHeight)},10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(e,e)}},e.prototype.styleResults=function(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')},e}(ty),om=or({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function im(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Spec Commit:"])),(t()(),Gi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.spec_commit=n)&&r),r},Pv,Cv)),vo(5,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(7,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(9,16384,null,0,Mg,[[4,Ag]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,no(e,9).ngClassUntouched,no(e,9).ngClassTouched,no(e,9).ngClassPristine,no(e,9).ngClassDirty,no(e,9).ngClassValid,no(e,9).ngClassInvalid,no(e,9).ngClassPending)})}function sm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),rs(1,2)],null,function(t,e){var n=e.component,r=er(e,0,0,t(e,1,0,no(e.parent.parent,0),n.test_results,"html"));t(e,0,0,r)})}function am(t){return as(0,[(t()(),Gi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Repository:"])),(t()(),Gi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),os(6,null,["",""])),(t()(),Gi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Driver:"])),(t()(),Gi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),os(11,null,["",""])),(t()(),Gi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Commit:"])),(t()(),Gi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.commit=n)&&r),r},Pv,Cv)),vo(17,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(19,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(21,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Spec:"])),(t()(),Gi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.spec=n)&&r),"ngModelChange"===e&&(r=!1!==o.updateSpecCommits()&&r),r},Pv,Cv)),vo(27,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(29,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(31,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Wi(16777216,null,null,1,null,im)),vo(33,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Gi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Gi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Gi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.force=n)&&r),r},Hv,Uv)),vo(38,49152,null,0,Iv,[],{klass:[0,"klass"],label:[1,"label"]},null),mo(1024,null,Eg,function(t){return[t]},[Iv]),vo(40,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(42,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Gi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.debug=n)&&r),r},Hv,Uv)),vo(45,49152,null,0,Iv,[],{klass:[0,"klass"],label:[1,"label"]},null),mo(1024,null,Eg,function(t){return[t]},[Iv]),vo(47,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(49,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Gi(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Gi(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.test()&&r),r},Zv,qv)),mo(5120,null,Eg,function(t){return[t]},[Wv]),vo(55,4767744,null,0,Wv,[pn,yn],null,{tapped:"tapped"}),vo(56,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),os(-1,0,["Run!"])),(t()(),Gi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),os(59,null,[" "," "])),(t()(),Wi(16777216,null,null,1,null,sm)),vo(61,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,63).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,63).handleTouch(n)&&r),"tapped"===e&&(r=0!=(o.show=!o.show)&&r),r},zv,Lv)),vo(63,4440064,null,0,Mv,[pn,yn],{klass:[0,"klass"],center:[1,"center"]},null),vo(64,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,no(e,21).ngClassUntouched,no(e,21).ngClassTouched,no(e,21).ngClassPristine,no(e,21).ngClassDirty,no(e,21).ngClassValid,no(e,21).ngClassInvalid,no(e,21).ngClassPending),t(e,26,0,no(e,31).ngClassUntouched,no(e,31).ngClassTouched,no(e,31).ngClassPristine,no(e,31).ngClassDirty,no(e,31).ngClassValid,no(e,31).ngClassInvalid,no(e,31).ngClassPending),t(e,37,0,no(e,42).ngClassUntouched,no(e,42).ngClassTouched,no(e,42).ngClassPristine,no(e,42).ngClassDirty,no(e,42).ngClassValid,no(e,42).ngClassInvalid,no(e,42).ngClassPending),t(e,44,0,no(e,49).ngClassUntouched,no(e,49).ngClassTouched,no(e,49).ngClassPristine,no(e,49).ngClassDirty,no(e,49).ngClassValid,no(e,49).ngClassInvalid,no(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_down":"keyboard_arrow_up")})}function lm(t){return as(0,[(t()(),Gi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["arrow_back"])),(t()(),Gi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(-1,null,["Select a driver from the sidebar"]))],null,null)}function um(t){return as(0,[yo(0,$v,[Zu]),Qi(671088640,1,{body:0}),(t()(),Gi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,am)),vo(4,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Wi(0,[["select",2]],null,0,null,lm))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,no(e,5))},null)}function cm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"app-workspace",[],null,null,null,um,om)),vo(1,245760,null,0,rm,[nm,gh],null,null)],function(t,e){t(e,1,0)},null)}var hm=Gr("app-workspace",rm,cm,{},{},[]),pm=function(){function t(){this.menu=!0,this.menuChange=new No}return t.prototype.toggleMenu=function(){this.menu=!this.menu,this.menuChange.emit(this.menu)},t}(),dm=or({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function fm(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,2).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.toggleMenu()&&r),r},zv,Lv)),vo(2,4440064,null,0,Mv,[pn,yn],{klass:[0,"klass"]},null),vo(3,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["menu"])),(t()(),Gi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Gi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Gi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),os(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}var gm=function(){function t(){}return t.prototype.transform=function(t){if(t.indexOf("/")>=0){var e=t.split("/");return e.splice(0,1),'
'+e.map(function(t){return'
'+t+"
"}).join('
keyboard_arrow_right
')+"
"}return t},t}(),vm=function(t){function e(e){var n=t.call(this)||this;return n.service=e,n.repository_list=[],n.status={},n}return o(e,t),e.prototype.ngOnInit=function(){var t=this;this.service.set("TEST.repository",""),this.service.set("TEST.filter",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",function(){return t.updateRepositoryList()},6e4),this.subscription("test_results",this.service.listen("TEST.filter",function(e){console.log("Filter:",e),t.search_str=e||"",t.filter(t.search_str)})),this.subscription("test_results",this.service.listen("TEST.results",function(e){t.status=e||{}})),this.subscription("repository",this.service.listen("TEST.repository",function(e){e&&(t.repo={id:e,name:e},t.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",function(e){t.driver=e}))},e.prototype.setRepository=function(t){this.service.navigate([t],{filter:this.search_str}),this.search_str="",this.updateDriverList()},e.prototype.setDriver=function(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t],{filter:this.search_str})},e.prototype.filter=function(t){this.filtered_list=(this.driver_list||[]).filter(function(e){return e.toLowerCase().indexOf(t.toLowerCase())>=0})},e.prototype.updateDriverList=function(){var t=this;this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(function(e){t.driver_list=e||[],t.filter(t.search_str),t.loading=!1},function(e){return t.loading=!1})},e.prototype.updateRepositoryList=function(){var t=this;this.service.Build.repositories().then(function(e){t.repository_list=(e||[]).map(function(t){return{id:t,name:t}}),t.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),t.updateDriverList()})},e}(ty),ym=or({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function mm(t){return as(0,[(t()(),Gi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.setDriver(t.context.$implicit)&&r),r},null,null)),vo(1,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Gi(3,0,null,null,1,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null)),rs(4,1)],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]);var r=er(e,3,0,t(e,4,0,no(e.parent,0),e.context.$implicit));t(e,3,0,r)})}function _m(t){return as(0,[(t()(),Gi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function bm(t){return as(0,[yo(0,gm,[]),(t()(),Gi(1,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.repo=n)&&r),"ngModelChange"===e&&(r=!1!==o.setRepository(n.id)&&r),r},Pv,Cv)),vo(4,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(6,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(8,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(9,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Gi(10,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(11,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["search"])),(t()(),Gi(13,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==no(t,14)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==no(t,14).onTouched()&&r),"compositionstart"===e&&(r=!1!==no(t,14)._compositionStart()&&r),"compositionend"===e&&(r=!1!==no(t,14)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search_str=n)&&r),"ngModelChange"===e&&(r=!1!==o.filter(n)&&r),r},null,null)),vo(14,16384,null,0,Pg,[yn,pn,[2,kg]],null,null),mo(1024,null,Eg,function(t){return[t]},[Pg]),vo(16,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(18,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(19,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,mm)),vo(21,278528,null,0,La,[zn,Vn,In],{ngForOf:[0,"ngForOf"]},null),(t()(),Wi(16777216,null,null,1,null,_m)),vo(23,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,4,0,"simple",n.repository_list||Rr,"ACA Drivers"),t(e,6,0,n.repo),t(e,16,0,n.search_str),t(e,21,0,n.filtered_list),t(e,23,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,3,0,no(e,8).ngClassUntouched,no(e,8).ngClassTouched,no(e,8).ngClassPristine,no(e,8).ngClassDirty,no(e,8).ngClassValid,no(e,8).ngClassInvalid,no(e,8).ngClassPending),t(e,13,0,no(e,18).ngClassUntouched,no(e,18).ngClassTouched,no(e,18).ngClassPristine,no(e,18).ngClassDirty,no(e,18).ngClassValid,no(e,18).ngClassInvalid,no(e,18).ngClassPending)})}var wm=or({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:20em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}.formatted-driver-name{display:flex;align-items:center}.formatted-driver-name .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:1.5em}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:28em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Cm(t){return as(0,[(t()(),Gi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var r=!0;return"menuChange"===e&&(r=!1!==(t.component.show_menu=n)&&r),r},fm,dm)),vo(3,49152,null,0,pm,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Gi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Gi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(6,0,null,null,1,"sidebar",[],null,null,null,bm,ym)),vo(7,245760,null,0,vm,[nm],null,null),(t()(),Gi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Gi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),vo(10,212992,null,0,Pp,[kp,zn,sn,[8,null],An],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function xm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"app-root",[],null,null,null,Cm,wm)),vo(1,49152,null,0,_a,[],null,null)],null,null)}var Sm=Gr("app-root",_a,xm,{},{},[]),Em=function(){return function(){}}(),Om=function(){return function(){}}(),km=pa(ma,[_a],function(t){return function(t){for(var e={},n=[],r=!1,o=0;o=e?t:""+Array(e+1-r.length).join(n)+t},p={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+h(r,2,"0")+":"+h(o,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,s),o=e-r<0,i=t.clone().add(n+(o?-1:1),s);return Number(-(n+(e-r)/(o?r-i:i-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(u){return{M:s,y:l,w:i,d:o,h:r,m:n,s:e,ms:t,Q:a}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},d={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=d;var v=function(t){return t instanceof b},y=function(t,e,n){var r;if(!t)return null;if("string"==typeof t)g[t]&&(r=t),e&&(g[t]=e,r=t);else{var o=t.name;g[o]=t,r=o}return n||(f=r),r},m=function(t,e,n){if(v(t))return t.clone();var r=e?"string"==typeof e?{format:e,pl:n}:e:{};return r.date=t,new b(r)},_=p;_.l=y,_.i=v,_.w=function(t,e){return m(t,{locale:e.$L,utc:e.$u})};var b=function(){function h(t){this.$L=this.$L||y(t.locale,null,!0)||f,this.parse(t)}var p=h.prototype;return p.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(_.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(u);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},p.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},p.$utils=function(){return _},p.isValid=function(){return!("Invalid Date"===this.$d.toString())},p.isSame=function(t,e){var n=m(t);return this.startOf(e)<=n&&n<=this.endOf(e)},p.isAfter=function(t,e){return m(t)=0;a--)(o=t[a])&&(s=(i<3?o(s):i>3?o(e,n,s):o(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}function a(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function l(t,e,n,r){return new(n||(n=Promise))(function(o,i){function s(t){try{l(r.next(t))}catch(e){i(e)}}function a(t){try{l(r.throw(t))}catch(e){i(e)}}function l(t){t.done?o(t.value):new n(function(e){e(t.value)}).then(s,a)}l((r=r.apply(t,e||[])).next())})}function u(t,e){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,r=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function h(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(a){o={error:a}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function p(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(X);function st(t){return t}function at(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),rt(st,t)}function lt(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof o&&(n=t.pop()),null===r&&1===t.length&&t[0]instanceof R?t[0]:at(n)(et(t,r))}function ut(){return function(t){return t.lift(new ct(t))}}var ct=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var r=new ht(t,n),o=e.subscribe(r);return r.closed||(r.connection=n.connect()),o},t}(),ht=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},e}(E),pt=function(t){function e(e,n){var r=t.call(this)||this;return r.source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return o(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 m).add(this.source.subscribe(new ft(this.getSubject(),this))),t.closed?(this._connection=null,t=m.EMPTY):this._connection=t),t},e.prototype.refCount=function(){return ut()(this)},e}(R).prototype,dt={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:pt._subscribe},_isComplete:{value:pt._isComplete,writable:!0},getSubject:{value:pt.getSubject},connect:{value:pt.connect},refCount:{value:pt.refCount}},ft=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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}(j);function gt(t,e){return function(n){var r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new vt(r,e));var o=Object.create(n,dt);return o.source=n,o.subjectFactory=r,o}}var vt=function(){function t(t,e){this.subjectFactory=t,this.selector=e}return t.prototype.call=function(t,e){var n=this.selector,r=this.subjectFactory(),o=n(r).subscribe(t);return o.add(e.subscribe(r)),o},t}();function yt(){return new V}var mt="__parameters__";function _t(t,e,n){var r=function(t){return function(){for(var e=[],n=0;n ");else if("object"==typeof e){var i=[];for(var s in e)if(e.hasOwnProperty(s)){var a=e[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):Tt(a)))}o="{"+i.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+o+"]: "+t.replace(Xt,"\n ")}function ne(t,e){return new Error(ee(t,e,"StaticInjectorError"))}var re="ngDebugContext",oe="ngOriginalError",ie="ngErrorLogger",se=new Ut("AnalyzeForEntryComponents"),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({}),le=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt)}();function ue(t){return t[re]}function ce(t){return t[oe]}function he(t){for(var e=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return t.prototype.getInertBodyElement_XHR=function(t){t=""+t+"";try{t=encodeURI(t)}catch(r){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=""+t+"";try{var e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(n){return null}},t.prototype.getInertBodyElement_InertDocument=function(t){var e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},t.prototype.stripCustomNsAttrs=function(t){for(var e=t.attributes,n=e.length-1;0"),!0},t.prototype.endElement=function(t){var e=t.nodeName.toLowerCase();ke.hasOwnProperty(e)&&!xe.hasOwnProperty(e)&&(this.buf.push(""))},t.prototype.chars=function(t){this.buf.push(De(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}(),Me=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ne=/([^\#-~ |!])/g;function De(t){return t.replace(/&/g,"&").replace(Me,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ne,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}function je(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Ve=function(t){return 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",t}({}),Le=function(){return function(){}}(),ze=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ue=/^url\(([^)]+)\)$/,Fe=/([A-Z])/g;function He(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function Be(t){return!!t&&"function"==typeof t.then}function We(t){return!!t&&"function"==typeof t.subscribe}var Ge=null;function Ye(){if(!Ge){var t=Dt.Symbol;if(t&&t.iterator)Ge=t.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),n=0;n-1}(r)||"root"===o.providedIn&&r._def.isRoot))){var c=t._providers.length;return t._def.providers[c]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:c,token:e.token},t._providers[c]=Ar,t._providers[c]=Lr(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Vt(i)}}function Lr(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(Vr(t,n[0]));case 2:return new e(Vr(t,n[0]),Vr(t,n[1]));case 3:return new e(Vr(t,n[0]),Vr(t,n[1]),Vr(t,n[2]));default:for(var o=new Array(r),i=0;i=n.length)&&(e=n.length-1),e<0)return null;var r=n[e];return r.viewContainerParent=null,Br(n,e),Xn.dirtyParentQueries(r),Fr(r),r}function Ur(t,e,n){var r=e?fr(e,e.def.lastRenderRootNode):t.renderElement,o=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);xr(n,2,o,i,void 0)}function Fr(t){xr(t,3,null,null,void 0)}function Hr(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Br(t,e){e>=t.length-1?t.pop():t.splice(e,1)}var Wr=new Object;function Gr(t,e,n,r,o,i){return new Yr(t,e,n,r,o,i)}var Yr=function(t){function e(e,n,r,o,i,s){var a=t.call(this)||this;return a.selector=e,a.componentType=n,a._inputs=o,a._outputs=i,a.ngContentSelectors=s,a.viewDefFactory=r,a}return o(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){var t=[],e=this._inputs;for(var n in e)t.push({propName:n,templateName:e[n]});return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var t=[];for(var e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,r){if(!r)throw new Error("ngModule should be provided");var o=Cr(this.viewDefFactory),i=o.nodes[0].element.componentProvider.nodeIndex,s=Xn.createRootView(t,e||[],n,o,r,Wr),a=Zn(s,i).instance;return n&&s.renderer.setAttribute(qn(s,0).renderElement,"ng-version",_n.full),new qr(s,new Xr(s),a)},e}(en),qr=function(t){function e(e,n,r){var o=t.call(this)||this;return o._view=e,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o.hostView=n,o.changeDetectorRef=n,o.instance=r,o}return o(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return new pn(qn(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new eo(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}(tn);function Zr(t,e,n){return new $r(t,e,n)}var $r=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 pn(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new eo(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=dr(t),t=t.parent;return t?new eo(t,e):new eo(this._view,null)},enumerable:!0,configurable:!0}),t.prototype.clear=function(){for(var t=this._embeddedViews.length-1;t>=0;t--){var e=zr(this._data,t);Xn.destroyView(e)}},t.prototype.get=function(t){var e=this._embeddedViews[t];if(e){var n=new Xr(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 r=t.createEmbeddedView(e||{});return this.insert(r,n),r},t.prototype.createComponent=function(t,e,n,r,o){var i=n||this.parentInjector;o||t instanceof ln||(o=i.get(un));var s=t.create(i,r,void 0,o);return this.insert(s.hostView,e),s},t.prototype.insert=function(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n,r,o,i,s=t;return i=(n=this._data).viewContainer._embeddedViews,null==(r=e)&&(r=i.length),(o=s._view).viewContainerParent=this._view,Hr(i,r,o),function(t,e){var n=pr(e);if(n&&n!==t&&!(16&e.state)){e.state|=16;var r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(e),function(t,n){if(!(4&n.flags)){e.parent.def.nodeFlags|=4,n.flags|=4;for(var r=n.parent;r;)r.childFlags|=4,r=r.parent}}(0,e.parentNodeDef)}}(n,o),Xn.dirtyParentQueries(o),Ur(n,r>0?i[r-1]:null,o),s.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,r,o,i,s,a=this._embeddedViews.indexOf(t._view);return o=e,s=(i=(n=this._data).viewContainer._embeddedViews)[r=a],Br(i,r),null==o&&(o=i.length),Hr(i,o,s),Xn.dirtyParentQueries(s),Fr(s),Ur(n,o>0?i[o-1]:null,s),t},t.prototype.indexOf=function(t){return this._embeddedViews.indexOf(t._view)},t.prototype.remove=function(t){var e=zr(this._data,t);e&&Xn.destroyView(e)},t.prototype.detach=function(t){var e=zr(this._data,t);return e?new Xr(e):null},t}();function Qr(t){return new Xr(t)}var Xr=function(){function t(t){this._view=t,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){return xr(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(){ur(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{Xn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}},t.prototype.checkNoChanges=function(){Xn.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)),Xn.destroyView(this._view)},t.prototype.detachFromAppRef=function(){this._appRef=null,Fr(this._view),Xn.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 Kr(t,e){return new Jr(t,e)}var Jr=function(t){function e(e,n){var r=t.call(this)||this;return r._parentView=e,r._def=n,r}return o(e,t),e.prototype.createEmbeddedView=function(t){return new Xr(Xn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new pn(qn(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),e}(Vn);function to(t,e){return new eo(t,e)}var eo=function(){function t(t,e){this.view=t,this.elDef=e}return t.prototype.get=function(t,e){return void 0===e&&(e=Gt.THROW_IF_NOT_FOUND),Xn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:tr(t)},e)},t}();function no(t,e){var n=t.def.nodes[e];if(1&n.flags){var r=qn(t,n.nodeIndex);return n.element.template?r.template:r.renderElement}if(2&n.flags)return Yn(t,n.nodeIndex).renderText;if(20240&n.flags)return Zn(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function ro(t){return new oo(t.renderer)}var oo=function(){function t(t){this.delegate=t}return t.prototype.selectRootElement=function(t){return this.delegate.selectRootElement(t)},t.prototype.createElement=function(t,e){var n=h(Tr(e),2),r=this.delegate.createElement(n[1],n[0]);return t&&this.delegate.appendChild(t,r),r},t.prototype.createViewRoot=function(t){return t},t.prototype.createTemplateAnchor=function(t){var e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e},t.prototype.createText=function(t,e){var n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n},t.prototype.projectNodes=function(t,e){for(var n=0;n0,e.provider.value,e.provider.deps);if(e.outputs.length)for(var r=0;r0,r=e.provider;switch(201347067&e.flags){case 512:return Eo(t,e.parent,n,r.value,r.deps);case 1024:return function(t,e,n,r,o){var i=o.length;switch(i){case 0:return r();case 1:return r(ko(t,e,n,o[0]));case 2:return r(ko(t,e,n,o[0]),ko(t,e,n,o[1]));case 3:return r(ko(t,e,n,o[0]),ko(t,e,n,o[1]),ko(t,e,n,o[2]));default:for(var s=Array(i),a=0;a0&&(o=setTimeout(function(){r._callbacks=r._callbacks.filter(function(t){return t.timeoutId!==o}),t(r._didWork,r.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:o,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}(),yi=function(){function t(){this._applications=new Map,mi.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),mi.findTestabilityInTree(this,t,e)},s([a("design:paramtypes",[])],t)}(),mi=new(function(){function t(){}return t.prototype.addToWindow=function(t){},t.prototype.findTestabilityInTree=function(t,e,n){return null},t}()),_i=new Ut("AllowMultipleToken"),bi=function(){return function(t,e){this.name=t,this.token=e}}();function wi(t,e,n){void 0===n&&(n=[]);var r="Platform: "+e,o=new Ut(r);return function(e){void 0===e&&(e=[]);var i=Ci();if(!i||i.injector.get(_i,!1))if(t)t(n.concat(e).concat({provide:o,useValue:!0}));else{var s=n.concat(e).concat({provide:o,useValue:!0});!function(t){if(fi&&!fi.destroyed&&!fi.injector.get(_i,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");fi=t.get(xi);var e=t.get(Ho,null);e&&e.forEach(function(t){return t()})}(Gt.create({providers:s,name:r}))}return function(t){var e=Ci();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}(o)}}function Ci(){return fi&&!fi.destroyed?fi:null}var xi=function(){function t(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return t.prototype.bootstrapModuleFactory=function(t,e){var n,r=this,o="noop"===(n=e?e.ngZone:void 0)?new gi:("zone.js"===n?void 0:n)||new li({enableLongStackTrace:ge()}),i=[{provide:li,useValue:o}];return o.run(function(){var e=Gt.create({providers:i,parent:r.injector,name:t.moduleType.name}),n=t.create(e),s=n.injector.get(pe,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy(function(){return Oi(r._modules,n)}),o.runOutsideAngular(function(){return o.onError.subscribe({next:function(t){s.handleError(t)}})}),function(t,e,o){try{var i=((s=n.injector.get(Lo)).runInitializers(),s.donePromise.then(function(){return r._moduleDoBootstrap(n),n}));return Be(i)?i.catch(function(n){throw e.runOutsideAngular(function(){return t.handleError(n)}),n}):i}catch(a){throw e.runOutsideAngular(function(){return t.handleError(a)}),a}var s}(s,o)})},t.prototype.bootstrapModule=function(t,e){var n=this;void 0===e&&(e=[]);var r=Si({},e);return function(t,e,n){return t.get(ti).createCompiler([e]).compileModuleAsync(n)}(this.injector,r,t).then(function(t){return n.bootstrapModuleFactory(t,r)})},t.prototype._moduleDoBootstrap=function(t){var e=t.injector.get(Ei);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(function(t){return e.bootstrap(t)});else{if(!t.instance.ngDoBootstrap)throw new Error("The module "+Tt(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}();function Si(t,e){return Array.isArray(e)?e.reduce(Si,t):i({},t,e)}var Ei=function(){function t(t,e,n,r,o,i){var s=this;this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ge(),this._zone.onMicrotaskEmpty.subscribe({next:function(){s._zone.run(function(){s.tick()})}});var a=new R(function(t){s._stable=s._zone.isStable&&!s._zone.hasPendingMacrotasks&&!s._zone.hasPendingMicrotasks,s._zone.runOutsideAngular(function(){t.next(s._stable),t.complete()})}),l=new R(function(t){var e;s._zone.runOutsideAngular(function(){e=s._zone.onStable.subscribe(function(){li.assertNotInAngularZone(),ai(function(){s._stable||s._zone.hasPendingMacrotasks||s._zone.hasPendingMicrotasks||(s._stable=!0,t.next(!0))})})});var n=s._zone.onUnstable.subscribe(function(){li.assertInAngularZone(),s._stable&&(s._stable=!1,s._zone.runOutsideAngular(function(){t.next(!1)}))});return function(){e.unsubscribe(),n.unsubscribe()}});this.isStable=lt(a,l.pipe(function(t){return ut()(gt(yt)(t))}))}var e;return e=t,t.prototype.bootstrap=function(t,e){var n,r=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 en?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);var o=n instanceof ln?null:this._injector.get(un),i=n.create(Gt.NULL,[],e||n.selector,o);i.onDestroy(function(){r._unloadComponent(i)});var s=i.injector.get(vi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ge()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i},t.prototype.tick=function(){var t,n,r,o,i=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var s=e._tickScope();try{this._runningTick=!0;try{for(var a=c(this._views),l=a.next();!l.done;l=a.next())l.value.detectChanges()}catch(p){t={error:p}}finally{try{l&&!l.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}if(this._enforceNoNewChanges)try{for(var u=c(this._views),h=u.next();!h.done;h=u.next())h.value.checkNoChanges()}catch(d){r={error:d}}finally{try{h&&!h.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}catch(f){this._zone.runOutsideAngular(function(){return i._exceptionHandler.handleError(f)})}finally{this._runningTick=!1,ii(s)}},t.prototype.attachView=function(t){var e=t;this._views.push(e),e.attachToAppRef(this)},t.prototype.detachView=function(t){var e=t;Oi(this._views,e),e.detachFromAppRef()},t.prototype._loadComponent=function(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach(function(e){return e(t)})},t.prototype._unloadComponent=function(t){this.detachView(t.hostView),Oi(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._tickScope=oi("ApplicationRef#tick()"),t}();function Oi(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}var ki=function(){return function(){}}(),Pi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Ti=function(){function t(t,e){this._compiler=t,this._config=e||Pi}return t.prototype.load=function(t){return this._compiler instanceof Jo?this.loadFactory(t):this.loadAndCompile(t)},t.prototype.loadAndCompile=function(t){var e=this,r=h(t.split("#"),2),o=r[0],i=r[1];return void 0===i&&(i="default"),n("zn8P")(o).then(function(t){return t[i]}).then(function(t){return Ii(t,o,i)}).then(function(t){return e._compiler.compileModuleAsync(t)})},t.prototype.loadFactory=function(t){var e=h(t.split("#"),2),r=e[0],o=e[1],i="NgFactory";return void 0===o&&(o="default",i=""),n("zn8P")(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(t){return t[o+i]}).then(function(t){return Ii(t,r,o)})},t}();function Ii(t,e,n){if(!t)throw new Error("Cannot find '"+n+"' in '"+e+"'");return t}var Ri=function(){return function(t,e){this.name=t,this.callback=e}}(),Ai=function(){function t(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Mi&&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}(),Mi=function(t){function e(e,n,r){var o=t.call(this,e,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=e,o}return o(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,p([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,r){e.childNodes.forEach(function(e){e instanceof Mi&&(n(e)&&r.push(e),t(e,n,r))})}(this,t,e),e},e.prototype.queryAllNodes=function(t){var e=[];return function t(e,n,r){e instanceof Mi&&e.childNodes.forEach(function(e){n(e)&&r.push(e),e instanceof Mi&&t(e,n,r)})}(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}(Ai),Ni=new Map,Di=function(t){return Ni.get(t)||null};function ji(t){Ni.set(t.nativeNode,t)}var Vi=wi(null,"core",[{provide:Bo,useValue:"unknown"},{provide:xi,deps:[Gt]},{provide:yi,deps:[]},{provide:Go,deps:[]}]),Li=new Ut("LocaleId");function zi(){return Dn}function Ui(){return jn}function Fi(t){return t||"en-US"}function Hi(t){var e=[];return t.onStable.subscribe(function(){for(;e.length;)e.pop()()}),function(t){e.push(t)}}var Bi=function(){return function(t){}}();function Wi(t,e,n,r,o,i){t|=1;var s=mr(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s.matchedQueries,matchedQueryIds:s.matchedQueryIds,references:s.references,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?Cr(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Kn},provider:null,text:null,query:null,ngContent:null}}function Gi(t,e,n,r,o,i,s,a,l,u,c,p){var d;void 0===s&&(s=[]),u||(u=Kn);var f=mr(n),g=f.matchedQueries,v=f.references,y=f.matchedQueryIds,m=null,_=null;i&&(m=(d=h(Tr(i),2))[0],_=d[1]),a=a||[];for(var b=new Array(a.length),w=0;w0)u=g,ls(g)||(c=g);else for(;u&&f===u.nodeIndex+u.childCount;){var m=u.parent;m&&(m.childFlags|=u.childFlags,m.childMatchedQueries|=u.childMatchedQueries),c=(u=m)&&ls(u)?u.renderParent:u}}return{factory:null,nodeFlags:s,rootNodeFlags:a,nodeMatchedQueries:l,flags:t,nodes:e,updateDirectives:n||Kn,updateRenderer:r||Kn,handleEvent:function(t,n,r,o){return e[n].element.handleEvent(t,r,o)},bindingCount:o,outputCount:i,lastRenderRootNode:d}}function ls(t){return 0!=(1&t.flags)&&null===t.element.name}function us(t,e,n){var r=e.element&&e.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.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 o=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=o&&e.nodeIndex+e.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.nodeIndex+"!")}}function cs(t,e,n,r){var o=ds(t.root,t.renderer,t,e,n);return fs(o,t.component,r),gs(o),o}function hs(t,e,n){var r=ds(t,t.renderer,null,null,e);return fs(r,n,n),gs(r),r}function ps(t,e,n,r){var o,i=e.element.componentRendererType;return o=i?t.root.rendererFactory.createRenderer(r,i):t.root.renderer,ds(t.root,o,t,e.element.componentProvider,n)}function ds(t,e,n,r,o){var i=new Array(o.nodes.length),s=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(o.bindingCount),disposables:s,initIndex:-1}}function fs(t,e,n){t.component=e,t.context=n}function gs(t){var e;gr(t)&&(e=qn(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);for(var n=t.def,r=t.nodes,o=0;o0&&$i(t,e,0,n)&&(d=!0),p>1&&$i(t,e,1,r)&&(d=!0),p>2&&$i(t,e,2,o)&&(d=!0),p>3&&$i(t,e,3,i)&&(d=!0),p>4&&$i(t,e,4,s)&&(d=!0),p>5&&$i(t,e,5,a)&&(d=!0),p>6&&$i(t,e,6,l)&&(d=!0),p>7&&$i(t,e,7,u)&&(d=!0),p>8&&$i(t,e,8,c)&&(d=!0),p>9&&$i(t,e,9,h)&&(d=!0),d}(t,e,n,r,o,i,s,a,l,u,c,h);case 2:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=!1,d=e.bindings,f=d.length;if(f>0&&ar(t,e,0,n)&&(p=!0),f>1&&ar(t,e,1,r)&&(p=!0),f>2&&ar(t,e,2,o)&&(p=!0),f>3&&ar(t,e,3,i)&&(p=!0),f>4&&ar(t,e,4,s)&&(p=!0),f>5&&ar(t,e,5,a)&&(p=!0),f>6&&ar(t,e,6,l)&&(p=!0),f>7&&ar(t,e,7,u)&&(p=!0),f>8&&ar(t,e,8,c)&&(p=!0),f>9&&ar(t,e,9,h)&&(p=!0),p){var g=e.text.prefix;f>0&&(g+=ss(n,d[0])),f>1&&(g+=ss(r,d[1])),f>2&&(g+=ss(o,d[2])),f>3&&(g+=ss(i,d[3])),f>4&&(g+=ss(s,d[4])),f>5&&(g+=ss(a,d[5])),f>6&&(g+=ss(l,d[6])),f>7&&(g+=ss(u,d[7])),f>8&&(g+=ss(c,d[8])),f>9&&(g+=ss(h,d[9]));var v=Yn(t,e.nodeIndex).renderText;t.renderer.setValue(v,g)}return p}(t,e,n,r,o,i,s,a,l,u,c,h);case 16384:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=Zn(t,e.nodeIndex),d=p.instance,f=!1,g=void 0,v=e.bindings.length;return v>0&&sr(t,e,0,n)&&(f=!0,g=To(t,p,e,0,n,g)),v>1&&sr(t,e,1,r)&&(f=!0,g=To(t,p,e,1,r,g)),v>2&&sr(t,e,2,o)&&(f=!0,g=To(t,p,e,2,o,g)),v>3&&sr(t,e,3,i)&&(f=!0,g=To(t,p,e,3,i,g)),v>4&&sr(t,e,4,s)&&(f=!0,g=To(t,p,e,4,s,g)),v>5&&sr(t,e,5,a)&&(f=!0,g=To(t,p,e,5,a,g)),v>6&&sr(t,e,6,l)&&(f=!0,g=To(t,p,e,6,l,g)),v>7&&sr(t,e,7,u)&&(f=!0,g=To(t,p,e,7,u,g)),v>8&&sr(t,e,8,c)&&(f=!0,g=To(t,p,e,8,c,g)),v>9&&sr(t,e,9,h)&&(f=!0,g=To(t,p,e,9,h,g)),g&&d.ngOnChanges(g),65536&e.flags&&Gn(t,256,e.nodeIndex)&&d.ngOnInit(),262144&e.flags&&d.ngDoCheck(),f}(t,e,n,r,o,i,s,a,l,u,c,h);case 32:case 64:case 128:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=e.bindings,d=!1,f=p.length;if(f>0&&ar(t,e,0,n)&&(d=!0),f>1&&ar(t,e,1,r)&&(d=!0),f>2&&ar(t,e,2,o)&&(d=!0),f>3&&ar(t,e,3,i)&&(d=!0),f>4&&ar(t,e,4,s)&&(d=!0),f>5&&ar(t,e,5,a)&&(d=!0),f>6&&ar(t,e,6,l)&&(d=!0),f>7&&ar(t,e,7,u)&&(d=!0),f>8&&ar(t,e,8,c)&&(d=!0),f>9&&ar(t,e,9,h)&&(d=!0),d){var g=$n(t,e.nodeIndex),v=void 0;switch(201347067&e.flags){case 32:v=new Array(p.length),f>0&&(v[0]=n),f>1&&(v[1]=r),f>2&&(v[2]=o),f>3&&(v[3]=i),f>4&&(v[4]=s),f>5&&(v[5]=a),f>6&&(v[6]=l),f>7&&(v[7]=u),f>8&&(v[8]=c),f>9&&(v[9]=h);break;case 64:v={},f>0&&(v[p[0].name]=n),f>1&&(v[p[1].name]=r),f>2&&(v[p[2].name]=o),f>3&&(v[p[3].name]=i),f>4&&(v[p[4].name]=s),f>5&&(v[p[5].name]=a),f>6&&(v[p[6].name]=l),f>7&&(v[p[7].name]=u),f>8&&(v[p[8].name]=c),f>9&&(v[p[9].name]=h);break;case 128:var y=n;switch(f){case 1:v=y.transform(n);break;case 2:v=y.transform(r);break;case 3:v=y.transform(r,o);break;case 4:v=y.transform(r,o,i);break;case 5:v=y.transform(r,o,i,s);break;case 6:v=y.transform(r,o,i,s,a);break;case 7:v=y.transform(r,o,i,s,a,l);break;case 8:v=y.transform(r,o,i,s,a,l,u);break;case 9:v=y.transform(r,o,i,s,a,l,u,c);break;case 10:v=y.transform(r,o,i,s,a,l,u,c,h)}}g.value=v}return d}(t,e,n,r,o,i,s,a,l,u,c,h);default:throw"unreachable"}}(t,e,r,o,i,s,a,l,u,c,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){for(var r=!1,o=0;o0&&lr(t,e,0,n),p>1&&lr(t,e,1,r),p>2&&lr(t,e,2,o),p>3&&lr(t,e,3,i),p>4&&lr(t,e,4,s),p>5&&lr(t,e,5,a),p>6&&lr(t,e,6,l),p>7&&lr(t,e,7,u),p>8&&lr(t,e,8,c),p>9&&lr(t,e,9,h)}(t,e,r,o,i,s,a,l,u,c,h,p):function(t,e,n){for(var r=0;r0){var i=new Set(t.modules);Vs.forEach(function(e,r){if(i.has(kt(r).providedIn)){var o={token:r,flags:e.flags|(n?4096:0),deps:_r(e.deps),value:e.value,index:t.providers.length};t.providers.push(o),t.providersByKey[tr(r)]=o}})}}(t=t.factory(function(){return Kn})),t):t}(r))}var js=new Map,Vs=new Map,Ls=new Map;function zs(t){var e;js.set(t.token,t),"function"==typeof t.token&&(e=kt(t.token))&&"function"==typeof e.providedIn&&Vs.set(t.token,t)}function Us(t,e){var n=Cr(e.viewDefFactory),r=Cr(n.nodes[0].element.componentView);Ls.set(t,r)}function Fs(){js.clear(),Vs.clear(),Ls.clear()}function Hs(t){if(0===js.size)return t;var e=function(t){for(var e=[],n=null,r=0;r0?va(t,e[n]):e[n]:null}var ya=n("Wgwc"),ma=function(){function t(){if(this.build=ya(),!t.init){var e=ya();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][APP] "+fa+" - "+t+" | "+e):console[n].apply(console,["%c[ACA]%c[APP] %c"+fa+" - "+t+" | "+e].concat(["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0",t.init=!1,t}(),_a=function(){return function(){this.show_menu=!0}}(),ba=function(){return function(){}}(),wa=new Ut("Location Initialized"),Ca=function(){return function(){}}(),xa=new Ut("appBaseHref"),Sa=function(){function t(t,n){var r=this;this._subject=new No,this._urlChangeListeners=[],this._platformStrategy=t;var o=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=e.stripTrailingSlash(Ea(o)),this._platformStrategy.onPopState(function(t){r._subject.emit({url:r.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,n){return void 0===n&&(n=""),this.path()==this.normalize(t+e.normalizeQueryParams(n))},t.prototype.normalize=function(t){return e.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,Ea(t)))},t.prototype.prepareExternalUrl=function(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)},t.prototype.go=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.pushState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},t.prototype.replaceState=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.replaceState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},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=function(t){return t&&"?"!==t[0]?"?"+t:t},t.joinWithSlash=function(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},t.stripTrailingSlash=function(t){var e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)},t}();function Ea(t){return t.replace(/\/index.html$/,"")}var Oa=function(t){function e(e,n){var r=t.call(this)||this;return r._platformLocation=e,r._baseHref="",null!=n&&(r._baseHref=n),r}return o(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=Sa.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(Ca),ka=function(t){function e(e,n){var r=t.call(this)||this;if(r._platformLocation=e,null==n&&(n=r._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 r._baseHref=n,r}return o(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 Sa.joinWithSlash(this._baseHref,t)},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.pathname+Sa.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?""+e+n:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(Ca),Pa=void 0,Ta=["en",[["a","p"],["AM","PM"],Pa],[["AM","PM"],Pa,Pa],[["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"]],Pa,[["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"]],Pa,[["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}",Pa,"{1} 'at' {0}",Pa],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}],Ia={},Ra=function(t){return 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",t}({}),Aa=new Ut("UseV4Plurals"),Ma=function(){return function(){}}(),Na=function(t){function e(e,n){var r=t.call(this)||this;return r.locale=e,r.deprecatedPluralFn=n,r}return o(e,t),e.prototype.getPluralCategory=function(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){var e=t.toLowerCase().replace(/_/g,"-"),n=Ia[e];if(n)return n;var r=e.split("-")[0];if(n=Ia[r])return n;if("en"===r)return Ta;throw new Error('Missing locale data for the locale "'+t+'".')}(t)[18]}(e||this.locale)(t)){case Ra.Zero:return"zero";case Ra.One:return"one";case Ra.Two:return"two";case Ra.Few:return"few";case Ra.Many:return"many";default:return"other"}},e}(Ma);function Da(t,e){var n,r;e=encodeURIComponent(e);try{for(var o=c(t.split(";")),i=o.next();!i.done;i=o.next()){var s=i.value,a=s.indexOf("="),l=h(-1==a?[s,""]:[s.slice(0,a),s.slice(a+1)],2),u=l[1];if(l[0].trim()===e)return decodeURIComponent(u)}}catch(p){n={error:p}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}var ja=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(un);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(n.injector)}else this._moduleRef=null;var r=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(sn)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(r,this._viewContainerRef.length,e,this.ngComponentOutletContent)}},t.prototype.ngOnDestroy=function(){this._moduleRef&&this._moduleRef.destroy()},t}(),Va=function(){function t(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}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}(),La=function(){function t(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,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){ge()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(t)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#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(r){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;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,r,o){if(null==t.previousIndex){var i=e._viewContainer.createEmbeddedView(e._template,new Va(null,e._ngForOf,-1,-1),o),s=new za(t,i);n.push(s)}else null==o?e._viewContainer.remove(r):(i=e._viewContainer.get(r),e._viewContainer.move(i,o),s=new za(t,i),n.push(s))});for(var r=0;r0)for(var n=this.count>=this.total?this.total:this.count,r=this.ring,o=0;o=2;return function(r){return r.pipe(t?dl(function(e,n){return t(e,n,r)}):st,ml(1),n?Ol(e):Sl(function(){return new al}))}}function Il(t){return function(e){var n=new Rl(t),r=e.lift(n);return n.caught=r}}var Rl=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new Al(t,this.selector,this.caught))},t}(),Al=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.selector=n,o.caught=r,o}return o(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(o){return void t.prototype.error.call(this,o)}this._unsubscribeAndRecycle();var r=new U(this,void 0,void 0);this.add(r),Q(this,n,void 0,void 0,r)}},e}(X);function Ml(t){return function(e){return 0===t?nl():e.lift(new Nl(t))}}var Nl=function(){function t(t){if(this.total=t,this.total<0)throw new yl}return t.prototype.call=function(t,e){return e.subscribe(new Dl(t,this.total))},t}(),Dl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.total=n,r.count=0,r}return o(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}(E);function jl(t,e){var n=arguments.length>=2;return function(r){return r.pipe(t?dl(function(e,n){return t(e,n,r)}):st,Ml(1),n?Ol(e):Sl(function(){return new al}))}}var Vl=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new Ll(t,this.predicate,this.thisArg,this.source))},t}(),Ll=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.predicate=n,i.thisArg=r,i.source=o,i.index=0,i.thisArg=r||i,i}return o(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(E);function zl(t,e){return"function"==typeof e?function(n){return n.pipe(zl(function(n,r){return nt(t(n,r)).pipe(K(function(t,o){return e(n,t,r,o)}))}))}:function(e){return e.lift(new Ul(t))}}var Ul=function(){function t(t){this.project=t}return t.prototype.call=function(t,e){return e.subscribe(new Fl(t,this.project))},t}(),Fl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.project=n,r.index=0,r}return o(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(r){return void this.destination.error(r)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var r=this.innerSubscription;r&&r.unsubscribe();var o=new U(this,void 0,void 0);this.destination.add(o),this.innerSubscription=Q(this,t,e,n,o)},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,r,o){this.destination.next(e)},e}(X);function Hl(){for(var t=[],e=0;e0?et(t,n):nl(n):rl(t[0]),e)}}function Wl(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new Gl(t,e,n))}}var Gl=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new Yl(t,this.accumulator,this.seed,this.hasSeed))},t}(),Yl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.accumulator=n,i._seed=r,i.hasSeed=o,i.index=0,i}return o(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(r){this.destination.error(r)}this.seed=e,this.destination.next(e)},e}(E);function ql(t,e){return rt(t,e,1)}var Zl=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new $l(t,this.callback))},t}(),$l=function(t){function e(e,n){var r=t.call(this,e)||this;return r.add(new m(n)),r}return o(e,t),e}(E),Ql=null;function Xl(){return Ql}var Kl,Jl=function(t){function e(){var e=t.call(this)||this;e._animationPrefix=null,e._transitionEnd=null;try{var n=e.createElement("div",document);if(null!=e.getStyle(n,"animationName"))e._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o0},e.prototype.tagName=function(t){return t.tagName},e.prototype.attributeMap=function(t){for(var e=new Map,n=t.attributes,r=0;r0;s||(s=t[i]=[]);var l=Vu(e)?Zone.root:Zone.current;if(0===s.length)s.push({zone:l,handler:o});else{for(var u=!1,c=0;c-1},e}(vu),Gu=["alt","control","meta","shift"],Yu={alt:function(t){return t.altKey},control:function(t){return t.ctrlKey},meta:function(t){return t.metaKey},shift:function(t){return t.shiftKey}},qu=function(t){function e(e){return t.call(this,e)||this}var n;return o(e,t),n=e,e.prototype.supports=function(t){return null!=n.parseEventName(t)},e.prototype.addEventListener=function(t,e,r){var o=n.parseEventName(e),i=n.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return Xl().onAndCancel(t,o.domEventName,i)})},e.parseEventName=function(t){var e=t.toLowerCase().split("."),r=e.shift();if(0===e.length||"keydown"!==r&&"keyup"!==r)return null;var o=n._normalizeKey(e.pop()),i="";if(Gu.forEach(function(t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),i+=t+".")}),i+=o,0!=e.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s},e.getEventFullKey=function(t){var e="",n=Xl().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),Gu.forEach(function(r){r!=n&&(0,Yu[r])(t)&&(e+=r+".")}),e+=n},e.eventCallback=function(t,e,r){return function(o){n.getEventFullKey(o)===t&&r.runGuarded(function(){return e(o)})}},e._normalizeKey=function(t){switch(t){case"esc":return"escape";default:return t}},e}(vu),Zu=function(){return function(){}}(),$u=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n}return o(e,t),e.prototype.sanitize=function(t,e){if(null==e)return null;switch(t){case Ve.NONE:return e;case Ve.HTML:return e instanceof Xu?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){var n=null;try{Ce=Ce||new ve(t);var r=e?String(e):"";n=Ce.getInertBodyElement(r);var o=5,i=r;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=Ce.getInertBodyElement(r)}while(r!==i);var s=new Ae,a=s.sanitizeChildren(je(n)||n);return ge()&&s.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n)for(var l=je(n)||n;l.firstChild;)l.removeChild(l.firstChild)}}(this._doc,String(e)));case Ve.STYLE:return e instanceof Ku?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";var e=t.match(Ue);return e&&_e(e[1])===e[1]||t.match(ze)&&function(t){for(var e=!0,n=!0,r=0;rt.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||r.length0?t[t.length-1]:null}function zc(t,e){for(var n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Uc(t){return We(t)?t:Be(t)?nt(Promise.resolve(t)):ol(t)}function Fc(t,e,n){return n?function(t,e){return jc(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!Gc(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(var r in n.children){if(!e.children[r])return!1;if(!t(e.children[r],n.children[r]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(function(n){return e[n]===t[n]})}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,r,o){if(n.segments.length>o.length)return!!Gc(s=n.segments.slice(0,o.length),o)&&!r.hasChildren();if(n.segments.length===o.length){if(!Gc(n.segments,o))return!1;for(var i in r.children){if(!n.children[i])return!1;if(!t(n.children[i],r.children[i]))return!1}return!0}var s=o.slice(0,n.segments.length),a=o.slice(n.segments.length);return!!Gc(n.segments,s)&&!!n.children[Ec]&&e(n.children[Ec],r,a)}(e,n,n.segments)}(t.root,e.root)}var Hc=function(){function t(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}return Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=kc(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return $c.serialize(this)},t}(),Bc=function(){function t(t,e){var n=this;this.segments=t,this.children=e,this.parent=null,zc(e,function(t,e){return t.parent=n})}return t.prototype.hasChildren=function(){return this.numberOfChildren>0},Object.defineProperty(t.prototype,"numberOfChildren",{get:function(){return Object.keys(this.children).length},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return Qc(this)},t}(),Wc=function(){function t(t,e){this.path=t,this.parameters=e}return Object.defineProperty(t.prototype,"parameterMap",{get:function(){return this._parameterMap||(this._parameterMap=kc(this.parameters)),this._parameterMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return nh(this)},t}();function Gc(t,e){return t.length===e.length&&t.every(function(t,n){return t.path===e[n].path})}function Yc(t,e){var n=[];return zc(t.children,function(t,r){r===Ec&&(n=n.concat(e(t,r)))}),zc(t.children,function(t,r){r!==Ec&&(n=n.concat(e(t,r)))}),n}var qc=function(){return function(){}}(),Zc=function(){function t(){}return t.prototype.parse=function(t){var e=new ah(t);return new Hc(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())},t.prototype.serialize=function(t){var e,n;return"/"+function t(e,n){if(!e.hasChildren())return Qc(e);if(n){var r=e.children[Ec]?t(e.children[Ec],!1):"",o=[];return zc(e.children,function(e,n){n!==Ec&&o.push(n+":"+t(e,!1))}),o.length>0?r+"("+o.join("//")+")":r}var i=Yc(e,function(n,r){return r===Ec?[t(e.children[Ec],!1)]:[r+":"+t(n,!1)]});return Qc(e)+"/("+i.join("//")+")"}(t.root,!0)+(e=t.queryParams,(n=Object.keys(e).map(function(t){var n=e[t];return Array.isArray(n)?n.map(function(e){return Kc(t)+"="+Kc(e)}).join("&"):Kc(t)+"="+Kc(n)})).length?"?"+n.join("&"):"")+("string"==typeof t.fragment?"#"+encodeURI(t.fragment):"")},t}(),$c=new Zc;function Qc(t){return t.segments.map(function(t){return nh(t)}).join("/")}function Xc(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Kc(t){return Xc(t).replace(/%3B/gi,";")}function Jc(t){return Xc(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function th(t){return decodeURIComponent(t)}function eh(t){return th(t.replace(/\+/g,"%20"))}function nh(t){return""+Jc(t.path)+(e=t.parameters,Object.keys(e).map(function(t){return";"+Jc(t)+"="+Jc(e[t])}).join(""));var e}var rh=/^[^\/()?;=#]+/;function oh(t){var e=t.match(rh);return e?e[0]:""}var ih=/^[^=?&#]+/,sh=/^[^?&#]+/,ah=function(){function t(t){this.url=t,this.remaining=t}return t.prototype.parseRootSegment=function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Bc([],{}):new Bc([],this.parseChildren())},t.prototype.parseQueryParams=function(){var t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t},t.prototype.parseFragment=function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null},t.prototype.parseChildren=function(){if(""===this.remaining)return{};this.consumeOptional("/");var t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());var e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));var n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[Ec]=new Bc(t,e)),n},t.prototype.parseSegment=function(){var t=oh(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '"+this.remaining+"'.");return this.capture(t),new Wc(th(t),this.parseMatrixParams())},t.prototype.parseMatrixParams=function(){for(var t={};this.consumeOptional(";");)this.parseParam(t);return t},t.prototype.parseParam=function(t){var e=oh(this.remaining);if(e){this.capture(e);var n="";if(this.consumeOptional("=")){var r=oh(this.remaining);r&&this.capture(n=r)}t[th(e)]=th(n)}},t.prototype.parseQueryParam=function(t){var e,n=(e=this.remaining.match(ih))?e[0]:"";if(n){this.capture(n);var r="";if(this.consumeOptional("=")){var o=function(t){var e=t.match(sh);return e?e[0]:""}(this.remaining);o&&this.capture(r=o)}var i=eh(n),s=eh(r);if(t.hasOwnProperty(i)){var a=t[i];Array.isArray(a)||(t[i]=a=[a]),a.push(s)}else t[i]=s}},t.prototype.parseParens=function(t){var e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var n=oh(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error("Cannot parse url '"+this.url+"'");var o=void 0;n.indexOf(":")>-1?(o=n.substr(0,n.indexOf(":")),this.capture(o),this.capture(":")):t&&(o=Ec);var i=this.parseChildren();e[o]=1===Object.keys(i).length?i[Ec]:new Bc([],i),this.consumeOptional("//")}return e},t.prototype.peekStartsWith=function(t){return this.remaining.startsWith(t)},t.prototype.consumeOptional=function(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)},t.prototype.capture=function(t){if(!this.consumeOptional(t))throw new Error('Expected "'+t+'".')},t}(),lh=function(){function t(t){this._root=t}return Object.defineProperty(t.prototype,"root",{get:function(){return this._root.value},enumerable:!0,configurable:!0}),t.prototype.parent=function(t){var e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null},t.prototype.children=function(t){var e=uh(t,this._root);return e?e.children.map(function(t){return t.value}):[]},t.prototype.firstChild=function(t){var e=uh(t,this._root);return e&&e.children.length>0?e.children[0].value:null},t.prototype.siblings=function(t){var e=ch(t,this._root);return e.length<2?[]:e[e.length-2].children.map(function(t){return t.value}).filter(function(e){return e!==t})},t.prototype.pathFromRoot=function(t){return ch(t,this._root).map(function(t){return t.value})},t}();function uh(t,e){var n,r;if(t===e.value)return e;try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=uh(t,i.value);if(s)return s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}function ch(t,e){var n,r;if(t===e.value)return[e];try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=ch(t,i.value);if(s.length)return s.unshift(e),s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return[]}var hh=function(){function t(t,e){this.value=t,this.children=e}return t.prototype.toString=function(){return"TreeNode("+this.value+")"},t}();function ph(t){var e={};return t&&t.children.forEach(function(t){return e[t.value.outlet]=t}),e}var dh=function(t){function e(e,n){var r=t.call(this,e)||this;return r.snapshot=n,_h(r,e),r}return o(e,t),e.prototype.toString=function(){return this.snapshot.toString()},e}(lh);function fh(t,e){var n=function(t,e){var n=new yh([],{},{},"",{},Ec,e,null,t.root,-1,{});return new mh("",new hh(n,[]))}(t,e),r=new il([new Wc("",{})]),o=new il({}),i=new il({}),s=new il({}),a=new il(""),l=new gh(r,o,s,a,i,Ec,e,n.root);return l.snapshot=n.root,new dh(new hh(l,[]),n)}var gh=function(){function t(t,e,n,r,o,i,s,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this._futureSnapshot=a}return Object.defineProperty(t.prototype,"routeConfig",{get:function(){return this._futureSnapshot.routeConfig},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=this.params.pipe(K(function(t){return kc(t)}))),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(function(t){return kc(t)}))),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return this.snapshot?this.snapshot.toString():"Future("+this._futureSnapshot+")"},t}();function vh(t,e){void 0===e&&(e="emptyOnly");var n=t.pathFromRoot,r=0;if("always"!==e)for(r=n.length-1;r>=1;){var o=n[r],s=n[r-1];if(o.routeConfig&&""===o.routeConfig.path)r--;else{if(s.component)break;r--}}return function(t){return t.reduce(function(t,e){return{params:i({},t.params,e.params),data:i({},t.data,e.data),resolve:i({},t.resolve,e._resolvedData)}},{params:{},data:{},resolve:{}})}(n.slice(r))}var yh=function(){function t(t,e,n,r,o,i,s,a,l,u,c){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this.routeConfig=a,this._urlSegment=l,this._lastPathIndex=u,this._resolve=c}return Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=kc(this.params)),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=kc(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return"Route(url:'"+this.url.map(function(t){return t.toString()}).join("/")+"', path:'"+(this.routeConfig?this.routeConfig.path:"")+"')"},t}(),mh=function(t){function e(e,n){var r=t.call(this,n)||this;return r.url=e,_h(r,n),r}return o(e,t),e.prototype.toString=function(){return bh(this._root)},e}(lh);function _h(t,e){e.value._routerState=t,e.children.forEach(function(e){return _h(t,e)})}function bh(t){var e=t.children.length>0?" { "+t.children.map(bh).join(", ")+" } ":"";return""+t.value+e}function wh(t){if(t.snapshot){var e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,jc(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),jc(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(var n=0;n0&&xh(n[0]))throw new Error("Root segment cannot have matrix parameters");var r=n.find(function(t){return"object"==typeof t&&null!=t&&t.outlets});if(r&&r!==Lc(n))throw new Error("{outlets:{}} has to be the last command")}return t.prototype.toRoot=function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]},t}(),Oh=function(){return function(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}();function kh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[Ec]:""+t}function Ph(t,e,n){if(t||(t=new Bc([],{})),0===t.segments.length&&t.hasChildren())return Th(t,e,n);var r=function(t,e,n){for(var r=0,o=e,i={match:!1,pathIndex:0,commandIndex:0};o=n.length)return i;var s=t.segments[o],a=kh(n[r]),l=r0&&void 0===a)break;if(a&&l&&"object"==typeof l&&void 0===l.outlets){if(!Mh(a,l,s))return i;r+=2}else{if(!Mh(a,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(t,e,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndex0?new Bc([],((r={})[Ec]=t,r)):t;return new Hc(o,e,n)},t.prototype.expandSegmentGroup=function(t,e,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(K(function(t){return new Bc([],t)})):this.expandSegment(t,n,e,n.segments,r,!0)},t.prototype.expandChildren=function(t,e,n){var r=this;return function(n,o){if(0===Object.keys(n).length)return ol({});var i=[],s=[],a={};return zc(n,function(n,o){var l,u,c=(l=o,u=n,r.expandSegmentGroup(t,e,u,l)).pipe(K(function(t){return a[o]=t}));o===Ec?i.push(c):s.push(c)}),ol.apply(null,i.concat(s)).pipe(pl(),Tl(),K(function(){return a}))}(n.children)},t.prototype.expandSegment=function(t,e,n,r,o,i){var s=this;return ol.apply(void 0,p(n)).pipe(K(function(a){return s.expandSegmentAgainstRoute(t,e,n,a,r,o,i).pipe(Il(function(t){if(t instanceof Lh)return ol(null);throw t}))}),pl(),jl(function(t){return!!t}),Il(function(t,n){if(t instanceof al||"EmptyError"===t.name){if(s.noLeftoversInUrl(e,r,o))return ol(new Bc([],{}));throw new Lh(e)}throw t}))},t.prototype.noLeftoversInUrl=function(t,e,n){return 0===e.length&&!t.children[n]},t.prototype.expandSegmentAgainstRoute=function(t,e,n,r,o,i,s){return qh(r)!==i?Uh(e):void 0===r.redirectTo?this.matchSegmentAgainstRoute(t,e,r,o):s&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i):Uh(e)},t.prototype.expandSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,r,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i)},t.prototype.expandWildCardWithParamsAgainstRouteUsingRedirect=function(t,e,n,r){var o=this,i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Fh(i):this.lineralizeSegments(n,i).pipe(rt(function(n){var i=new Bc(n,{});return o.expandSegment(t,i,e,n,r,!1)}))},t.prototype.expandRegularSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){var s=this,a=Wh(e,r,o),l=a.consumedSegments,u=a.lastChild,c=a.positionalParamSegments;if(!a.matched)return Uh(e);var h=this.applyRedirectCommands(l,r.redirectTo,c);return r.redirectTo.startsWith("/")?Fh(h):this.lineralizeSegments(r,h).pipe(rt(function(r){return s.expandSegment(t,e,n,r.concat(o.slice(u)),i,!1)}))},t.prototype.matchSegmentAgainstRoute=function(t,e,n,r){var o=this;if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(K(function(t){return n._loadedConfig=t,new Bc(r,{})})):ol(new Bc(r,{}));var s=Wh(e,n,r),a=s.consumedSegments,l=s.lastChild;if(!s.matched)return Uh(e);var u=r.slice(l);return this.getChildConfig(t,n,r).pipe(rt(function(t){var n=t.module,r=t.routes,s=function(t,e,n,r){return n.length>0&&function(t,e,n){return r.some(function(n){return Yh(t,e,n)&&qh(n)!==Ec})}(t,n)?{segmentGroup:Gh(new Bc(e,function(t,e){var n,r,o={};o[Ec]=e;try{for(var i=c(t),s=i.next();!s.done;s=i.next()){var a=s.value;""===a.path&&qh(a)!==Ec&&(o[qh(a)]=new Bc([],{}))}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o}(r,new Bc(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return r.some(function(n){return Yh(t,e,n)})}(t,n)?{segmentGroup:Gh(new Bc(t.segments,function(t,e,n,r){var o,s,a={};try{for(var l=c(n),u=l.next();!u.done;u=l.next()){var h=u.value;Yh(t,e,h)&&!r[qh(h)]&&(a[qh(h)]=new Bc([],{}))}}catch(p){o={error:p}}finally{try{u&&!u.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}return i({},r,a)}(t,n,r,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,a,u,r),l=s.segmentGroup,h=s.slicedSegments;return 0===h.length&&l.hasChildren()?o.expandChildren(n,r,l).pipe(K(function(t){return new Bc(a,t)})):0===r.length&&0===h.length?ol(new Bc(a,{})):o.expandSegment(n,l,r,h,Ec,!0).pipe(K(function(t){return new Bc(a.concat(t.segments),t.children)}))}))},t.prototype.getChildConfig=function(t,e,n){var r=this;return e.children?ol(new Rc(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?ol(e._loadedConfig):function(t,e,n){var r,o=e.canLoad;return o&&0!==o.length?nt(o).pipe(K(function(r){var o,i=t.get(r);if(function(t){return t&&jh(t.canLoad)}(i))o=i.canLoad(e,n);else{if(!jh(i))throw new Error("Invalid CanLoad guard");o=i(e,n)}return Uc(o)})).pipe(pl(),(r=function(t){return!0===t},function(t){return t.lift(new Vl(r,void 0,t))})):ol(!0)}(t.injector,e,n).pipe(rt(function(n){return n?r.configLoader.load(t.injector,e).pipe(K(function(t){return e._loadedConfig=t,t})):function(t){return new R(function(e){return e.error(Tc("Cannot load children because the guard of the route \"path: '"+t.path+"'\" returned false"))})}(e)})):ol(new Rc([],t))},t.prototype.lineralizeSegments=function(t,e){for(var n=[],r=e.root;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return ol(n);if(r.numberOfChildren>1||!r.children[Ec])return Hh(t.redirectTo);r=r.children[Ec]}},t.prototype.applyRedirectCommands=function(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)},t.prototype.applyRedirectCreatreUrlTree=function(t,e,n,r){var o=this.createSegmentGroup(t,e.root,n,r);return new Hc(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)},t.prototype.createQueryParams=function(t,e){var n={};return zc(t,function(t,r){if("string"==typeof t&&t.startsWith(":")){var o=t.substring(1);n[r]=e[o]}else n[r]=t}),n},t.prototype.createSegmentGroup=function(t,e,n,r){var o=this,i=this.createSegments(t,e.segments,n,r),s={};return zc(e.children,function(e,i){s[i]=o.createSegmentGroup(t,e,n,r)}),new Bc(i,s)},t.prototype.createSegments=function(t,e,n,r){var o=this;return e.map(function(e){return e.path.startsWith(":")?o.findPosParam(t,e,r):o.findOrReturn(e,n)})},t.prototype.findPosParam=function(t,e,n){var r=n[e.path.substring(1)];if(!r)throw new Error("Cannot redirect to '"+t+"'. Cannot find '"+e.path+"'.");return r},t.prototype.findOrReturn=function(t,e){var n,r,o=0;try{for(var i=c(e),s=i.next();!s.done;s=i.next()){var a=s.value;if(a.path===t.path)return e.splice(o),a;o++}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return t},t}();function Wh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};var r=(e.matcher||Ic)(n,t,e);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Gh(t){if(1===t.numberOfChildren&&t.children[Ec]){var e=t.children[Ec];return new Bc(t.segments.concat(e.segments),e.children)}return t}function Yh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function qh(t){return t.outlet||Ec}var Zh=function(){return function(t){this.path=t,this.route=this.path[this.path.length-1]}}(),$h=function(){return function(t,e){this.component=t,this.route=e}}();function Qh(t,e,n){var r=function(t){if(!t)return null;for(var e=t.parent;e;e=e.parent){var n=e.routeConfig;if(n&&n._loadedConfig)return n._loadedConfig}return null}(e);return(r?r.module.injector:n).get(t)}function Xh(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=ph(e);return t.children.forEach(function(t){!function(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=t.value,s=e?e.value:null,a=n?n.getContext(t.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){var l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!Gc(t.url,e.url);case"pathParamsOrQueryParamsChange":return!Gc(t.url,e.url)||!jc(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Ch(t,e)||!jc(t.queryParams,e.queryParams);case"paramsChange":default:return!Ch(t,e)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Zh(r)):(i.data=s.data,i._resolvedData=s._resolvedData),Xh(t,e,i.component?a?a.children:null:n,r,o),l&&o.canDeactivateChecks.push(new $h(a&&a.outlet&&a.outlet.component||null,s))}else s&&Kh(e,a,o),o.canActivateChecks.push(new Zh(r)),Xh(t,null,i.component?a?a.children:null:n,r,o)}(t,i[t.value.outlet],n,r.concat([t.value]),o),delete i[t.value.outlet]}),zc(i,function(t,e){return Kh(t,n.getContext(e),o)}),o}function Kh(t,e,n){var r=ph(t),o=t.value;zc(r,function(t,r){Kh(t,o.component?e?e.children.getContext(r):null:e,n)}),n.canDeactivateChecks.push(new $h(o.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,o))}var Jh=Symbol("INITIAL_VALUE");function tp(){return zl(function(t){return(function(){for(var t=[],e=0;e0?Lc(n).parameters:{};o=new yh(n,l,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,pp(t),r,t.component,t,ap(e),lp(e)+n.length,dp(t))}else{var u=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new ip;return{consumedSegments:[],lastChild:0,parameters:{}}}var r=(e.matcher||Ic)(n,t,e);if(!r)throw new ip;var o={};zc(r.posParams,function(t,e){o[e]=t.path});var s=r.consumed.length>0?i({},o,r.consumed[r.consumed.length-1].parameters):o;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:s}}(e,t,n);s=u.consumedSegments,a=n.slice(u.lastChild),o=new yh(s,u.parameters,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,pp(t),r,t.component,t,ap(e),lp(e)+s.length,dp(t))}var c=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),h=up(e,s,a,c,this.relativeLinkResolution),p=h.segmentGroup,d=h.slicedSegments;if(0===d.length&&p.hasChildren()){var f=this.processChildren(c,p);return[new hh(o,f)]}if(0===c.length&&0===d.length)return[new hh(o,[])];var g=this.processSegment(c,p,d,Ec);return[new hh(o,g)]},t}();function ap(t){for(var e=t;e._sourceSegment;)e=e._sourceSegment;return e}function lp(t){for(var e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function up(t,e,n,r,o){if(n.length>0&&function(t,e,n){return r.some(function(n){return cp(t,e,n)&&hp(n)!==Ec})}(t,n)){var s=new Bc(e,function(t,e,n,r){var o,i,s={};s[Ec]=r,r._sourceSegment=t,r._segmentIndexShift=e.length;try{for(var a=c(n),l=a.next();!l.done;l=a.next()){var u=l.value;if(""===u.path&&hp(u)!==Ec){var h=new Bc([],{});h._sourceSegment=t,h._segmentIndexShift=e.length,s[hp(u)]=h}}}catch(p){o={error:p}}finally{try{l&&!l.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return s}(t,e,r,new Bc(n,t.children)));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return r.some(function(n){return cp(t,e,n)})}(t,n)){var a=new Bc(t.segments,function(t,e,n,r,o,s){var a,l,u={};try{for(var h=c(r),p=h.next();!p.done;p=h.next()){var d=p.value;if(cp(t,n,d)&&!o[hp(d)]){var f=new Bc([],{});f._sourceSegment=t,f._segmentIndexShift="legacy"===s?t.segments.length:e.length,u[hp(d)]=f}}}catch(g){a={error:g}}finally{try{p&&!p.done&&(l=h.return)&&l.call(h)}finally{if(a)throw a.error}}return i({},o,u)}(t,e,n,r,t.children,o));return a._sourceSegment=t,a._segmentIndexShift=e.length,{segmentGroup:a,slicedSegments:n}}var l=new Bc(t.segments,t.children);return l._sourceSegment=t,l._segmentIndexShift=e.length,{segmentGroup:l,slicedSegments:n}}function cp(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function hp(t){return t.outlet||Ec}function pp(t){return t.data||{}}function dp(t){return t.resolve||{}}function fp(t,e,n,r){var o=Qh(t,e,r);return Uc(o.resolve?o.resolve(e,n):o(e,n))}function gp(t){return function(e){return e.pipe(zl(function(e){var n=t(e);return n?nt(n).pipe(K(function(){return e})):nt([e])}))}}var vp=function(){return function(){}}(),yp=function(){function t(){}return t.prototype.shouldDetach=function(t){return!1},t.prototype.store=function(t,e){},t.prototype.shouldAttach=function(t){return!1},t.prototype.retrieve=function(t){return null},t.prototype.shouldReuseRoute=function(t,e){return t.routeConfig===e.routeConfig},t}(),mp=new Ut("ROUTES"),_p=function(){function t(t,e,n,r){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=r}return t.prototype.load=function(t,e){var n=this;return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(K(function(r){n.onLoadEndListener&&n.onLoadEndListener(e);var o=r.create(t);return new Rc(Vc(o.injector.get(mp)).map(Dc),o)}))},t.prototype.loadModuleFactory=function(t){var e=this;return"string"==typeof t?nt(this.loader.load(t)):Uc(t()).pipe(rt(function(t){return t instanceof cn?ol(t):nt(e.compiler.compileModuleAsync(t))}))},t}(),bp=function(){return function(){}}(),wp=function(){function t(){}return t.prototype.shouldProcessUrl=function(t){return!0},t.prototype.extract=function(t){return t},t.prototype.merge=function(t,e){return t},t}();function Cp(t){throw t}function xp(t,e,n){return e.parse("/")}function Sp(t,e){return ol(null)}var Ep=function(){function t(t,e,n,r,o,i,s,a){var l=this;this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=r,this.config=a,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new V,this.errorHandler=Cp,this.malformedUriErrorHandler=xp,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Sp,afterPreactivation:Sp},this.urlHandlingStrategy=new wp,this.routeReuseStrategy=new yp,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=o.get(un),this.console=o.get(Go);var u=o.get(li);this.isNgZoneEnabled=u instanceof li,this.resetConfig(a),this.currentUrlTree=new Hc(new Bc([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new _p(i,s,function(t){return l.triggerEvent(new yc(t))},function(t){return l.triggerEvent(new mc(t))}),this.routerState=fh(this.currentUrlTree,this.rootComponentType),this.transitions=new il({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return t.prototype.setupNavigations=function(t){var e=this,n=this.events;return t.pipe(dl(function(t){return 0!==t.id}),K(function(t){return i({},t,{extractedUrl:e.urlHandlingStrategy.extract(t.rawUrl)})}),zl(function(t){var r,o,s,a,l=!1,u=!1;return ol(t).pipe(wl(function(t){e.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:e.lastSuccessfulNavigation?i({},e.lastSuccessfulNavigation,{previousNavigation:null}):null}}),zl(function(t){var r,o,s,a,l=!e.navigated||t.extractedUrl.toString()!==e.browserUrlTree.toString();if(("reload"===e.onSameUrlNavigation||l)&&e.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return ol(t).pipe(zl(function(t){var r=e.transitions.getValue();return n.next(new lc(t.id,e.serializeUrl(t.extractedUrl),t.source,t.restoredState)),r!==e.transitions.getValue()?el:[t]}),zl(function(t){return Promise.resolve(t)}),(r=e.ngModule.injector,o=e.configLoader,s=e.urlSerializer,a=e.config,function(t){return t.pipe(zl(function(t){return function(e,n,r,o,i){return new Bh(e,n,r,t.extractedUrl,i).apply()}(r,o,s,0,a).pipe(K(function(e){return i({},t,{urlAfterRedirects:e})}))}))}),wl(function(t){e.currentNavigation=i({},e.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,n,r,o,s){return function(r){return r.pipe(rt(function(r){return function(t,e,n,r,o,i){return void 0===o&&(o="emptyOnly"),void 0===i&&(i="legacy"),new sp(t,e,n,r,o,i).recognize()}(t,n,r.urlAfterRedirects,(a=r.urlAfterRedirects,e.serializeUrl(a)),o,s).pipe(K(function(t){return i({},r,{targetSnapshot:t})}));var a}))}}(e.rootComponentType,e.config,0,e.paramsInheritanceStrategy,e.relativeLinkResolution),wl(function(t){"eager"===e.urlUpdateStrategy&&(t.extras.skipLocationChange||e.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),e.browserUrlTree=t.urlAfterRedirects)}),wl(function(t){var r=new pc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);n.next(r)}));if(l&&e.rawUrlTree&&e.urlHandlingStrategy.shouldProcessUrl(e.rawUrlTree)){var u=t.extractedUrl,c=t.source,h=t.restoredState,p=t.extras,d=new lc(t.id,e.serializeUrl(u),c,h);n.next(d);var f=fh(u,e.rootComponentType).snapshot;return ol(i({},t,{targetSnapshot:f,urlAfterRedirects:u,extras:i({},p,{skipLocationChange:!1,replaceUrl:!1})}))}return e.rawUrlTree=t.rawUrl,e.browserUrlTree=t.urlAfterRedirects,t.resolve(null),el}),gp(function(t){var n=t.extras;return e.hooks.beforePreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),wl(function(t){var n=new dc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),K(function(t){return i({},t,{guards:(n=t.targetSnapshot,r=t.currentSnapshot,o=e.rootContexts,s=n._root,Xh(s,r?r._root:null,o,[s.value]))});var n,r,o,s}),function(t,e){return function(n){return n.pipe(rt(function(n){var r=n.targetSnapshot,o=n.currentSnapshot,s=n.guards,a=s.canActivateChecks,l=s.canDeactivateChecks;return 0===l.length&&0===a.length?ol(i({},n,{guardsResult:!0})):function(t,e,n,r){return nt(l).pipe(rt(function(t){return function(t,e,n,r,o){var i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?ol(i.map(function(i){var s,a=Qh(i,e,o);if(function(t){return t&&jh(t.canDeactivate)}(a))s=Uc(a.canDeactivate(t,e,n,r));else{if(!jh(a))throw new Error("Invalid CanDeactivate guard");s=Uc(a(t,e,n,r))}return s.pipe(jl())})).pipe(tp()):ol(!0)}(t.component,t.route,n,e,r)}),jl(function(t){return!0!==t},!0))}(0,r,o,t).pipe(rt(function(n){return n&&"boolean"==typeof n?function(t,e,n,r){return nt(a).pipe(ql(function(e){return nt([np(e.route.parent,r),ep(e.route,r),op(t,e.path,n),rp(t,e.route,n)]).pipe(pl(),jl(function(t){return!0!==t},!0))}),jl(function(t){return!0!==t},!0))}(r,0,t,e):ol(n)}),K(function(t){return i({},n,{guardsResult:t})}))}))}}(e.ngModule.injector,function(t){return e.triggerEvent(t)}),wl(function(t){if(Vh(t.guardsResult)){var n=Tc('Redirecting to "'+e.serializeUrl(t.guardsResult)+'"');throw n.url=t.guardsResult,n}}),wl(function(t){var n=new fc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);e.triggerEvent(n)}),dl(function(t){if(!t.guardsResult){e.resetUrlToCurrentUrlTree();var r=new cc(t.id,e.serializeUrl(t.extractedUrl),"");return n.next(r),t.resolve(!1),!1}return!0}),gp(function(t){if(t.guards.canActivateChecks.length)return ol(t).pipe(wl(function(t){var n=new gc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),(n=e.paramsInheritanceStrategy,r=e.ngModule.injector,function(t){return t.pipe(rt(function(t){var e=t.targetSnapshot,o=t.guards.canActivateChecks;return o.length?nt(o).pipe(ql(function(t){return function(t,n,r,o){return function(t,e,n,r){var o=Object.keys(t);if(0===o.length)return ol({});if(1===o.length){var i=o[0];return fp(t[i],e,n,r).pipe(K(function(t){var e;return(e={})[i]=t,e}))}var s={};return nt(o).pipe(rt(function(o){return fp(t[o],e,n,r).pipe(K(function(t){return s[o]=t,t}))})).pipe(Tl(),K(function(){return s}))}(t._resolve,t,e,o).pipe(K(function(e){return t._resolvedData=e,t.data=i({},t.data,vh(t,r).resolve),null}))}(t.route,0,n,r)}),function(t,e){return arguments.length>=2?function(e){return T(Wl(t,void 0),ml(1),Ol(void 0))(e)}:function(e){return T(Wl(function(e,n,r){return t(e)}),ml(1))(e)}}(function(t,e){return t}),K(function(e){return t})):ol(t)}))}),wl(function(t){var n=new vc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}));var n,r}),gp(function(t){var n=t.extras;return e.hooks.afterPreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),K(function(t){var n,r,o,s=(o=function t(e,n,r){if(r&&e.shouldReuseRoute(n.value,r.value.snapshot)){(l=r.value)._futureSnapshot=n.value;var o=function(e,n,r){return n.children.map(function(n){var o,i;try{for(var s=c(r.children),a=s.next();!a.done;a=s.next()){var l=a.value;if(e.shouldReuseRoute(l.value.snapshot,n.value))return t(e,n,l)}}catch(u){o={error:u}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(o)throw o.error}}return t(e,n)})}(e,n,r);return new hh(l,o)}var i=e.retrieve(n.value);if(i){var s=i.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(var r=0;ra;){if(l-=a,!(s=s.parent))throw new Error("Invalid number of '../'");a=s.segments.length}return new Oh(s,!1,a-l)}()}(i,0,t),a=s.processChildren?Th(s.segmentGroup,s.index,i.commands):Ph(s.segmentGroup,s.index,i.commands);return Sh(s.segmentGroup,a,e,r,o)}(u,this.currentUrlTree,t,h,c)},t.prototype.navigateByUrl=function(t,e){void 0===e&&(e={skipLocationChange:!1}),ge()&&this.isNgZoneEnabled&&!li.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");var n=Vh(t)?t:this.parseUrl(t),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,e)},t.prototype.navigate=function(t,e){return void 0===e&&(e={skipLocationChange:!1}),function(t){for(var e=0;et.name.length?e:t},{id:"",name:""}),this.filter())},t.prototype.ngAfterViewInit=function(){this.resize()},t.prototype.trackByFn=function(t,e){return e?"string"==typeof e?e:e.id:t},t.prototype.resize=function(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)},t.prototype.filter=function(){var t=this;if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(function(e){return("string"==typeof e?e:e.name).toLowerCase().indexOf(t.search.toLowerCase())>=0})),this.options&&this.options.hide_active&&this.selected)){var e="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(function(t){return("string"==typeof t?t:t.id).indexOf(e)<0})}},t.prototype.toggleShow=function(){var t=this;this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(function(){t.input&&t.input.nativeElement.focus()},100)},t.prototype.updateScroll=function(){var t=this;if(!this.viewport||!this.scroll_el)return setTimeout(function(){return t.updateScroll()},50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;var e="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)===e}))},t.prototype.select=function(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)},t.prototype.change=function(t){var e=this,n="string"==typeof this.selected?this.selected:this.selected.id,r=this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)==n})+t;r>=0&&r1?Array.prototype.slice.call(arguments):t)},r,n)})}var ld=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r.pending=!1,r}return o(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,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(r,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,r=void 0;try{this.work(t)}catch(o){n=!0,r=!!o&&o||new Error(o)}if(n)return this.unsubscribe(),r},e.prototype._unsubscribe=function(){var t=this.id,e=this.scheduler,n=e.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,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 o(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(m)),ud=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(e,t),e.prototype.requestAsyncId=function(e,n,r){return void 0===r&&(r=0),null!==r&&r>0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame(function(){return e.flush(null)})))},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(cancelAnimationFrame(n),e.scheduled=void 0)},e}(ld),cd=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}(),hd=function(t){function e(n,r){void 0===r&&(r=cd.now);var o=t.call(this,n,function(){return e.delegate&&e.delegate!==o?e.delegate.now():r()})||this;return o.actions=[],o.active=!1,o.scheduled=void 0,o}return o(e,t),e.prototype.schedule=function(n,r,o){return void 0===r&&(r=0),e.delegate&&e.delegate!==this?e.delegate.schedule(n,r,o):t.prototype.schedule.call(this,n,r,o)},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}(cd),pd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=(o=e.flush.bind(e,null),i=dd++,fd[i]=o,Promise.resolve().then(function(){return function(t){var e=fd[t];e&&e()}(i)}),i)));var o,i},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(delete fd[n],e.scheduled=void 0)},e}(ld),vd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r=0}function xd(t){var e=t.index,n=t.period,r=t.subscriber;if(r.next(e),!r.closed){if(-1===n)return r.complete();t.index=e+1,this.schedule(t,n)}}function Sd(t,e){return void 0===e&&(e=_d),n=function(){return function(t,e,n){void 0===t&&(t=0);var r=-1;return Cd(e)?r=Number(e)<1?1:Number(e):z(e)&&(n=e),z(n)||(n=_d),new R(function(e){var o=Cd(t)?t:+t-n.now();return n.schedule(xd,o,{index:0,period:r,subscriber:e})})}(t,e)},function(t){return t.lift(new bd(n))};var n}function Ed(t){return function(e){return e.lift(new kd(t))}}var Od,kd=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new Pd(t),r=Q(n,this.notifier);return r&&!n.seenValue?(n.add(r),e.subscribe(n)):n},t}(),Pd=function(t){function e(e){var n=t.call(this,e)||this;return n.seenValue=!1,n}return o(e,t),e.prototype.notifyNext=function(t,e,n,r,o){this.seenValue=!0,this.complete()},e.prototype.notifyComplete=function(){},e}(X),Td=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new Id(t))},t}(),Id=function(t){function e(e){var n=t.call(this,e)||this;return n.hasPrev=!1,n}return o(e,t),e.prototype._next=function(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t},e}(E),Rd=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(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,r){return void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,r):e.flush(this)},e}(ld),Ad=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e}(hd))(Rd);function Md(t,e){return new R(e?function(n){return e.schedule(Nd,0,{error:t,subscriber:n})}:function(e){return e.error(t)})}function Nd(t){t.subscriber.error(t.error)}Od||(Od={});var Dd,jd=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 ol(this.value);case"E":return Md(this.error);case"C":return nl()}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}(),Vd=function(t){function e(e,n,r){void 0===r&&(r=0);var o=t.call(this,e)||this;return o.scheduler=n,o.delay=r,o}return o(e,t),e.dispatch=function(t){t.notification.observe(t.destination),this.unsubscribe()},e.prototype.scheduleMessage=function(t){this.destination.add(this.scheduler.schedule(e.dispatch,this.delay,new Ld(t,this.destination)))},e.prototype._next=function(t){this.scheduleMessage(jd.createNext(t))},e.prototype._error=function(t){this.scheduleMessage(jd.createError(t)),this.unsubscribe()},e.prototype._complete=function(){this.scheduleMessage(jd.createComplete()),this.unsubscribe()},e}(E),Ld=function(){return function(t,e){this.notification=t,this.destination=e}}(),zd=function(t){function e(e,n,r){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=Number.POSITIVE_INFINITY);var o=t.call(this)||this;return o.scheduler=r,o._events=[],o._infiniteTimeWindow=!1,o._bufferSize=e<1?1:e,o._windowTime=n<1?1:n,n===Number.POSITIVE_INFINITY?(o._infiniteTimeWindow=!0,o.next=o.nextInfiniteTimeWindow):o.next=o.nextTimeWindow,o}return o(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 Ud(this._getNow(),e)),this._trimBufferThenGetEvents(),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,n=this._infiniteTimeWindow,r=n?this._events:this._trimBufferThenGetEvents(),o=this.scheduler,i=r.length;if(this.closed)throw new N;if(this.isStopped||this.hasError?e=m.EMPTY:(this.observers.push(t),e=new D(this,t)),o&&t.add(t=new Vd(t,o)),n)for(var s=0;se&&(i=Math.max(i,o-e)),i>0&&r.splice(0,i),r},e}(V),Ud=function(){return function(t,e){this.time=t,this.value=e}}();try{Dd="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Pm){Dd=!1}var Fd,Hd=function(){function t(t){this._platformId=t,this.isBrowser=this._platformId?Ka(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&&!Dd)&&"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.ngInjectableDef=Ot({factory:function(){return new t(Lt(Bo,8))},token:t,providedIn:"root"}),t}(),Bd=function(){return function(){}}(),Wd=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();function Gd(){if("object"!=typeof document||!document)return Wd.NORMAL;if(!Fd){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"),r=n.style;r.width="2px",r.height="1px",t.appendChild(n),document.body.appendChild(t),Fd=Wd.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Fd=0===t.scrollLeft?Wd.NEGATED:Wd.INVERTED),t.parentNode.removeChild(t)}return Fd}var Yd=function(t){function e(e){var n=t.call(this)||this;return n._data=e,n}return o(e,t),e.prototype.connect=function(){return this._data instanceof R?this._data:ol(this._data)},e.prototype.disconnect=function(){},e}(function(){return function(){}}()),qd=new Ut("VIRTUAL_SCROLL_STRATEGY"),Zd=function(){function t(t,e,n){this._scrolledIndexChange=new V,this.scrolledIndexChange=this._scrolledIndexChange.pipe(function(t){return t.lift(new yd(void 0,void 0))}),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(n0&&(r.end=Math.min(i,r.end+u),r.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(r),this._viewport.setRenderedContentOffset(this._itemSize*r.start),this._scrolledIndexChange.next(Math.floor(e))}},t}();function $d(t){return t._scrollStrategy}var Qd=function(){function t(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Zd(this.itemSize,this.minBufferPx,this.maxBufferPx)}return Object.defineProperty(t.prototype,"itemSize",{get:function(){return this._itemSize},set:function(t){this._itemSize=od(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minBufferPx",{get:function(){return this._minBufferPx},set:function(t){this._minBufferPx=od(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxBufferPx",{get:function(){return this._maxBufferPx},set:function(t){this._maxBufferPx=od(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)},t}(),Xd=function(){function t(t,e){this._ngZone=t,this._platform=e,this._scrolled=new V,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}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 R(function(n){e._globalSubscription||e._addGlobalListener();var r=t>0?e._scrolled.pipe(Sd(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){r.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):ol()},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(dl(function(t){return!t||n.indexOf(t)>-1}))},t.prototype.getAncestorScrollContainers=function(t){var e=this,n=[];return this.scrollContainers.forEach(function(r,o){e._scrollableContainsElement(o,t)&&n.push(o)}),n},t.prototype._scrollableContainsElement=function(t,e){var n=e.nativeElement,r=t.getElementRef().nativeElement;do{if(n==r)return!0}while(n=n.parentElement);return!1},t.prototype._addGlobalListener=function(){var t=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){return ad(window.document,"scroll").subscribe(function(){return t._scrolled.next()})})},t.prototype._removeGlobalListener=function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(li),Lt(Hd))},token:t,providedIn:"root"}),t}(),Kd=function(){function t(t,e,n,r){var o=this;this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=r,this._destroyed=new V,this._elementScrolled=new R(function(t){return o.ngZone.runOutsideAngular(function(){return ad(o.elementRef.nativeElement,"scroll").pipe(Ed(o._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;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Gd()!=Wd.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Gd()==Wd.INVERTED?t.left=t.right:Gd()==Wd.NEGATED&&(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"==typeof document&&"scrollBehavior"in document.documentElement.style?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&&Gd()==Wd.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Gd()==Wd.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft},t}(),Jd="undefined"!=typeof requestAnimationFrame?pd:vd,tf=function(t){function e(e,n,r,o,i,s){var a=t.call(this,e,s,r,i)||this;if(a.elementRef=e,a._changeDetectorRef=n,a._scrollStrategy=o,a._detachedSubject=new V,a._renderedRangeSubject=new V,a.orientation="vertical",a.scrolledIndexChange=new R(function(t){return a._scrollStrategy.scrolledIndexChange.subscribe(function(e){return Promise.resolve().then(function(){return a.ngZone.run(function(){return t.next(e)})})})}),a.renderedRangeStream=a._renderedRangeSubject.asObservable(),a._totalContentSizeTransform="",a._totalContentSize=0,a._renderedRange={start:0,end:0},a._dataLength=0,a._viewportSize=0,a._renderedContentOffset=0,a._renderedContentOffsetNeedsRewrite=!1,a._isChangeDetectionPending=!1,a._runAfterChangeDetection=[],!o)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.');return a}return o(e,t),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(Bl(null),Sd(0,Jd)).subscribe(function(){return e._scrollStrategy.onContentScrolled()}),e._markChangeDetectionNeeded()})})},e.prototype.ngOnDestroy=function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),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(Ed(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._totalContentSizeTransform="scale"+("horizontal"==this.orientation?"X":"Y")+"("+this._totalContentSize+")",this._markChangeDetectionNeeded())},e.prototype.setRenderedRange=function(t){var e,n,r=this;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(function(){return r._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 r="horizontal"==this.orientation,o=r?"X":"Y",i="translate"+o+"("+Number((r&&this.dir&&"rtl"==this.dir.value?-1:1)*t)+"px)";this._renderedContentOffset=t,"to-end"===e&&(i+=" translate"+o+"(-100%)",this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,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 t.prototype.measureScrollOffset.call(this,e||("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=this;this._isChangeDetectionPending=!1,this.ngZone.run(function(){return t._changeDetectorRef.markForCheck()}),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;var e=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(var n=0,r=e;n=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");for(var n=t.start-this._renderedRange.start,r=0,o=t.end-t.start;o--;)for(var i=this._viewContainerRef.get(o+n),s=i?i.rootNodes.length:0;s--;)r+=ef(e,i.rootNodes[s]);return r},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(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(var t=0,e=this._templateCache;t0?this._change.pipe(Sd(t)):this._change},t.prototype._updateViewportSize=function(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Hd),Lt(li))},token:t,providedIn:"root"}),t}();function sf(){throw Error("Host already has a portal attached")}var af=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()&&sf(),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}(),lf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.component=e,i.viewContainerRef=n,i.injector=r,i.componentFactoryResolver=o,i}return o(e,t),e}(af),uf=function(t){function e(e,n,r){var o=t.call(this)||this;return o.templateRef=e,o.viewContainerRef=n,o.context=r,o}return o(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}(af),cf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.outletElement=e,i._componentFactoryResolver=n,i._appRef=r,i._defaultInjector=o,i}return o(e,t),e.prototype.attachComponentPortal=function(t){var e,n=this,r=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);return t.viewContainerRef?(e=t.viewContainerRef.createComponent(r,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(function(){return e.destroy()})):(e=r.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,r=n.createEmbeddedView(t.templateRef,t.context);return r.detectChanges(),r.rootNodes.forEach(function(t){return e.outletElement.appendChild(t)}),this.setDisposeFn(function(){var t=n.indexOf(r);-1!==t&&n.remove(t)}),r},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}(function(){function t(){this._isDisposed=!1}return t.prototype.hasAttached=function(){return!!this._attachedPortal},t.prototype.attach=function(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&sf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof lf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof uf?(this._attachedPortal=t,this.attachTemplatePortal(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}()),hf=function(){return function(){}}(),pf=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=sd(-this._previousScrollPosition.left),t.style.top=sd(-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=t.style,n=this._document.body.style,r=e.scrollBehavior||"",o=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=r,n.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}();function df(){return Error("Scroll strategy has already been attached.")}var ff=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return t.prototype.attach=function(t){if(this._overlayRef)throw df();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}(),gf=function(){function t(){}return t.prototype.enable=function(){},t.prototype.disable=function(){},t.prototype.attach=function(){},t}();function vf(t,e){return e.some(function(e){return t.bottome.bottom||t.righte.right})}function yf(t,e){return e.some(function(e){return t.tope.bottom||t.lefte.right})}var mf=function(){function t(t,e,n,r){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=r,this._scrollSubscription=null}return t.prototype.attach=function(t){if(this._overlayRef)throw df();this._overlayRef=t},t.prototype.enable=function(){var t=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(t._overlayRef.updatePosition(),t._config&&t._config.autoClose){var e=t._overlayRef.overlayElement.getBoundingClientRect(),n=t._viewportRuler.getViewportSize(),r=n.width,o=n.height;vf(e,[{width:r,height:o,bottom:o,right:r,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}(),_f=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=function(){return new gf},this.close=function(t){return new ff(o._scrollDispatcher,o._ngZone,o._viewportRuler,t)},this.block=function(){return new pf(o._viewportRuler,o._document)},this.reposition=function(t){return new mf(o._scrollDispatcher,o._viewportRuler,o._ngZone,t)},this._document=r}return t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Xd),Lt(of),Lt(li),Lt($a))},token:t,providedIn:"root"}),t}(),bf=function(){return function(t){var e=this;this.scrollStrategy=new gf,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(function(n){void 0!==t[n]&&(e[n]=t[n])})}}(),wf=function(){return function(t,e,n,r,o){this.offsetX=n,this.offsetY=r,this.panelClass=o,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}(),Cf=function(){return function(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}();function xf(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "top", "bottom" or "center".')}function Sf(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "start", "end" or "center".')}var Ef=function(){function t(t){var e=this;this._attachedOverlays=[],this._keydownListener=function(t){for(var n=e._attachedOverlays,r=n.length-1;r>-1;r--)if(n[r]._keydownEventSubscriptions>0){n[r]._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.ngInjectableDef=Ot({factory:function(){return new t(Lt($a))},token:t,providedIn:"root"}),t}(),Of=function(){function t(t){this._document=t}return t.prototype.ngOnDestroy=function(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)},t.prototype.getContainerElement=function(){return this._containerElement||this._createContainer(),this._containerElement},t.prototype._createContainer=function(){var t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t},t.ngInjectableDef=Ot({factory:function(){return new t(Lt($a))},token:t,providedIn:"root"}),t}(),kf=function(){function t(t,e,n,r,o,i,s,a){var l=this;this._portalOutlet=t,this._host=e,this._pane=n,this._config=r,this._ngZone=o,this._keyboardDispatcher=i,this._document=s,this._location=a,this._backdropElement=null,this._backdropClick=new V,this._attachments=new V,this._detachments=new V,this._locationChanges=m.EMPTY,this._keydownEventsObservable=new R(function(t){var e=l._keydownEvents.subscribe(t);return l._keydownEventSubscriptions++,function(){e.unsubscribe(),l._keydownEventSubscriptions--}}),this._keydownEvents=new V,this._keydownEventSubscriptions=0,r.scrollStrategy&&(this._scrollStrategy=r.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=r.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._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Ml(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=i({},this._config,t),this._updateElementSize()},t.prototype.setDirection=function(t){this._config=i({},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(){var t=this._pane.style;t.width=sd(this._config.width),t.height=sd(this._config.height),t.minWidth=sd(this._config.minWidth),t.minHeight=sd(this._config.minHeight),t.maxWidth=sd(this._config.maxWidth),t.maxHeight=sd(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",function(e){return t._backdropClick.next(e)}),"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,r=function(){e&&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",r)}),e.style.pointerEvents="none",n=this._ngZone.runOutsideAngular(function(){return setTimeout(r,500)})}},t.prototype._toggleClasses=function(t,e,n){var r=t.classList;id(e).forEach(function(t){n?r.add(t):r.remove(t)})},t.prototype._detachContentWhenStable=function(){var t=this;this._ngZone.runOutsideAngular(function(){var e=t._ngZone.onStable.asObservable().pipe(Ed(lt(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}(),Pf=function(){function t(t,e,n,r,o){this._viewportRuler=e,this._document=n,this._platform=r,this._overlayContainer=o,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 V,this._resizeSubscription=m.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(){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();for(var t,e=this._originRect,n=this._overlayRect,r=this._viewportRect,o=[],i=0,s=this._preferredPositions;ip&&(p=v,h=g)}return this._isPushed=!1,void this._applyPosition(h.position,h.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(t.position,t.originPoint);this._applyPosition(t.position,t.originPoint)}},t.prototype.detach=function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()},t.prototype.dispose=function(){this._isDisposed||(this._boundingBox&&Tf(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 r=this._isRtl()?t.right:t.left,o=this._isRtl()?t.left:t.right;n="start"==e.originX?r:o}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 r;return r="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+r,y:t.y+("center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}},t.prototype._getOverlayFit=function(t,e,n,r){var o=t.x,i=t.y,s=this._getOffset(r,"x"),a=this._getOffset(r,"y");s&&(o+=s),a&&(i+=a);var l=0-i,u=i+e.height-n.height,c=this._subtractOverflows(e.width,0-o,o+e.width-n.width),h=this._subtractOverflows(e.height,l,u),p=c*h;return{visibleArea:p,isCompletelyWithinViewport:e.width*e.height===p,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:c==e.width}},t.prototype._canFitWithFlexibleDimensions=function(t,e,n){if(this._hasFlexibleDimensions){var r=n.bottom-e.y,o=n.right-e.x,i=this._overlayRef.getConfig().minHeight,s=this._overlayRef.getConfig().minWidth;return(t.fitsInViewportVertically||null!=i&&i<=r)&&(t.fitsInViewportHorizontally||null!=s&&s<=o)}},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 r,o,i=this._viewportRect,s=Math.max(t.x+e.width-i.right,0),a=Math.max(t.y+e.height-i.bottom,0),l=Math.max(i.top-n.top-t.y,0),u=Math.max(i.left-n.left-t.x,0);return this._previousPushAmount={x:r=e.width<=i.width?u||-s:t.xh&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-h/2)}if("end"===e.overlayX&&!u||"start"===e.overlayX&&u)a=l.right-t.x+this._viewportMargin,i=t.x-l.left;else if("start"===e.overlayX&&!u||"end"===e.overlayX&&u)s=t.x,i=l.right-t.x;else{c=Math.min(l.right-t.x+l.left,t.x);var p=this._lastBoundingBoxSize.width;s=t.x-c,(i=2*c)>p&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.x-p/2)}return{top:r,left:s,bottom:o,right:a,width:i,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 r={};if(this._hasExactPosition())r.top=r.left="0",r.bottom=r.right="",r.width=r.height="100%";else{var o=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;r.height=sd(n.height),r.top=sd(n.top),r.bottom=sd(n.bottom),r.width=sd(n.width),r.left=sd(n.left),r.right=sd(n.right),r.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",r.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",o&&(r.maxHeight=sd(o)),i&&(r.maxWidth=sd(i))}this._lastBoundingBoxSize=n,Tf(this._boundingBox.style,r)},t.prototype._resetBoundingBoxStyles=function(){Tf(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})},t.prototype._resetOverlayElementStyles=function(){Tf(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})},t.prototype._setOverlayElementStyles=function(t,e){var n={};if(this._hasExactPosition()){var r=this._viewportRuler.getViewportScrollPosition();Tf(n,this._getExactOverlayY(e,t,r)),Tf(n,this._getExactOverlayX(e,t,r))}else n.position="static";var o="",i=this._getOffset(e,"x"),s=this._getOffset(e,"y");i&&(o+="translateX("+i+"px) "),s&&(o+="translateY("+s+"px)"),n.transform=o.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Tf(this._pane.style,n)},t.prototype._getExactOverlayY=function(t,e,n){var r={top:null,bottom:null},o=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n));var i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return o.y-=i,"bottom"===t.overlayY?r.bottom=this._document.documentElement.clientHeight-(o.y+this._overlayRect.height)+"px":r.top=sd(o.y),r},t.prototype._getExactOverlayX=function(t,e,n){var r={left:null,right:null},o=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n)),"right"==(this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=this._document.documentElement.clientWidth-(o.x+this._overlayRect.width)+"px":r.left=sd(o.x),r},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:yf(t,n),isOriginOutsideView:vf(t,n),isOverlayClipped:yf(e,n),isOverlayOutsideView:vf(e,n)}},t.prototype._subtractOverflows=function(t){for(var e=[],n=1;n0?p(this.events,[t]):[t],this.displayed_events=this.events.slice(-8),t.close=function(){return e.remove(t.id)},0!==t.delay&&setTimeout(function(){return e.remove(t.id)},t.delay||this.delay||5e3))},t.prototype.remove=function(t){this.events=this.events.filter(function(e){return e.id!==t}),this.displayed_events=this.events.slice(-8)},t.prototype.action=function(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)},t.prototype.grab=function(t,e){var n=this,r=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=r,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",function(e){return n.pull(t,e)}),touchmove:this.renderer.listen("window","touchmove",function(e){return n.pull(t,e)}),mouseup:this.renderer.listen("window","mouseup",function(e){return n.release(t)}),touchend:this.renderer.listen("window","touchend",function(e){return n.release(t)})}},t.prototype.pull=function(t,e){var n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)},t.prototype.release=function(t){for(var e in t.offset>128&&this.remove(t.id),t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0},t.prototype.trackByFn=function(t,e){return(t?t.id:null)||e},t}(),Wf=function(){function t(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new V,this._notify.remove=new V,this._notify.delay=new V,this.registerPreset("default",new bf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new bf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}return t.prototype.register=function(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Hf(t,this,this.injector,this.overlay,e),this._refs[t]},t.prototype.open=function(t,e,n,r){if(e.config?e.config instanceof bf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error("No content set for the overlay "+t);var o=this._refs[t],i=o.details.config instanceof bf?o.details.config:this.preset(o.details.config);o.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),r&&this._refs[t].onClose.subscribe(r))},t.prototype.update=function(t,e){this._refs[t]&&this._refs[t].set(e)},t.prototype.close=function(t){this._refs[t]&&this._refs[t].close(null)},t.prototype.remove=function(t){this._refs[t]&&(this._refs[t]=null)},t.prototype.registerPreset=function(t,e){this._presets[t]=e},t.prototype.preset=function(t){return void 0===t&&(t="default"),this._presets[t]||this._presets.default},t.prototype.loadNotificationsOutlet=function(){var t=this;this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(function(){t.registerPreset("ACA_NOTIFICATIONS_OUTLET",new bf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:t.overlay.position().global().bottom("0").right("0"),scrollStrategy:t.overlay.scrollStrategies.noop()})),t.open("ACA_NOTIFICATIONS_OUTLET",{content:Bf,data:t._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)},t.prototype.notify=function(t,e,n,r,o){var i=null;return this._notify.add&&(i="notification-"+Math.floor(999999*Math.random()),this._notify.add.next({id:i,content:t,action:e,on_action:n,type:r,delay:o,event:function(t){return n?n(t):null}})),i},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Nf),Lt(Bt))},token:t,providedIn:"root"}),t}(),Gf=function(){function t(t,e,n,r){this.el=t,this.service=e,this.overlay=n,this.renderer=r,this.id="tooltip-"+Math.floor(9999999*Math.random()),this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new No,this.event=new No,this.close=new No,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}return t.prototype.ngOnInit=function(){this.updateConfig(),this.el&&this.listenForScroll()},t.prototype.ngOnDestroy=function(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()},t.prototype.ngOnChanges=function(t){var e=this;if(t.config&&this.updateConfig(),t.reposition){var n=this.overlay.scrollStrategies;this.strategy=this.reposition?n.reposition():n.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(function(){return e.open()},10):this.closeTooltip(t.show.previousValue))},t.prototype.open=function(){var t=this;this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},function(e){return t.event.emit(e)},function(e){t.show=!1,t.showChange.emit(!1),t.close.emit(e),t.clearListeners()})},t.prototype.getOverlayPosition=function(t){var e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)},t.prototype.getPositions=function(){var t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}},t.prototype.updateConfig=function(){this.service.registerPreset(this.id,new bf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))},t.prototype.listenForScroll=function(){var t=this;if(this.show)for(var e=this.el.nativeElement.parentElement;e;e=e.parentElement)this.listeners.push(this.renderer.listen(e,"scroll",function(){return t.update()}))},t.prototype.clearListeners=function(){var t,e;try{for(var n=c(this.listeners),r=n.next();!r.done;r=n.next())(0,r.value)()}catch(o){t={error:o}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)},t.prototype.update=function(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))},t.prototype.listenForHover=function(){var t=this;this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",function(e){t.show=!0,t.showChange.emit(t.show),t._leave_listener=t.renderer.listen(t.el.nativeElement,"mouseleave",function(e){t.show=!1,t.showChange.emit(t.show),t.closeTooltip(t.show)}),t.open()})},t.prototype.closeTooltip=function(t){!this.content&&this.el?function(t,e,n,r,o){if(void 0===r&&(r="debug"),window.debug){var i=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?zf()?console[r].apply(console,p(["%c["+Lf+"]%c["+t+"] %c"+e],i,[n])):console[r]("["+Lf+"]["+t+"] "+e,n):zf()?console[r].apply(console,p(["%c["+Lf+"]%c["+t+"] %c"+e],i)):console[r]("["+Lf+"]["+t+"] "+e)}}("Tooltip","No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()},t}(),Yf=function(){function t(t,e){this.item=t,this.service=e}return t.prototype.ngOnInit=function(){var t=this;setTimeout(function(){t.text=t.item.details.data.text,t.center=t.item.details.data.center},10),setTimeout(function(){return t.service.close(t.item.ID)},1e3)},t}(),qf=ya,Zf=function(){function t(){if(this.build=qf(),!t.init){var e=qf();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),zf()?console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Lf+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"])):console[n]("[ACA][LIB] "+Lf+" - "+t+" | "+e)}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),$f=new Ut("cdk-dir-doc",{providedIn:"root",factory:function(){return zt($a)}}),Qf=function(){function t(t){if(this.value="ltr",this.change=new No,t){var e=(t.body?t.body.dir:null)||(t.documentElement?t.documentElement.dir:null);this.value="ltr"===e||"rtl"===e?e:"ltr"}}return t.prototype.ngOnDestroy=function(){this.change.complete()},t.ngInjectableDef=Ot({factory:function(){return new t(Lt($f,8))},token:t,providedIn:"root"}),t}(),Xf=function(){return function(){}}(),Kf=or({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function Jf(t){return as(0,[(t()(),Gi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function tg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function eg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,tg)),vo(2,540672,null,0,qa,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function ng(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function rg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,ng)),vo(2,671744,null,0,ja,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function og(t){return as(0,[(t()(),Gi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Gi(1,0,null,null,7,null,null,null,null,null,null,null)),vo(2,16384,null,0,Wa,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Wi(16777216,null,null,1,null,Jf)),vo(4,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,eg)),vo(6,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,rg)),vo(8,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function ig(t){return as(0,[(t()(),Wi(16777216,null,null,1,null,og)),vo(1,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function sg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"overlay-outlet",[],null,null,null,ig,Kf)),vo(1,114688,null,0,Ff,[Gt],null,null)],function(t,e){t(e,1,0)},null)}var ag=Gr("overlay-outlet",Ff,sg,{},{},[]),lg=or({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function ug(t){return as(0,[(t()(),Gi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),os(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function cg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"a-floating-text",[],null,null,null,ug,lg)),vo(1,114688,null,0,Yf,[Hf,Wf],null,null)],function(t,e){t(e,1,0)},null)}var hg=Gr("a-floating-text",Yf,cg,{},{},[]),pg=or({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function dg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function fg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,dg)),vo(2,540672,null,0,qa,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function gg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function vg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,gg)),vo(2,671744,null,0,ja,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function yg(t){return as(0,[(t()(),Gi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function mg(t){return as(0,[(t()(),Gi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),os(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function _g(t){return as(0,[(t()(),Gi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function bg(t){return as(0,[(t()(),Gi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Gi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),"touchstart"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),r},null,null)),(t()(),Gi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Gi(4,0,null,null,7,null,null,null,null,null,null,null)),vo(5,16384,null,0,Wa,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Wi(16777216,null,null,1,null,fg)),vo(7,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,vg)),vo(9,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,yg)),vo(11,16384,null,0,Ya,[zn,Vn,Wa],null,null),(t()(),Gi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),"touchend"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),r},null,null)),(t()(),Wi(16777216,null,null,1,null,mg)),vo(14,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Wi(16777216,null,null,1,null,_g)),vo(16,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function wg(t){return as(0,[(t()(),Gi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,bg)),vo(2,278528,null,0,La,[zn,Vn,In],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function Cg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"notification-outlet",[],null,null,null,wg,pg)),vo(1,245760,null,0,Bf,[Hf,yn],null,null)],function(t,e){t(e,1,0)},null)}var xg=Gr("notification-outlet",Bf,Cg,{},{},[]),Sg=function(t){function e(e,n){var r=t.call(this,e)||this;r.sources=n,r.completed=0,r.haveValues=0;var o=n.length;r.values=new Array(o);for(var i=0;it?{max:{max:t,actual:e.value}}:null}},t.required=function(t){return Ng(t.value)?{required:!0}:null},t.requiredTrue=function(t){return!0===t.value?null:{required:!0}},t.email=function(t){return Ng(t.value)?null:Dg.test(t.value)?null:{email:!0}},t.minLength=function(t){return function(e){if(Ng(e.value))return null;var n=e.value?e.value.length:0;return nt?{maxlength:{requiredLength:t,actualLength:n}}:null}},t.pattern=function(e){return e?("string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),n=new RegExp(r)):(r=e.toString(),n=e),function(t){if(Ng(t.value))return null;var e=t.value;return n.test(e)?null:{pattern:{requiredPattern:r,actualValue:e}}}):t.nullValidator;var n,r},t.nullValidator=function(t){return null},t.compose=function(t){if(!t)return null;var e=t.filter(Vg);return 0==e.length?null:function(t){return zg(function(t,n){return e.map(function(e){return e(t)})}(t))}},t.composeAsync=function(t){if(!t)return null;var e=t.filter(Vg);return 0==e.length?null:function(t){return function t(){for(var e,n=[],r=0;r=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}(),Wg=function(){function t(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return t.prototype.ngOnInit=function(){this._control=this._injector.get(Ag),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: \n ')},t}(),Gg='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Yg='\n
\n
\n \n
\n
';function qg(t,e){return p(e.path,[t])}function Zg(t,e){t||Qg(e,"Cannot find control with"),e.valueAccessor||Qg(e,"No value accessor for form control with"),t.validator=jg.compose([t.validator,e.validator]),t.asyncValidator=jg.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&&$g(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&&$g(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 $g(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Qg(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 Xg(t){return null!=t?jg.compose(t.map(Ug)):null}function Kg(t){return null!=t?jg.composeAsync(t.map(Fg)):null}var Jg=[Og,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}(),Hg,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=qe}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=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}(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=c(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var i=o.value;if(this._compareWith(this._optionMap.get(i),t))return i}}catch(s){e={error:s}}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},t}(),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=qe}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 r=t.map(function(t){return n._getOptionId(t)});e=function(t,e){t._setSelected(r.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 r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i0||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}(rv),sv=function(t){function e(e,n,r){var o=t.call(this,tv(n),ev(r,n))||this;return o.controls=e,o._initObservables(),o._setUpdateStrategy(n),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return o(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,r){n._throwIfControlMissing(r),n.at(r).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,r){n.at(r)&&n.at(r).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,r){n.reset(t[r],{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 ov?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=c(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(o){t={error:o}}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}(rv),av=function(){return Promise.resolve(null)}(),lv=function(t){function e(e,n){var r=t.call(this)||this;return r.submitted=!1,r._directives=[],r.ngSubmit=new No,r.form=new iv({},Xg(e),Kg(n)),r}return o(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;av.then(function(){var n=e._findContainer(t.path);t.control=n.registerControl(t.name,t.control),Zg(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;av.then(function(){var n,r,o=e._findContainer(t.path);o&&o.removeControl(t.name),(r=(n=e._directives).indexOf(t))>-1&&n.splice(r,1)})},e.prototype.addFormGroup=function(t){var e=this;av.then(function(){var n=e._findContainer(t.path),r=new iv({});(function(t,e){null==t&&Qg(e,"Cannot find control with"),t.validator=jg.compose([t.validator,e.validator]),t.asyncValidator=jg.composeAsync([t.asyncValidator,e.asyncValidator])})(r,t),n.registerControl(t.name,r),r.updateValueAndValidity({emitEvent:!1})})},e.prototype.removeFormGroup=function(t){var e=this;av.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;av.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,e=this._directives,this.form._syncPendingControls(),e.forEach(function(t){var e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e},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},e}(Ig),uv=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 \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\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
\n \n \n
\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 "+Gg+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+Yg)},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: \n Example 2: ')},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 "+Gg+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+Yg)},t.ngFormWarning=function(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")},t}(),cv=new Ut("NgFormSelectorWarning"),hv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(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 qg(this.name,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 Xg(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Kg(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){},e}(Ig),pv=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}var n;return o(e,t),n=e,e.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof lv||uv.modelGroupParentException()},e}(hv),dv=function(){return Promise.resolve(null)}(),fv=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.control=new ov,i._registered=!1,i.update=new No,i._parent=e,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Qg(t,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,o=void 0;return e.forEach(function(e){var i;e.constructor===Pg?n=e:(i=e,Jg.some(function(t){return i.constructor===t})?(r&&Qg(t,"More than one built-in value accessor matches form control with"),r=e):(o&&Qg(t,"More than one custom value accessor matches form control with"),o=e))}),o||r||n||(Qg(t,"No valid value accessor for form control with"),null)}(i,o),i}return o(e,t),e.prototype.ngOnChanges=function(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;var n=t.model;return!!n.isFirstChange()||!qe(e,n.currentValue)}(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?qg(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 Xg(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Kg(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(){Zg(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 pv)&&this._parent instanceof hv?uv.formGroupNameException():this._parent instanceof pv||this._parent instanceof lv||uv.modelParentException()},e.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||uv.missingNameException()},e.prototype._updateValue=function(t){var e=this;dv.then(function(){e.control.setValue(t,{emitViewToModelChange:!1})})},e.prototype._updateDisabled=function(t){var e=this,n=t.isDisabled.currentValue,r=""===n||n&&"false"!==n;dv.then(function(){r&&!e.control.disabled?e.control.disable():!r&&e.control.disabled&&e.control.enable()})},e}(Ag),gv=new Ut("NgModelWithFormControlWarning"),vv=function(){return function(){}}(),yv=function(){function t(){}return t.prototype.group=function(t,e){void 0===e&&(e=null);var n=this._reduceControls(t),r=null,o=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(r=null!=e.validators?e.validators:null,o=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(r=null!=e.validator?e.validator:null,o=null!=e.asyncValidator?e.asyncValidator:null)),new iv(n,{asyncValidators:o,updateOn:i,validators:r})},t.prototype.control=function(t,e,n){return new ov(t,e,n)},t.prototype.array=function(t,e,n){var r=this,o=t.map(function(t){return r._createControl(t)});return new sv(o,e,n)},t.prototype._reduceControls=function(t){var e=this,n={};return Object.keys(t).forEach(function(r){n[r]=e._createControl(t[r])}),n},t.prototype._createControl=function(t){return t instanceof ov||t instanceof iv||t instanceof sv?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)},t}(),mv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:cv,useValue:t.warnOnDeprecatedNgFormSelector}]}},t}(),_v=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:gv,useValue:t.warnOnNgModelWithFormControl}]}},t}(),bv=or({encapsulation:2,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:0}.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:0}.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}"],data:{}});function wv(t){return as(2,[Qi(402653184,1,{_contentWrapper:0}),(t()(),Gi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),es(null,0),(t()(),Gi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Cv=or({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function xv(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==no(t,5)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==no(t,5).onTouched()&&r),"compositionstart"===e&&(r=!1!==no(t,5)._compositionStart()&&r),"compositionend"===e&&(r=!1!==no(t,5)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search=n)&&r),"ngModelChange"===e&&(o.searchChange.emit(n),r=!1!==o.filter()&&r),r},null,null)),vo(5,16384,null,0,Pg,[yn,pn,[2,kg]],null,null),mo(1024,null,Eg,function(t){return[t]},[Pg]),vo(7,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(9,16384,null,0,Mg,[[4,Ag]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,no(e,9).ngClassUntouched,no(e,9).ngClassTouched,no(e,9).ngClassPristine,no(e,9).ngClassDirty,no(e,9).ngClassValid,no(e,9).ngClassInvalid,no(e,9).ngClassPending)})}function Sv(t){return as(0,[(t()(),Gi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.select(t.context.$implicit)&&r),r},null,null)),(t()(),Gi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Ev(t){return as(0,[(t()(),Gi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,wv,bv)),mo(6144,null,Kd,null,[tf]),vo(3,540672,null,0,Qd,[],{itemSize:[0,"itemSize"]},null),mo(1024,null,qd,$d,[Qd]),vo(5,245760,[[4,4],[5,4],["viewport",4]],0,tf,[pn,An,li,[2,qd],[2,Qf],Xd],null,null),(t()(),Wi(16777216,[[2,2]],0,1,null,Sv)),vo(7,409600,null,0,nf,[zn,Vn,In,[1,tf],li],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===no(e,5).orientation,"horizontal"!==no(e,5).orientation)})}function Ov(t){return as(0,[(t()(),Gi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function kv(t){return as(0,[(t()(),Gi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.cancelClose()&&r),r},null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(r=0!=(o.show=!o.show)&&r),r},null,null)),(t()(),Gi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Wi(16777216,[[2,2]],null,1,null,xv)),vo(7,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Wi(16777216,[[2,2]],null,1,null,Ev)),vo(10,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Wi(0,[[2,2],["noItems",2]],null,0,null,Ov))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,no(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Pv(t){return as(0,[Qi(402653184,1,{reference:0}),Qi(402653184,2,{dropdown_tooltip:0}),Qi(402653184,3,{input:0}),Qi(402653184,4,{viewport:0}),Qi(402653184,5,{scroll_el:0}),(t()(),Gi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var r=!0,o=t.component;return"keyup.enter"===e&&(r=!1!==o.toggleShow()&&r),"keydown.arrowup"===e&&(r=!1!==n.preventDefault()&&r),"keydown.arrowdown"===e&&(r=!1!==n.preventDefault()&&r),"keyup.arrowup"===e&&(r=!1!==(o.focus?o.change(-1):"")&&r),"keyup.arrowdown"===e&&(r=!1!==(o.focus?o.change(1):"")&&r),"focus"===e&&(r=0!=(o.focus=!0)&&r),"blur"===e&&(r=0!=(o.focus=!1)&&r),"window:resize"===e&&(r=!1!==o.resize()&&r),"window:click"===e&&(r=!1!==(o.show?o.close():"")&&r),r},null,null)),(t()(),Gi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Gi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"showChange"===e&&(r=!1!==(o.show=n)&&r),"showChange"===e&&(r=!1!==o.updateScroll()&&r),"click"===e&&(r=!1!==o.toggleShow()&&r),r},null,null)),vo(8,737280,null,0,Gf,[pn,Wf,Nf,yn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Gi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),os(10,null,["",""])),(t()(),Gi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Gi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Gi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(15,null,["",""])),(t()(),Gi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Wi(0,[[2,2],["dropdown",2]],null,0,null,kv))],function(t,e){t(e,8,0,e.component.show,no(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}var Tv="Checkbox",Iv=function(){function t(){this.klass="default"}return t.prototype.toggle=function(){this.state=!this.state,this.onChange&&this.onChange(this.state)},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouch=t},t}(),Rv=ya,Av=function(){function t(){if(this.build=Rv(),!t.init){var e=Rv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Tv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Tv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Mv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}return t.prototype.handleMouse=function(t){this.handleEvent(t)},t.prototype.handleTouch=function(t){this.handleEvent(t)},t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;setTimeout(function(){t.element&&t.element.nativeElement&&(t.cached_box=t.element.nativeElement.getBoundingClientRect(),t.size=Math.ceil(1.5*Math.max(t.cached_box.height,t.cached_box.width)))})},t.prototype.ngOnDestroy=function(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t.prototype.handleEvent=function(t){var e=this;this.cancelled=!1;var n=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX,r=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:r-this.cached_box.top+"px",left:n-this.cached_box.left+"px"},this.mouse_release_cancel=this.renderer.listen("window","mouseup",function(t){return e.handleRelease(t)}),this.touch_release_cancel=this.renderer.listen("window","touchend",function(t){return e.handleRelease(t)}),this.transitioning=!0,setTimeout(function(){e.transitioning=!1,e.cancelled&&(e.show=!1)},350)},t.prototype.handleRelease=function(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t}(),Nv=function(){function t(t,e){this.el=t,this.renderer=e,this.tapped=new No,this.touchrelease=new No,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}return t.prototype.ngAfterViewInit=function(){var t=this;this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",function(e){return t.handleHold(e)}),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",function(e){return t.handleHold(e)}))},t.prototype.ngOnDestroy=function(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}},t.prototype.remove=function(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)},t.prototype.handleHold=function(t){var e=this,n={x:window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=n,this.mouse_listener=this.renderer.listen(window,"mouseup",function(t){return e.handleRelease(t)}),this.touch_listener=this.renderer.listen(window,"touchend",function(t){return e.handleRelease(t)}),this.timer=setTimeout(function(){return e.remove()},this.max_delay)},t.prototype.handleRelease=function(t){var e=this;this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(function(){var n=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX;window.TouchEvent&&TouchEvent,Math.sqrt(Math.pow(n-e.start.x,2)+2) div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function Fv(t){return as(0,[(t()(),Gi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.toggle()&&r),r},null,null)),vo(1,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),os(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Hv(t){return as(0,[(t()(),Gi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Gi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,2).handleTouch(n)&&r),"keyup.enter"===e&&(r=!1!==o.toggle()&&r),"tapped"===e&&(r=!1!==o.toggle()&&r),r},zv,Lv)),vo(2,4440064,null,0,Mv,[pn,yn],{center:[0,"center"]},null),vo(3,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,Fv)),vo(6,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}var Bv="Buttons",Wv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new No,this.id="button-"+Math.floor(999999*Math.random())}return t.prototype.ngOnChanges=function(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()},t.prototype.ngAfterViewInit=function(){this.setClass(this.klass)},t.prototype.setClass=function(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))},t.prototype.setGroup=function(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")},t.prototype.setState=function(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")},t.prototype.tap=function(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this._onChange=t},t.prototype.registerOnTouched=function(t){this._onTouch=t},t}(),Gv=ya,Yv=function(){function t(){if(this.build=Gv(),!t.init){var e=Gv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Bv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Bv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),qv=or({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function Zv(t){return as(0,[(t()(),Gi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,1).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,1).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.tap()&&r),r},zv,Lv)),vo(1,4440064,null,0,Mv,[pn,yn],null,null),vo(2,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),es(0,0)],function(t,e){t(e,1,0)},null)}var $v=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t,e){switch(void 0===e&&(e="html"),e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}},t}(),Qv="Pipes",Xv=ya,Kv=function(){function t(){if(this.build=Xv(),!t.init){var e=Xv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Qv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Qv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Jv=function(){function t(){this._timers={},this._intervals={},this._subscriptions={}}return t.prototype.timeout=function(t,e,n){var r=this;if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(function(){e(),r._timers[t]=null},n)},t.prototype.clearTimeout=function(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)},t.prototype.interval=function(t,e,n){if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(function(){return e()},n)},t.prototype.clearInterval=function(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)},t.prototype.subscription=function(t,e){this.unsub(t),this._subscriptions[t]=e},t.prototype.unsub=function(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof m?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)},t}(),ty=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.ngOnDestroy=function(){for(var t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(var t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(var t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)},e}(Jv),ey=function(){return function(){}}(),ny=function(){return function(){}}(),ry=function(){function t(t){var e=this;this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?function(){e.headers=new Map,t.split("\n").forEach(function(t){var n=t.indexOf(":");if(n>0){var r=t.slice(0,n),o=r.toLowerCase(),i=t.slice(n+1).trim();e.maybeSetNormalizedName(r,o),e.headers.has(o)?e.headers.get(o).push(i):e.headers.set(o,[i])}})}:function(){e.headers=new Map,Object.keys(t).forEach(function(n){var r=t[n],o=n.toLowerCase();"string"==typeof r&&(r=[r]),r.length>0&&(e.headers.set(o,r),e.maybeSetNormalizedName(n,o))})}:this.headers=new Map}return t.prototype.has=function(t){return this.init(),this.headers.has(t.toLowerCase())},t.prototype.get=function(t){this.init();var e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null},t.prototype.keys=function(){return this.init(),Array.from(this.normalizedNames.values())},t.prototype.getAll=function(t){return this.init(),this.headers.get(t.toLowerCase())||null},t.prototype.append=function(t,e){return this.clone({name:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({name:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({name:t,value:e,op:"d"})},t.prototype.maybeSetNormalizedName=function(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)},t.prototype.init=function(){var e=this;this.lazyInit&&(this.lazyInit instanceof t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(t){return e.applyUpdate(t)}),this.lazyUpdate=null))},t.prototype.copyFrom=function(t){var e=this;t.init(),Array.from(t.headers.keys()).forEach(function(n){e.headers.set(n,t.headers.get(n)),e.normalizedNames.set(n,t.normalizedNames.get(n))})},t.prototype.clone=function(e){var n=new t;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([e]),n},t.prototype.applyUpdate=function(t){var e=t.name.toLowerCase();switch(t.op){case"a":case"s":var n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);var r=("a"===t.op?this.headers.get(e):void 0)||[];r.push.apply(r,p(n)),this.headers.set(e,r);break;case"d":var o=t.value;if(o){var i=this.headers.get(e);if(!i)return;0===(i=i.filter(function(t){return-1===o.indexOf(t)})).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,i)}else this.headers.delete(e),this.normalizedNames.delete(e)}},t.prototype.forEach=function(t){var e=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return t(e.normalizedNames.get(n),e.headers.get(n))})},t}(),oy=function(){function t(){}return t.prototype.encodeKey=function(t){return iy(t)},t.prototype.encodeValue=function(t){return iy(t)},t.prototype.decodeKey=function(t){return decodeURIComponent(t)},t.prototype.decodeValue=function(t){return decodeURIComponent(t)},t}();function iy(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}var sy=function(){function t(t){var e,n,r,o=this;if(void 0===t&&(t={}),this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new oy,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=(e=t.fromString,n=this.encoder,r=new Map,e.length>0&&e.split("&").forEach(function(t){var e=t.indexOf("="),o=h(-1==e?[n.decodeKey(t),""]:[n.decodeKey(t.slice(0,e)),n.decodeValue(t.slice(e+1))],2),i=o[0],s=o[1],a=r.get(i)||[];a.push(s),r.set(i,a)}),r)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(function(e){var n=t.fromObject[e];o.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}return t.prototype.has=function(t){return this.init(),this.map.has(t)},t.prototype.get=function(t){this.init();var e=this.map.get(t);return e?e[0]:null},t.prototype.getAll=function(t){return this.init(),this.map.get(t)||null},t.prototype.keys=function(){return this.init(),Array.from(this.map.keys())},t.prototype.append=function(t,e){return this.clone({param:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({param:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({param:t,value:e,op:"d"})},t.prototype.toString=function(){var t=this;return this.init(),this.keys().map(function(e){var n=t.encoder.encodeKey(e);return t.map.get(e).map(function(e){return n+"="+t.encoder.encodeValue(e)}).join("&")}).join("&")},t.prototype.clone=function(e){var n=new t({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat([e]),n},t.prototype.init=function(){var t=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(e){return t.map.set(e,t.cloneFrom.map.get(e))}),this.updates.forEach(function(e){switch(e.op){case"a":case"s":var n=("a"===e.op?t.map.get(e.param):void 0)||[];n.push(e.value),t.map.set(e.param,n);break;case"d":if(void 0===e.value){t.map.delete(e.param);break}var r=t.map.get(e.param)||[],o=r.indexOf(e.value);-1!==o&&r.splice(o,1),r.length>0?t.map.set(e.param,r):t.map.delete(e.param)}}),this.cloneFrom=this.updates=null)},t}();function ay(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function ly(t){return"undefined"!=typeof Blob&&t instanceof Blob}function uy(t){return"undefined"!=typeof FormData&&t instanceof FormData}var cy=function(){function t(t,e,n,r){var o;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,o=r):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.params&&(this.params=o.params)),this.headers||(this.headers=new ry),this.params){var i=this.params.toString();if(0===i.length)this.urlWithParams=e;else{var s=e.indexOf("?");this.urlWithParams=e+(-1===s?"?":s=200&&this.status<300}}(),dy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=hy.ResponseHeader,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(py),fy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=hy.Response,n.body=void 0!==e.body?e.body:null,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(py),gy=function(t){function e(e){var n=t.call(this,e,0,"Unknown Error")||this;return n.name="HttpErrorResponse",n.ok=!1,n.message=n.status>=200&&n.status<300?"Http failure during parsing for "+(e.url||"(unknown url)"):"Http failure response for "+(e.url||"(unknown url)")+": "+e.status+" "+e.statusText,n.error=e.error||null,n}return o(e,t),e}(py);function vy(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}var yy=function(){function t(t){this.handler=t}return t.prototype.request=function(t,e,n){var r,o=this;if(void 0===n&&(n={}),t instanceof cy)r=t;else{var i;i=n.headers instanceof ry?n.headers:new ry(n.headers);var s=void 0;n.params&&(s=n.params instanceof sy?n.params:new sy({fromObject:n.params})),r=new cy(t,e,void 0!==n.body?n.body:null,{headers:i,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}var a=ol(r).pipe(ql(function(t){return o.handler.handle(t)}));if(t instanceof cy||"events"===n.observe)return a;var l=a.pipe(dl(function(t){return t instanceof fy}));switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return l.pipe(K(function(t){if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return l.pipe(K(function(t){return t.body}))}case"response":return l;default:throw new Error("Unreachable: unhandled observe type "+n.observe+"}")}},t.prototype.delete=function(t,e){return void 0===e&&(e={}),this.request("DELETE",t,e)},t.prototype.get=function(t,e){return void 0===e&&(e={}),this.request("GET",t,e)},t.prototype.head=function(t,e){return void 0===e&&(e={}),this.request("HEAD",t,e)},t.prototype.jsonp=function(t,e){return this.request("JSONP",t,{params:(new sy).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})},t.prototype.options=function(t,e){return void 0===e&&(e={}),this.request("OPTIONS",t,e)},t.prototype.patch=function(t,e,n){return void 0===n&&(n={}),this.request("PATCH",t,vy(n,e))},t.prototype.post=function(t,e,n){return void 0===n&&(n={}),this.request("POST",t,vy(n,e))},t.prototype.put=function(t,e,n){return void 0===n&&(n={}),this.request("PUT",t,vy(n,e))},t}(),my=function(){function t(t,e){this.next=t,this.interceptor=e}return t.prototype.handle=function(t){return this.interceptor.intercept(t,this.next)},t}(),_y=new Ut("HTTP_INTERCEPTORS"),by=function(){function t(){}return t.prototype.intercept=function(t,e){return e.handle(t)},t}(),wy=/^\)\]\}',?\n/,Cy=function(){return function(){}}(),xy=function(){function t(){}return t.prototype.build=function(){return new XMLHttpRequest},t}(),Sy=function(){function t(t){this.xhrFactory=t}return t.prototype.handle=function(t){var e=this;if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new R(function(n){var r=e.xhrFactory.build();if(r.open(t.method,t.urlWithParams),t.withCredentials&&(r.withCredentials=!0),t.headers.forEach(function(t,e){return r.setRequestHeader(t,e.join(","))}),t.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){var o=t.detectContentTypeHeader();null!==o&&r.setRequestHeader("Content-Type",o)}if(t.responseType){var i=t.responseType.toLowerCase();r.responseType="json"!==i?i:"text"}var s=t.serializeBody(),a=null,l=function(){if(null!==a)return a;var e=1223===r.status?204:r.status,n=r.statusText||"OK",o=new ry(r.getAllResponseHeaders()),i=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(r)||t.url;return a=new dy({headers:o,status:e,statusText:n,url:i})},u=function(){var e=l(),o=e.headers,i=e.status,s=e.statusText,a=e.url,u=null;204!==i&&(u=void 0===r.response?r.responseText:r.response),0===i&&(i=u?200:0);var c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof u){var h=u;u=u.replace(wy,"");try{u=""!==u?JSON.parse(u):null}catch(p){u=h,c&&(c=!1,u={error:p,text:u})}}c?(n.next(new fy({body:u,headers:o,status:i,statusText:s,url:a||void 0})),n.complete()):n.error(new gy({error:u,headers:o,status:i,statusText:s,url:a||void 0}))},c=function(t){var e=l().url,o=new gy({error:t,status:r.status||0,statusText:r.statusText||"Unknown Error",url:e||void 0});n.error(o)},h=!1,p=function(e){h||(n.next(l()),h=!0);var o={type:hy.DownloadProgress,loaded:e.loaded};e.lengthComputable&&(o.total=e.total),"text"===t.responseType&&r.responseText&&(o.partialText=r.responseText),n.next(o)},d=function(t){var e={type:hy.UploadProgress,loaded:t.loaded};t.lengthComputable&&(e.total=t.total),n.next(e)};return r.addEventListener("load",u),r.addEventListener("error",c),t.reportProgress&&(r.addEventListener("progress",p),null!==s&&r.upload&&r.upload.addEventListener("progress",d)),r.send(s),n.next({type:hy.Sent}),function(){r.removeEventListener("error",c),r.removeEventListener("load",u),t.reportProgress&&(r.removeEventListener("progress",p),null!==s&&r.upload&&r.upload.removeEventListener("progress",d)),r.abort()}})},t}(),Ey=new Ut("XSRF_COOKIE_NAME"),Oy=new Ut("XSRF_HEADER_NAME"),ky=function(){return function(){}}(),Py=function(){function t(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return t.prototype.getToken=function(){if("server"===this.platform)return null;var t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Da(t,this.cookieName),this.lastCookieString=t),this.lastToken},t}(),Ty=function(){function t(t,e){this.tokenService=t,this.headerName=e}return t.prototype.intercept=function(t,e){var n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);var r=this.tokenService.getToken();return null===r||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,r)})),e.handle(t)},t}(),Iy=function(){function t(t,e){this.backend=t,this.injector=e,this.chain=null}return t.prototype.handle=function(t){if(null===this.chain){var e=this.injector.get(_y,[]);this.chain=e.reduceRight(function(t,e){return new my(t,e)},this.backend)}return this.chain.handle(t)},t}(),Ry=function(){function t(){}var e;return e=t,t.disable=function(){return{ngModule:e,providers:[{provide:Ty,useClass:by}]}},t.withOptions=function(t){return void 0===t&&(t={}),{ngModule:e,providers:[t.cookieName?{provide:Ey,useValue:t.cookieName}:[],t.headerName?{provide:Oy,useValue:t.headerName}:[]]}},t}(),Ay=function(){return function(){}}(),My=function(){function t(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new il(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}return t.prototype.init=function(){return l(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.loadFromFile("api")];case 1:return t.sent(),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete(),[2]}})})},Object.defineProperty(t.prototype,"setup",{get:function(){return this._setup},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"app_name",{get:function(){return this._app_name},enumerable:!0,configurable:!0}),t.prototype.isSetup=function(t){return this._is_setup_observer.subscribe(t)},t.prototype.log=function(t,e,n,r,o){if(void 0===r&&(r="debug"),void 0===o&&(o=!1),window.debug||o){var i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i,[n])):console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i))}},t.prototype.get=function(t){var e=t.split("."),n=null;return"session"===e[0]?(e.shift(),n=va(e,this._settings.session)):"local"===e[0]?(e.shift(),n=va(e,this._settings.local)):n=va(e,this._settings.api)||va(e,this._settings.session)||va(e,this._settings.local),n},t.prototype.loadStore=function(t,e){if(e)for(var n=0;n5?[2,Promise.resolve()]:(this._promises[r="load|"+t+"|"+e]||(this._promises[r]=new Promise(function(s,a){o.http.get(e).subscribe(function(e){o._settings[t]=i({},o._settings[t]||{},e||{})},function(i){o.log("Settings",'Failed to load settings from "'+e+'"'),o._promises[r]=null,o.loadFromFile(t,e,++n).then(function(){return s()})},function(){return s()})})),[2,this._promises[r]])})})},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(yy))},token:t,providedIn:"root"}),t}(),Ny=["control","shift","alt","meta","os"],Dy=function(){function t(){var t=this;this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.last_down!==n&&(t.keydown_states[n]||(t.keydown_states[n]=new il(null),t.keydown_observers[n]=t.keydown_states[n].asObservable()),t.keydown_states[n].next(t.counter++),t.combo_end.indexOf(n)>=0&&e.preventDefault(),t.last_down=n)}),window.addEventListener("keyup",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.keydown_states[n].next(null),t.last_down===n&&(t.last_down=null)})}return t.prototype.listen=function(t,e){var n=this,r=(t=t instanceof Array?t:t.split("+")).map(function(t){return n.mapKey(t.toLowerCase())});if(r.length>0&&this.validCombination(r)){this.registered_combos.push(r);var o=r[r.length-1];return this.keydown_states[o]||(this.keydown_states[o]=new il(null),this.keydown_observers[o]=this.keydown_states[o].asObservable()),this.updateCombinationEndList(),this.keydown_observers[o].subscribe(function(t){if(t){var o=[];if(r.length>1){for(var i=0,s=r;io[l+1])return}e()}})}return null},t.prototype.mapKey=function(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t},t.prototype.updateCombinationEndList=function(){for(var t,e=0,n=this.registered_combos;e0},t.ngInjectableDef=Ot({factory:function(){return new t},token:t,providedIn:"root"}),t}(),jy=[],Vy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=ga(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.repositories=function(){var t=this,e="repositories";return this._promises[e]||(this._promises[e]=new Promise(function(n,r){var o;t.http.get(t.api_route+"/repositories").subscribe(function(t){return o=t},function(n){r(n),delete t._promises[e]},function(){n(o),t.timeout(e,function(){return delete t._promises[e]},1e3)})})),this._promises[e]},e.prototype.commits=function(t){var e=this,n="commits|"+ga(t);return this._promises[n]||(this._promises[n]=new Promise(function(t,r){var o;e.http.get(e.api_route+"/repositories_commits").subscribe(function(t){return o=t},function(t){r(t),delete e._promises[n]},function(){t(o),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.versions=function(t){var e=this,n="versions|"+t;return this._promises[n]||(this._promises[n]=new Promise(function(r,o){var i,s=e.api_route+"/"+encodeURIComponent(t);e.http.get(s).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[n]},function(){r(i),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.driverCommits=function(t,e){var n=this,r=ga(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.build=function(t){var e=this,n=ga(t),r="build|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){e.http.post(""+e.api_route,n).subscribe(function(t){return null},function(t){o(t),delete e._promises[r]},function(){t(),delete e._promises[r]})})),this._promises[r]},e.prototype.clean=function(t,e){var n=this,r=ga(e),o="clean|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(t,e){n.http.delete(n.api_route+(r?"?"+r:"")).subscribe(function(t){return null},function(t){e(t),delete n._promises[o]},function(){t(),delete n._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/build":"/build"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(yy))},token:e,providedIn:"root"}),e}(Jv),Ly=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=ga(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.specCommits=function(t,e){var n=this,r=ga(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.run=function(t){var e=this;for(var n in t)null==t[n]&&delete t[n];var r=ga(t),o="build|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(n,i){var s;e.http.post(e.api_route+(r?"?"+r:""),t,{responseType:"text"}).subscribe(function(t){return s=t},function(t){i(t),delete e._promises[o]},function(){n(s),delete e._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/test":"/test"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(yy))},token:e,providedIn:"root"}),e}(Jv),zy=new R(P),Uy=function(){function t(t,e){this.delay=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new Fy(t,this.delay,this.scheduler))},t}(),Fy=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.delay=n,o.scheduler=r,o.queue=[],o.active=!1,o.errored=!1,o}return o(e,t),e.dispatch=function(t){for(var e=t.source,n=e.queue,r=t.scheduler,o=t.destination;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(o);if(n.length>0){var i=Math.max(0,n[0].time-r.now());this.schedule(t,i)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.destination.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new Hy(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(jd.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.scheduleNotification(jd.createComplete()),this.unsubscribe()},e}(E),Hy=function(){return function(t,e){this.time=t,this.notification=e}}(),By="Service workers are disabled or not supported by this browser",Wy=function(){function t(t){if(this.serviceWorker=t,t){var e=ad(t,"controllerchange").pipe(K(function(){return t.controller})),n=Hl(hl(function(){return ol(t.controller)}),e);this.worker=n.pipe(dl(function(t){return!!t})),this.registration=this.worker.pipe(zl(function(){return t.getRegistration()}));var r=ad(t,"message").pipe(K(function(t){return t.data})).pipe(dl(function(t){return t&&t.type})).pipe(gt(new V));r.connect(),this.events=r}else this.worker=this.events=this.registration=(o=By,hl(function(){return Md(new Error(o))}));var o}return t.prototype.postMessage=function(t,e){return this.worker.pipe(Ml(1),wl(function(n){n.postMessage(i({action:t},e))})).toPromise().then(function(){})},t.prototype.postMessageWithStatus=function(t,e,n){var r=this.waitForStatus(n),o=this.postMessage(t,e);return Promise.all([r,o]).then(function(){})},t.prototype.generateNonce=function(){return Math.round(1e7*Math.random())},t.prototype.eventsOfType=function(t){return this.events.pipe(dl(function(e){return e.type===t}))},t.prototype.nextEventOfType=function(t){return this.eventsOfType(t).pipe(Ml(1))},t.prototype.waitForStatus=function(t){return this.eventsOfType("STATUS").pipe(dl(function(e){return e.nonce===t}),Ml(1),K(function(t){if(!t.status)throw new Error(t.error)})).toPromise()},Object.defineProperty(t.prototype,"isEnabled",{get:function(){return!!this.serviceWorker},enumerable:!0,configurable:!0}),t}(),Gy=function(){function t(t){if(this.sw=t,this.subscriptionChanges=new V,!t.isEnabled)return this.messages=zy,this.notificationClicks=zy,void(this.subscription=zy);this.messages=this.sw.eventsOfType("PUSH").pipe(K(function(t){return t.data})),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(K(function(t){return t.data})),this.pushManager=this.sw.registration.pipe(K(function(t){return t.pushManager}));var e=this.pushManager.pipe(zl(function(t){return t.getSubscription()}));this.subscription=lt(e,this.subscriptionChanges)}return Object.defineProperty(t.prototype,"isEnabled",{get:function(){return this.sw.isEnabled},enumerable:!0,configurable:!0}),t.prototype.requestSubscription=function(t){var e=this;if(!this.sw.isEnabled)return Promise.reject(new Error(By));for(var n={userVisibleOnly:!0},r=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),o=new Uint8Array(new ArrayBuffer(r.length)),i=0;i
'+e+"
",n,r,t)},e.prototype.notifySuccess=function(t,e,n){this.notify("success",t,e,n)},e.prototype.notifyError=function(t,e,n){this.notify("error",t,e,n)},e.prototype.notifyInfo=function(t,e,n){this.notify("info",t,e,n)},e.prototype.log=function(t,e,n,r,o){void 0===r&&(r="debug"),void 0===o&&(o=!1),this._settings.log(t,e,n,r,o)},e.prototype.navigate=function(t,e){var n=t instanceof Array?t.slice():[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})},e.prototype.navigateBack=function(){if(this._route_trail&&this._route_trail.length>0){var t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])},e.prototype.get=function(t){return this._subjects[t]&&this._subjects[t]instanceof il?this._subjects[t].getValue():null},e.prototype.listen=function(t,e){return this._observers[t]?this._observers[t].subscribe(e):null},e.prototype.set=function(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new il(e),this._observers[t]=this._subjects[t].asObservable())},e.prototype.init=function(){var t=this;if(!this._settings.setup)return this.timeout("init",function(){return t.init()});this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(function(e){t.log("CACHE","Update available: current version is "+e.current.hash+" available version is "+e.available.hash),t.notifyInfo("Newer version of the app is available","Refresh",function(){return location.reload()})}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],function(){t.navigate("bootstrap",{clear:!0})})},e.prototype.registerOverlays=function(){if(jy)for(var t=0,e=jy;tt.driver.localeCompare(n.id)?e:n},null),t.updateSpecCommits()),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.updateSpecCommits=function(){var t=this;this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(function(e){t.spec_commit_list=(e||[]).map(function(t){return{id:t.commit,name:t.commit,author:t.author,date:ya(t.date).format("DD MMM YYYY h:mm A")}}),t.spec_commit_list.unshift({id:null,name:"Latest Commit"}),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.test=function(){var t=this;if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";var e=function(e){e instanceof Object&&(e=e.error),t.test_results=t.styleResults(e||"");var n=t.service.get("TEST.results")||{},r=e.indexOf("exited with 0")>=0;n[t.repo+"|"+t.driver]=r?"passed":"failed",t.service.set("TEST.results",n),t.testing=!1,t.timeout("scroll",function(){return t.body.nativeElement.scrollTo(0,t.body.nativeElement.scrollHeight)},10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(e,e)}},e.prototype.styleResults=function(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')},e}(ty),om=or({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function im(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Spec Commit:"])),(t()(),Gi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.spec_commit=n)&&r),r},Pv,Cv)),vo(5,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(7,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(9,16384,null,0,Mg,[[4,Ag]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,no(e,9).ngClassUntouched,no(e,9).ngClassTouched,no(e,9).ngClassPristine,no(e,9).ngClassDirty,no(e,9).ngClassValid,no(e,9).ngClassInvalid,no(e,9).ngClassPending)})}function sm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),rs(1,2)],null,function(t,e){var n=e.component,r=er(e,0,0,t(e,1,0,no(e.parent.parent,0),n.test_results,"html"));t(e,0,0,r)})}function am(t){return as(0,[(t()(),Gi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Repository:"])),(t()(),Gi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),os(6,null,["",""])),(t()(),Gi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Driver:"])),(t()(),Gi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),os(11,null,["",""])),(t()(),Gi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Commit:"])),(t()(),Gi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.commit=n)&&r),r},Pv,Cv)),vo(17,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(19,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(21,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Spec:"])),(t()(),Gi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.spec=n)&&r),"ngModelChange"===e&&(r=!1!==o.updateSpecCommits()&&r),r},Pv,Cv)),vo(27,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(29,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(31,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Wi(16777216,null,null,1,null,im)),vo(33,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Gi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Gi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Gi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.force=n)&&r),r},Hv,Uv)),vo(38,49152,null,0,Iv,[],{klass:[0,"klass"],label:[1,"label"]},null),mo(1024,null,Eg,function(t){return[t]},[Iv]),vo(40,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(42,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Gi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.debug=n)&&r),r},Hv,Uv)),vo(45,49152,null,0,Iv,[],{klass:[0,"klass"],label:[1,"label"]},null),mo(1024,null,Eg,function(t){return[t]},[Iv]),vo(47,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(49,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Gi(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Gi(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.test()&&r),r},Zv,qv)),mo(5120,null,Eg,function(t){return[t]},[Wv]),vo(55,4767744,null,0,Wv,[pn,yn],null,{tapped:"tapped"}),vo(56,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),os(-1,0,["Run!"])),(t()(),Gi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),os(59,null,[" "," "])),(t()(),Wi(16777216,null,null,1,null,sm)),vo(61,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,63).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,63).handleTouch(n)&&r),"tapped"===e&&(r=0!=(o.show=!o.show)&&r),r},zv,Lv)),vo(63,4440064,null,0,Mv,[pn,yn],{klass:[0,"klass"],center:[1,"center"]},null),vo(64,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,no(e,21).ngClassUntouched,no(e,21).ngClassTouched,no(e,21).ngClassPristine,no(e,21).ngClassDirty,no(e,21).ngClassValid,no(e,21).ngClassInvalid,no(e,21).ngClassPending),t(e,26,0,no(e,31).ngClassUntouched,no(e,31).ngClassTouched,no(e,31).ngClassPristine,no(e,31).ngClassDirty,no(e,31).ngClassValid,no(e,31).ngClassInvalid,no(e,31).ngClassPending),t(e,37,0,no(e,42).ngClassUntouched,no(e,42).ngClassTouched,no(e,42).ngClassPristine,no(e,42).ngClassDirty,no(e,42).ngClassValid,no(e,42).ngClassInvalid,no(e,42).ngClassPending),t(e,44,0,no(e,49).ngClassUntouched,no(e,49).ngClassTouched,no(e,49).ngClassPristine,no(e,49).ngClassDirty,no(e,49).ngClassValid,no(e,49).ngClassInvalid,no(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_down":"keyboard_arrow_up")})}function lm(t){return as(0,[(t()(),Gi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["arrow_back"])),(t()(),Gi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(-1,null,["Select a driver from the sidebar"]))],null,null)}function um(t){return as(0,[yo(0,$v,[Zu]),Qi(671088640,1,{body:0}),(t()(),Gi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,am)),vo(4,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Wi(0,[["select",2]],null,0,null,lm))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,no(e,5))},null)}function cm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"app-workspace",[],null,null,null,um,om)),vo(1,245760,null,0,rm,[nm,gh],null,null)],function(t,e){t(e,1,0)},null)}var hm=Gr("app-workspace",rm,cm,{},{},[]),pm=function(){function t(){this.menu=!0,this.menuChange=new No}return t.prototype.toggleMenu=function(){this.menu=!this.menu,this.menuChange.emit(this.menu)},t}(),dm=or({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function fm(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,2).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.toggleMenu()&&r),r},zv,Lv)),vo(2,4440064,null,0,Mv,[pn,yn],{klass:[0,"klass"]},null),vo(3,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["menu"])),(t()(),Gi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Gi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Gi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),os(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}var gm=function(){function t(){}return t.prototype.transform=function(t){if(t.indexOf("/")>=0){var e=t.split("/");return e.splice(0,1),'
'+e.map(function(t){return'
'+t+"
"}).join('
keyboard_arrow_right
')+"
"}return t},t}(),vm=function(t){function e(e){var n=t.call(this)||this;return n.service=e,n.repository_list=[],n.status={},n}return o(e,t),e.prototype.ngOnInit=function(){var t=this;this.service.set("TEST.repository",""),this.service.set("TEST.filter",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",function(){return t.updateRepositoryList()},6e4),this.subscription("test_results",this.service.listen("TEST.filter",function(e){console.log("Filter:",e),t.search_str=e||"",t.filter(t.search_str)})),this.subscription("test_results",this.service.listen("TEST.results",function(e){t.status=e||{}})),this.subscription("repository",this.service.listen("TEST.repository",function(e){e&&(t.repo={id:e,name:e},t.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",function(e){t.driver=e}))},e.prototype.setRepository=function(t){this.service.navigate([t],{filter:this.search_str}),this.search_str="",this.updateDriverList()},e.prototype.setDriver=function(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t],{filter:this.search_str})},e.prototype.filter=function(t){this.filtered_list=(this.driver_list||[]).filter(function(e){return e.toLowerCase().indexOf(t.toLowerCase())>=0})},e.prototype.updateDriverList=function(){var t=this;this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(function(e){t.driver_list=e||[],t.filter(t.search_str),t.loading=!1},function(e){return t.loading=!1})},e.prototype.updateRepositoryList=function(){var t=this;this.service.Build.repositories().then(function(e){t.repository_list=(e||[]).map(function(t){return{id:t,name:t}}),t.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),t.updateDriverList()})},e}(ty),ym=or({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function mm(t){return as(0,[(t()(),Gi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.setDriver(t.context.$implicit)&&r),r},null,null)),vo(1,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Gi(3,0,null,null,1,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null)),rs(4,1)],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]);var r=er(e,3,0,t(e,4,0,no(e.parent,0),e.context.$implicit));t(e,3,0,r)})}function _m(t){return as(0,[(t()(),Gi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function bm(t){return as(0,[yo(0,gm,[]),(t()(),Gi(1,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.repo=n)&&r),"ngModelChange"===e&&(r=!1!==o.setRepository(n.id)&&r),r},Pv,Cv)),vo(4,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(6,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(8,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(9,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Gi(10,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(11,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["search"])),(t()(),Gi(13,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==no(t,14)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==no(t,14).onTouched()&&r),"compositionstart"===e&&(r=!1!==no(t,14)._compositionStart()&&r),"compositionend"===e&&(r=!1!==no(t,14)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search_str=n)&&r),"ngModelChange"===e&&(r=!1!==o.filter(n)&&r),r},null,null)),vo(14,16384,null,0,Pg,[yn,pn,[2,kg]],null,null),mo(1024,null,Eg,function(t){return[t]},[Pg]),vo(16,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(18,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(19,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,mm)),vo(21,278528,null,0,La,[zn,Vn,In],{ngForOf:[0,"ngForOf"]},null),(t()(),Wi(16777216,null,null,1,null,_m)),vo(23,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,4,0,"simple",n.repository_list||Rr,"ACA Drivers"),t(e,6,0,n.repo),t(e,16,0,n.search_str),t(e,21,0,n.filtered_list),t(e,23,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,3,0,no(e,8).ngClassUntouched,no(e,8).ngClassTouched,no(e,8).ngClassPristine,no(e,8).ngClassDirty,no(e,8).ngClassValid,no(e,8).ngClassInvalid,no(e,8).ngClassPending),t(e,13,0,no(e,18).ngClassUntouched,no(e,18).ngClassTouched,no(e,18).ngClassPristine,no(e,18).ngClassDirty,no(e,18).ngClassValid,no(e,18).ngClassInvalid,no(e,18).ngClassPending)})}var wm=or({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:20em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}.formatted-driver-name{display:flex;align-items:center}.formatted-driver-name .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:1.5em}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:28em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Cm(t){return as(0,[(t()(),Gi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var r=!0;return"menuChange"===e&&(r=!1!==(t.component.show_menu=n)&&r),r},fm,dm)),vo(3,49152,null,0,pm,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Gi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Gi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(6,0,null,null,1,"sidebar",[],null,null,null,bm,ym)),vo(7,245760,null,0,vm,[nm],null,null),(t()(),Gi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Gi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),vo(10,212992,null,0,Pp,[kp,zn,sn,[8,null],An],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function xm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"app-root",[],null,null,null,Cm,wm)),vo(1,49152,null,0,_a,[],null,null)],null,null)}var Sm=Gr("app-root",_a,xm,{},{},[]),Em=function(){return function(){}}(),Om=function(){return function(){}}(),km=pa(ma,[_a],function(t){return function(t){for(var e={},n=[],r=!1,o=0;o Date: Mon, 17 Jun 2019 02:01:50 +0000 Subject: [PATCH 0088/1365] [Task Runner] CI build 2019-06-17 02:01:50 --- www/.keep | 0 www/main-es2015.712beae41ae2d1a95ae0.js | 1 - www/main-es5.72cbbae2b0ff73724475.js | 1 - .../3rdpartylicenses.txt | 0 ...erialIcons-Regular.012cf6a10129e2275d79.woff | Bin ...rialIcons-Regular.570eb83859dc23dd0eec.woff2 | Bin ...terialIcons-Regular.a37b0c01c0baf1888ca8.ttf | Bin ...terialIcons-Regular.e79bfd88537def476913.eot | Bin .../assets/icons/icon-128x128.png | Bin .../assets/icons/icon-144x144.png | Bin .../assets/icons/icon-152x152.png | Bin .../assets/icons/icon-192x192.png | Bin .../assets/icons/icon-384x384.png | Bin .../assets/icons/icon-512x512.png | Bin .../assets/icons/icon-72x72.png | Bin .../assets/icons/icon-96x96.png | Bin .../assets/img/logo.svg | 0 .../assets/settings.json | 0 www/{ => ngx-driver-test-runner}/favicon.ico | Bin www/{ => ngx-driver-test-runner}/index.html | 4 ++-- .../main-es2015.f580037aa803df6f79ad.js | 1 + .../main-es5.b8b5138212966b8c5380.js | 1 + .../manifest.webmanifest | 0 www/{ => ngx-driver-test-runner}/ngsw-worker.js | 0 www/{ => ngx-driver-test-runner}/ngsw.json | 16 ++++++++-------- .../polyfills-es2015.559e7c8b3a629fdb5581.js | 0 .../polyfills-es5.943113ac054b16d954ae.js | 0 .../runtime-es2015.858f8dd898b75fe86926.js | 0 .../runtime-es5.741402d1d47331ce975c.js | 0 .../safety-worker.js | 0 .../styles.02ea681491e0a59dbf28.css} | 0 .../worker-basic.min.js | 0 www/sg.png | Bin 6928 -> 0 bytes 33 files changed, 12 insertions(+), 12 deletions(-) delete mode 100644 www/.keep delete mode 100644 www/main-es2015.712beae41ae2d1a95ae0.js delete mode 100644 www/main-es5.72cbbae2b0ff73724475.js rename www/{ => ngx-driver-test-runner}/3rdpartylicenses.txt (100%) rename www/{ => ngx-driver-test-runner}/MaterialIcons-Regular.012cf6a10129e2275d79.woff (100%) rename www/{ => ngx-driver-test-runner}/MaterialIcons-Regular.570eb83859dc23dd0eec.woff2 (100%) rename www/{ => ngx-driver-test-runner}/MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf (100%) rename www/{ => ngx-driver-test-runner}/MaterialIcons-Regular.e79bfd88537def476913.eot (100%) rename www/{ => ngx-driver-test-runner}/assets/icons/icon-128x128.png (100%) rename www/{ => ngx-driver-test-runner}/assets/icons/icon-144x144.png (100%) rename www/{ => ngx-driver-test-runner}/assets/icons/icon-152x152.png (100%) rename www/{ => ngx-driver-test-runner}/assets/icons/icon-192x192.png (100%) rename www/{ => ngx-driver-test-runner}/assets/icons/icon-384x384.png (100%) rename www/{ => ngx-driver-test-runner}/assets/icons/icon-512x512.png (100%) rename www/{ => ngx-driver-test-runner}/assets/icons/icon-72x72.png (100%) rename www/{ => ngx-driver-test-runner}/assets/icons/icon-96x96.png (100%) rename www/{ => ngx-driver-test-runner}/assets/img/logo.svg (100%) rename www/{ => ngx-driver-test-runner}/assets/settings.json (100%) rename www/{ => ngx-driver-test-runner}/favicon.ico (100%) rename www/{ => ngx-driver-test-runner}/index.html (96%) create mode 100644 www/ngx-driver-test-runner/main-es2015.f580037aa803df6f79ad.js create mode 100644 www/ngx-driver-test-runner/main-es5.b8b5138212966b8c5380.js rename www/{ => ngx-driver-test-runner}/manifest.webmanifest (100%) rename www/{ => ngx-driver-test-runner}/ngsw-worker.js (100%) rename www/{ => ngx-driver-test-runner}/ngsw.json (87%) rename www/{ => ngx-driver-test-runner}/polyfills-es2015.559e7c8b3a629fdb5581.js (100%) rename www/{ => ngx-driver-test-runner}/polyfills-es5.943113ac054b16d954ae.js (100%) rename www/{ => ngx-driver-test-runner}/runtime-es2015.858f8dd898b75fe86926.js (100%) rename www/{ => ngx-driver-test-runner}/runtime-es5.741402d1d47331ce975c.js (100%) rename www/{ => ngx-driver-test-runner}/safety-worker.js (100%) rename www/{styles.e9a05f80d09cf3960461.css => ngx-driver-test-runner/styles.02ea681491e0a59dbf28.css} (100%) rename www/{ => ngx-driver-test-runner}/worker-basic.min.js (100%) delete mode 100644 www/sg.png diff --git a/www/.keep b/www/.keep deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/www/main-es2015.712beae41ae2d1a95ae0.js b/www/main-es2015.712beae41ae2d1a95ae0.js deleted file mode 100644 index d7dce031ec3..00000000000 --- a/www/main-es2015.712beae41ae2d1a95ae0.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",s="hour",i="day",r="week",o="month",l="quarter",a="year",c=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,u=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var s=String(t);return!s||s.length>=e?t:""+Array(e+1-s.length).join(n)+t},d={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),s=Math.floor(n/60),i=n%60;return(e<=0?"+":"-")+h(s,2,"0")+":"+h(i,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,o),i=e-s<0,r=t.clone().add(n+(i?-1:1),o);return Number(-(n+(e-s)/(i?s-r:r-s))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(c){return{M:o,y:a,w:r,d:i,h:s,m:n,s:e,ms:t,Q:l}[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},p={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=p;var m=function(t){return t instanceof w},_=function(t,e,n){var s;if(!t)return null;if("string"==typeof t)g[t]&&(s=t),e&&(g[t]=e,s=t);else{var i=t.name;g[i]=t,s=i}return n||(f=s),s},v=function(t,e,n){if(m(t))return t.clone();var s=e?"string"==typeof e?{format:e,pl:n}:e:{};return s.date=t,new w(s)},y=d;y.l=_,y.i=m,y.w=function(t,e){return v(t,{locale:e.$L,utc:e.$u})};var w=function(){function h(t){this.$L=this.$L||_(t.locale,null,!0)||f,this.parse(t)}var d=h.prototype;return d.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(y.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var s=e.match(c);if(s)return n?new Date(Date.UTC(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)):new Date(s[1],s[2]-1,s[3]||1,s[4]||0,s[5]||0,s[6]||0,s[7]||0)}return new Date(e)}(t),this.init()},d.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},d.$utils=function(){return y},d.isValid=function(){return!("Invalid Date"===this.$d.toString())},d.isSame=function(t,e){var n=v(t);return this.startOf(e)<=n&&n<=this.endOf(e)},d.isAfter=function(t,e){return v(t){throw t})}const l={closed:!0,next(t){},error(t){if(r.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},a=Array.isArray||(t=>t&&"number"==typeof t.length);function c(t){return null!==t&&"object"==typeof t}function u(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}u.prototype=Object.create(Error.prototype);const h=u,d=(()=>{class t{constructor(t){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let t,e=!1;if(this.closed)return;let{_parent:n,_parents:i,_unsubscribe:r,_subscriptions:o}=this;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;let l=-1,u=i?i.length:0;for(;n;)n.remove(this),n=++lt.concat(e instanceof h?e.errors:e),[])}const f="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class g extends d{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=l;break;case 1:if(!t){this.destination=l;break}if("object"==typeof t){t instanceof g?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[f](){return this}static create(t,e,n){const s=new g(t,e,n);return s.syncErrorThrowable=!1,s}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parent:t,_parents:e}=this;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=t,this._parents=e,this}}class m extends g{constructor(t,e,n,i){let r;super(),this._parentSubscriber=t;let o=this;s(e)?r=e:e&&(r=e.next,n=e.error,i=e.complete,e!==l&&(s((o=Object.create(e)).unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=r,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;r.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=r;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):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);r.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),r.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!r.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(s){return r.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=s,t.syncErrorThrown=!0,!0):(o(s),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const _="function"==typeof Symbol&&Symbol.observable||"@@observable";function v(){}function y(...t){return w(t)}function w(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:v}const b=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:s}=this,i=function(t,e,n){if(t){if(t instanceof g)return t;if(t[f])return t[f]()}return t||e||n?new g(t,e,n):new g(l)}(t,e,n);if(i.add(s?s.call(i,this.source):this.source||r.useDeprecatedSynchronousErrorHandling&&!i.syncErrorThrowable?this._subscribe(i):this._trySubscribe(i)),r.useDeprecatedSynchronousErrorHandling&&i.syncErrorThrowable&&(i.syncErrorThrowable=!1,i.syncErrorThrown))throw i.syncErrorValue;return i}_trySubscribe(t){try{return this._subscribe(t)}catch(e){r.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:s}=t;if(e||s)return!1;t=n&&n instanceof g?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=C(e))((e,n)=>{let s;s=this.subscribe(e=>{try{t(e)}catch(i){n(i),s&&s.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[_](){return this}pipe(...t){return 0===t.length?this:w(t)(this)}toPromise(t){return new(t=C(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=(e=>new t(e)),t})();function C(t){if(t||(t=r.Promise||Promise),!t)throw new Error("no Promise impl found");return t}function x(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}x.prototype=Object.create(Error.prototype);const S=x;class E extends d{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class k extends g{constructor(t){super(t),this.destination=t}}const T=(()=>{class t extends b{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new k(this)}lift(t){const e=new O(this,this);return e.operator=t,e}next(t){if(this.closed)throw new S;if(!this.isStopped){const{observers:e}=this,n=e.length,s=e.slice();for(let i=0;inew O(t,e)),t})();class O extends T{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):d.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}class R extends g{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const P=t=>e=>{for(let n=0,s=t.length;ne=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,o),e);function M(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}const N=M(),D=t=>e=>{const n=t[N]();for(;;){const t=n.next();if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e},V=t=>e=>{const n=t[_]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)},$=t=>t&&"number"==typeof t.length&&"function"!=typeof t;function L(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const j=t=>{if(t instanceof b)return e=>t._isScalar?(e.next(t.value),void e.complete()):t.subscribe(e);if(t&&"function"==typeof t[_])return V(t);if($(t))return P(t);if(L(t))return A(t);if(t&&"function"==typeof t[N])return D(t);{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};function U(t,e,n,s,i=new R(t,n,s)){if(!i.closed)return j(e)(i)}class z extends g{notifyNext(t,e,n,s,i){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(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 H(t,e))}}class H{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new B(t,this.project,this.thisArg))}}class B extends g{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function G(t,e){return new b(e?n=>{const s=new d;let i=0;return s.add(e.schedule(function(){i!==t.length?(n.next(t[i++]),n.closed||s.add(this.schedule())):n.complete()})),s}:P(t))}function W(t,e){if(!e)return t instanceof b?t:new b(j(t));if(null!=t){if(function(t){return t&&"function"==typeof t[_]}(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>{const i=t[_]();s.add(i.subscribe({next(t){s.add(e.schedule(()=>n.next(t)))},error(t){s.add(e.schedule(()=>n.error(t)))},complete(){s.add(e.schedule(()=>n.complete()))}}))})),s}:V(t))}(t,e);if(L(t))return function(t,e){return new b(e?n=>{const s=new d;return s.add(e.schedule(()=>t.then(t=>{s.add(e.schedule(()=>{n.next(t),s.add(e.schedule(()=>n.complete()))}))},t=>{s.add(e.schedule(()=>n.error(t)))}))),s}:A(t))}(t,e);if($(t))return G(t,e);if(function(t){return t&&"function"==typeof t[N]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new b(e?n=>{const s=new d;let i;return s.add(()=>{i&&"function"==typeof i.return&&i.return()}),s.add(e.schedule(()=>{i=t[N](),s.add(e.schedule(function(){if(n.closed)return;let t,e;try{const r=i.next();t=r.value,e=r.done}catch(s){return void n.error(s)}e?n.complete():(n.next(t),this.schedule())}))})),s}:D(t))}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}function Y(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?s=>s.pipe(Y((n,s)=>W(t(n,s)).pipe(F((t,i)=>e(n,t,s,i))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new Z(t,this.project,this.concurrent))}}class Z extends z{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Q(t){return t}function X(t=Number.POSITIVE_INFINITY){return Y(Q,t)}function K(...t){let e=Number.POSITIVE_INFINITY,n=null,s=t[t.length-1];return I(s)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof s&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof b?t[0]:X(e)(G(t,n))}function J(){return function(t){return t.lift(new tt(t))}}class tt{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const s=new et(t,n),i=e.subscribe(s);return s.closed||(s.connection=n.connect()),i}}class et extends g{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,s=t._connection;this.connection=null,!s||n&&s!==n||s.unsubscribe()}}const nt=class extends b{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new d).add(this.source.subscribe(new it(this.getSubject(),this))),t.closed?(this._connection=null,t=d.EMPTY):this._connection=t),t}refCount(){return J()(this)}}.prototype,st={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:nt._subscribe},_isComplete:{value:nt._isComplete,writable:!0},getSubject:{value:nt.getSubject},connect:{value:nt.connect},refCount:{value:nt.refCount}};class it extends k{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function rt(t,e){return function(n){let s;if(s="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new ot(s,e));const i=Object.create(n,st);return i.source=n,i.subjectFactory=s,i}}class ot{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,s=this.subjectFactory(),i=n(s).subscribe(t);return i.add(e.subscribe(s)),i}}function lt(){return new T}const at="__parameters__";function ct(t,e,n){const s=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function i(...t){if(this instanceof i)return s.apply(this,t),this;const e=new i(...t);return n.annotation=e,n;function n(t,n,s){const i=t.hasOwnProperty(at)?t[at]:Object.defineProperty(t,at,{value:[]})[at];for(;i.length<=s;)i.push(null);return(i[s]=i[s]||[]).push(e),t}}return n&&(i.prototype=Object.create(n.prototype)),i.prototype.ngMetadataName=t,i.annotationCls=i,i}const ut=ct("Inject",t=>({token:t})),ht=ct("Optional"),dt=ct("Self"),pt=ct("SkipSelf");var ft=function(t){return 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",t}({});function gt(t){for(let e in t)if(t[e]===gt)return e;throw Error("Could not find renamed property on target object.")}function mt(t){return{providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function _t(t){return t&&t.hasOwnProperty(vt)?t[vt]:null}const vt=gt({ngInjectableDef:gt});function yt(t){if("string"==typeof t)return t;if(t instanceof Array)return"["+t.map(yt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}const wt=gt({__forward_ref__:gt});function bt(t){return t.__forward_ref__=bt,t.toString=function(){return yt(this())},t}function Ct(t){const e=t;return"function"==typeof e&&e.hasOwnProperty(wt)&&e.__forward_ref__===bt?e():t}function xt(){const t="undefined"!=typeof globalThis&&globalThis,e="undefined"!=typeof window&&window,n="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,s="undefined"!=typeof global&&global;return t||s||e||n}const St=xt();let Et,kt=void 0;function Tt(t){const e=kt;return kt=t,e}function Ot(t,e=ft.Default){return(Et||function(t,e=ft.Default){if(void 0===kt)throw new Error("inject() must be called from an injection context");return null===kt?function(t,e,n){const s=_t(t);if(s&&"root"==s.providedIn)return void 0===s.value?s.value=s.factory():s.value;if(n&ft.Optional)return null;throw new Error(`Injector: NOT_FOUND [${yt(t)}]`)}(t,0,e):kt.get(t,e&ft.Optional?null:void 0,e)})(t,e)}const It=Ot;class Rt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ngInjectableDef=mt({providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const Pt="__source",At=new Object,Mt=new Rt("INJECTOR",-1);class Nt{get(t,e=At){if(e===At){const e=new Error(`NullInjectorError: No provider for ${yt(t)}!`);throw e.name="NullInjectorError",e}return e}}const Dt=(()=>{class t{static create(t,e){return Array.isArray(t)?new Gt(t,e):new Gt(t.providers,t.parent,t.name||null)}}return t.THROW_IF_NOT_FOUND=At,t.NULL=new Nt,t.ngInjectableDef=mt({providedIn:"any",factory:()=>Ot(Mt)}),t.__NG_ELEMENT_ID__=-1,t})(),Vt=function(t){return t},$t=[],Lt=Vt,jt=function(){return Array.prototype.slice.call(arguments)},Ut=gt({provide:String,useValue:gt}),zt="ngTokenPath",Ft="ngTempTokenPath",Ht=/\n/gm,Bt="\u0275";class Gt{constructor(t,e=Dt.NULL,n=null){this.parent=e,this.source=n;const s=this._records=new Map;s.set(Dt,{token:Dt,fn:Vt,deps:$t,value:this,useNew:!1}),s.set(Mt,{token:Mt,fn:Vt,deps:$t,value:this,useNew:!1}),function t(e,n){if(n)if((n=Ct(n))instanceof Array)for(let s=0;st.push(yt(n))),`StaticInjector[${t.join(", ")}]`}}function Wt(t){return qt("Cannot mix multi providers and regular providers",t)}function Yt(t,e,n,s=null){t=t&&"\n"===t.charAt(0)&&t.charAt(1)==Bt?t.substr(2):t;let i=yt(e);if(e instanceof Array)i=e.map(yt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let s=e[n];t.push(n+":"+("string"==typeof s?JSON.stringify(s):yt(s)))}i=`{${t.join(", ")}}`}return`${n}${s?"("+s+")":""}[${i}]: ${t.replace(Ht,"\n ")}`}function qt(t,e){return new Error(Yt(t,e,"StaticInjectorError"))}const Zt="ngDebugContext",Qt="ngOriginalError",Xt="ngErrorLogger",Kt=new Rt("AnalyzeForEntryComponents"),Jt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}(),te=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(St))();function ee(t){return t[Zt]}function ne(t){return t[Qt]}function se(t,...e){t.error(...e)}class ie{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),s=function(t){return t[Xt]||se}(t);s(this._console,"ERROR",t),e&&s(this._console,"ORIGINAL ERROR",e),n&&s(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?ee(t)?ee(t):this._findContext(ne(t)):null}_findOriginalError(t){let e=ne(t);for(;e&&ne(e);)e=ne(e);return e}}let re=!0,oe=!1;function le(){return oe=!0,re}class ae{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),this.inertBodyElement=this.inertDocument.createElement("body"),t.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t=""+t+"";try{t=encodeURI(t)}catch(s){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t=""+t+"";try{const n=(new window.DOMParser).parseFromString(t,"text/html").body;return n.removeChild(n.firstChild),n}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(t){const e=t.attributes;for(let s=e.length-1;0he(t.trim())).join(", ")),this.buf.push(" ",e,'="',ke(o),'"')}var s;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();ve.hasOwnProperty(e)&&!fe.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(ke(t))}checkClobberedElement(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}}const Se=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ee=/([^\#-~ |!])/g;function ke(t){return t.replace(/&/g,"&").replace(Se,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ee,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let Te;function Oe(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const Ie=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}();class Re{}const Pe=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ae=/^url\(([^)]+)\)$/,Me=/([A-Z])/g;function Ne(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function De(t){return!!t&&"function"==typeof t.then}function Ve(t){return!!t&&"function"==typeof t.subscribe}let $e=null;function Le(){if(!$e){const t=St.Symbol;if(t&&t.iterator)$e=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e{class t{}return t.NULL=new Qe,t})();class Ke{constructor(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(let s=0;s{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=(()=>rn(t)),t})(),rn=nn;class on{}class ln{}const an=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}(),cn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>un()),t})(),un=nn;class hn{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const dn=new hn("8.0.0");class pn{constructor(){}supports(t){return Fe(t)}create(t){return new gn(t)}}const fn=(t,e)=>e;class gn{constructor(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||fn}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,s=0,i=null;for(;e||n;){const r=!n||e&&e.currentIndex{s=this._trackByFn(e,t),null!==i&&je(i.trackById,s)?(r&&(i=this._verifyReinsertion(i,t,s,e)),je(i.item,t)||this._addIdentityChange(i,t)):(i=this._mismatch(i,t,s,e),r=!0),i=i._next,e++}),this.length=e;return this._truncate(i),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;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}}_mismatch(t,e,n,s){let i;return null===t?i=this._itTail:(i=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,s))?(je(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,i,s)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(je(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,i,s)):t=this._addAfter(new mn(e,n),i,s),t}_verifyReinsertion(t,e,n,s){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==i?t=this._reinsertAfter(i,t._prev,s):t.currentIndex!=s&&(t.currentIndex=s,this._addToMoves(t,s)),t}_truncate(t){for(;null!==t;){const 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)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const s=t._prevRemoved,i=t._nextRemoved;return null===s?this._removalsHead=i:s._nextRemoved=i,null===i?this._removalsTail=s:i._prevRemoved=s,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const s=null===e?this._itHead:e._next;return t._next=s,t._prev=e,null===s?this._itTail=t:s._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new vn),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e?t:(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t,t)}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new vn),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}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class mn{constructor(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}}class _n{constructor(){this._head=null,this._tail=null}add(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)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&je(n.trackById,t))return n;return null}remove(t){const 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}}class vn{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _n,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function yn(t,e,n){const s=t.previousIndex;if(null===s)return s;let i=0;return n&&s{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const s=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,s)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const 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}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const s=n._prev,i=n._next;return s&&(s._next=i),i&&(i._prev=s),n._next=null,n._prev=null,n}const n=new Cn(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;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}}_maybeAddToChanges(t,e){je(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Cn{constructor(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}}const xn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new pn])}),t})(),Sn=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new pt,new ht]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new t([new wn])}),t})(),En=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>kn()),t})(),kn=(...t)=>{},Tn=[new wn],On=new xn([new pn]),In=new Sn(Tn),Rn=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Pn(t,sn)),t})(),Pn=nn,An=(()=>{class t{}return t.__NG_ELEMENT_ID__=(()=>Mn(t,sn)),t})(),Mn=nn;function Nn(t,e,n,s){let i=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${e}'. Current value: '${n}'.`;return s&&(i+=" 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){const n=new Error(t);return Dn(n,e),n}(i,t)}function Dn(t,e){t[Zt]=e,t[Xt]=e.logError.bind(e)}function Vn(t){return new Error(`ViewDestroyedError: Attempt to use a destroyed view: ${t}`)}function $n(t,e,n){const s=t.state,i=1792&s;return i===e?(t.state=-1793&s|n,t.initIndex=-1,!0):i===n}function Ln(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function jn(t,e){return t.nodes[e]}function Un(t,e){return t.nodes[e]}function zn(t,e){return t.nodes[e]}function Fn(t,e){return t.nodes[e]}function Hn(t,e){return t.nodes[e]}const Bn={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},Gn=()=>{},Wn=new Map;function Yn(t){let e=Wn.get(t);return e||(e=yt(t)+"_"+Wn.size,Wn.set(t,e)),e}function qn(t,e,n,s){if(ze.isWrapped(s)){s=ze.unwrap(s);const i=t.def.nodes[e].bindingIndex+n,r=ze.unwrap(t.oldValues[i]);t.oldValues[i]=new ze(r)}return s}const Zn="$$undefined",Qn="$$empty";function Xn(t){return{id:Zn,styles:t.styles,encapsulation:t.encapsulation,data:t.data}}let Kn=0;function Jn(t,e,n,s){return!(!(2&t.state)&&je(t.oldValues[e.bindingIndex+n],s))}function ts(t,e,n,s){return!!Jn(t,e,n,s)&&(t.oldValues[e.bindingIndex+n]=s,!0)}function es(t,e,n,s){const i=t.oldValues[e.bindingIndex+n];if(1&t.state||!Ue(i,s)){const r=e.bindings[n].name;throw Nn(Bn.createDebugContext(t,e.nodeIndex),`${r}: ${i}`,`${r}: ${s}`,0!=(1&t.state))}}function ns(t){let e=t;for(;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function ss(t,e){let n=t;for(;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function is(t,e,n,s){try{return ns(33554432&t.def.nodes[e].flags?Un(t,e).componentView:t),Bn.handleEvent(t,e,n,s)}catch(i){t.root.errorHandler.handleError(i)}}function rs(t){return t.parent?Un(t.parent,t.parentNodeDef.nodeIndex):null}function os(t){return t.parent?t.parentNodeDef.parent:null}function ls(t,e){switch(201347067&e.flags){case 1:return Un(t,e.nodeIndex).renderElement;case 2:return jn(t,e.nodeIndex).renderText}}function as(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function cs(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function us(t){return 1<{"number"==typeof t?(e[t]=i,n|=us(t)):s[t]=i}),{matchedQueries:e,references:s,matchedQueryIds:n}}function ds(t,e){return t.map(t=>{let n,s;return Array.isArray(t)?[s,n]=t:(s=0,n=t),n&&("function"==typeof n||"object"==typeof n)&&e&&Object.defineProperty(n,Pt,{value:e,configurable:!0}),{flags:s,token:n,tokenKey:Yn(n)}})}function ps(t,e,n){let s=n.renderParent;return s?0==(1&s.flags)||0==(33554432&s.flags)||s.element.componentRendererType&&s.element.componentRendererType.encapsulation===Jt.Native?Un(t,n.renderParent.nodeIndex).renderElement:void 0:e}const fs=new WeakMap;function gs(t){let e=fs.get(t);return e||((e=t(()=>Gn)).factory=t,fs.set(t,e)),e}function ms(t,e,n,s,i){3===e&&(n=t.renderer.parentNode(ls(t,t.def.lastRenderRootNode))),_s(t,e,0,t.def.nodes.length-1,n,s,i)}function _s(t,e,n,s,i,r,o){for(let l=n;l<=s;l++){const n=t.def.nodes[l];11&n.flags&&ys(t,n,e,i,r,o),l+=n.childCount}}function vs(t,e,n,s,i,r){let o=t;for(;o&&!as(o);)o=o.parent;const l=o.parent,a=os(o),c=a.nodeIndex+a.childCount;for(let u=a.nodeIndex+1;u<=c;u++){const t=l.def.nodes[u];t.ngContentIndex===e&&ys(l,t,n,s,i,r),u+=t.childCount}if(!l.parent){const o=t.root.projectableNodes[e];if(o)for(let e=0;e-1}(i)||"root"===r.providedIn&&i._def.isRoot))){const n=t._providers.length;return t._def.providers[n]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:n,token:e.token},t._providers[n]=Es,t._providers[n]=Ps(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Tt(s)}var i,r}function Ps(t,e){let n;switch(201347067&e.flags){case 512:n=function(t,e,n){const s=n.length;switch(s){case 0:return new e;case 1:return new e(Rs(t,n[0]));case 2:return new e(Rs(t,n[0]),Rs(t,n[1]));case 3:return new e(Rs(t,n[0]),Rs(t,n[1]),Rs(t,n[2]));default:const i=new Array(s);for(let e=0;e=n.length)&&(e=n.length-1),e<0)return null;const s=n[e];return s.viewContainerParent=null,Vs(n,e),Bn.dirtyParentQueries(s),Ns(s),s}function Ms(t,e,n){const s=e?ls(e,e.def.lastRenderRootNode):t.renderElement,i=n.renderer.parentNode(s),r=n.renderer.nextSibling(s);ms(n,2,i,r,void 0)}function Ns(t){ms(t,3,null,null,void 0)}function Ds(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Vs(t,e){e>=t.length-1?t.pop():t.splice(e,1)}const $s=new Object;function Ls(t,e,n,s,i,r){return new js(t,e,n,s,i,r)}class js extends Ye{constructor(t,e,n,s,i,r){super(),this.selector=t,this.componentType=e,this._inputs=s,this._outputs=i,this.ngContentSelectors=r,this.viewDefFactory=n}get inputs(){const t=[],e=this._inputs;for(let n in e)t.push({propName:n,templateName:e[n]});return t}get outputs(){const t=[];for(let e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t}create(t,e,n,s){if(!s)throw new Error("ngModule should be provided");const i=gs(this.viewDefFactory),r=i.nodes[0].element.componentProvider.nodeIndex,o=Bn.createRootView(t,e||[],n,i,s,$s),l=zn(o,r).instance;return n&&o.renderer.setAttribute(Un(o,0).renderElement,"ng-version",dn.full),new Us(o,new Bs(o),l)}}class Us extends We{constructor(t,e,n){super(),this._view=t,this._viewRef=e,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=e,this.changeDetectorRef=e,this.instance=n}get location(){return new sn(Un(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new qs(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(t){this._viewRef.onDestroy(t)}}function zs(t,e,n){return new Fs(t,e,n)}class Fs{constructor(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}get element(){return new sn(this._data.renderElement)}get injector(){return new qs(this._view,this._elDef)}get parentInjector(){let t=this._view,e=this._elDef.parent;for(;!e&&t;)e=os(t),t=t.parent;return t?new qs(t,e):new qs(this._view,null)}clear(){for(let t=this._embeddedViews.length-1;t>=0;t--){const e=As(this._data,t);Bn.destroyView(e)}}get(t){const e=this._embeddedViews[t];if(e){const t=new Bs(e);return t.attachToViewContainerRef(this),t}return null}get length(){return this._embeddedViews.length}createEmbeddedView(t,e,n){const s=t.createEmbeddedView(e||{});return this.insert(s,n),s}createComponent(t,e,n,s,i){const r=n||this.parentInjector;i||t instanceof Je||(i=r.get(tn));const o=t.create(r,s,void 0,i);return this.insert(o.hostView,e),o}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=t;return function(t,e,n,s){let i=e.viewContainer._embeddedViews;null==n&&(n=i.length),s.viewContainerParent=t,Ds(i,n,s),function(t,e){const n=rs(e);if(!n||n===t||16&e.state)return;e.state|=16;let s=n.template._projectedViews;s||(s=n.template._projectedViews=[]),s.push(e),function(t,n){if(4&n.flags)return;e.parent.def.nodeFlags|=4,n.flags|=4;let s=n.parent;for(;s;)s.childFlags|=4,s=s.parent}(0,e.parentNodeDef)}(e,s),Bn.dirtyParentQueries(s),Ms(e,n>0?i[n-1]:null,s)}(this._view,this._data,e,n._view),n.attachToViewContainerRef(this),t}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(t._view);return function(t,e,s){const i=t.viewContainer._embeddedViews,r=i[n];Vs(i,n),null==s&&(s=i.length),Ds(i,s,r),Bn.dirtyParentQueries(r),Ns(r),Ms(t,s>0?i[s-1]:null,r)}(this._data,0,e),t}indexOf(t){return this._embeddedViews.indexOf(t._view)}remove(t){const e=As(this._data,t);e&&Bn.destroyView(e)}detach(t){const e=As(this._data,t);return e?new Bs(e):null}}function Hs(t){return new Bs(t)}class Bs{constructor(t){this._view=t,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(t){const e=[];return ms(t,0,void 0,void 0,e),e}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){ns(this._view)}detach(){this._view.state&=-5}detectChanges(){const t=this._view.root.rendererFactory;t.begin&&t.begin();try{Bn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}}checkNoChanges(){Bn.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Bn.destroyView(this._view)}detachFromAppRef(){this._appRef=null,Ns(this._view),Bn.dirtyParentQueries(this._view)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}}function Gs(t,e){return new Ws(t,e)}class Ws extends Rn{constructor(t,e){super(),this._parentView=t,this._def=e}createEmbeddedView(t){return new Bs(Bn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))}get elementRef(){return new sn(Un(this._parentView,this._def.nodeIndex).renderElement)}}function Ys(t,e){return new qs(t,e)}class qs{constructor(t,e){this.view=t,this.elDef=e}get(t,e=Dt.THROW_IF_NOT_FOUND){return Bn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:Yn(t)},e)}}function Zs(t,e){const n=t.def.nodes[e];if(1&n.flags){const e=Un(t,n.nodeIndex);return n.element.template?e.template:e.renderElement}if(2&n.flags)return jn(t,n.nodeIndex).renderText;if(20240&n.flags)return zn(t,n.nodeIndex).instance;throw new Error(`Illegal state: read nodeValue for node index ${e}`)}function Qs(t){return new Xs(t.renderer)}class Xs{constructor(t){this.delegate=t}selectRootElement(t){return this.delegate.selectRootElement(t)}createElement(t,e){const[n,s]=Cs(e),i=this.delegate.createElement(s,n);return t&&this.delegate.appendChild(t,i),i}createViewRoot(t){return t}createTemplateAnchor(t){const e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e}createText(t,e){const n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n}projectNodes(t,e){for(let n=0;nt())}onDestroy(t){this._destroyListeners.push(t)}}const ti=Yn(on),ei=Yn(cn),ni=Yn(sn),si=Yn(An),ii=Yn(Rn),ri=Yn(En),oi=Yn(Dt),li=Yn(Mt);function ai(t,e,n,s,i,r,o,l){const a=[];if(o)for(let u in o){const[t,e]=o[u];a[t]={flags:8,name:u,nonMinifiedName:e,ns:null,securityContext:null,suffix:null}}const c=[];if(l)for(let u in l)c.push({type:1,propName:u,target:null,eventName:l[u]});return hi(t,e|=16384,n,s,i,i,r,a,c)}function ci(t,e,n){return hi(-1,t|=16,null,0,e,e,n)}function ui(t,e,n,s,i){return hi(-1,t,e,0,n,s,i)}function hi(t,e,n,s,i,r,o,l,a){const{matchedQueries:c,references:u,matchedQueryIds:h}=hs(n);a||(a=[]),l||(l=[]),r=Ct(r);const d=ds(o,yt(i));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:h,references:u,ngContentIndex:-1,childCount:s,bindings:l,bindingFlags:xs(l),outputs:a,element:null,provider:{token:i,value:r,deps:d},text:null,query:null,ngContent:null}}function di(t,e){return mi(t,e)}function pi(t,e){let n=t;for(;n.parent&&!as(n);)n=n.parent;return _i(n.parent,os(n),!0,e.provider.value,e.provider.deps)}function fi(t,e){const n=_i(t,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(let s=0;sis(t,e,n,s)}function mi(t,e){const n=(8192&e.flags)>0,s=e.provider;switch(201347067&e.flags){case 512:return _i(t,e.parent,n,s.value,s.deps);case 1024:return function(t,e,n,s,i){const r=i.length;switch(r){case 0:return s();case 1:return s(yi(t,e,n,i[0]));case 2:return s(yi(t,e,n,i[0]),yi(t,e,n,i[1]));case 3:return s(yi(t,e,n,i[0]),yi(t,e,n,i[1]),yi(t,e,n,i[2]));default:const o=Array(r);for(let s=0;ste});class ki extends T{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let s,i=t=>null,r=()=>null;t&&"object"==typeof t?(s=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(i=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(r=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(i=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(r=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(s,i,r);return t instanceof d&&t.add(o),o}}class Ti{constructor(){this.dirty=!0,this._results=[],this.changes=new ki,this.length=0}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}[Le()](){return this._results[Le()]()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let s=0;s(class{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}))(),Pi=new Rt("AppId");function Ai(){return`${Mi()}${Mi()}${Mi()}`}function Mi(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const Ni=new Rt("Platform Initializer"),Di=new Rt("Platform ID"),Vi=new Rt("appBootstrapListener"),$i=(()=>(class{log(t){console.log(t)}warn(t){console.warn(t)}}))();function Li(){throw new Error("Runtime compiler is not loaded")}const ji=Li,Ui=Li,zi=Li,Fi=Li,Hi=(()=>(class{constructor(){this.compileModuleSync=ji,this.compileModuleAsync=Ui,this.compileModuleAndAllComponentsSync=zi,this.compileModuleAndAllComponentsAsync=Fi}clearCache(){}clearCacheFor(t){}getModuleId(t){}}))();class Bi{}let Gi,Wi;function Yi(){const t=St.wtf;return!(!t||!(Gi=t.trace)||(Wi=Gi.events,0))}const qi=Yi(),Zi=qi?function(t,e=null){return Wi.createScope(t,e)}:(t,e)=>(function(t,e){return null}),Qi=qi?function(t,e){return Gi.leaveScope(t,e),e}:(t,e)=>e,Xi=(()=>Promise.resolve(0))();function Ki(t){"undefined"==typeof Zone?Xi.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Ji{constructor({enableLongStackTrace:t=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new ki(!1),this.onMicrotaskEmpty=new ki(!1),this.onStable=new ki(!1),this.onError=new ki(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var e;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)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,n,s,i,r,o)=>{try{return sr(e),t.invokeTask(s,i,r,o)}finally{ir(e)}},onInvoke:(t,n,s,i,r,o,l)=>{try{return sr(e),t.invoke(s,i,r,o,l)}finally{ir(e)}},onHasTask:(t,n,s,i)=>{t.hasTask(s,i),n===s&&("microTask"==i.change?(e.hasPendingMicrotasks=i.microTask,nr(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(t,n,s,i)=>(t.handleError(s,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Ji.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Ji.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,s){const i=this._inner,r=i.scheduleEventTask("NgZoneEvent: "+s,t,er,tr,tr);try{return i.runTask(r,e,n)}finally{i.cancelTask(r)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function tr(){}const er={};function nr(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(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function sr(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function ir(t){t._nesting--,nr(t)}class rr{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new ki,this.onMicrotaskEmpty=new ki,this.onStable=new ki,this.onError=new ki}run(t){return t()}runGuarded(t){return t()}runOutsideAngular(t){return t()}runTask(t){return t()}}const or=(()=>(class{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Ji.assertNotInAngularZone(),Ki(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Ki(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let s=-1;e&&e>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==s),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:s,updateCb:n})}whenStable(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()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}))(),lr=(()=>{class t{constructor(){this._applications=new Map,ur.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return ur.findTestabilityInTree(this,t,e)}}return t.ctorParameters=(()=>[]),t})();class ar{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let cr,ur=new ar,hr=function(t){return t instanceof Je};const dr=new Rt("AllowMultipleToken");class pr{constructor(t,e){this.name=t,this.token=e}}function fr(t,e,n=[]){const s=`Platform: ${e}`,i=new Rt(s);return(e=[])=>{let r=gr();if(!r||r.injector.get(dr,!1))if(t)t(n.concat(e).concat({provide:i,useValue:!0}));else{const t=n.concat(e).concat({provide:i,useValue:!0});!function(t){if(cr&&!cr.destroyed&&!cr.injector.get(dr,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");cr=t.get(mr);const e=t.get(Ni,null);e&&e.forEach(t=>t())}(Dt.create({providers:t,name:s}))}return function(t){const e=gr();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}(i)}}function gr(){return cr&&!cr.destroyed?cr:null}const mr=(()=>(class{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n="noop"===(i=e?e.ngZone:void 0)?new rr:("zone.js"===i?void 0:i)||new Ji({enableLongStackTrace:le()}),s=[{provide:Ji,useValue:n}];var i;return n.run(()=>{const e=Dt.create({providers:s,parent:this.injector,name:t.moduleType.name}),i=t.create(e),r=i.injector.get(ie,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return i.onDestroy(()=>yr(this._modules,i)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{r.handleError(t)}})),function(t,e,n){try{const i=n();return De(i)?i.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):i}catch(s){throw e.runOutsideAngular(()=>t.handleError(s)),s}}(r,n,()=>{const t=i.injector.get(Ri);return t.runInitializers(),t.donePromise.then(()=>(this._moduleDoBootstrap(i),i))})})}bootstrapModule(t,e=[]){const n=_r({},e);return function(t,e,n){return t.get(Bi).createCompiler([e]).compileModuleAsync(n)}(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(vr);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${yt(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)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}))();function _r(t,e){return Array.isArray(e)?e.reduce(_r,t):Object.assign({},t,e)}const vr=(()=>{class t{constructor(t,e,n,s,i,r){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=s,this._componentFactoryResolver=i,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=le(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new b(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),l=new b(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Ji.assertNotInAngularZone(),Ki(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Ji.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=K(o,l.pipe(t=>J()(rt(lt)(t))))}bootstrap(t,e){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.");let n;n=t instanceof Ye?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const s=hr(n)?null:this._injector.get(tn),i=n.create(Dt.NULL,[],e||n.selector,s);i.onDestroy(()=>{this._unloadComponent(i)});const r=i.injector.get(or,null);return r&&i.injector.get(lr).registerApplication(i.location.nativeElement,r),this._loadComponent(i),le()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const e=t._tickScope();try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,Qi(e)}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;yr(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Vi,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),yr(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t._tickScope=Zi("ApplicationRef#tick()"),t})();function yr(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class wr{}const br={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Cr=(()=>(class{constructor(t,e){this._compiler=t,this._config=e||br}load(t){return this._compiler instanceof Hi?this.loadFactory(t):this.loadAndCompile(t)}loadAndCompile(t){let[e,s]=t.split("#");return void 0===s&&(s="default"),n("zn8P")(e).then(t=>t[s]).then(t=>xr(t,e,s)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,s]=t.split("#"),i="NgFactory";return void 0===s&&(s="default",i=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[s+i]).then(t=>xr(t,e,s))}}))();function xr(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}class Sr{constructor(t,e){this.name=t,this.callback=e}}class Er{constructor(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof kr&&e.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class kr extends Er{constructor(t,e,n){super(t,e,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=t}addChild(t){t&&(this.childNodes.push(t),t.parent=this)}removeChild(t){const e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))}insertChildrenAfter(t,e){const n=this.childNodes.indexOf(t);-1!==n&&(this.childNodes.splice(n+1,0,...e),e.forEach(e=>{e.parent&&e.parent.removeChild(e),t.parent=this}))}insertBefore(t,e){const 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))}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return function t(e,n,s){e.childNodes.forEach(e=>{e instanceof kr&&(n(e)&&s.push(e),t(e,n,s))})}(this,t,e),e}queryAllNodes(t){const e=[];return function t(e,n,s){e instanceof kr&&e.childNodes.forEach(e=>{n(e)&&s.push(e),e instanceof kr&&t(e,n,s)})}(this,t,e),e}get children(){return this.childNodes.filter(t=>t instanceof kr)}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name==t&&n.callback(e)})}}const Tr=new Map,Or=function(t){return Tr.get(t)||null};function Ir(t){Tr.set(t.nativeNode,t)}const Rr=fr(null,"core",[{provide:Di,useValue:"unknown"},{provide:mr,deps:[Dt]},{provide:lr,deps:[]},{provide:$i,deps:[]}]),Pr=new Rt("LocaleId");function Ar(){return On}function Mr(){return In}function Nr(t){return t||"en-US"}function Dr(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}const Vr=(()=>(class{constructor(t){}}))();function $r(t,e,n,s,i,r){t|=1;const{matchedQueries:o,references:l,matchedQueryIds:a}=hs(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:o,matchedQueryIds:a,references:l,ngContentIndex:n,childCount:s,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:r?gs(r):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:i||Gn},provider:null,text:null,query:null,ngContent:null}}function Lr(t,e,n,s,i,r,o=[],l,a,c,u,h){c||(c=Gn);const{matchedQueries:d,references:p,matchedQueryIds:f}=hs(n);let g=null,m=null;r&&([g,m]=Cs(r)),l=l||[];const _=new Array(l.length);for(let w=0;w{const[n,s]=Cs(t);return[n,s,e]});return h=function(t){if(t&&t.id===Zn){const e=null!=t.encapsulation&&t.encapsulation!==Jt.None||t.styles.length||Object.keys(t.data).length;t.id=e?`c${Kn++}`:Qn}return t&&t.id===Qn&&(t=null),t||null}(h),u&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:d,matchedQueryIds:f,references:p,ngContentIndex:s,childCount:i,bindings:_,bindingFlags:xs(_),outputs:v,element:{ns:g,name:m,attrs:y,template:null,componentProvider:null,componentView:u||null,componentRendererType:h,publicProviders:null,allProviders:null,handleEvent:c||Gn},provider:null,text:null,query:null,ngContent:null}}function jr(t,e,n){const s=n.element,i=t.root.selectorOrNode,r=t.renderer;let o;if(t.parent||!i){o=s.name?r.createElement(s.name,s.ns):r.createComment("");const i=ps(t,e,n);i&&r.appendChild(i,o)}else o=r.selectRootElement(i,!!s.componentRendererType&&s.componentRendererType.encapsulation===Jt.ShadowDom);if(s.attrs)for(let l=0;lis(t,e,n,s)}function Fr(t,e,n,s){if(!ts(t,e,n,s))return!1;const i=e.bindings[n],r=Un(t,e.nodeIndex),o=r.renderElement,l=i.name;switch(15&i.flags){case 1:!function(t,e,n,s,i,r){const o=e.securityContext;let l=o?t.root.sanitizer.sanitize(o,r):r;l=null!=l?l.toString():null;const a=t.renderer;null!=r?a.setAttribute(n,i,l,s):a.removeAttribute(n,i,s)}(t,i,o,i.ns,l,s);break;case 2:!function(t,e,n,s){const i=t.renderer;s?i.addClass(e,n):i.removeClass(e,n)}(t,o,l,s);break;case 4:!function(t,e,n,s,i){let r=t.root.sanitizer.sanitize(Ie.STYLE,i);if(null!=r){r=r.toString();const t=e.suffix;null!=t&&(r+=t)}else r=null;const o=t.renderer;null!=r?o.setStyle(n,s,r):o.removeStyle(n,s)}(t,i,o,l,s);break;case 8:!function(t,e,n,s,i){const r=e.securityContext;let o=r?t.root.sanitizer.sanitize(r,i):i;t.renderer.setProperty(n,s,o)}(33554432&e.flags&&32&i.flags?r.componentView:t,i,o,l,s)}return!0}function Hr(t,e,n){let s=[];for(let i in n)s.push({propName:i,bindingType:n[i]});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:us(e),bindings:s},ngContent:null}}function Br(t){const e=t.def.nodeMatchedQueries;for(;t.parent&&cs(t);){let n=t.parentNodeDef;t=t.parent;const s=n.nodeIndex+n.childCount;for(let i=0;i<=s;i++){const s=t.def.nodes[i];67108864&s.flags&&536870912&s.flags&&(s.query.filterId&e)===s.query.filterId&&Hn(t,i).setDirty(),!(1&s.flags&&i+s.childCount0)c=t,eo(t)||(u=t);else for(;c&&f===c.nodeIndex+c.childCount;){const t=c.parent;t&&(t.childFlags|=c.childFlags,t.childMatchedQueries|=c.childMatchedQueries),u=(c=t)&&eo(c)?c.renderParent:c}}return{factory:null,nodeFlags:o,rootNodeFlags:l,nodeMatchedQueries:a,flags:t,nodes:e,updateDirectives:n||Gn,updateRenderer:s||Gn,handleEvent:(t,n,s,i)=>e[n].element.handleEvent(t,s,i),bindingCount:i,outputCount:r,lastRenderRootNode:p}}function eo(t){return 0!=(1&t.flags)&&null===t.element.name}function no(t,e,n){const s=e.element&&e.element.template;if(s){if(!s.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(s.lastRenderRootNode&&16777216&s.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){const s=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=s&&e.nodeIndex+e.childCount>s)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${e.nodeIndex}!`)}}function so(t,e,n,s){const i=oo(t.root,t.renderer,t,e,n);return lo(i,t.component,s),ao(i),i}function io(t,e,n){const s=oo(t,t.renderer,null,null,e);return lo(s,n,n),ao(s),s}function ro(t,e,n,s){const i=e.element.componentRendererType;let r;return r=i?t.root.rendererFactory.createRenderer(s,i):t.root.renderer,oo(t.root,r,t,e.element.componentProvider,n)}function oo(t,e,n,s,i){const r=new Array(i.nodes.length),o=i.outputCount?new Array(i.outputCount):null;return{def:i,parent:n,viewContainerParent:null,parentNodeDef:s,context:null,component:null,nodes:r,state:13,root:t,renderer:e,oldValues:new Array(i.bindingCount),disposables:o,initIndex:-1}}function lo(t,e,n){t.component=e,t.context=n}function ao(t){let e;as(t)&&(e=Un(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);const n=t.def,s=t.nodes;for(let i=0;i0&&Fr(t,e,0,n)&&(p=!0),d>1&&Fr(t,e,1,s)&&(p=!0),d>2&&Fr(t,e,2,i)&&(p=!0),d>3&&Fr(t,e,3,r)&&(p=!0),d>4&&Fr(t,e,4,o)&&(p=!0),d>5&&Fr(t,e,5,l)&&(p=!0),d>6&&Fr(t,e,6,a)&&(p=!0),d>7&&Fr(t,e,7,c)&&(p=!0),d>8&&Fr(t,e,8,u)&&(p=!0),d>9&&Fr(t,e,9,h)&&(p=!0),p}(t,e,n,s,i,r,o,l,a,c,u,h);case 2:return function(t,e,n,s,i,r,o,l,a,c,u,h){let d=!1;const p=e.bindings,f=p.length;if(f>0&&ts(t,e,0,n)&&(d=!0),f>1&&ts(t,e,1,s)&&(d=!0),f>2&&ts(t,e,2,i)&&(d=!0),f>3&&ts(t,e,3,r)&&(d=!0),f>4&&ts(t,e,4,o)&&(d=!0),f>5&&ts(t,e,5,l)&&(d=!0),f>6&&ts(t,e,6,a)&&(d=!0),f>7&&ts(t,e,7,c)&&(d=!0),f>8&&ts(t,e,8,u)&&(d=!0),f>9&&ts(t,e,9,h)&&(d=!0),d){let d=e.text.prefix;f>0&&(d+=Jr(n,p[0])),f>1&&(d+=Jr(s,p[1])),f>2&&(d+=Jr(i,p[2])),f>3&&(d+=Jr(r,p[3])),f>4&&(d+=Jr(o,p[4])),f>5&&(d+=Jr(l,p[5])),f>6&&(d+=Jr(a,p[6])),f>7&&(d+=Jr(c,p[7])),f>8&&(d+=Jr(u,p[8])),f>9&&(d+=Jr(h,p[9]));const g=jn(t,e.nodeIndex).renderText;t.renderer.setValue(g,d)}return d}(t,e,n,s,i,r,o,l,a,c,u,h);case 16384:return function(t,e,n,s,i,r,o,l,a,c,u,h){const d=zn(t,e.nodeIndex),p=d.instance;let f=!1,g=void 0;const m=e.bindings.length;return m>0&&Jn(t,e,0,n)&&(f=!0,g=bi(t,d,e,0,n,g)),m>1&&Jn(t,e,1,s)&&(f=!0,g=bi(t,d,e,1,s,g)),m>2&&Jn(t,e,2,i)&&(f=!0,g=bi(t,d,e,2,i,g)),m>3&&Jn(t,e,3,r)&&(f=!0,g=bi(t,d,e,3,r,g)),m>4&&Jn(t,e,4,o)&&(f=!0,g=bi(t,d,e,4,o,g)),m>5&&Jn(t,e,5,l)&&(f=!0,g=bi(t,d,e,5,l,g)),m>6&&Jn(t,e,6,a)&&(f=!0,g=bi(t,d,e,6,a,g)),m>7&&Jn(t,e,7,c)&&(f=!0,g=bi(t,d,e,7,c,g)),m>8&&Jn(t,e,8,u)&&(f=!0,g=bi(t,d,e,8,u,g)),m>9&&Jn(t,e,9,h)&&(f=!0,g=bi(t,d,e,9,h,g)),g&&p.ngOnChanges(g),65536&e.flags&&Ln(t,256,e.nodeIndex)&&p.ngOnInit(),262144&e.flags&&p.ngDoCheck(),f}(t,e,n,s,i,r,o,l,a,c,u,h);case 32:case 64:case 128:return function(t,e,n,s,i,r,o,l,a,c,u,h){const d=e.bindings;let p=!1;const f=d.length;if(f>0&&ts(t,e,0,n)&&(p=!0),f>1&&ts(t,e,1,s)&&(p=!0),f>2&&ts(t,e,2,i)&&(p=!0),f>3&&ts(t,e,3,r)&&(p=!0),f>4&&ts(t,e,4,o)&&(p=!0),f>5&&ts(t,e,5,l)&&(p=!0),f>6&&ts(t,e,6,a)&&(p=!0),f>7&&ts(t,e,7,c)&&(p=!0),f>8&&ts(t,e,8,u)&&(p=!0),f>9&&ts(t,e,9,h)&&(p=!0),p){const p=Fn(t,e.nodeIndex);let g;switch(201347067&e.flags){case 32:g=new Array(d.length),f>0&&(g[0]=n),f>1&&(g[1]=s),f>2&&(g[2]=i),f>3&&(g[3]=r),f>4&&(g[4]=o),f>5&&(g[5]=l),f>6&&(g[6]=a),f>7&&(g[7]=c),f>8&&(g[8]=u),f>9&&(g[9]=h);break;case 64:g={},f>0&&(g[d[0].name]=n),f>1&&(g[d[1].name]=s),f>2&&(g[d[2].name]=i),f>3&&(g[d[3].name]=r),f>4&&(g[d[4].name]=o),f>5&&(g[d[5].name]=l),f>6&&(g[d[6].name]=a),f>7&&(g[d[7].name]=c),f>8&&(g[d[8].name]=u),f>9&&(g[d[9].name]=h);break;case 128:const t=n;switch(f){case 1:g=t.transform(n);break;case 2:g=t.transform(s);break;case 3:g=t.transform(s,i);break;case 4:g=t.transform(s,i,r);break;case 5:g=t.transform(s,i,r,o);break;case 6:g=t.transform(s,i,r,o,l);break;case 7:g=t.transform(s,i,r,o,l,a);break;case 8:g=t.transform(s,i,r,o,l,a,c);break;case 9:g=t.transform(s,i,r,o,l,a,c,u);break;case 10:g=t.transform(s,i,r,o,l,a,c,u,h)}}p.value=g}return p}(t,e,n,s,i,r,o,l,a,c,u,h);default:throw"unreachable"}}(t,e,s,i,r,o,l,a,c,u,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){let s=!1;for(let i=0;i0&&es(t,e,0,n),d>1&&es(t,e,1,s),d>2&&es(t,e,2,i),d>3&&es(t,e,3,r),d>4&&es(t,e,4,o),d>5&&es(t,e,5,l),d>6&&es(t,e,6,a),d>7&&es(t,e,7,c),d>8&&es(t,e,8,u),d>9&&es(t,e,9,h)}(t,e,s,i,r,o,l,a,c,u,h,d):function(t,e,n){for(let s=0;s{const s=Ro.get(t.token);3840&t.flags&&s&&(e=!0,n=n||s.deprecatedBehavior)}),t.modules.forEach(t=>{Po.forEach((s,i)=>{_t(i).providedIn===t&&(e=!0,n=n||s.deprecatedBehavior)})}),{hasOverrides:e,hasDeprecatedOverrides:n})}(t);return e?(function(t){for(let e=0;e0){let e=new Set(t.modules);Po.forEach((s,i)=>{if(e.has(_t(i).providedIn)){let e={token:i,flags:s.flags|(n?4096:0),deps:ds(s.deps),value:s.value,index:t.providers.length};t.providers.push(e),t.providersByKey[Yn(i)]=e}})}}(t=t.factory(()=>Gn)),t):t}(s))}const Ro=new Map,Po=new Map,Ao=new Map;function Mo(t){let e;Ro.set(t.token,t),"function"==typeof t.token&&(e=_t(t.token))&&"function"==typeof e.providedIn&&Po.set(t.token,t)}function No(t,e){const n=gs(e.viewDefFactory),s=gs(n.nodes[0].element.componentView);Ao.set(t,s)}function Do(){Ro.clear(),Po.clear(),Ao.clear()}function Vo(t){if(0===Ro.size)return t;const e=function(t){const e=[];let n=null;for(let s=0;sGn);for(let s=0;s"-"+t[1].toLowerCase())}`)]=Ne(l))}const s=e.parent,l=Un(t,s.nodeIndex).renderElement;if(s.element.name)for(let e in n){const s=n[e];null!=s?t.renderer.setAttribute(l,e,s):t.renderer.removeAttribute(l,e)}else t.renderer.setValue(l,`bindings=${JSON.stringify(n,null,2)}`)}}var i,r}function Xo(t,e,n,s){fo(t,e,n,...s)}function Ko(t,e){for(let n=e;n++r===i?t.error.bind(t,...e):Gn),rnew tl(t,e),handleEvent:Yo,updateDirectives:qo,updateRenderer:Zo}:{setCurrentNode:()=>{},createRootView:So,createEmbeddedView:so,createComponentView:ro,createNgModuleRef:Ks,overrideProvider:Gn,overrideComponentView:Gn,clearOverrides:Gn,checkAndUpdateView:uo,checkNoChangesView:co,destroyView:mo,createDebugContext:(t,e)=>new tl(t,e),handleEvent:(t,e,n,s)=>t.def.handleEvent(t,e,n,s),updateDirectives:(t,e)=>t.def.updateDirectives(0===e?$o:Lo,t),updateRenderer:(t,e)=>t.def.updateRenderer(0===e?$o:Lo,t)};Bn.setCurrentNode=t.setCurrentNode,Bn.createRootView=t.createRootView,Bn.createEmbeddedView=t.createEmbeddedView,Bn.createComponentView=t.createComponentView,Bn.createNgModuleRef=t.createNgModuleRef,Bn.overrideProvider=t.overrideProvider,Bn.overrideComponentView=t.overrideComponentView,Bn.clearOverrides=t.clearOverrides,Bn.checkAndUpdateView=t.checkAndUpdateView,Bn.checkNoChangesView=t.checkNoChangesView,Bn.destroyView=t.destroyView,Bn.resolveDep=yi,Bn.createDebugContext=t.createDebugContext,Bn.handleEvent=t.handleEvent,Bn.updateDirectives=t.updateDirectives,Bn.updateRenderer=t.updateRenderer,Bn.dirtyParentQueries=Br}();const e=function(t){const e=Array.from(t.providers),n=Array.from(t.modules),s={};for(const i in t.providersByKey)s[i]=t.providersByKey[i];return{factory:t.factory,isRoot:t.isRoot,providers:e,modules:n,providersByKey:s}}(gs(this._ngModuleDefFactory));return Bn.createNgModuleRef(this.moduleType,t||Dt.NULL,this._bootstrapComponents,e)}}const al="Test Runner";function cl(t){let e="";if(t)for(const n in t)t.hasOwnProperty(n)&&null!=t[n]&&(e+=`${e?"&":""}${n}=${t[n]}`);return e}function ul(t,e){const n=t.shift();return e[n]?t.length>0?ul(t,e[n]):e[n]:null}var hl=n("Wgwc");const dl=(()=>{class t{constructor(){if(this.build=hl(),!t.init){const e=hl();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][APP] ${al} - ${t} | ${e}`):console[n](`%c[ACA]%c[APP] %c${al} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0",t.init=!1,t})();class pl{constructor(){this.show_menu=!0}}class fl{}const gl=new Rt("Location Initialized");class ml{}const _l=new Rt("appBaseHref"),vl=(()=>{class t{constructor(e,n){this._subject=new ki,this._urlChangeListeners=[],this._platformStrategy=e;const s=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=t.stripTrailingSlash(yl(s)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(e,n=""){return this.path()==this.normalize(e+t.normalizeQueryParams(n))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,yl(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(e,n="",s=null){this._platformStrategy.pushState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}replaceState(e,n="",s=null){this._platformStrategy.replaceState(s,"",e,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+t.normalizeQueryParams(n)),s)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}static normalizeQueryParams(t){return t&&"?"!==t[0]?"?"+t:t}static joinWithSlash(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}static stripTrailingSlash(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}}return t})();function yl(t){return t.replace(/\/index.html$/,"")}const wl=(()=>(class extends ml{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=vl.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,s){let i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));0==i.length&&(i=this._platformLocation.pathname),this._platformLocation.pushState(t,e,i)}replaceState(t,e,n,s){let i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));0==i.length&&(i=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,i)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),bl=(()=>(class extends ml{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)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.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return vl.joinWithSlash(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+vl.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,s){const i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));this._platformLocation.pushState(t,e,i)}replaceState(t,e,n,s){const i=this.prepareExternalUrl(n+vl.normalizeQueryParams(s));this._platformLocation.replaceState(t,e,i)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}))(),Cl=void 0;var xl=["en",[["a","p"],["AM","PM"],Cl],[["AM","PM"],Cl,Cl],[["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"]],Cl,[["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"]],Cl,[["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}",Cl,"{1} 'at' {0}",Cl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];const Sl={},El=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),kl=new Rt("UseV4Plurals");class Tl{}const Ol=(()=>(class extends Tl{constructor(t,e){super(),this.locale=t,this.deprecatedPluralFn=e}getPluralCategory(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){const e=t.toLowerCase().replace(/_/g,"-");let n=Sl[e];if(n)return n;const s=e.split("-")[0];if(n=Sl[s])return n;if("en"===s)return xl;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[18]}(e||this.locale)(t)){case El.Zero:return"zero";case El.One:return"one";case El.Two:return"two";case El.Few:return"few";case El.Many:return"many";default:return"other"}}}))();function Il(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[s,i]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(s.trim()===e)return decodeURIComponent(i)}return null}const Rl=(()=>(class{constructor(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}ngOnChanges(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){const e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){const t=e.get(tn);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(t.injector)}else this._moduleRef=null;const n=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(Xe)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(n,this._viewContainerRef.length,e,this.ngComponentOutletContent)}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}))();class Pl{constructor(t,e,n,s){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=s}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}const Al=(()=>(class{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){le()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,s)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Pl(null,this._ngForOf,-1,-1),s),i=new Ml(t,n);e.push(i)}else if(null==s)this._viewContainer.remove(n);else{const i=this._viewContainer.get(n);this._viewContainer.move(i,s);const r=new Ml(t,i);e.push(r)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}))();class Ml{constructor(t,e){this.record=t,this.view=e}}const Nl=(()=>(class{constructor(t,e){this._viewContainer=t,this._context=new Dl,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){Vl("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Vl("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){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)))}static ngTemplateGuard_ngIf(t,e){return!0}}))();class Dl{constructor(){this.$implicit=null,this.ngIf=null}}function Vl(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${yt(e)}'.`)}class $l{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}const Ll=(()=>(class{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const 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}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e(class{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new $l(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}))(),Ul=(()=>(class{constructor(t,e,n){n._addDefault(new $l(t,e))}}))(),zl=(()=>(class{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){this._shouldRecreateView(t)?(this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))):this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)}_shouldRecreateView(t){const e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)}_hasContextShapeChanged(t){const e=Object.keys(t.previousValue||{}),n=Object.keys(t.currentValue||{});if(e.length===n.length){for(let t of n)if(-1===e.indexOf(t))return!0;return!1}return!0}_updateExistingContext(t){for(let e of Object.keys(t))this._viewRef.context[e]=this.ngTemplateOutletContext[e]}}))(),Fl=(()=>(class{}))(),Hl=new Rt("DocumentToken"),Bl="browser";function Gl(t){return t===Bl}const Wl=(()=>{class t{}return t.ngInjectableDef=mt({providedIn:"root",factory:()=>new Yl(Ot(Hl),window,Ot(ie))}),t})();class Yl{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=(()=>[0,0])}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const n=this.document.querySelector(`#${t}`);if(n)return void this.scrollToElement(n);const s=this.document.querySelector(`[name='${t}']`);if(s)return void this.scrollToElement(s)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,s=e.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(n-i[0],s-i[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}const ql=new b(t=>t.complete());function Zl(t){return t?function(t){return new b(e=>t.schedule(()=>e.complete()))}(t):ql}function Ql(t){const e=new b(e=>{e.next(t),e.complete()});return e._isScalar=!0,e.value=t,e}function Xl(...t){let e=t[t.length-1];switch(I(e)?t.pop():e=void 0,t.length){case 0:return Zl(e);case 1:return e?G(t,e):Ql(t[0]);default:return G(t,e)}}class Kl extends T{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new S;return this._value}next(t){super.next(this._value=t)}}function Jl(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}Jl.prototype=Object.create(Error.prototype);const ta=Jl,ea={};class na{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new sa(t,this.resultSelector))}}class sa extends z{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(ea),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{let n;try{n=t()}catch(s){return void e.error(s)}return(n?W(n):Zl()).subscribe(e)})}function ra(){return X(1)}function oa(t,e){return function(n){return n.lift(new la(t,e))}}class la{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new aa(t,this.predicate,this.thisArg))}}class aa extends g{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}function ca(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}ca.prototype=Object.create(Error.prototype);const ua=ca;function ha(t){return function(e){return 0===t?Zl():e.lift(new da(t))}}class da{constructor(t){if(this.total=t,this.total<0)throw new ua}call(t,e){return e.subscribe(new pa(t,this.total))}}class pa extends g{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,s=this.count++;e.length0){const n=this.count>=this.total?this.total:this.count,s=this.ring;for(let i=0;ifa({hasValue:!1,next(){this.hasValue=!0},complete(){if(!this.hasValue)throw t()}});function va(t=null){return e=>e.lift(new ya(t))}class ya{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new wa(t,this.defaultValue))}}class wa extends g{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}function ba(t,e){const n=arguments.length>=2;return s=>s.pipe(t?oa((e,n)=>t(e,n,s)):Q,ha(1),n?va(e):_a(()=>new ta))}function Ca(t){return function(e){const n=new xa(t),s=e.lift(n);return n.caught=s}}class xa{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Sa(t,this.selector,this.caught))}}class Sa extends z{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const s=new R(this,void 0,void 0);this.add(s),U(this,n,void 0,void 0,s)}}}function Ea(t){return e=>0===t?Zl():e.lift(new ka(t))}class ka{constructor(t){if(this.total=t,this.total<0)throw new ua}call(t,e){return e.subscribe(new Ta(t,this.total))}}class Ta extends g{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}function Oa(t,e){const n=arguments.length>=2;return s=>s.pipe(t?oa((e,n)=>t(e,n,s)):Q,Ea(1),n?va(e):_a(()=>new ta))}class Ia{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new Ra(t,this.predicate,this.thisArg,this.source))}}class Ra extends g{constructor(t,e,n,s){super(t),this.predicate=e,this.thisArg=n,this.source=s,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}function Pa(t,e){return"function"==typeof e?n=>n.pipe(Pa((n,s)=>W(t(n,s)).pipe(F((t,i)=>e(n,t,s,i))))):e=>e.lift(new Aa(t))}class Aa{constructor(t){this.project=t}call(t,e){return e.subscribe(new Ma(t,this.project))}}class Ma extends z{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(s){return void this.destination.error(s)}this._innerSub(e,t,n)}_innerSub(t,e,n){const s=this.innerSubscription;s&&s.unsubscribe();const i=new R(this,void 0,void 0);this.destination.add(i),this.innerSubscription=U(this,t,e,n,i)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,s,i){this.destination.next(e)}}function Na(...t){return ra()(Xl(...t))}function Da(...t){return e=>{let n=t[t.length-1];I(n)?t.pop():n=null;const s=t.length;return Na(1!==s||n?s>0?G(t,n):Zl(n):Ql(t[0]),e)}}function Va(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(s){return s.lift(new $a(t,e,n))}}class $a{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new La(t,this.accumulator,this.seed,this.hasSeed))}}class La extends g{constructor(t,e,n,s){super(t),this.accumulator=e,this._seed=n,this.hasSeed=s,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(s){this.destination.error(s)}this.seed=n,this.destination.next(n)}}function ja(t,e){return Y(t,e,1)}class Ua{constructor(t){this.callback=t}call(t,e){return e.subscribe(new za(t,this.callback))}}class za extends g{constructor(t,e){super(t),this.add(new d(e))}}let Fa=null;function Ha(){return Fa}class Ba{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(t){this._attrToPropMap=t}}class Ga extends Ba{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const e=this.createElement("div",document);if(null!=this.getStyle(e,"animationName"))this._animationPrefix="";else{const t=["Webkit","Moz","O","ms"];for(let n=0;n{null!=this.getStyle(e,t)&&(this._transitionEnd=n[t])})}catch(t){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(t){return t.getDistributedNodes()}resolveAndSetHref(t,e,n){t.href=null==n?e:e+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}const Wa={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},Ya=3,qa={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Za={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},Qa=(()=>{if(St.Node)return St.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))}})();class Xa extends Ga{parse(t){throw new Error("parse not implemented")}static makeCurrent(){var t;t=new Xa,Fa||(Fa=t)}hasProperty(t,e){return e in t}setProperty(t,e,n){t[e]=n}getProperty(t,e){return t[e]}invoke(t,e,n){t[e](...n)}logError(t){window.console&&(console.error?console.error(t):console.log(t))}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return Wa}contains(t,e){return Qa.call(t,e)}querySelector(t,e){return t.querySelector(e)}querySelectorAll(t,e){return t.querySelectorAll(e)}on(t,e,n){t.addEventListener(e,n,!1)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}createMouseEvent(t){const e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(t,!0,!0),e}createEvent(t){const e=this.getDefaultDocument().createEvent("Event");return e.initEvent(t,!0,!0),e}preventDefault(t){t.preventDefault(),t.returnValue=!1}isPrevented(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue}getInnerHTML(t){return t.innerHTML}getTemplateContent(t){return"content"in t&&this.isTemplateElement(t)?t.content:null}getOuterHTML(t){return t.outerHTML}nodeName(t){return t.nodeName}nodeValue(t){return t.nodeValue}type(t){return t.type}content(t){return this.hasProperty(t,"content")?t.content:t}firstChild(t){return t.firstChild}nextSibling(t){return t.nextSibling}parentElement(t){return t.parentNode}childNodes(t){return t.childNodes}childNodesAsList(t){const e=t.childNodes,n=new Array(e.length);for(let s=0;st.insertBefore(n,e))}insertAfter(t,e,n){t.insertBefore(n,e.nextSibling)}setInnerHTML(t,e){t.innerHTML=e}getText(t){return t.textContent}setText(t,e){t.textContent=e}getValue(t){return t.value}setValue(t,e){t.value=e}getChecked(t){return t.checked}setChecked(t,e){t.checked=e}createComment(t){return this.getDefaultDocument().createComment(t)}createTemplate(t){const e=this.getDefaultDocument().createElement("template");return e.innerHTML=t,e}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createElementNS(t,e,n){return(n=n||this.getDefaultDocument()).createElementNS(t,e)}createTextNode(t,e){return(e=e||this.getDefaultDocument()).createTextNode(t)}createScriptTag(t,e,n){const s=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return s.setAttribute(t,e),s}createStyleElement(t,e){const n=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(t,e)),n}createShadowRoot(t){return t.createShadowRoot()}getShadowRoot(t){return t.shadowRoot}getHost(t){return t.host}clone(t){return t.cloneNode(!0)}getElementsByClassName(t,e){return t.getElementsByClassName(e)}getElementsByTagName(t,e){return t.getElementsByTagName(e)}classList(t){return Array.prototype.slice.call(t.classList,0)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}hasClass(t,e){return t.classList.contains(e)}setStyle(t,e,n){t.style[e]=n}removeStyle(t,e){t.style[e]=""}getStyle(t,e){return t.style[e]}hasStyle(t,e,n){const s=this.getStyle(t,e)||"";return n?s==n:s.length>0}tagName(t){return t.tagName}attributeMap(t){const e=new Map,n=t.attributes;for(let s=0;s{class t extends fl{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=Ha().getLocation(),this._history=Ha().getHistory()}getBaseHrefFromDOM(){return Ha().getBaseHref(this._doc)}onPopState(t){Ha().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){Ha().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){tc()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){tc()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return t.ctorParameters=(()=>[{type:void 0,decorators:[{type:ut,args:[Hl]}]}]),t})(),nc=new Rt("TRANSITION_ID"),sc=[{provide:Ii,useFactory:function(t,e,n){return()=>{n.get(Ri).donePromise.then(()=>{const n=Ha();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(e=>n.getAttribute(e,"ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[nc,Hl,Dt],multi:!0}];class ic{static init(){var t;t=new ic,ur=t}addToWindow(t){St.getAngularTestability=((e,n=!0)=>{const s=t.findTestabilityInTree(e,n);if(null==s)throw new Error("Could not find testability for element.");return s}),St.getAllAngularTestabilities=(()=>t.getAllTestabilities()),St.getAllAngularRootElements=(()=>t.getAllRootElements()),St.frameworkStabilizers||(St.frameworkStabilizers=[]),St.frameworkStabilizers.push(t=>{const e=St.getAllAngularTestabilities();let n=e.length,s=!1;const i=function(e){s=s||e,0==--n&&t(s)};e.forEach(function(t){t.whenStable(i)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const s=t.getTestability(e);return null!=s?s:n?Ha().isShadowRoot(e)?this.findTestabilityInTree(t,Ha().getHost(e),!0):this.findTestabilityInTree(t,Ha().parentElement(e),!0):null}}function rc(t,e){"undefined"!=typeof COMPILED&&COMPILED||((St.ng=St.ng||{})[t]=e)}const oc=(()=>({ApplicationRef:vr,NgZone:Ji}))();function lc(t){return Or(t)}const ac=new Rt("EventManagerPlugins"),cc=(()=>(class{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let s=0;s(class{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}))(),dc=(()=>(class extends hc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>Ha().remove(t))}}))(),pc={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/"},fc=/%COMP%/g,gc="_nghost-%COMP%",mc="_ngcontent-%COMP%";function _c(t,e,n){for(let s=0;s{!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}const yc=(()=>(class{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new wc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case Jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new xc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case Jt.Native:case Jt.ShadowDom:return new Sc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=_c(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}))();class wc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(pc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let 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}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,s){if(s){e=`${s}:${e}`;const i=pc[s];i?t.setAttributeNS(i,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const s=pc[n];s?t.removeAttributeNS(s,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,s){s&an.DashCase?t.style.setProperty(e,n,s&an.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&an.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){Cc(e,"property"),t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return Cc(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,vc(n)):this.eventManager.addEventListener(t,e,vc(n))}}const bc=(()=>"@".charCodeAt(0))();function Cc(t,e){if(t.charCodeAt(0)===bc)throw new Error(`Found the synthetic ${e} ${t}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class xc extends wc{constructor(t,e,n,s){super(t),this.component=n;const i=_c(s+"-"+n.id,n.styles,[]);e.addStyles(i),this.contentAttr=mc.replace(fc,s+"-"+n.id),this.hostAttr=gc.replace(fc,s+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Sc extends wc{constructor(t,e,n,s){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=s,this.shadowRoot=s.encapsulation===Jt.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const i=_c(s.id,s.styles,[]);for(let r=0;r"undefined"!=typeof Zone&&Zone.__symbol__||function(t){return"__zone_symbol__"+t})(),kc=Ec("addEventListener"),Tc=Ec("removeEventListener"),Oc={},Ic="__zone_symbol__propagationStopped",Rc=(()=>{const t="undefined"!=typeof Zone&&Zone[Ec("BLACK_LISTED_EVENTS")];if(t){const e={};return t.forEach(t=>{e[t]=t}),e}})(),Pc=function(t){return!!Rc&&Rc.hasOwnProperty(t)},Ac=function(t){const e=Oc[t.type];if(!e)return;const n=this[e];if(!n)return;const s=[t];if(1===n.length){const t=n[0];return t.zone!==Zone.current?t.zone.run(t.handler,this,s):t.handler.apply(this,s)}{const e=n.slice();for(let n=0;n(class extends uc{constructor(t,e,n){super(t),this.ngZone=e,n&&function(t){return"server"===t}(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const t=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[Ic]=!0),t&&t.apply(this,arguments)}}supports(t){return!0}addEventListener(t,e,n){let s=n;if(!t[kc]||Ji.isInAngularZone()&&!Pc(e))t.addEventListener(e,s,!1);else{let n=Oc[e];n||(n=Oc[e]=Ec("ANGULAR"+e+"FALSE"));let i=t[n];const r=i&&i.length>0;i||(i=t[n]=[]);const o=Pc(e)?Zone.root:Zone.current;if(0===i.length)i.push({zone:o,handler:s});else{let t=!1;for(let e=0;ethis.removeEventListener(t,e,s)}removeEventListener(t,e,n){let s=t[Tc];if(!s)return t.removeEventListener.apply(t,[e,n,!1]);let i=Oc[e],r=i&&t[i];if(!r)return t.removeEventListener.apply(t,[e,n,!1]);let o=!1;for(let l=0;l(class{constructor(){this.events=[],this.overrides={}}buildHammer(t){const e=new Hammer(t,this.options);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(const n in this.overrides)e.get(n).set(this.overrides[n]);return e}}))(),Lc=(()=>(class extends uc{constructor(t,e,n,s){super(t),this._config=e,this.console=n,this.loader=s}supports(t){return!(!Nc.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))}addEventListener(t,e,n){const s=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){let s=!1,i=()=>{s=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(i=(()=>{}));s||(i=this.addEventListener(t,e,n))}).catch(()=>{this.console.warn(`The "${e}" event cannot be bound because the custom `+"Hammer.JS loader failed."),i=(()=>{})}),()=>{i()}}return s.runOutsideAngular(()=>{const i=this._config.buildHammer(t),r=function(t){s.runGuarded(function(){n(t)})};return i.on(e,r),()=>{i.off(e,r),"function"==typeof i.destroy&&i.destroy()}})}isCustomEvent(t){return this._config.events.indexOf(t)>-1}}))(),jc=["alt","control","meta","shift"],Uc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},zc=(()=>{class t extends uc{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,s){const i=t.parseEventName(n),r=t.eventCallback(i.fullKey,s,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Ha().onAndCancel(e,i.domEventName,r))}static parseEventName(e){const n=e.toLowerCase().split("."),s=n.shift();if(0===n.length||"keydown"!==s&&"keyup"!==s)return null;const i=t._normalizeKey(n.pop());let r="";if(jc.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),r+=t+".")}),r+=i,0!=n.length||0===i.length)return null;const o={};return o.domEventName=s,o.fullKey=r,o}static getEventFullKey(t){let e="",n=Ha().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),jc.forEach(s=>{s!=n&&(0,Uc[s])(t)&&(e+=s+".")}),e+=n}static eventCallback(e,n,s){return i=>{t.getEventFullKey(i)===e&&s.runGuarded(()=>n(i))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t})();class Fc{}const Hc=(()=>(class extends Fc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case Ie.NONE:return e;case Ie.HTML:return e instanceof Gc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){let n=null;try{Te=Te||new ae(t);let s=e?String(e):"";n=Te.getInertBodyElement(s);let i=5,r=s;do{if(0===i)throw new Error("Failed to sanitize html because the input is unstable");i--,s=r,r=n.innerHTML,n=Te.getInertBodyElement(s)}while(s!==r);const o=new xe,l=o.sanitizeChildren(Oe(n)||n);return le()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),l}finally{if(n){const t=Oe(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e)));case Ie.STYLE:return e instanceof Wc?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";const e=t.match(Ae);return e&&he(e[1])===e[1]||t.match(Pe)&&function(t){let e=!0,n=!0;for(let s=0;s{class t{constructor(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.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:Pi,useValue:e.appId},{provide:nc,useExisting:Pi},sc]}}}return t})();function Jc(){return new tu(Ot(Hl))}const tu=(()=>{class t{constructor(t){this._doc=t}getTitle(){return Ha().getTitle(this._doc)}setTitle(t){Ha().setTitle(this._doc,t)}}return t.ngInjectableDef=mt({factory:Jc,token:t,providedIn:"root"}),t})();"undefined"!=typeof window&&window;class eu{constructor(t,e){this.id=t,this.url=e}}class nu extends eu{constructor(t,e,n="imperative",s=null){super(t,e),this.navigationTrigger=n,this.restoredState=s}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class su extends eu{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class iu extends eu{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class ru extends eu{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ou extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class lu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class au extends eu{constructor(t,e,n,s,i){super(t,e),this.urlAfterRedirects=n,this.state=s,this.shouldActivate=i}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class cu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class uu extends eu{constructor(t,e,n,s){super(t,e),this.urlAfterRedirects=n,this.state=s}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class hu{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class du{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class pu{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class fu{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class gu{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class mu{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class _u{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const vu=(()=>(class{}))(),yu="primary";class wu{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function bu(t){return new wu(t)}const Cu="ngNavigationCancelingError";function xu(t){const e=Error("NavigationCancelingError: "+t);return e[Cu]=!0,e}function Su(t,e,n){const s=n.path.split("/");if(s.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||s.length0?t[t.length-1]:null}function Mu(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Nu(t){return Ve(t)?t:De(t)?W(Promise.resolve(t)):Xl(t)}function Du(t,e,n){return n?function(t,e){return Ru(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!ju(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const s in n.children){if(!e.children[s])return!1;if(!t(e.children[s],n.children[s]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>e[n]===t[n])}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,s,i){if(n.segments.length>i.length){return!!ju(n.segments.slice(0,i.length),i)&&!s.hasChildren()}if(n.segments.length===i.length){if(!ju(n.segments,i))return!1;for(const e in s.children){if(!n.children[e])return!1;if(!t(n.children[e],s.children[e]))return!1}return!0}{const t=i.slice(0,n.segments.length),r=i.slice(n.segments.length);return!!ju(n.segments,t)&&!!n.children[yu]&&e(n.children[yu],s,r)}}(e,n,n.segments)}(t.root,e.root)}class Vu{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=bu(this.queryParams)),this._queryParamMap}toString(){return Hu.serialize(this)}}class $u{constructor(t,e){this.segments=t,this.children=e,this.parent=null,Mu(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Bu(this)}}class Lu{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=bu(this.parameters)),this._parameterMap}toString(){return Qu(this)}}function ju(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Uu(t,e){let n=[];return Mu(t.children,(t,s)=>{s===yu&&(n=n.concat(e(t,s)))}),Mu(t.children,(t,s)=>{s!==yu&&(n=n.concat(e(t,s)))}),n}class zu{}class Fu{parse(t){const e=new eh(t);return new Vu(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){var e;return`${`/${function t(e,n){if(!e.hasChildren())return Bu(e);if(n){const n=e.children[yu]?t(e.children[yu],!1):"",s=[];return Mu(e.children,(e,n)=>{n!==yu&&s.push(`${n}:${t(e,!1)}`)}),s.length>0?`${n}(${s.join("//")})`:n}{const n=Uu(e,(n,s)=>s===yu?[t(e.children[yu],!1)]:[`${s}:${t(n,!1)}`]);return`${Bu(e)}/(${n.join("//")})`}}(t.root,!0)}`}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Wu(e)}=${Wu(t)}`).join("&"):`${Wu(e)}=${Wu(n)}`});return e.length?`?${e.join("&")}`:""}(t.queryParams)}${"string"==typeof t.fragment?`#${e=t.fragment,encodeURI(e)}`:""}`}}const Hu=new Fu;function Bu(t){return t.segments.map(t=>Qu(t)).join("/")}function Gu(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Wu(t){return Gu(t).replace(/%3B/gi,";")}function Yu(t){return Gu(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function qu(t){return decodeURIComponent(t)}function Zu(t){return qu(t.replace(/\+/g,"%20"))}function Qu(t){return`${Yu(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Yu(t)}=${Yu(e[t])}`).join("")}`;var e}const Xu=/^[^\/()?;=#]+/;function Ku(t){const e=t.match(Xu);return e?e[0]:""}const Ju=/^[^=?&#]+/,th=/^[^?&#]+/;class eh{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new $u([],{}):new $u([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[yu]=new $u(t,e)),n}parseSegment(){const t=Ku(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Lu(qu(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Ku(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Ku(this.remaining);t&&this.capture(n=t)}t[qu(e)]=qu(n)}parseQueryParam(t){const e=function(t){const e=t.match(Ju);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(th);return e?e[0]:""}(this.remaining);t&&this.capture(n=t)}const s=Zu(e),i=Zu(n);if(t.hasOwnProperty(s)){let e=t[s];Array.isArray(e)||(t[s]=e=[e]),e.push(i)}else t[s]=i}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Ku(this.remaining),s=this.remaining[n.length];if("/"!==s&&")"!==s&&";"!==s)throw new Error(`Cannot parse url '${this.url}'`);let i=void 0;n.indexOf(":")>-1?(i=n.substr(0,n.indexOf(":")),this.capture(i),this.capture(":")):t&&(i=yu);const r=this.parseChildren();e[i]=1===Object.keys(r).length?r[yu]:new $u([],r),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class nh{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=sh(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=sh(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=ih(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return ih(t,this._root).map(t=>t.value)}}function sh(t,e){if(t===e.value)return e;for(const n of e.children){const e=sh(t,n);if(e)return e}return null}function ih(t,e){if(t===e.value)return[e];for(const n of e.children){const s=ih(t,n);if(s.length)return s.unshift(e),s}return[]}class rh{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function oh(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class lh extends nh{constructor(t,e){super(t),this.snapshot=e,ph(this,t)}toString(){return this.snapshot.toString()}}function ah(t,e){const n=function(t,e){const n=new hh([],{},{},"",{},yu,e,null,t.root,-1,{});return new dh("",new rh(n,[]))}(t,e),s=new Kl([new Lu("",{})]),i=new Kl({}),r=new Kl({}),o=new Kl({}),l=new Kl(""),a=new ch(s,i,o,l,r,yu,e,n.root);return a.snapshot=n.root,new lh(new rh(a,[]),n)}class ch{constructor(t,e,n,s,i,r,o,l){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=i,this.outlet=r,this.component=o,this._futureSnapshot=l}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(F(t=>bu(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(F(t=>bu(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function uh(t,e="emptyOnly"){const n=t.pathFromRoot;let s=0;if("always"!==e)for(s=n.length-1;s>=1;){const t=n[s],e=n[s-1];if(t.routeConfig&&""===t.routeConfig.path)s--;else{if(e.component)break;s--}}return function(t){return t.reduce((t,e)=>({params:Object.assign({},t.params,e.params),data:Object.assign({},t.data,e.data),resolve:Object.assign({},t.resolve,e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(s))}class hh{constructor(t,e,n,s,i,r,o,l,a,c,u){this.url=t,this.params=e,this.queryParams=n,this.fragment=s,this.data=i,this.outlet=r,this.component=o,this.routeConfig=l,this._urlSegment=a,this._lastPathIndex=c,this._resolve=u}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=bu(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=bu(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class dh extends nh{constructor(t,e){super(e),this.url=t,ph(this,e)}toString(){return fh(this._root)}}function ph(t,e){e.value._routerState=t,e.children.forEach(e=>ph(t,e))}function fh(t){const e=t.children.length>0?` { ${t.children.map(fh).join(", ")} } `:"";return`${t.value}${e}`}function gh(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Ru(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Ru(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nRu(t.parameters,s[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||mh(t.parent,e.parent))}function _h(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function vh(t,e,n,s,i){let r={};return s&&Mu(s,(t,e)=>{r[e]=Array.isArray(t)?t.map(t=>`${t}`):`${t}`}),new Vu(n.root===t?e:function t(e,n,s){const i={};return Mu(e.children,(e,r)=>{i[r]=e===n?s:t(e,n,s)}),new $u(e.segments,i)}(n.root,t,e),r,i)}class yh{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&_h(n[0]))throw new Error("Root segment cannot have matrix parameters");const s=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(s&&s!==Au(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class wh{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function bh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[yu]:`${t}`}function Ch(t,e,n){if(t||(t=new $u([],{})),0===t.segments.length&&t.hasChildren())return xh(t,e,n);const s=function(t,e,n){let s=0,i=e;const r={match:!1,pathIndex:0,commandIndex:0};for(;i=n.length)return r;const e=t.segments[i],o=bh(n[s]),l=s0&&void 0===o)break;if(o&&l&&"object"==typeof l&&void 0===l.outlets){if(!Th(o,l,e))return r;s+=2}else{if(!Th(o,{},e))return r;s++}i++}return{match:!0,pathIndex:i,commandIndex:s}}(t,e,n),i=n.slice(s.commandIndex);if(s.match&&s.pathIndex{null!==n&&(i[s]=Ch(t.children[s],e,n))}),Mu(t.children,(t,e)=>{void 0===s[e]&&(i[e]=t)}),new $u(t.segments,i)}}function Sh(t,e,n){const s=t.segments.slice(0,e);let i=0;for(;i{null!==t&&(e[n]=Sh(new $u([],{}),0,t))}),e}function kh(t){const e={};return Mu(t,(t,n)=>e[n]=`${t}`),e}function Th(t,e,n){return t==n.path&&Ru(e,n.parameters)}const Oh=(t,e,n)=>F(s=>(new Ih(e,s.targetRouterState,s.currentRouterState,n).activate(t),s));class Ih{constructor(t,e,n,s){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=s}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),gh(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const s=oh(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,s[e],n),delete s[e]}),Mu(s,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const s=t.value,i=e?e.value:null;if(s===i)if(s.component){const i=n.getContext(s.outlet);i&&this.deactivateChildRoutes(t,e,i.children)}else this.deactivateChildRoutes(t,e,n);else i&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),s=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:s})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const s=oh(t),i=t.value.component?n.children:e;Mu(s,(t,e)=>this.deactivateRouteAndItsChildren(t,i)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const s=oh(e);t.children.forEach(t=>{this.activateRoutes(t,s[t.value.outlet],n),this.forwardEvent(new mu(t.value.snapshot))}),t.children.length&&this.forwardEvent(new fu(t.value.snapshot))}activateRoutes(t,e,n){const s=t.value,i=e?e.value:null;if(gh(s),s===i)if(s.component){const i=n.getOrCreateContext(s.outlet);this.activateChildRoutes(t,e,i.children)}else this.activateChildRoutes(t,e,n);else if(s.component){const e=n.getOrCreateContext(s.outlet);if(this.routeReuseStrategy.shouldAttach(s.snapshot)){const t=this.routeReuseStrategy.retrieve(s.snapshot);this.routeReuseStrategy.store(s.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),Rh(t.route)}else{const n=function(t){for(let e=s.snapshot.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(),i=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=s,e.resolver=i,e.outlet&&e.outlet.activateWith(s,i),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Rh(t){gh(t.value),t.children.forEach(Rh)}function Ph(t){return"function"==typeof t}function Ah(t){return t instanceof Vu}class Mh{constructor(t){this.segmentGroup=t||null}}class Nh{constructor(t){this.urlTree=t}}function Dh(t){return new b(e=>e.error(new Mh(t)))}function Vh(t){return new b(e=>e.error(new Nh(t)))}function $h(t){return new b(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class Lh{constructor(t,e,n,s,i){this.configLoader=e,this.urlSerializer=n,this.urlTree=s,this.config=i,this.allowRedirects=!0,this.ngModule=t.get(tn)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,yu).pipe(F(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(Ca(t=>{if(t instanceof Nh)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof Mh)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,yu).pipe(F(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(Ca(t=>{if(t instanceof Mh)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const s=t.segments.length>0?new $u([],{[yu]:t}):t;return new Vu(s,e,n)}expandSegmentGroup(t,e,n,s){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(F(t=>new $u([],t))):this.expandSegment(t,n,e,n.segments,s,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Xl({});const n=[],s=[],i={};return Mu(t,(t,r)=>{const o=e(r,t).pipe(F(t=>i[r]=t));r===yu?n.push(o):s.push(o)}),Xl.apply(null,n.concat(s)).pipe(ra(),ba(),F(()=>i))}(n.children,(n,s)=>this.expandSegmentGroup(t,e,s,n))}expandSegment(t,e,n,s,i,r){return Xl(...n).pipe(F(o=>this.expandSegmentAgainstRoute(t,e,n,o,s,i,r).pipe(Ca(t=>{if(t instanceof Mh)return Xl(null);throw t}))),ra(),Oa(t=>!!t),Ca((t,n)=>{if(t instanceof ta||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,s,i))return Xl(new $u([],{}));throw new Mh(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,s,i,r,o){return Fh(s)!==r?Dh(e):void 0===s.redirectTo?this.matchSegmentAgainstRoute(t,e,s,i):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r):Dh(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r){return"**"===s.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,s,r):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,s){const i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Vh(i):this.lineralizeSegments(n,i).pipe(Y(n=>{const i=new $u(n,{});return this.expandSegment(t,i,e,n,s,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,s,i,r){const{matched:o,consumedSegments:l,lastChild:a,positionalParamSegments:c}=jh(e,s,i);if(!o)return Dh(e);const u=this.applyRedirectCommands(l,s.redirectTo,c);return s.redirectTo.startsWith("/")?Vh(u):this.lineralizeSegments(s,u).pipe(Y(s=>this.expandSegment(t,e,n,s.concat(i.slice(a)),r,!1)))}matchSegmentAgainstRoute(t,e,n,s){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(F(t=>(n._loadedConfig=t,new $u(s,{})))):Xl(new $u(s,{}));const{matched:i,consumedSegments:r,lastChild:o}=jh(e,n,s);if(!i)return Dh(e);const l=s.slice(o);return this.getChildConfig(t,n,s).pipe(Y(t=>{const n=t.module,s=t.routes,{segmentGroup:i,slicedSegments:o}=function(t,e,n,s){return n.length>0&&function(t,e,n){return s.some(n=>zh(t,e,n)&&Fh(n)!==yu)}(t,n)?{segmentGroup:Uh(new $u(e,function(t,e){const n={};n[yu]=e;for(const s of t)""===s.path&&Fh(s)!==yu&&(n[Fh(s)]=new $u([],{}));return n}(s,new $u(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return s.some(n=>zh(t,e,n))}(t,n)?{segmentGroup:Uh(new $u(t.segments,function(t,e,n,s){const i={};for(const r of n)zh(t,e,r)&&!s[Fh(r)]&&(i[Fh(r)]=new $u([],{}));return Object.assign({},s,i)}(t,n,s,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,r,l,s);return 0===o.length&&i.hasChildren()?this.expandChildren(n,s,i).pipe(F(t=>new $u(r,t))):0===s.length&&0===o.length?Xl(new $u(r,{})):this.expandSegment(n,i,s,o,yu,!0).pipe(F(t=>new $u(r.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Xl(new Eu(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Xl(e._loadedConfig):function(t,e,n){const s=e.canLoad;return s&&0!==s.length?W(s).pipe(F(s=>{const i=t.get(s);let r;if(function(t){return t&&Ph(t.canLoad)}(i))r=i.canLoad(e,n);else{if(!Ph(i))throw new Error("Invalid CanLoad guard");r=i(e,n)}return Nu(r)})).pipe(ra(),(i=(t=>!0===t),t=>t.lift(new Ia(i,void 0,t)))):Xl(!0);var i}(t.injector,e,n).pipe(Y(n=>n?this.configLoader.load(t.injector,e).pipe(F(t=>(e._loadedConfig=t,t))):function(t){return new b(e=>e.error(xu(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Xl(new Eu([],t))}lineralizeSegments(t,e){let n=[],s=e.root;for(;;){if(n=n.concat(s.segments),0===s.numberOfChildren)return Xl(n);if(s.numberOfChildren>1||!s.children[yu])return $h(t.redirectTo);s=s.children[yu]}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,s){const i=this.createSegmentGroup(t,e.root,n,s);return new Vu(i,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return Mu(t,(t,s)=>{if("string"==typeof t&&t.startsWith(":")){const i=t.substring(1);n[s]=e[i]}else n[s]=t}),n}createSegmentGroup(t,e,n,s){const i=this.createSegments(t,e.segments,n,s);let r={};return Mu(e.children,(e,i)=>{r[i]=this.createSegmentGroup(t,e,n,s)}),new $u(i,r)}createSegments(t,e,n,s){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,s):this.findOrReturn(e,n))}findPosParam(t,e,n){const s=n[e.path.substring(1)];if(!s)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return s}findOrReturn(t,e){let n=0;for(const s of e){if(s.path===t.path)return e.splice(n),s;n++}return t}}function jh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const s=(e.matcher||Su)(n,t,e);return s?{matched:!0,consumedSegments:s.consumed,lastChild:s.consumed.length,positionalParamSegments:s.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Uh(t){if(1===t.numberOfChildren&&t.children[yu]){const e=t.children[yu];return new $u(t.segments.concat(e.segments),e.children)}return t}function zh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Fh(t){return t.outlet||yu}class Hh{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Bh{constructor(t,e){this.component=t,this.route=e}}function Gh(t,e,n){const s=t._root;return function t(e,n,s,i,r={canDeactivateChecks:[],canActivateChecks:[]}){const o=oh(n);return e.children.forEach(e=>{!function(e,n,s,i,r={canDeactivateChecks:[],canActivateChecks:[]}){const o=e.value,l=n?n.value:null,a=s?s.getContext(e.value.outlet):null;if(l&&o.routeConfig===l.routeConfig){const c=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!ju(t.url,e.url);case"pathParamsOrQueryParamsChange":return!ju(t.url,e.url)||!Ru(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!mh(t,e)||!Ru(t.queryParams,e.queryParams);case"paramsChange":default:return!mh(t,e)}}(l,o,o.routeConfig.runGuardsAndResolvers);if(c?r.canActivateChecks.push(new Hh(i)):(o.data=l.data,o._resolvedData=l._resolvedData),t(e,n,o.component?a?a.children:null:s,i,r),c){r.canDeactivateChecks.push(new Bh(a&&a.outlet&&a.outlet.component||null,l))}}else l&&Yh(n,a,r),r.canActivateChecks.push(new Hh(i)),t(e,null,o.component?a?a.children:null:s,i,r)}(e,o[e.value.outlet],s,i.concat([e.value]),r),delete o[e.value.outlet]}),Mu(o,(t,e)=>Yh(t,s.getContext(e),r)),r}(s,e?e._root:null,n,[s.value])}function Wh(t,e,n){const s=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(s?s.module.injector:n).get(t)}function Yh(t,e,n){const s=oh(t),i=t.value;Mu(s,(t,s)=>{Yh(t,i.component?e?e.children.getContext(s):null:e,n)}),n.canDeactivateChecks.push(new Bh(i.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,i))}const qh=Symbol("INITIAL_VALUE");function Zh(){return Pa(t=>(function(...t){let e=null,n=null;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&a(t[0])&&(t=t[0]),G(t,n).lift(new na(e))})(...t.map(t=>t.pipe(Ea(1),Da(qh)))).pipe(Va((t,e)=>{let n=!1;return e.reduce((t,s,i)=>{if(t!==qh)return t;if(s===qh&&(n=!0),!n){if(!1===s)return s;if(i===e.length-1||Ah(s))return s}return t},t)},qh),oa(t=>t!==qh),F(t=>Ah(t)?t:!0===t),Ea(1)))}function Qh(t,e){return null!==t&&e&&e(new gu(t)),Xl(!0)}function Xh(t,e){return null!==t&&e&&e(new pu(t)),Xl(!0)}function Kh(t,e,n){const s=e.routeConfig?e.routeConfig.canActivate:null;return s&&0!==s.length?Xl(s.map(s=>ia(()=>{const i=Wh(s,e,n);let r;if(function(t){return t&&Ph(t.canActivate)}(i))r=Nu(i.canActivate(e,t));else{if(!Ph(i))throw new Error("Invalid CanActivate guard");r=Nu(i(e,t))}return r.pipe(Oa())}))).pipe(Zh()):Xl(!0)}function Jh(t,e,n){const s=e[e.length-1],i=e.slice(0,e.length-1).reverse().map(t=>(function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null})(t)).filter(t=>null!==t).map(e=>ia(()=>Xl(e.guards.map(i=>{const r=Wh(i,e.node,n);let o;if(function(t){return t&&Ph(t.canActivateChild)}(r))o=Nu(r.canActivateChild(s,t));else{if(!Ph(r))throw new Error("Invalid CanActivateChild guard");o=Nu(r(s,t))}return o.pipe(Oa())})).pipe(Zh())));return Xl(i).pipe(Zh())}class td{}class ed{constructor(t,e,n,s,i,r){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=s,this.paramsInheritanceStrategy=i,this.relativeLinkResolution=r}recognize(){try{const e=id(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,n=this.processSegmentGroup(this.config,e,yu),s=new hh([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},yu,this.rootComponentType,null,this.urlTree.root,-1,{}),i=new rh(s,n),r=new dh(this.url,i);return this.inheritParamsAndData(r._root),Xl(r)}catch(t){return new b(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=uh(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Uu(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};n.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),s=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${s}'.`)}e[t.value.outlet]=t.value})}(),n.sort((t,e)=>t.value.outlet===yu?-1:e.value.outlet===yu?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,s){for(const r of t)try{return this.processSegmentAgainstRoute(r,e,n,s)}catch(i){if(!(i instanceof td))throw i}if(this.noLeftoversInUrl(e,n,s))return[];throw new td}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,s){if(t.redirectTo)throw new td;if((t.outlet||yu)!==s)throw new td;let i,r=[],o=[];if("**"===t.path){const r=n.length>0?Au(n).parameters:{};i=new hh(n,r,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,ld(t),s,t.component,t,nd(e),sd(e)+n.length,ad(t))}else{const l=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new td;return{consumedSegments:[],lastChild:0,parameters:{}}}const s=(e.matcher||Su)(n,t,e);if(!s)throw new td;const i={};Mu(s.posParams,(t,e)=>{i[e]=t.path});const r=s.consumed.length>0?Object.assign({},i,s.consumed[s.consumed.length-1].parameters):i;return{consumedSegments:s.consumed,lastChild:s.consumed.length,parameters:r}}(e,t,n);r=l.consumedSegments,o=n.slice(l.lastChild),i=new hh(r,l.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,ld(t),s,t.component,t,nd(e),sd(e)+r.length,ad(t))}const l=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:a,slicedSegments:c}=id(e,r,o,l,this.relativeLinkResolution);if(0===c.length&&a.hasChildren()){const t=this.processChildren(l,a);return[new rh(i,t)]}if(0===l.length&&0===c.length)return[new rh(i,[])];const u=this.processSegment(l,a,c,yu);return[new rh(i,u)]}}function nd(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function sd(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function id(t,e,n,s,i){if(n.length>0&&function(t,e,n){return s.some(n=>rd(t,e,n)&&od(n)!==yu)}(t,n)){const i=new $u(e,function(t,e,n,s){const i={};i[yu]=s,s._sourceSegment=t,s._segmentIndexShift=e.length;for(const r of n)if(""===r.path&&od(r)!==yu){const n=new $u([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,i[od(r)]=n}return i}(t,e,s,new $u(n,t.children)));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return s.some(n=>rd(t,e,n))}(t,n)){const r=new $u(t.segments,function(t,e,n,s,i,r){const o={};for(const l of s)if(rd(t,n,l)&&!i[od(l)]){const n=new $u([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===r?t.segments.length:e.length,o[od(l)]=n}return Object.assign({},i,o)}(t,e,n,s,t.children,i));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:n}}const r=new $u(t.segments,t.children);return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:n}}function rd(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function od(t){return t.outlet||yu}function ld(t){return t.data||{}}function ad(t){return t.resolve||{}}function cd(t,e,n,s){const i=Wh(t,e,s);return Nu(i.resolve?i.resolve(e,n):i(e,n))}function ud(t){return function(e){return e.pipe(Pa(e=>{const n=t(e);return n?W(n).pipe(F(()=>e)):W([e])}))}}class hd{}class dd{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const pd=new Rt("ROUTES");class fd{constructor(t,e,n,s){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=s}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(F(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const s=n.create(t);return new Eu(Pu(s.injector.get(pd)).map(Iu),s)}))}loadModuleFactory(t){return"string"==typeof t?W(this.loader.load(t)):Nu(t()).pipe(Y(t=>t instanceof en?Xl(t):W(this.compiler.compileModuleAsync(t))))}}class gd{}class md{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function _d(t){throw t}function vd(t,e,n){return e.parse("/")}function yd(t,e){return Xl(null)}class wd{constructor(t,e,n,s,i,r,o,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=s,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new T,this.errorHandler=_d,this.malformedUriErrorHandler=vd,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:yd,afterPreactivation:yd},this.urlHandlingStrategy=new md,this.routeReuseStrategy=new dd,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=i.get(tn),this.console=i.get($i);const a=i.get(Ji);this.isNgZoneEnabled=a instanceof Ji,this.resetConfig(l),this.currentUrlTree=new Vu(new $u([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new fd(r,o,t=>this.triggerEvent(new hu(t)),t=>this.triggerEvent(new du(t))),this.routerState=ah(this.currentUrlTree,this.rootComponentType),this.transitions=new Kl({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(oa(t=>0!==t.id),F(t=>Object.assign({},t,{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Pa(t=>{let n=!1,s=!1;return Xl(t).pipe(fa(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign({},this.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Pa(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Xl(t).pipe(Pa(t=>{const n=this.transitions.getValue();return e.next(new nu(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?ql:[t]}),Pa(t=>Promise.resolve(t)),function(t,e,n,s){return function(i){return i.pipe(Pa(i=>(function(t,e,n,s,r){return new Lh(t,e,n,i.extractedUrl,r).apply()})(t,e,n,0,s).pipe(F(t=>Object.assign({},i,{urlAfterRedirects:t})))))}}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),fa(t=>{this.currentNavigation=Object.assign({},this.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,e,n,s,i){return function(r){return r.pipe(Y(r=>(function(t,e,n,s,i="emptyOnly",r="legacy"){return new ed(t,e,n,s,i,r).recognize()})(t,e,r.urlAfterRedirects,n(r.urlAfterRedirects),s,i).pipe(F(t=>Object.assign({},r,{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),fa(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),fa(t=>{const n=new ou(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:s,source:i,restoredState:r,extras:o}=t,l=new nu(n,this.serializeUrl(s),i,r);e.next(l);const a=ah(s,this.rootComponentType).snapshot;return Xl(Object.assign({},t,{targetSnapshot:a,urlAfterRedirects:s,extras:Object.assign({},o,{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),ql}),ud(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:i,extras:{skipLocationChange:r,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:i,skipLocationChange:!!r,replaceUrl:!!o})}),fa(t=>{const e=new lu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),F(t=>Object.assign({},t,{guards:Gh(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,currentSnapshot:i,guards:{canActivateChecks:r,canDeactivateChecks:o}}=n;return 0===o.length&&0===r.length?Xl(Object.assign({},n,{guardsResult:!0})):function(t,e,n,s){return W(o).pipe(Y(t=>(function(t,e,n,s,i){const r=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return r&&0!==r.length?Xl(r.map(r=>{const o=Wh(r,e,i);let l;if(function(t){return t&&Ph(t.canDeactivate)}(o))l=Nu(o.canDeactivate(t,e,n,s));else{if(!Ph(o))throw new Error("Invalid CanDeactivate guard");l=Nu(o(t,e,n,s))}return l.pipe(Oa())})).pipe(Zh()):Xl(!0)})(t.component,t.route,n,e,s)),Oa(t=>!0!==t,!0))}(0,s,i,t).pipe(Y(n=>n&&function(t){return"boolean"==typeof n}()?function(t,e,n,s){return W(r).pipe(ja(e=>W([Xh(e.route.parent,s),Qh(e.route,s),Jh(t,e.path,n),Kh(t,e.route,n)]).pipe(ra(),Oa(t=>!0!==t,!0))),Oa(t=>!0!==t,!0))}(s,0,t,e):Xl(n)),F(t=>Object.assign({},n,{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),fa(t=>{if(Ah(t.guardsResult)){const e=xu(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),fa(t=>{const e=new au(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),oa(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new iu(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),ud(t=>{if(t.guards.canActivateChecks.length)return Xl(t).pipe(fa(t=>{const e=new cu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),function(t,e){return function(n){return n.pipe(Y(n=>{const{targetSnapshot:s,guards:{canActivateChecks:i}}=n;return i.length?W(i).pipe(ja(n=>(function(t,e,n,i){return function(t,e,n,s){const i=Object.keys(t);if(0===i.length)return Xl({});if(1===i.length){const r=i[0];return cd(t[r],e,n,s).pipe(F(t=>({[r]:t})))}const r={};return W(i).pipe(Y(i=>cd(t[i],e,n,s).pipe(F(t=>(r[i]=t,t))))).pipe(ba(),F(()=>r))}(t._resolve,t,s,i).pipe(F(e=>(t._resolvedData=e,t.data=Object.assign({},t.data,uh(t,n).resolve),null)))})(n.route,0,t,e)),function(t,e){return arguments.length>=2?function(e){return y(Va(t,void 0),ha(1),va(void 0))(e)}:function(e){return y(Va((e,n,s)=>t(e)),ha(1))(e)}}((t,e)=>t),F(t=>n)):Xl(n)}))}}(this.paramsInheritanceStrategy,this.ngModule.injector),fa(t=>{const e=new uu(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}))}),ud(t=>{const{targetSnapshot:e,id:n,extractedUrl:s,rawUrl:i,extras:{skipLocationChange:r,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:s,rawUrlTree:i,skipLocationChange:!!r,replaceUrl:!!o})}),F(t=>{const e=function(t,e,n){const s=function t(e,n,s){if(s&&e.shouldReuseRoute(n.value,s.value.snapshot)){const i=s.value;i._futureSnapshot=n.value;const r=function(e,n,s){return n.children.map(n=>{for(const i of s.children)if(e.shouldReuseRoute(i.value.snapshot,n.value))return t(e,n,i);return t(e,n)})}(e,n,s);return new rh(i,r)}{const s=e.retrieve(n.value);if(s){const t=s.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let s=0;st(e,n));return new rh(s,r)}}var i}(t,e._root,n?n._root:void 0);return new lh(s,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign({},t,{targetRouterState:e})}),fa(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),Oh(this.rootContexts,this.routeReuseStrategy,t=>this.triggerEvent(t)),fa({next(){n=!0},complete(){n=!0}}),function(t){return e=>e.lift(new Ua(t))}(()=>{if(!n&&!s){this.resetUrlToCurrentUrlTree();const n=new iu(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null}),Ca(n=>{if(s=!0,function(t){return n&&n[Cu]}()){const s=Ah(n.url);s||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const i=new iu(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(i),t.resolve(!1),s&&this.navigateByUrl(n.url)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const s=new ru(t.id,this.serializeUrl(t.extractedUrl),n);e.next(s);try{t.resolve(this.errorHandler(n))}catch(i){t.reject(i)}}return ql}))}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign({},this.getTransition(),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",s=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,s,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){ku(t),this.config=t.map(Iu),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:s,fragment:i,preserveQueryParams:r,queryParamsHandling:o,preserveFragment:l}=e;le()&&r&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const a=n||this.routerState.root,c=l?this.currentUrlTree.fragment:i;let u=null;if(o)switch(o){case"merge":u=Object.assign({},this.currentUrlTree.queryParams,s);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=s||null}else u=r?this.currentUrlTree.queryParams:s||null;return null!==u&&(u=this.removeEmptyProps(u)),function(t,e,n,s,i){if(0===n.length)return vh(e.root,e.root,e,s,i);const r=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new yh(!0,0,t);let e=0,n=!1;const s=t.reduce((t,s,i)=>{if("object"==typeof s&&null!=s){if(s.outlets){const e={};return Mu(s.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(s.segmentPath)return[...t,s.segmentPath]}return"string"!=typeof s?[...t,s]:0===i?(s.split("/").forEach((s,i)=>{0==i&&"."===s||(0==i&&""===s?n=!0:".."===s?e++:""!=s&&t.push(s))}),t):[...t,s]},[]);return new yh(n,e,s)}(n);if(r.toRoot())return vh(e.root,new $u([],{}),e,s,i);const o=function(t,n,s){if(t.isAbsolute)return new wh(e.root,!0,0);if(-1===s.snapshot._lastPathIndex)return new wh(s.snapshot._urlSegment,!0,0);const i=_h(t.commands[0])?0:1;return function(e,n,r){let o=s.snapshot._urlSegment,l=s.snapshot._lastPathIndex+i,a=t.numberOfDoubleDots;for(;a>l;){if(a-=l,!(o=o.parent))throw new Error("Invalid number of '../'");l=o.segments.length}return new wh(o,!1,l-a)}()}(r,0,t),l=o.processChildren?xh(o.segmentGroup,o.index,r.commands):Ch(o.segmentGroup,o.index,r.commands);return vh(o.segmentGroup,l,e,s,i)}(a,this.currentUrlTree,t,u,c)}navigateByUrl(t,e={skipLocationChange:!1}){le()&&this.isNgZoneEnabled&&!Ji.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=Ah(t)?t:this.parseUrl(t),s=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(s,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const s=t[n];return null!=s&&(e[n]=s),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new su(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,s){const i=this.getTransition();if(i&&"imperative"!==e&&"imperative"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(i&&"hashchange"==e&&"popstate"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(i&&"popstate"==e&&"hashchange"===i.source&&i.rawUrl.toString()===t.toString())return Promise.resolve(!0);let r=null,o=null;const l=new Promise((t,e)=>{r=t,o=e}),a=++this.navigationId;return this.setTransition({id:a,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:s,resolve:r,reject:o,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,s){const i=this.urlSerializer.serialize(t);s=s||{},this.location.isCurrentPathEqualTo(i)||e?this.location.replaceState(i,"",Object.assign({},s,{navigationId:n})):this.location.go(i,"",Object.assign({},s,{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}class bd{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new Cd,this.attachRef=null}}class Cd{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new bd,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}const xd=(()=>(class{constructor(t,e,n,s,i){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=i,this.activated=null,this._activatedRoute=null,this.activateEvents=new ki,this.deactivateEvents=new ki,this.name=s||yu,t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),s=this.parentContexts.getOrCreateContext(this.name).children,i=new Sd(t,s,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,i),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}))();class Sd{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===ch?this.route:t===Cd?this.childContexts:this.parent.get(t,e)}}class Ed{}class kd{preload(t,e){return e().pipe(Ca(()=>Xl(null)))}}class Td{preload(t,e){return Xl(null)}}const Od=(()=>(class{constructor(t,e,n,s,i){this.router=t,this.injector=s,this.preloadingStrategy=i,this.loader=new fd(e,n,e=>t.triggerEvent(new hu(e)),e=>t.triggerEvent(new du(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(oa(t=>t instanceof su),ja(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(tn);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const s of e)if(s.loadChildren&&!s.canLoad&&s._loadedConfig){const t=s._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else s.loadChildren&&!s.canLoad?n.push(this.preloadConfig(t,s)):s.children&&n.push(this.processRoutes(t,s.children));return W(n).pipe(X(),F(t=>void 0))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Y(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}))();class Id{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof nu?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof su&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof _u&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new _u(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}const Rd=new Rt("ROUTER_CONFIGURATION"),Pd=new Rt("ROUTER_FORROOT_GUARD"),Ad=[vl,{provide:zu,useClass:Fu},{provide:wd,useFactory:jd,deps:[vr,zu,Cd,vl,Dt,Oi,Hi,pd,Rd,[gd,new ht],[hd,new ht]]},Cd,{provide:ch,useFactory:Ud,deps:[wd]},{provide:Oi,useClass:Cr},Od,Td,kd,{provide:Rd,useValue:{enableTracing:!1}}];function Md(){return new pr("Router",wd)}const Nd=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[Ad,Ld(e),{provide:Pd,useFactory:$d,deps:[[wd,new ht,new pt]]},{provide:Rd,useValue:n||{}},{provide:ml,useFactory:Vd,deps:[fl,[new ut(_l),new ht],Rd]},{provide:Id,useFactory:Dd,deps:[wd,Wl,Rd]},{provide:Ed,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:Td},{provide:pr,multi:!0,useFactory:Md},[zd,{provide:Ii,multi:!0,useFactory:Fd,deps:[zd]},{provide:Bd,useFactory:Hd,deps:[zd]},{provide:Vi,multi:!0,useExisting:Bd}]]}}static forChild(e){return{ngModule:t,providers:[Ld(e)]}}}return t})();function Dd(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Id(t,e,n)}function Vd(t,e,n={}){return n.useHash?new wl(t,e):new bl(t,e)}function $d(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function Ld(t){return[{provide:Kt,multi:!0,useValue:t},{provide:pd,multi:!0,useValue:t}]}function jd(t,e,n,s,i,r,o,l,a={},c,u){const h=new wd(null,e,n,s,i,r,o,Pu(l));if(c&&(h.urlHandlingStrategy=c),u&&(h.routeReuseStrategy=u),a.errorHandler&&(h.errorHandler=a.errorHandler),a.malformedUriErrorHandler&&(h.malformedUriErrorHandler=a.malformedUriErrorHandler),a.enableTracing){const t=Ha();h.events.subscribe(e=>{t.logGroup(`Router Event: ${e.constructor.name}`),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return a.onSameUrlNavigation&&(h.onSameUrlNavigation=a.onSameUrlNavigation),a.paramsInheritanceStrategy&&(h.paramsInheritanceStrategy=a.paramsInheritanceStrategy),a.urlUpdateStrategy&&(h.urlUpdateStrategy=a.urlUpdateStrategy),a.relativeLinkResolution&&(h.relativeLinkResolution=a.relativeLinkResolution),h}function Ud(t){return t.routerState.root}const zd=(()=>(class{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new T}appInitializer(){return this.injector.get(gl,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(wd),s=this.injector.get(Rd);if(this.isLegacyDisabled(s)||this.isLegacyEnabled(s))t(!0);else if("disabled"===s.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==s.initialNavigation)throw new Error(`Invalid initialNavigation options: '${s.initialNavigation}'`);n.hooks.afterPreactivation=(()=>this.initNavigation?Xl(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone)),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(Rd),n=this.injector.get(Od),s=this.injector.get(Id),i=this.injector.get(wd),r=this.injector.get(vr);t===r.components[0]&&(this.isLegacyEnabled(e)?i.initialNavigation():this.isLegacyDisabled(e)&&i.setUpLocationChangeListener(),n.setUpPreloading(),s.init(),i.resetRootComponentType(r.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}))();function Fd(t){return t.appInitializer.bind(t)}function Hd(t){return t.bootstrapListener.bind(t)}const Bd=new Rt("Router Initializer");var Gd=Xn({encapsulation:2,styles:[],data:{}});function Wd(t){return to(0,[(t()(),Lr(0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),ai(1,212992,null,0,xd,[Cd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,1,0)},null)}function Yd(t){return to(0,[(t()(),Lr(0,0,null,null,1,"ng-component",[],null,null,null,Wd,Gd)),ai(1,49152,null,0,vu,[],null,null)],null,null)}var qd=Ls("ng-component",vu,Yd,{},{},[]);const Zd="Dropdowns",Qd=(()=>(class{constructor(){this.klass="default",this.items=[],this.placeholder="Select item",this.searchChange=new ki,this.font_size=16,this.width=128,this.filtered_items=[]}ngOnChanges(t){t.items&&(this.list=this.items.map(t=>t instanceof Object?t:{id:t,name:t}),this.longest=this.list.reduce((t,e)=>e.name.length>t.name.length?e:t,{id:"",name:""}),this.filter())}ngAfterViewInit(){this.resize()}trackByFn(t,e){return e?"string"==typeof e?e:e.id:t}resize(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)}filter(){if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(t=>("string"==typeof t?t:t.name).toLowerCase().indexOf(this.search.toLowerCase())>=0)),this.options&&this.options.hide_active&&this.selected)){const t="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(e=>("string"==typeof e?e:e.id).indexOf(t)<0)}}toggleShow(){this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(()=>{this.input&&this.input.nativeElement.focus()},100)}updateScroll(){if(!this.viewport||!this.scroll_el)return setTimeout(()=>this.updateScroll(),50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;const t="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(e=>("string"==typeof e?e:e.id)===t))}select(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)}change(t){const e="string"==typeof this.selected?this.selected:this.selected.id,n=this.filtered_items.findIndex(t=>("string"==typeof t?t:t.id)==e)+t;n>=0&&nthis.updateScroll(),100))}close(){this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null),this.close_timer=setTimeout(()=>this.show=!1,100)}cancelClose(){setTimeout(()=>{this.close_timer&&(clearTimeout(this.close_timer),this.close_timer=null)},50)}writeValue(t){this.selected=t,this.show=!1}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),Xd=hl,Kd=(()=>{class t{constructor(){if(this.build=Xd(),!t.init){const e=Xd();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Zd} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Zd} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();function Jd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function tp(t){return Array.isArray(t)?t:[t]}function ep(t){return null==t?"":"string"==typeof t?t:`${t}px`}function np(t,e,n,i){return s(n)&&(i=n,n=void 0),i?np(t,e,n).pipe(F(t=>a(t)?i(...t):i(t))):new b(s=>{!function t(e,n,s,i,r){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,s,r),o=(()=>t.removeEventListener(n,s,r))}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,s),o=(()=>t.off(n,s))}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,s),o=(()=>t.removeListener(n,s))}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,l=e.length;o1?Array.prototype.slice.call(arguments):t)},s,n)})}class sp extends d{constructor(t,e){super()}schedule(t,e=0){return this}}class ip extends sp{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,s=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(s,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(s,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,s=void 0;try{this.work(t)}catch(i){n=!0,s=!!i&&i||new Error(i)}if(n)return this.unsubscribe(),s}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,s=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==s&&n.splice(s,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}class rp extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}const op=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=(()=>Date.now()),t})();class lp extends op{constructor(t,e=op.now){super(t,()=>lp.delegate&&lp.delegate!==this?lp.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return lp.delegate&&lp.delegate!==this?lp.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let 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}}}class ap extends lp{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,i=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s(function(t){const e=hp[t];e&&e()})(e)),e},clearImmediate(t){delete hp[t]}};class pp extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=dp.setImmediate(t.flush.bind(t,null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(dp.clearImmediate(e),t.scheduled=void 0)}}class fp extends lp{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,s=-1,i=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++s=0}function Cp(t){const{index:e,period:n,subscriber:s}=t;if(s.next(e),!s.closed){if(-1===n)return s.complete();t.index=e+1,this.schedule(t,n)}}function xp(t,e=vp){return n=(()=>(function(t=0,e,n){let s=-1;return bp(e)?s=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=vp),new b(e=>{const i=bp(t)?t:+t-n.now();return n.schedule(Cp,i,{index:0,period:s,subscriber:e})})})(t,e)),function(t){return t.lift(new yp(n))};var n}function Sp(t){return e=>e.lift(new Ep(t))}class Ep{constructor(t){this.notifier=t}call(t,e){const n=new kp(t),s=U(n,this.notifier);return s&&!n.seenValue?(n.add(s),e.subscribe(n)):n}}class kp extends z{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,s,i){this.seenValue=!0,this.complete()}notifyComplete(){}}class Tp{call(t,e){return e.subscribe(new Op(t))}}class Op extends g{constructor(t){super(t),this.hasPrev=!1}_next(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t}}class Ip extends ip{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}class Rp extends lp{}const Pp=new Rp(Ip);function Ap(t,e){return new b(e?n=>e.schedule(Mp,0,{error:t,subscriber:n}):e=>e.error(t))}function Mp({error:t,subscriber:e}){e.error(t)}var Np;!function(t){t.NEXT="N",t.ERROR="E",t.COMPLETE="C"}(Np||(Np={}));const Dp=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(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()}}do(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()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Xl(this.value);case"E":return Ap(this.error);case"C":return Zl()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})();class Vp extends g{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(Vp.dispatch,this.delay,new $p(t,this.destination)))}_next(t){this.scheduleMessage(Dp.createNext(t))}_error(t){this.scheduleMessage(Dp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(Dp.createComplete()),this.unsubscribe()}}class $p{constructor(t,e){this.notification=t,this.destination=e}}class Lp extends T{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift(),super.next(t)}nextTimeWindow(t){this._events.push(new jp(this._getNow(),t)),this._trimBufferThenGetEvents(),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),s=this.scheduler,i=n.length;let r;if(this.closed)throw new S;if(this.isStopped||this.hasError?r=d.EMPTY:(this.observers.push(t),r=new E(this,t)),s&&t.add(t=new Vp(t,s)),e)for(let o=0;oe&&(r=Math.max(r,i-e)),r>0&&s.splice(0,r),s}}class jp{constructor(t,e){this.time=t,this.value=e}}let Up;try{Up="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Lv){Up=!1}const zp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Gl(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&&!Up)&&"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.ngInjectableDef=mt({factory:function(){return new t(Ot(Di,8))},token:t,providedIn:"root"}),t})(),Fp=(()=>(class{}))(),Hp=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();let Bp;function Gp(){if("object"!=typeof document||!document)return Hp.NORMAL;if(!Bp){const 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";const n=document.createElement("div"),s=n.style;s.width="2px",s.height="1px",t.appendChild(n),document.body.appendChild(t),Bp=Hp.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Bp=0===t.scrollLeft?Hp.NEGATED:Hp.INVERTED),t.parentNode.removeChild(t)}return Bp}class Wp{}class Yp extends Wp{constructor(t){super(),this._data=t}connect(){return this._data instanceof b?this._data:Xl(this._data)}disconnect(){}}const qp=new Rt("VIRTUAL_SCROLL_STRATEGY");class Zp{constructor(t,e,n){this._scrolledIndexChange=new T,this.scrolledIndexChange=this._scrolledIndexChange.pipe(t=>t.lift(new mp(void 0,void 0))),this._viewport=null,this._itemSize=t,this._minBufferPx=e,this._maxBufferPx=n}attach(t){this._viewport=t,this._updateTotalContentSize(),this._updateRenderedRange()}detach(){this._scrolledIndexChange.complete(),this._viewport=null}updateItemAndBufferSize(t,e,n){if(n0&&(s.end=Math.min(r,s.end+t),s.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(s),this._viewport.setRenderedContentOffset(this._itemSize*s.start),this._scrolledIndexChange.next(Math.floor(e))}}function Qp(t){return t._scrollStrategy}const Xp=(()=>(class{constructor(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Zp(this.itemSize,this.minBufferPx,this.maxBufferPx)}get itemSize(){return this._itemSize}set itemSize(t){this._itemSize=Jd(t)}get minBufferPx(){return this._minBufferPx}set minBufferPx(t){this._minBufferPx=Jd(t)}get maxBufferPx(){return this._maxBufferPx}set maxBufferPx(t){this._maxBufferPx=Jd(t)}ngOnChanges(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)}}))(),Kp=20,Jp=(()=>{class t{constructor(t,e){this._ngZone=t,this._platform=e,this._scrolled=new T,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=Kp){return this._platform.isBrowser?new b(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(xp(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Xl()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(oa(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,s)=>{this._scrollableContainsElement(s,t)&&e.push(s)}),e}_scrollableContainsElement(t,e){let n=e.nativeElement,s=t.getElementRef().nativeElement;do{if(n==s)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>np(window.document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Ji),Ot(zp))},token:t,providedIn:"root"}),t})(),tf=(()=>(class{constructor(t,e,n,s){this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=s,this._destroyed=new T,this._elementScrolled=new b(t=>this.ngZone.runOutsideAngular(()=>np(this.elementRef.nativeElement,"scroll").pipe(Sp(this._destroyed)).subscribe(t)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(t){const e=this.elementRef.nativeElement,n=this.dir&&"rtl"==this.dir.value;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Gp()!=Hp.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Gp()==Hp.INVERTED?t.left=t.right:Gp()==Hp.NEGATED&&(t.left=t.right?-t.right:t.right)):null!=t.right&&(t.left=e.scrollWidth-e.clientWidth-t.right),this._applyScrollToOptions(t)}_applyScrollToOptions(t){const e=this.elementRef.nativeElement;"object"==typeof document&&"scrollBehavior"in document.documentElement.style?e.scrollTo(t):(null!=t.top&&(e.scrollTop=t.top),null!=t.left&&(e.scrollLeft=t.left))}measureScrollOffset(t){const e=this.elementRef.nativeElement;if("top"==t)return e.scrollTop;if("bottom"==t)return e.scrollHeight-e.clientHeight-e.scrollTop;const n=this.dir&&"rtl"==this.dir.value;return"start"==t?t=n?"right":"left":"end"==t&&(t=n?"left":"right"),n&&Gp()==Hp.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Gp()==Hp.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft}}))(),ef="undefined"!=typeof requestAnimationFrame?cp:gp,nf=(()=>(class extends tf{constructor(t,e,n,s,i,r){if(super(t,r,n,i),this.elementRef=t,this._changeDetectorRef=e,this._scrollStrategy=s,this._detachedSubject=new T,this._renderedRangeSubject=new T,this.orientation="vertical",this.scrolledIndexChange=new b(t=>this._scrollStrategy.scrolledIndexChange.subscribe(e=>Promise.resolve().then(()=>this.ngZone.run(()=>t.next(e))))),this.renderedRangeStream=this._renderedRangeSubject.asObservable(),this._totalContentSizeTransform="",this._totalContentSize=0,this._renderedRange={start:0,end:0},this._dataLength=0,this._viewportSize=0,this._renderedContentOffset=0,this._renderedContentOffsetNeedsRewrite=!1,this._isChangeDetectionPending=!1,this._runAfterChangeDetection=[],!s)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.')}ngOnInit(){super.ngOnInit(),this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._measureViewportSize(),this._scrollStrategy.attach(this),this.elementScrolled().pipe(Da(null),xp(0,ef)).subscribe(()=>this._scrollStrategy.onContentScrolled()),this._markChangeDetectionNeeded()}))}ngOnDestroy(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),super.ngOnDestroy()}attach(t){if(this._forOf)throw Error("CdkVirtualScrollViewport is already attached.");this.ngZone.runOutsideAngular(()=>{this._forOf=t,this._forOf.dataStream.pipe(Sp(this._detachedSubject)).subscribe(t=>{const e=t.length;e!==this._dataLength&&(this._dataLength=e,this._scrollStrategy.onDataLengthChanged()),this._doChangeDetection()})})}detach(){this._forOf=null,this._detachedSubject.next()}getDataLength(){return this._dataLength}getViewportSize(){return this._viewportSize}getRenderedRange(){return this._renderedRange}setTotalContentSize(t){this._totalContentSize!==t&&(this._totalContentSize=t,this._totalContentSizeTransform=`scale${"horizontal"==this.orientation?"X":"Y"}(${this._totalContentSize})`,this._markChangeDetectionNeeded())}setRenderedRange(t){var e,n;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(()=>this._scrollStrategy.onContentRendered()))}getOffsetToRenderedContentStart(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset}setRenderedContentOffset(t,e="to-start"){const n="horizontal"==this.orientation,s=n?"X":"Y";let i=`translate${s}(${Number((n&&this.dir&&"rtl"==this.dir.value?-1:1)*t)}px)`;this._renderedContentOffset=t,"to-end"===e&&(i+=` translate${s}(-100%)`,this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,this._markChangeDetectionNeeded(()=>{this._renderedContentOffsetNeedsRewrite?(this._renderedContentOffset-=this.measureRenderedContentSize(),this._renderedContentOffsetNeedsRewrite=!1,this.setRenderedContentOffset(this._renderedContentOffset)):this._scrollStrategy.onRenderedOffsetChanged()}))}scrollToOffset(t,e="auto"){const n={behavior:e};"horizontal"===this.orientation?n.start=t:n.top=t,this.scrollTo(n)}scrollToIndex(t,e="auto"){this._scrollStrategy.scrollToIndex(t,e)}measureScrollOffset(t){return super.measureScrollOffset(t||("horizontal"===this.orientation?"start":"top"))}measureRenderedContentSize(){const t=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?t.offsetWidth:t.offsetHeight}measureRangeSize(t){return this._forOf?this._forOf.measureRangeSize(t,this.orientation):0}checkViewportSize(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()}_measureViewportSize(){const t=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?t.clientWidth:t.clientHeight}_markChangeDetectionNeeded(t){t&&this._runAfterChangeDetection.push(t),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>{this._doChangeDetection()})))}_doChangeDetection(){this._isChangeDetectionPending=!1,this.ngZone.run(()=>this._changeDetectorRef.markForCheck()),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;const t=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(const e of t)e()}}))();function sf(t,e){if(!e.getBoundingClientRect)return 0;const n=e.getBoundingClientRect();return"horizontal"==t?n.width:n.height}const rf=(()=>(class{constructor(t,e,n,s,i){this._viewContainerRef=t,this._template=e,this._differs=n,this._viewport=s,this.viewChange=new T,this._dataSourceChanges=new T,this.cdkVirtualForTemplateCacheSize=20,this.dataStream=this._dataSourceChanges.pipe(Da(null),t=>t.lift(new Tp),Pa(([t,e])=>this._changeDataSource(t,e)),function(t,e,n){let s;return s={bufferSize:1,windowTime:void 0,refCount:!1,scheduler:void 0},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:s}){let i,r,o=0,l=!1,a=!1;return function(c){o++,i&&!l||(l=!1,i=new Lp(t,e,s),r=c.subscribe({next(t){i.next(t)},error(t){l=!0,i.error(t)},complete(){a=!0,i.complete()}}));const u=i.subscribe(this);this.add(()=>{o--,u.unsubscribe(),r&&!a&&n&&0===o&&(r.unsubscribe(),r=void 0,i=void 0)})}}(s))}()),this._differ=null,this._templateCache=[],this._needsUpdate=!1,this._destroyed=new T,this.dataStream.subscribe(t=>{this._data=t,this._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe(Sp(this._destroyed)).subscribe(t=>{this._renderedRange=t,i.run(()=>this.viewChange.next(this._renderedRange)),this._onRenderedDataChange()}),this._viewport.attach(this)}get cdkVirtualForOf(){return this._cdkVirtualForOf}set cdkVirtualForOf(t){this._cdkVirtualForOf=t;const e=function(t){return t&&"function"==typeof t.connect}(t)?t:new Yp(t instanceof b?t:Array.prototype.slice.call(t||[]));this._dataSourceChanges.next(e)}get cdkVirtualForTrackBy(){return this._cdkVirtualForTrackBy}set cdkVirtualForTrackBy(t){this._needsUpdate=!0,this._cdkVirtualForTrackBy=t?(e,n)=>t(e+(this._renderedRange?this._renderedRange.start:0),n):void 0}set cdkVirtualForTemplate(t){t&&(this._needsUpdate=!0,this._template=t)}measureRangeSize(t,e){if(t.start>=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");const n=t.start-this._renderedRange.start;let s=0,i=t.end-t.start;for(;i--;){const t=this._viewContainerRef.get(i+n);let r=t?t.rootNodes.length:0;for(;r--;)s+=sf(e,t.rootNodes[r])}return s}ngDoCheck(){if(this._differ&&this._needsUpdate){const t=this._differ.diff(this._renderedItems);t?this._applyChanges(t):this._updateContext(),this._needsUpdate=!1}}ngOnDestroy(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(let t of this._templateCache)t.destroy()}_onRenderedDataChange(){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)}_changeDataSource(t,e){return t&&t.disconnect(this),this._needsUpdate=!0,e?e.connect(this):Xl()}_updateContext(){const t=this._data.length;let e=this._viewContainerRef.length;for(;e--;){let n=this._viewContainerRef.get(e);n.context.index=this._renderedRange.start+e,n.context.count=t,this._updateComputedContextProperties(n.context),n.detectChanges()}}_applyChanges(t){t.forEachOperation((t,e,n)=>{if(null==t.previousIndex)this._insertViewForNewItem(n).context.$implicit=t.item;else if(null==n)this._cacheView(this._detachView(e));else{const s=this._viewContainerRef.get(e);this._viewContainerRef.move(s,n),s.context.$implicit=t.item}}),t.forEachIdentityChange(t=>{this._viewContainerRef.get(t.currentIndex).context.$implicit=t.item});const e=this._data.length;let n=this._viewContainerRef.length;for(;n--;){const t=this._viewContainerRef.get(n);t.context.index=this._renderedRange.start+n,t.context.count=e,this._updateComputedContextProperties(t.context)}}_cacheView(t){if(this._templateCache.length(class{}))(),lf=20,af=(()=>{class t{constructor(t,e){this._platform=t,e.runOutsideAngular(()=>{this._change=t.isBrowser?K(np(window,"resize"),np(window,"orientationchange")):Xl(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=document.documentElement,e=t.getBoundingClientRect();return{top:-e.top||document.body.scrollTop||window.scrollY||t.scrollTop||0,left:-e.left||document.body.scrollLeft||window.scrollX||t.scrollLeft||0}}change(t=lf){return t>0?this._change.pipe(xp(t)):this._change}_updateViewportSize(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(zp),Ot(Ji))},token:t,providedIn:"root"}),t})();function cf(){throw Error("Host already has a portal attached")}class uf{attach(t){return null==t&&function(){throw Error("Attempting to attach a portal to a null PortalOutlet")}(),t.hasAttached()&&cf(),this._attachedHost=t,t.attach(this)}detach(){let 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())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class hf extends uf{constructor(t,e,n,s){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=s}}class df extends uf{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class pf{constructor(){this._isDisposed=!1}hasAttached(){return!!this._attachedPortal}attach(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&cf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof hf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof df?(this._attachedPortal=t,this.attachTemplatePortal(t)):void function(){throw Error("Attempting to attach an unknown Portal type. BasePortalOutlet accepts either a ComponentPortal or a TemplatePortal.")}()}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class ff extends pf{constructor(t,e,n,s){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=s}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.detectChanges(),n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}const gf=(()=>(class{}))();class mf{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=ep(-this._previousScrollPosition.left),t.style.top=ep(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,s=e.scrollBehavior||"",i=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=s,n.scrollBehavior=i}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}function _f(){return Error("Scroll strategy has already been attached.")}class vf{constructor(t,e,n,s){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=s,this._scrollSubscription=null,this._detach=(()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())})}attach(t){if(this._overlayRef)throw _f();this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class yf{enable(){}disable(){}attach(){}}function wf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function bf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class Cf{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=s,this._scrollSubscription=null}attach(t){if(this._overlayRef)throw _f();this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();wf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}const xf=(()=>{class t{constructor(t,e,n,s){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=(()=>new yf),this.close=(t=>new vf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t)),this.block=(()=>new mf(this._viewportRuler,this._document)),this.reposition=(t=>new Cf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t)),this._document=s}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Jp),Ot(af),Ot(Ji),Ot(Hl))},token:t,providedIn:"root"}),t})();class Sf{constructor(t){this.scrollStrategy=new yf,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(e=>{void 0!==t[e]&&(this[e]=t[e])})}}class Ef{constructor(t,e,n,s,i){this.offsetX=n,this.offsetY=s,this.panelClass=i,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}const kf=(()=>(class{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}))();function Tf(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "top", "bottom" or "center".')}function Of(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error(`ConnectedPosition: Invalid ${t} "${e}". `+'Expected "start", "end" or "center".')}const If=(()=>{class t{constructor(t){this._attachedOverlays=[],this._keydownListener=(t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEventSubscriptions>0){e[n]._keydownEvents.next(t);break}}),this._document=t}ngOnDestroy(){this._detach()}add(t){this.remove(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this._detach()}_detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Hl))},token:t,providedIn:"root"}),t})(),Rf=(()=>{class t{constructor(t){this._document=t}ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Hl))},token:t,providedIn:"root"}),t})();class Pf{constructor(t,e,n,s,i,r,o,l){this._portalOutlet=t,this._host=e,this._pane=n,this._config=s,this._ngZone=i,this._keyboardDispatcher=r,this._document=o,this._location=l,this._backdropElement=null,this._backdropClick=new T,this._attachments=new T,this._detachments=new T,this._locationChanges=d.EMPTY,this._keydownEventsObservable=new b(t=>{const e=this._keydownEvents.subscribe(t);return this._keydownEventSubscriptions++,()=>{e.unsubscribe(),this._keydownEventSubscriptions--}}),this._keydownEvents=new T,this._keydownEventSubscriptions=0,s.scrollStrategy&&(this._scrollStrategy=s.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=s.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return this._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Ea(1)).subscribe(()=>{this.hasAttached()&&this.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(()=>this.dispose())),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),t}dispose(){const 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()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick.asObservable()}attachments(){return this._attachments.asObservable()}detachments(){return this._detachments.asObservable()}keydownEvents(){return this._keydownEventsObservable}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign({},this._config,t),this._updateElementSize()}setDirection(t){this._config=Object.assign({},this._config,{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){const t=this._pane.style;t.width=ep(this._config.width),t.height=ep(this._config.height),t.minWidth=ep(this._config.minWidth),t.minHeight=ep(this._config.minHeight),t.maxWidth=ep(this._config.maxWidth),t.maxHeight=ep(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"auto":"none"}_attachBackdrop(){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",t=>this._backdropClick.next(t)),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add("cdk-overlay-backdrop-showing")})}):this._backdropElement.classList.add("cdk-overlay-backdrop-showing")}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t,e=this._backdropElement;if(!e)return;let n=()=>{e&&e.parentNode&&e.parentNode.removeChild(e),this._backdropElement==e&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(e,this._config.backdropClass,!1),clearTimeout(t)};e.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{e.addEventListener("transitionend",n)}),e.style.pointerEvents="none",t=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const s=t.classList;tp(e).forEach(t=>{n?s.add(t):s.remove(t)})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.asObservable().pipe(Sp(K(this._attachments,this._detachments))).subscribe(()=>{this._pane&&this._host&&0!==this._pane.children.length||(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const Af="cdk-overlay-connected-position-bounding-box";class Mf{constructor(t,e,n,s,i){this._viewportRuler=e,this._document=n,this._platform=s,this._overlayContainer=i,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 T,this._resizeSubscription=d.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges.asObservable(),this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){if(this._overlayRef&&t!==this._overlayRef)throw Error("This position strategy is already attached to an overlay");this._validatePositions(),t.hostElement.classList.add(Af),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(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,s=[];let i;for(let r of this._preferredPositions){let o=this._getOriginPoint(t,r),l=this._getOverlayPoint(o,e,r),a=this._getOverlayFit(l,e,n,r);if(a.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(r,o);this._canFitWithFlexibleDimensions(a,l,n)?s.push({position:r,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,r)}):(!i||i.overlayFit.visibleAreae&&(e=s,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(i.position,i.originPoint);this._applyPosition(i.position,i.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&Nf(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Af),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,s;if("center"==e.originX)n=t.left+t.width/2;else{const s=this._isRtl()?t.right:t.left,i=this._isRtl()?t.left:t.right;n="start"==e.originX?s:i}return{x:n,y:s="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom}}_getOverlayPoint(t,e,n){let s,i;return s="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+s,y:t.y+(i="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}}_getOverlayFit(t,e,n,s){let{x:i,y:r}=t,o=this._getOffset(s,"x"),l=this._getOffset(s,"y");o&&(i+=o),l&&(r+=l);let a=0-r,c=r+e.height-n.height,u=this._subtractOverflows(e.width,0-i,i+e.width-n.width),h=this._subtractOverflows(e.height,a,c),d=u*h;return{visibleArea:d,isCompletelyWithinViewport:e.width*e.height===d,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:u==e.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const s=n.bottom-e.y,i=n.right-e.x,r=this._overlayRef.getConfig().minHeight,o=this._overlayRef.getConfig().minWidth,l=t.fitsInViewportHorizontally||null!=o&&o<=i;return(t.fitsInViewportVertically||null!=r&&r<=s)&&l}}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const s=this._viewportRect,i=Math.max(t.x+e.width-s.right,0),r=Math.max(t.y+e.height-s.bottom,0),o=Math.max(s.top-n.top-t.y,0),l=Math.max(s.left-n.left-t.x,0);let a=0,c=0;return this._previousPushAmount={x:a=e.width<=s.width?l||-i:t.xs&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-s/2)}if("end"===e.overlayX&&!s||"start"===e.overlayX&&s)c=n.right-t.x+this._viewportMargin,l=t.x-n.left;else if("start"===e.overlayX&&!s||"end"===e.overlayX&&s)a=t.x,l=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),s=this._lastBoundingBoxSize.width;a=t.x-e,(l=2*e)>s&&!this._isInitialRender&&!this._growAfterOpen&&(a=t.x-s/2)}return{top:r,left:a,bottom:o,right:c,width:l,height:i}}_setBoundingBoxStyles(t,e){const 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));const s={};if(this._hasExactPosition())s.top=s.left="0",s.bottom=s.right="",s.width=s.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;s.height=ep(n.height),s.top=ep(n.top),s.bottom=ep(n.bottom),s.width=ep(n.width),s.left=ep(n.left),s.right=ep(n.right),s.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",s.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(s.maxHeight=ep(t)),i&&(s.maxWidth=ep(i))}this._lastBoundingBoxSize=n,Nf(this._boundingBox.style,s)}_resetBoundingBoxStyles(){Nf(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){Nf(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={};if(this._hasExactPosition()){const s=this._viewportRuler.getViewportScrollPosition();Nf(n,this._getExactOverlayY(e,t,s)),Nf(n,this._getExactOverlayX(e,t,s))}else n.position="static";let s="",i=this._getOffset(e,"x"),r=this._getOffset(e,"y");i&&(s+=`translateX(${i}px) `),r&&(s+=`translateY(${r}px)`),n.transform=s.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Nf(this._pane.style,n)}_getExactOverlayY(t,e,n){let s={top:null,bottom:null},i=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(i=this._pushOverlayOnScreen(i,this._overlayRect,n));let r=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return i.y-=r,"bottom"===t.overlayY?s.bottom=`${this._document.documentElement.clientHeight-(i.y+this._overlayRect.height)}px`:s.top=ep(i.y),s}_getExactOverlayX(t,e,n){let s,i={left:null,right:null},r=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n)),"right"==(s=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?i.right=`${this._document.documentElement.clientWidth-(r.x+this._overlayRect.width)}px`:i.left=ep(r.x),i}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:bf(t,n),isOriginOutsideView:wf(t,n),isOverlayClipped:bf(e,n),isOverlayOutsideView:wf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const 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}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){if(!this._preferredPositions.length)throw Error("FlexibleConnectedPositionStrategy: At least one position is required.");this._preferredPositions.forEach(t=>{Of("originX",t.originX),Tf("originY",t.originY),Of("overlayX",t.overlayX),Tf("overlayY",t.overlayY)})}_addPanelClasses(t){this._pane&&tp(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;return t instanceof sn?t.nativeElement.getBoundingClientRect():t instanceof HTMLElement?t.getBoundingClientRect():{top:t.y,bottom:t.y,left:t.x,right:t.x,height:0,width:0}}}function Nf(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}class Df{constructor(t,e,n,s,i,r,o){this._preferredPositions=[],this._positionStrategy=new Mf(n,s,i,r,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e)}get _isRtl(){return"rtl"===this._overlayRef.getDirection()}get onPositionChange(){return this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,s){const i=new Ef(t,e,n,s);return this._preferredPositions.push(i),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Vf="cdk-global-overlay-wrapper";class $f{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const 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(Vf),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig();t.position=this._cssPosition,t.marginLeft="100%"===n.width?"0":this._leftOffset,t.marginTop="100%"===n.height?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,"100%"===n.width?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="100%"===n.height?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Vf),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}const Lf=(()=>{class t{constructor(t,e,n,s){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=s}global(){return new $f}connectedTo(t,e,n){return new Df(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new Mf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(af),Ot(Hl),Ot(zp),Ot(Rf))},token:t,providedIn:"root"}),t})();let jf=0;const Uf=(()=>(class{constructor(t,e,n,s,i,r,o,l,a,c){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=s,this._keyboardDispatcher=i,this._injector=r,this._ngZone=o,this._document=l,this._directionality=a,this._location=c}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),s=this._createPortalOutlet(n),i=new Sf(t);return i.direction=i.direction||this._directionality.value,new Pf(s,e,n,i,this._ngZone,this._keyboardDispatcher,this._document,this._location)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id=`cdk-overlay-${jf++}`,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(vr)),new ff(t,this._componentFactoryResolver,this._appRef,this._injector)}}))(),zf=new Rt("cdk-connected-overlay-scroll-strategy");function Ff(t){return()=>t.scrollStrategies.reposition()}const Hf=(()=>(class{}))(),Bf="Pipes";function Gf(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}class Wf{constructor(t,e){this._parentInjector=t,this._customTokens=e}get(t,e){const n=this._customTokens.get(t);return void 0!==n?n:this._parentInjector.get(t,e)}}const Yf=(()=>(class{constructor(t){this.injector=t,this.klass="default",this._overlay=t.get(qf)}ngOnInit(){setTimeout(()=>{this.offset=this._overlay.details.offset,this.setMethod()},1)}setMethod(){this.method="component",this.content=this._overlay.content,this.klass=this._overlay.details.klass||"default","string"==typeof this.content?this.method="text":this.content instanceof Rn&&(this.method="template",this.context=Object.assign({},this._overlay.details.data||{},{event:this._overlay.post.bind(this._overlay),close:this._overlay.close.bind(this._overlay)}),Object.defineProperty(this.context,"position",{get:()=>this._overlay.position}))}}))();class qf{constructor(t,e,n,s,i){this.id=t,this.service=e,this.injector=n,this.overlay=s,this.details=i,this.onClose=new T,this.event=new T,this.position_subject=new Kl(null),this.subs=[],this._overlay=this.overlay.create(this.details.config),this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null))}open(t,e){this._overlay&&this._close("reopen",null),e&&(delete this._overlay,this._overlay=this.overlay.create(e),this.details.config=e,this._overlay.backdropClick().subscribe(()=>this._close("backdrop_click",null)));const n=this._createInjector(this,this.injector);this.onClose=new T,this.event=new T,this._overlay.attach(new hf(Yf,null,n)),this.set(t)}set(t,e=!0){this._data=t,e&&setTimeout(()=>this.updatePosition(),100)}get data(){return this._data||this.details.data||null}get content(){return this.details.content}get ID(){return this.id}listen(t){const e=this.event.subscribe(t);return this.subs.push(e),e}post(t,e){this.event.next({type:t,data:e})}get position(){return this.position_subject?this.position_subject.getValue():null}close(t){this._close("close",t)}_close(t,e){this._overlay&&this._overlay.dispose(),"reopen"!==t&&this.onClose.next({type:t,data:e}),this.onClose.complete(),this.event.complete(),this.subs=[]}_createInjector(t,e){const n=new WeakMap([[qf,t]]);return new Wf(e,n)}updatePosition(){const t=this.details.config;this._overlay.updatePosition();const e=t.positionStrategy;e instanceof Mf&&setTimeout(()=>{e._lastPosition&&this.position_subject.next({x:e._lastPosition.originX,y:e._lastPosition.originY})},1)}}const Zf=(()=>(class{constructor(t,e){this.overlay=t,this.renderer=e,this.events=[],this.displayed_events=[],this.subs={},this.delay=5e3,this.offset=0}ngOnInit(){this.context=this.overlay.details.data,this.subs.add=this.context.add.subscribe(t=>this.add(t)),this.subs.remove=this.context.remove.subscribe(t=>this.remove(t)),this.subs.delay=this.context.delay.subscribe(t=>this.delay=t)}ngOnDestroy(){for(const t in this.subs)this.subs[t]&&this.subs[t]instanceof d&&this.subs[t].unsubscribe()}add(t){this.events.findIndex(e=>e.id===t.id)<0&&(t.method="component","string"==typeof t.content?t.method="text":t.content instanceof Rn&&(t.method="template",t.context={close:()=>this.remove(t.id)}),this.events=this.events&&this.events.length>0?[...this.events,t]:[t],this.displayed_events=this.events.slice(-8),t.close=(()=>this.remove(t.id)),0!==t.delay&&setTimeout(()=>this.remove(t.id),t.delay||this.delay||5e3))}remove(t){this.events=this.events.filter(e=>e.id!==t),this.displayed_events=this.events.slice(-8)}action(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)}grab(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=n,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",e=>this.pull(t,e)),touchmove:this.renderer.listen("window","touchmove",e=>this.pull(t,e)),mouseup:this.renderer.listen("window","mouseup",e=>this.release(t)),touchend:this.renderer.listen("window","touchend",e=>this.release(t))}}pull(t,e){const n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)}release(t){t.offset>128&&this.remove(t.id);for(const e in t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0}trackByFn(t,e){return(t?t.id:null)||e}}))(),Qf=(()=>{class t{constructor(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new T,this._notify.remove=new T,this._notify.delay=new T,this.registerPreset("default",new Sf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new Sf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}register(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new qf(t,this,this.injector,this.overlay,e),this._refs[t]}open(t,e,n,s){if(e.config?e.config instanceof Sf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error(`No content set for the overlay ${t}`);const i=this._refs[t],r=i.details.config instanceof Sf?i.details.config:this.preset(i.details.config);i.open(e.data,e.config||r||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),s&&this._refs[t].onClose.subscribe(s))}update(t,e){this._refs[t]&&this._refs[t].set(e)}close(t){this._refs[t]&&this._refs[t].close(null)}remove(t){this._refs[t]&&(this._refs[t]=null)}registerPreset(t,e){this._presets[t]=e}preset(t="default"){return this._presets[t]||this._presets.default}loadNotificationsOutlet(){this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(()=>{this.registerPreset("ACA_NOTIFICATIONS_OUTLET",new Sf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:this.overlay.position().global().bottom("0").right("0"),scrollStrategy:this.overlay.scrollStrategies.noop()})),this.open("ACA_NOTIFICATIONS_OUTLET",{content:Zf,data:this._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)}notify(t,e,n,s,i){let r=null;return this._notify.add&&(r=`notification-${Math.floor(999999*Math.random())}`,this._notify.add.next({id:r,content:t,action:e,on_action:n,type:s,delay:i,event:t=>n?n(t):null})),r}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(Uf),Ot(Mt))},token:t,providedIn:"root"}),t})(),Xf=(()=>(class{constructor(t,e,n,s){this.el=t,this.service=e,this.overlay=n,this.renderer=s,this.id=`tooltip-${Math.floor(9999999*Math.random())}`,this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new ki,this.event=new ki,this.close=new ki,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}ngOnInit(){this.updateConfig(),this.el&&this.listenForScroll()}ngOnDestroy(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()}ngOnChanges(t){if(t.config&&this.updateConfig(),t.reposition){const t=this.overlay.scrollStrategies;this.strategy=this.reposition?t.reposition():t.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(()=>this.open(),10):this.closeTooltip(t.show.previousValue))}open(){this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},t=>this.event.emit(t),t=>{this.show=!1,this.showChange.emit(!1),this.close.emit(t),this.clearListeners()})}getOverlayPosition(t){const e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)}getPositions(){const t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}}updateConfig(){this.service.registerPreset(this.id,new Sf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))}listenForScroll(){if(this.show){let t=this.el.nativeElement.parentElement;for(;t;t=t.parentElement)this.listeners.push(this.renderer.listen(t,"scroll",()=>this.update()))}}clearListeners(){for(const t of this.listeners)t();this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)}update(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))}listenForHover(){this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",t=>{this.show=!0,this.showChange.emit(this.show),this._leave_listener=this.renderer.listen(this.el.nativeElement,"mouseleave",t=>{this.show=!1,this.showChange.emit(this.show),this.closeTooltip(this.show)}),this.open()})}closeTooltip(t){!this.content&&this.el?function(t,e,n,s="debug",i){if(window.debug){const t=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?Gf()?console[s](`%c[${Bf}]%c[Tooltip] %c${e}`,...t,n):console[s](`[${Bf}][Tooltip] ${e}`,n):Gf()?console[s](`%c[${Bf}]%c[Tooltip] %c${e}`,...t):console[s](`[${Bf}][Tooltip] ${e}`)}}(0,"No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()}}))(),Kf=(()=>(class{constructor(t,e){this.item=t,this.service=e}ngOnInit(){setTimeout(()=>{this.text=this.item.details.data.text,this.center=this.item.details.data.center},10),setTimeout(()=>this.service.close(this.item.ID),1e3)}}))(),Jf=hl,tg=(()=>{class t{constructor(){if(this.build=Jf(),!t.init){const e=Jf();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){Gf()?console[n](`%c[ACA]%c[LIB] %c${Bf} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"):console[n](`[ACA][LIB] ${Bf} - ${t} | ${e}`)}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),eg=new Rt("cdk-dir-doc",{providedIn:"root",factory:function(){return It(Hl)}}),ng=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new ki,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(eg,8))},token:t,providedIn:"root"}),t})(),sg=(()=>(class{}))();var ig=Xn({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function rg(t){return to(0,[(t()(),Lr(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function og(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function lg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,og)),ai(2,540672,null,0,zl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function ag(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function cg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,ag)),ai(2,671744,null,0,Rl,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function ug(t){return to(0,[(t()(),Lr(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Lr(1,0,null,null,7,null,null,null,null,null,null,null)),ai(2,16384,null,0,Ll,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),$r(16777216,null,null,1,null,rg)),ai(4,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,lg)),ai(6,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,cg)),ai(8,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function hg(t){return to(0,[(t()(),$r(16777216,null,null,1,null,ug)),ai(1,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function dg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"overlay-outlet",[],null,null,null,hg,ig)),ai(1,114688,null,0,Yf,[Dt],null,null)],function(t,e){t(e,1,0)},null)}var pg=Ls("overlay-outlet",Yf,dg,{},{},[]),fg=Xn({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function gg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Xr(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function mg(t){return to(0,[(t()(),Lr(0,0,null,null,1,"a-floating-text",[],null,null,null,gg,fg)),ai(1,114688,null,0,Kf,[qf,Qf],null,null)],function(t,e){t(e,1,0)},null)}var _g=Ls("a-floating-text",Kf,mg,{},{},[]),vg=Xn({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function yg(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function wg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,yg)),ai(2,540672,null,0,zl,[An],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function bg(t){return to(0,[(t()(),Lr(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Cg(t){return to(0,[(t()(),Lr(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,bg)),ai(2,671744,null,0,Rl,[An],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),$r(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function xg(t){return to(0,[(t()(),Lr(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function Sg(t){return to(0,[(t()(),Lr(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Xr(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function Eg(t){return to(0,[(t()(),Lr(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function kg(t){return to(0,[(t()(),Lr(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Lr(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==i.grab(t.context.$implicit,n)&&s),"touchstart"===e&&(s=!1!==i.grab(t.context.$implicit,n)&&s),s},null,null)),(t()(),Lr(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Lr(4,0,null,null,7,null,null,null,null,null,null,null)),ai(5,16384,null,0,Ll,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),$r(16777216,null,null,1,null,wg)),ai(7,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,Cg)),ai(9,278528,null,0,jl,[An,Rn,Ll],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),$r(16777216,null,null,1,null,xg)),ai(11,16384,null,0,Ul,[An,Rn,Ll],null,null),(t()(),Lr(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var s=!0,i=t.component;return"click"===e&&(i.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),"touchend"===e&&(i.action(t.context.$implicit),s=!1!==n.preventDefault()&&s),s},null,null)),(t()(),$r(16777216,null,null,1,null,Sg)),ai(14,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),$r(16777216,null,null,1,null,Eg)),ai(16,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function Tg(t){return to(0,[(t()(),Lr(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,kg)),ai(2,278528,null,0,Al,[An,Rn,xn],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function Og(t){return to(0,[(t()(),Lr(0,0,null,null,1,"notification-outlet",[],null,null,null,Tg,vg)),ai(1,245760,null,0,Zf,[qf,cn],null,null)],function(t,e){t(e,1,0)},null)}var Ig=Ls("notification-outlet",Zf,Og,{},{},[]);class Rg extends z{constructor(t,e){super(t),this.sources=e,this.completed=0,this.haveValues=0;const n=e.length;this.values=new Array(n);for(let s=0;s(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Mg=new Rt("CompositionEventMode"),Ng=(()=>(class{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Ha()?Ha().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}))();class Dg{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class Vg extends Dg{get formDirective(){return null}get path(){return null}}function $g(){throw new Error("unimplemented")}class Lg extends Dg{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return $g()}get asyncValidator(){return $g()}}const jg=(()=>(class extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}))();function Ug(t){return null==t||0===t.length}const zg=/^(?=.{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])?)*$/;class Fg{static min(t){return e=>{if(Ug(e.value)||Ug(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(Ug(e.value)||Ug(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return Ug(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return Ug(t.value)?null:zg.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(Ug(e.value))return null;const n=e.value?e.value.length:0;return n{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return Fg.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(Ug(t.value))return null;const s=t.value;return e.test(s)?null:{pattern:{requiredPattern:n,actualValue:s}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(Hg);return 0==e.length?null:function(t){return Gg(function(t,n){return e.map(e=>e(t))}(t))}}static composeAsync(t){if(!t)return null;const e=t.filter(Hg);return 0==e.length?null:function(t){return function t(...e){let n;return"function"==typeof e[e.length-1]&&(n=e.pop()),1===e.length&&a(e[0])&&(e=e[0]),0===e.length?ql:n?t(e).pipe(F(t=>n(...t))):new b(t=>new Rg(t,e))}(function(t,n){return e.map(e=>e(t))}(t).map(Bg)).pipe(F(Gg))}}}function Hg(t){return null!=t}function Bg(t){const e=De(t)?W(t):t;if(!Ve(e))throw new Error("Expected validator to return Promise or Observable.");return e}function Gg(t){const e=t.reduce((t,e)=>null!=e?Object.assign({},t,e):t,{});return 0===Object.keys(e).length?null:e}function Wg(t){return t.validate?e=>t.validate(e):t}function Yg(t){return t.validate?e=>t.validate(e):t}const qg=(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),Zg=(()=>(class{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}))(),Qg=(()=>(class{constructor(t,e,n,s){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=s,this.onChange=(()=>{}),this.onTouched=(()=>{})}ngOnInit(){this._control=this._injector.get(Lg),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=(()=>{t(this.value),this._registry.select(this)})}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}))(),Xg={formControlName:'\n

\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',formGroupName:'\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',formArrayName:'\n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });',ngModelGroup:'\n
\n
\n \n
\n
',ngModelWithFormGroup:'\n
\n \n \n
\n '};function Kg(t,e){return[...e.path,t]}function Jg(t,e){t||em(e,"Cannot find control with"),e.valueAccessor||em(e,"No value accessor for form control with"),t.validator=Fg.compose([t.validator,e.validator]),t.asyncValidator=Fg.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&tm(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&tm(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function tm(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function em(t,e){let 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 nm(t){return null!=t?Fg.compose(t.map(Wg)):null}function sm(t){return null!=t?Fg.composeAsync(t.map(Yg)):null}const im=[Ag,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=(t=>{}),this.onTouched=(()=>{})}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=(e=>{t(""==e?null:parseFloat(e))})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}))(),qg,(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?`${e}`:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=(e=>{this.value=this._getOptionValue(e),t(this.value)})}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}))(),(()=>(class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=(t=>{}),this.onTouched=(()=>{}),this._compareWith=je}set compareWith(t){if("function"!=typeof t)throw new Error(`compareWith must be a function, but received ${JSON.stringify(t)}`);this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=((t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)})}else e=((t,e)=>{t._setSelected(!1)});this._optionMap.forEach(e)}registerOnChange(t){this.onChange=(e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e{}),this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return this.status===rm}get invalid(){return this.status===om}get pending(){return this.status==lm}get disabled(){return this.status===am}get enabled(){return this.status!==am}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=cm(t)}setAsyncValidators(t){this.asyncValidator=um(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=lm,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=am,this.errors=null,this._forEachChild(e=>{e.disable(Object.assign({},t,{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=rm,this._forEachChild(e=>{e.enable(Object.assign({},t,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==rm&&this.status!==lm||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)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?am:rm}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=lm;const e=Bg(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(".")),e instanceof Array&&0===e.length?null:e.reduce((t,e)=>t instanceof fm?t.controls.hasOwnProperty(e)?t.controls[e]:null:t instanceof gm&&t.at(e)||null,t))}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new ki,this.statusChanges=new ki}_calculateStatus(){return this._allControlsDisabled()?am:this.errors?om:this._anyControlsHaveStatus(lm)?lm:this._anyControlsHaveStatus(om)?om:rm}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){hm(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class pm extends dm{constructor(t=null,e,n){super(cm(e),um(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=(()=>{})}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(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}}class fm extends dm{constructor(t,e,n){super(cm(e),um(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof pm?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,s)=>{e=e||this.contains(s)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,s)=>{n=e(n,t,s)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class gm extends dm{constructor(t,e,n){super(cm(e),um(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,s)=>{n.reset(t[s],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof pm?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(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}`)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const mm=(()=>Promise.resolve(null))(),_m=(()=>(class extends Vg{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new ki,this.form=new fm({},nm(t),sm(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){mm.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Jg(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){mm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),function(e,n){const s=e.indexOf(t);s>-1&&e.splice(s,1)}(this._directives)})}addFormGroup(t){mm.then(()=>{const e=this._findContainer(t.path),n=new fm({});(function(t,e){null==t&&em(e,"Cannot find control with"),t.validator=Fg.compose([t.validator,e.validator]),t.asyncValidator=Fg.composeAsync([t.asyncValidator,e.asyncValidator])})(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){mm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){mm.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,e=this._directives,this.form._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}))();class vm{static modelParentException(){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 ${Xg.formControlName}\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 ${Xg.ngModelWithFormGroup}`)}static formGroupNameException(){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 ${Xg.formGroupName}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Xg.ngModelGroup}`)}static missingNameException(){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: \n Example 2: ')}static modelGroupParentException(){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 ${Xg.formGroupName}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Xg.ngModelGroup}`)}static ngFormWarning(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")}}const ym=new Rt("NgFormSelectorWarning");class wm extends Vg{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Kg(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return nm(this._validators)}get asyncValidator(){return sm(this._asyncValidators)}_checkParentType(){}}const bm=(()=>{class t extends wm{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof _m||vm.modelGroupParentException()}}return t})(),Cm=(()=>Promise.resolve(null))(),xm=(()=>(class extends Lg{constructor(t,e,n,s){super(),this.control=new pm,this._registered=!1,this.update=new ki,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||em(t,"Value accessor was not provided as an array for form control with");let n=void 0,s=void 0,i=void 0;return e.forEach(e=>{e.constructor===Ng?n=e:function(t){return im.some(e=>t.constructor===e)}(e)?(s&&em(t,"More than one built-in value accessor matches form control with"),s=e):(i&&em(t,"More than one custom value accessor matches form control with"),i=e)}),i||s||n||(em(t,"No valid value accessor for form control with"),null)}(this,s)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!je(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Kg(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return nm(this._rawValidators)}get asyncValidator(){return sm(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Jg(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof bm)&&this._parent instanceof wm?vm.formGroupNameException():this._parent instanceof bm||this._parent instanceof _m||vm.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||vm.missingNameException()}_updateValue(t){Cm.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;Cm.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}))(),Sm=new Rt("NgModelWithFormControlWarning"),Em=(()=>(class{}))(),km=(()=>(class{group(t,e=null){const n=this._reduceControls(t);let s=null,i=null,r=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(s=null!=e.validators?e.validators:null,i=null!=e.asyncValidators?e.asyncValidators:null,r=null!=e.updateOn?e.updateOn:void 0):(s=null!=e.validator?e.validator:null,i=null!=e.asyncValidator?e.asyncValidator:null)),new fm(n,{asyncValidators:i,updateOn:r,validators:s})}control(t,e,n){return new pm(t,e,n)}array(t,e,n){const s=t.map(t=>this._createControl(t));return new gm(s,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof pm||t instanceof fm||t instanceof gm?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}))(),Tm=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:ym,useValue:e.warnOnDeprecatedNgFormSelector}]}}}return t})(),Om=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Sm,useValue:e.warnOnNgModelWithFormControl}]}}}return t})();var Im=Xn({encapsulation:2,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:0}.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:0}.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}"],data:{}});function Rm(t){return to(2,[Hr(402653184,1,{_contentWrapper:0}),(t()(),Lr(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),qr(null,0),(t()(),Lr(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Pm=Xn({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function Am(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,i=t.component;return"input"===e&&(s=!1!==Zs(t,5)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==Zs(t,5).onTouched()&&s),"compositionstart"===e&&(s=!1!==Zs(t,5)._compositionStart()&&s),"compositionend"===e&&(s=!1!==Zs(t,5)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(i.search=n)&&s),"ngModelChange"===e&&(i.searchChange.emit(n),s=!1!==i.filter()&&s),s},null,null)),ai(5,16384,null,0,Ng,[cn,sn,[2,Mg]],null,null),ui(1024,null,Pg,function(t){return[t]},[Ng]),ai(7,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(9,16384,null,0,jg,[[4,Lg]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,Zs(e,9).ngClassUntouched,Zs(e,9).ngClassTouched,Zs(e,9).ngClassPristine,Zs(e,9).ngClassDirty,Zs(e,9).ngClassValid,Zs(e,9).ngClassInvalid,Zs(e,9).ngClassPending)})}function Mm(t){return to(0,[(t()(),Lr(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.select(t.context.$implicit)&&s),s},null,null)),(t()(),Lr(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Nm(t){return to(0,[(t()(),Lr(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,Rm,Im)),ui(6144,null,tf,null,[nf]),ai(3,540672,null,0,Xp,[],{itemSize:[0,"itemSize"]},null),ui(1024,null,qp,Qp,[Xp]),ai(5,245760,[[4,4],[5,4],["viewport",4]],0,nf,[sn,En,Ji,[2,qp],[2,ng],Jp],null,null),(t()(),$r(16777216,[[2,2]],0,1,null,Mm)),ai(7,409600,null,0,rf,[An,Rn,xn,[1,nf],Ji],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===Zs(e,5).orientation,"horizontal"!==Zs(e,5).orientation)})}function Dm(t){return to(0,[(t()(),Lr(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function Vm(t){return to(0,[(t()(),Lr(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var s=!0;return"click"===e&&(s=!1!==t.component.cancelClose()&&s),s},null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var s=!0,i=t.component;return"click"===e&&(s=0!=(i.show=!i.show)&&s),s},null,null)),(t()(),Lr(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),$r(16777216,[[2,2]],null,1,null,Am)),ai(7,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),$r(16777216,[[2,2]],null,1,null,Nm)),ai(10,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),$r(0,[[2,2],["noItems",2]],null,0,null,Dm))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,Zs(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function $m(t){return to(0,[Hr(402653184,1,{reference:0}),Hr(402653184,2,{dropdown_tooltip:0}),Hr(402653184,3,{input:0}),Hr(402653184,4,{viewport:0}),Hr(402653184,5,{scroll_el:0}),(t()(),Lr(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var s=!0,i=t.component;return"keyup.enter"===e&&(s=!1!==i.toggleShow()&&s),"keydown.arrowup"===e&&(s=!1!==n.preventDefault()&&s),"keydown.arrowdown"===e&&(s=!1!==n.preventDefault()&&s),"keyup.arrowup"===e&&(s=!1!==(i.focus?i.change(-1):"")&&s),"keyup.arrowdown"===e&&(s=!1!==(i.focus?i.change(1):"")&&s),"focus"===e&&(s=0!=(i.focus=!0)&&s),"blur"===e&&(s=0!=(i.focus=!1)&&s),"window:resize"===e&&(s=!1!==i.resize()&&s),"window:click"===e&&(s=!1!==(i.show?i.close():"")&&s),s},null,null)),(t()(),Lr(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Lr(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var s=!0,i=t.component;return"showChange"===e&&(s=!1!==(i.show=n)&&s),"showChange"===e&&(s=!1!==i.updateScroll()&&s),"click"===e&&(s=!1!==i.toggleShow()&&s),s},null,null)),ai(8,737280,null,0,Xf,[sn,Qf,Uf,cn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Lr(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),Xr(10,null,["",""])),(t()(),Lr(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Lr(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Lr(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Lr(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(15,null,["",""])),(t()(),Lr(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),$r(0,[[2,2],["dropdown",2]],null,0,null,Vm))],function(t,e){t(e,8,0,e.component.show,Zs(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}const Lm="Checkbox",jm=(()=>(class{constructor(){this.klass="default"}toggle(){this.state=!this.state,this.onChange&&this.onChange(this.state)}writeValue(t){this.state=t}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouch=t}}))(),Um=hl,zm=(()=>{class t{constructor(){if(this.build=Um(),!t.init){const e=Um();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Lm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Lm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})(),Fm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}handleMouse(t){this.handleEvent(t)}handleTouch(t){this.handleEvent(t)}ngOnInit(){}ngAfterViewInit(){setTimeout(()=>{this.element&&this.element.nativeElement&&(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width)))})}ngOnDestroy(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}handleEvent(t){this.cancelled=!1;const e=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX,n=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:`${n-this.cached_box.top}px`,left:`${e-this.cached_box.left}px`},this.mouse_release_cancel=this.renderer.listen("window","mouseup",t=>this.handleRelease(t)),this.touch_release_cancel=this.renderer.listen("window","touchend",t=>this.handleRelease(t)),this.transitioning=!0,setTimeout(()=>{this.transitioning=!1,this.cancelled&&(this.show=!1)},350)}handleRelease(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)}}))(),Hm=(()=>(class{constructor(t,e){this.el=t,this.renderer=e,this.tapped=new ki,this.touchrelease=new ki,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}ngAfterViewInit(){this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",t=>this.handleHold(t)),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",t=>this.handleHold(t)))}ngOnDestroy(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}}remove(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)}handleHold(t){const e={x:window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=e,this.mouse_listener=this.renderer.listen(window,"mouseup",t=>this.handleRelease(t)),this.touch_listener=this.renderer.listen(window,"touchend",t=>this.handleRelease(t)),this.timer=setTimeout(()=>this.remove(),this.max_delay)}handleRelease(t){this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(()=>{const e=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX;window.TouchEvent&&TouchEvent,Math.sqrt(Math.pow(e-this.start.x,2)+2){this.tapped.emit(t),this.touchrelease.emit(t)},100)),this.start={x:-999,y:-999}},50)}}))(),Bm="Custom Events",Gm=hl,Wm=(()=>{class t{constructor(){if(this.build=Gm(),!t.init){const e=Gm();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Bm} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Bm} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var Ym=Xn({encapsulation:0,styles:["[_nghost-%COMP%]{position:relative;overflow:hidden}.event-feedback[_ngcontent-%COMP%]{position:absolute;border-radius:100%;background-color:rgba(0,0,0,.1);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;pointer-events:none}.event-feedback.show[_ngcontent-%COMP%]{-webkit-animation:.5s feedback;animation:.5s feedback;opacity:1}.event-feedback.hide[_ngcontent-%COMP%]{-webkit-animation:.5s fadeout;animation:.5s fadeout}.event-feedback.light[_ngcontent-%COMP%]{background-color:rgba(255,255,255,.1)}@-webkit-keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes feedback{0%{-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);opacity:0}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:1}}@-webkit-keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}@keyframes fadeout{0%{opacity:1}100%{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:0}}"],data:{}});function qm(t){return to(0,[qr(null,0),(t()(),Lr(1,0,null,null,0,"div",[],[[8,"className",0],[4,"top",null],[4,"left",null],[4,"height",null],[4,"width",null],[2,"show",null],[2,"hide",null]],null,null,null,null))],null,function(t,e){var n=e.component;t(e,1,0,"event-feedback"+(n.klass?" "+n.klass:""),n.position.top,n.position.left,n.size+"px",n.size+"px",n.show,!1===n.show)})}var Zm=Xn({encapsulation:0,styles:[".checkbox[_ngcontent-%COMP%]{display:flex;align-items:center}.box[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;margin:.25em;font-size:.8em;height:1.5em;width:1.5em;border-radius:4px;padding:0;border:2px solid #ccc;cursor:pointer;outline:0;transition:background-color .2s,border-color .2s}.box[_ngcontent-%COMP%]:hover{background-color:#ccc}.box[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function Qm(t){return to(0,[(t()(),Lr(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.toggle()&&s),s},null,null)),ai(1,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Xr(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Xm(t){return to(0,[(t()(),Lr(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Lr(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,2).handleTouch(n)&&s),"keyup.enter"===e&&(s=!1!==i.toggle()&&s),"tapped"===e&&(s=!1!==i.toggle()&&s),s},qm,Ym)),ai(2,4440064,null,0,Fm,[sn,cn],{center:[0,"center"]},null),ai(3,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,Qm)),ai(6,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}const Km="Buttons",Jm=(()=>(class{constructor(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new ki,this.id=`button-${Math.floor(999999*Math.random())}`}ngOnChanges(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()}ngAfterViewInit(){this.setClass(this.klass)}setClass(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))}setGroup(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")}setState(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")}tap(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))}writeValue(t){this.state=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouch=t}}))(),t_=hl,e_=(()=>{class t{constructor(){if(this.build=t_(),!t.init){const e=t_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${Km} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${Km} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();var n_=Xn({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function s_(t){return to(0,[(t()(),Lr(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,1).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,1).handleTouch(n)&&s),"tapped"===e&&(s=!1!==i.tap()&&s),s},qm,Ym)),ai(1,4440064,null,0,Fm,[sn,cn],null,null),ai(2,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),qr(0,0)],function(t,e){t(e,1,0)},null)}const i_=(()=>(class{constructor(t){this.sanitizer=t}transform(t,e="html"){switch(e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}}}))(),r_="Pipes",o_=hl,l_=(()=>{class t{constructor(){if(this.build=o_(),!t.init){const e=o_();t.init=!0;const n=e.isSame(this.build,"d")?`Today at ${this.build.format("h:mmA")}`:this.build.format("D MMM YYYY, h:mmA");!function(t,e,n="debug"){document.documentMode||/Edge/.test(navigator.userAgent)?console[n](`[ACA][LIB] ${r_} - ${t} | ${e}`):console[n](`%c[ACA]%c[LIB] %c${r_} - ${t} | ${e}`,"color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)")}(t.version,n)}}}return t.version="0.0.0-development",t.init=!1,t})();class a_{constructor(){this._timers={},this._intervals={},this._subscriptions={}}timeout(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(()=>{e(),this._timers[t]=null},n)}clearTimeout(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)}interval(t,e,n=300){if(!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(()=>e(),n)}clearInterval(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)}subscription(t,e){this.unsub(t),this._subscriptions[t]=e}unsub(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof d?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)}}class c_ extends a_{ngOnDestroy(){for(const t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(const t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(const t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)}}function u_(t,e,n,s){return new(n||(n=Promise))(function(i,r){function o(t){try{a(s.next(t))}catch(e){r(e)}}function l(t){try{a(s.throw(t))}catch(e){r(e)}}function a(t){t.done?i(t.value):new n(function(e){e(t.value)}).then(o,l)}a((s=s.apply(t,e||[])).next())})}class h_{}class d_{}class p_{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),s=n.toLowerCase(),i=t.slice(e+1).trim();this.maybeSetNormalizedName(n,s),this.headers.has(s)?this.headers.get(s).push(i):this.headers.set(s,[i])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const s=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(s,n),this.maybeSetNormalizedName(e,s))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof p_?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new p_;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof p_?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const s=("a"===t.op?this.headers.get(e):void 0)||[];s.push(...n),this.headers.set(e,s);break;case"d":const i=t.value;if(i){let t=this.headers.get(e);if(!t)return;0===(t=t.filter(t=>-1===i.indexOf(t))).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class f_{encodeKey(t){return g_(t)}encodeValue(t){return g_(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function g_(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class m_{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new f_,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const s=t.indexOf("="),[i,r]=-1==s?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,s)),e.decodeValue(t.slice(s+1))],o=n.get(i)||[];o.push(r),n.set(i,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).join("&")}clone(t){const e=new m_({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function __(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function v_(t){return"undefined"!=typeof Blob&&t instanceof Blob}function y_(t){return"undefined"!=typeof FormData&&t instanceof FormData}class w_{constructor(t,e,n,s){let i;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||s?(this.body=void 0!==n?n:null,i=s):i=n,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.params&&(this.params=i.params)),this.headers||(this.headers=new p_),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),l)),t.setParams&&(a=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),a)),new w_(e,n,i,{params:a,headers:l,reportProgress:o,responseType:s,withCredentials:r})}}const b_=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class C_{constructor(t,e=200,n="OK"){this.headers=t.headers||new p_,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class x_ extends C_{constructor(t={}){super(t),this.type=b_.ResponseHeader}clone(t={}){return new x_({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class S_ extends C_{constructor(t={}){super(t),this.type=b_.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new S_({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class E_ extends C_{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function k_(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}const T_=(()=>(class{constructor(t){this.handler=t}request(t,e,n={}){let s;if(t instanceof w_)s=t;else{let i=void 0;i=n.headers instanceof p_?n.headers:new p_(n.headers);let r=void 0;n.params&&(r=n.params instanceof m_?n.params:new m_({fromObject:n.params})),s=new w_(t,e,void 0!==n.body?n.body:null,{headers:i,params:r,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const i=Xl(s).pipe(ja(t=>this.handler.handle(t)));if(t instanceof w_||"events"===n.observe)return i;const r=i.pipe(oa(t=>t instanceof S_));switch(n.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return r.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return r.pipe(F(t=>t.body))}case"response":return r;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new m_).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,k_(n,e))}post(t,e,n={}){return this.request("POST",t,k_(n,e))}put(t,e,n={}){return this.request("PUT",t,k_(n,e))}}))();class O_{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const I_=new Rt("HTTP_INTERCEPTORS"),R_=(()=>(class{intercept(t,e){return e.handle(t)}}))(),P_=/^\)\]\}',?\n/;class A_{}const M_=(()=>(class{constructor(){}build(){return new XMLHttpRequest}}))(),N_=(()=>(class{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new b(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const s=t.serializeBody();let i=null;const r=()=>{if(null!==i)return i;const e=1223===n.status?204:n.status,s=n.statusText||"OK",r=new p_(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return i=new x_({headers:r,status:e,statusText:s,url:o})},o=()=>{let{headers:s,status:i,statusText:o,url:l}=r(),a=null;204!==i&&(a=void 0===n.response?n.responseText:n.response),0===i&&(i=a?200:0);let c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof a){const t=a;a=a.replace(P_,"");try{a=""!==a?JSON.parse(a):null}catch(u){a=t,c&&(c=!1,a={error:u,text:a})}}c?(e.next(new S_({body:a,headers:s,status:i,statusText:o,url:l||void 0})),e.complete()):e.error(new E_({error:a,headers:s,status:i,statusText:o,url:l||void 0}))},l=t=>{const{url:s}=r(),i=new E_({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:s||void 0});e.error(i)};let a=!1;const c=s=>{a||(e.next(r()),a=!0);let i={type:b_.DownloadProgress,loaded:s.loaded};s.lengthComputable&&(i.total=s.total),"text"===t.responseType&&n.responseText&&(i.partialText=n.responseText),e.next(i)},u=t=>{let n={type:b_.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",l),t.reportProgress&&(n.addEventListener("progress",c),null!==s&&n.upload&&n.upload.addEventListener("progress",u)),n.send(s),e.next({type:b_.Sent}),()=>{n.removeEventListener("error",l),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",c),null!==s&&n.upload&&n.upload.removeEventListener("progress",u)),n.abort()}})}}))(),D_=new Rt("XSRF_COOKIE_NAME"),V_=new Rt("XSRF_HEADER_NAME");class $_{}const L_=(()=>(class{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Il(t,this.cookieName),this.lastCookieString=t),this.lastToken}}))(),j_=(()=>(class{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const s=this.tokenService.getToken();return null===s||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,s)})),e.handle(t)}}))(),U_=(()=>(class{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(I_,[]);this.chain=t.reduceRight((t,e)=>new O_(t,e),this.backend)}return this.chain.handle(t)}}))(),z_=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:j_,useClass:R_}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:D_,useValue:e.cookieName}:[],e.headerName?{provide:V_,useValue:e.headerName}:[]]}}}return t})(),F_=(()=>(class{}))(),H_=(()=>{class t{constructor(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new Kl(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}init(){return u_(this,void 0,void 0,function*(){yield this.loadFromFile("api"),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete()})}get setup(){return this._setup}get app_name(){return this._app_name}isSetup(t){return this._is_setup_observer.subscribe(t)}log(t,e,n,s="debug",i=!1){if(window.debug||i){const i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...i,n):console[s](`%c[${this.app_name}]%c[${t}] %c${e}`,...i)}}get(t){const e=t.split(".");let n=null;return"session"===e[0]?(e.shift(),n=ul(e,this._settings.session)):"local"===e[0]?(e.shift(),n=ul(e,this._settings.local)):n=ul(e,this._settings.api)||ul(e,this._settings.session)||ul(e,this._settings.local),n}loadStore(t,e){if(e)for(let n=0;n5)return Promise.resolve();const s=`load|${t}|${e}`;return this._promises[s]||(this._promises[s]=new Promise((i,r)=>{this.http.get(e).subscribe(e=>{this._settings[t]=Object.assign({},this._settings[t]||{},e||{})},r=>{this.log("Settings",`Failed to load settings from "${e}"`),this._promises[s]=null,this.loadFromFile(t,e,++n).then(()=>i())},()=>i())})),this._promises[s]})}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),B_=["control","shift","alt","meta","os"],G_=(()=>{class t{constructor(){this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.last_down!==e&&(this.keydown_states[e]||(this.keydown_states[e]=new Kl(null),this.keydown_observers[e]=this.keydown_states[e].asObservable()),this.keydown_states[e].next(this.counter++),this.combo_end.indexOf(e)>=0&&t.preventDefault(),this.last_down=e)}),window.addEventListener("keyup",t=>{const e=this.mapKey((t.code||"").toLowerCase());this.keydown_states[e].next(null),this.last_down===e&&(this.last_down=null)})}listen(t,e){const n=(t=t instanceof Array?t:t.split("+")).map(t=>this.mapKey(t.toLowerCase()));if(n.length>0&&this.validCombination(n)){this.registered_combos.push(n);const t=n[n.length-1];return this.keydown_states[t]||(this.keydown_states[t]=new Kl(null),this.keydown_observers[t]=this.keydown_states[t].asObservable()),this.updateCombinationEndList(),this.keydown_observers[t].subscribe(t=>{if(t){const t=[];if(n.length>1){for(const e of n){const n=this.keydown_states[e];t.push(n&&n.getValue()||-1)}for(let e=0;et[e+1])return}e()}})}return null}mapKey(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t}updateCombinationEndList(){for(const t of this.registered_combos)this.combo_end.push(t[t.length-1]);this.combo_end=function(t,e=""){return[].filter((t,n,s)=>s.indexOf(s.find(e?n=>n[e]===t[e]:e=>e===t))===n)}()}validCombination(t){let e=0;for(const n of t)B_.indexOf(n)<0&&e++;return e>0}}return t.ngInjectableDef=mt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),W_=[],Y_=(()=>{class t extends a_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=cl(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let i;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>i=t,t=>{s(t),delete this._promises[n]},()=>{t(i),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}repositories(){const t="repositories";return this._promises[t]||(this._promises[t]=new Promise((e,n)=>{let s;this.http.get(`${this.api_route}/repositories`).subscribe(t=>s=t,e=>{n(e),delete this._promises[t]},()=>{e(s),this.timeout(t,()=>delete this._promises[t],1e3)})})),this._promises[t]}commits(t){const e=`commits|${cl(t)}`;return this._promises[e]||(this._promises[e]=new Promise((t,n)=>{let s;this.http.get(`${this.api_route}/repositories_commits`).subscribe(t=>s=t,t=>{n(t),delete this._promises[e]},()=>{t(s),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}versions(t){const e=`versions|${t}`;return this._promises[e]||(this._promises[e]=new Promise((n,s)=>{const i=`${this.api_route}/${encodeURIComponent(t)}`;let r;this.http.get(i).subscribe(t=>r=t,t=>{s(t),delete this._promises[e]},()=>{n(r),this.timeout(e,()=>delete this._promises[e],1e3)})})),this._promises[e]}driverCommits(t,e){const n=cl(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const i=`${this.api_route}/${encodeURIComponent(t)}/commits`;let r;this.http.get(i).subscribe(t=>r=t,t=>{n(t),delete this._promises[s]},()=>{e(r),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}build(t){const e=cl(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{this.http.post(`${this.api_route}`,e).subscribe(t=>null,t=>{s(t),delete this._promises[n]},()=>{t(),delete this._promises[n]})})),this._promises[n]}clean(t,e){const n=cl(e),s=`clean|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((t,e)=>{this.http.delete(`${this.api_route}${n?"?"+n:""}`).subscribe(t=>null,t=>{e(t),delete this._promises[s]},()=>{t(),delete this._promises[s]})})),this._promises[s]}get api_route(){return this.parent?`${this.parent.endpoint}/build`:"/build"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),q_=(()=>{class t extends a_{constructor(t){super(),this.http=t,this._promises={}}query(t){const e=cl(t),n=`query|${e}`;return this._promises[n]||(this._promises[n]=new Promise((t,s)=>{let i;this.http.get(`${this.api_route}${e?"?"+e:""}`).subscribe(t=>i=t,t=>{s(t),delete this._promises[n]},()=>{t(i),this.timeout(n,()=>delete this._promises[n],1e3)})})),this._promises[n]}specCommits(t,e){const n=cl(e),s=`commits|${t}|${n}`;return this._promises[s]||(this._promises[s]=new Promise((e,n)=>{const i=`${this.api_route}/${encodeURIComponent(t)}/commits`;let r;this.http.get(i).subscribe(t=>r=t,t=>{n(t),delete this._promises[s]},()=>{e(r),this.timeout(s,()=>delete this._promises[s],1e3)})})),this._promises[s]}run(t){for(const s in t)null==t[s]&&delete t[s];const e=cl(t),n=`build|${e}`;return this._promises[n]||(this._promises[n]=new Promise((s,i)=>{let r;this.http.post(`${this.api_route}${e?"?"+e:""}`,t,{responseType:"text"}).subscribe(t=>r=t,t=>{i(t),delete this._promises[n]},()=>{s(r),delete this._promises[n]})})),this._promises[n]}get api_route(){return this.parent?`${this.parent.endpoint}/test`:"/test"}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(T_))},token:t,providedIn:"root"}),t})(),Z_=new b(v);class Q_{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new X_(t,this.delay,this.scheduler))}}class X_ extends g{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,s=t.scheduler,i=t.destination;for(;n.length>0&&n[0].time-s.now()<=0;)n.shift().notification.observe(i);if(n.length>0){const e=Math.max(0,n[0].time-s.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(X_.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new K_(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Dp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Dp.createComplete()),this.unsubscribe()}}class K_{constructor(t,e){this.time=t,this.notification=e}}const J_="Service workers are disabled or not supported by this browser";class tv{constructor(t){if(this.serviceWorker=t,t){const e=np(t,"controllerchange").pipe(F(()=>t.controller)),n=Na(ia(()=>Xl(t.controller)),e);this.worker=n.pipe(oa(t=>!!t)),this.registration=this.worker.pipe(Pa(()=>t.getRegistration()));const s=np(t,"message").pipe(F(t=>t.data)).pipe(oa(t=>t&&t.type)).pipe(rt(new T));s.connect(),this.events=s}else this.worker=this.events=this.registration=(e=J_,ia(()=>Ap(new Error(e))));var e}postMessage(t,e){return this.worker.pipe(Ea(1),fa(n=>{n.postMessage(Object.assign({action:t},e))})).toPromise().then(()=>void 0)}postMessageWithStatus(t,e,n){const s=this.waitForStatus(n),i=this.postMessage(t,e);return Promise.all([s,i]).then(()=>void 0)}generateNonce(){return Math.round(1e7*Math.random())}eventsOfType(t){return this.events.pipe(oa(e=>e.type===t))}nextEventOfType(t){return this.eventsOfType(t).pipe(Ea(1))}waitForStatus(t){return this.eventsOfType("STATUS").pipe(oa(e=>e.nonce===t),Ea(1),F(t=>{if(!t.status)throw new Error(t.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}}const ev=(()=>(class{constructor(t){if(this.sw=t,this.subscriptionChanges=new T,!t.isEnabled)return this.messages=Z_,this.notificationClicks=Z_,void(this.subscription=Z_);this.messages=this.sw.eventsOfType("PUSH").pipe(F(t=>t.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(F(t=>t.data)),this.pushManager=this.sw.registration.pipe(F(t=>t.pushManager));const e=this.pushManager.pipe(Pa(t=>t.getSubscription()));this.subscription=K(e,this.subscriptionChanges)}get isEnabled(){return this.sw.isEnabled}requestSubscription(t){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const e={userVisibleOnly:!0};let n=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),s=new Uint8Array(new ArrayBuffer(n.length));for(let i=0;it.subscribe(e)),Ea(1)).toPromise().then(t=>(this.subscriptionChanges.next(t),t))}unsubscribe(){return this.sw.isEnabled?this.subscription.pipe(Ea(1),Pa(t=>{if(null===t)throw new Error("Not subscribed to push notifications.");return t.unsubscribe().then(t=>{if(!t)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(J_))}decodeBase64(t){return atob(t)}}))(),nv=(()=>(class{constructor(t){if(this.sw=t,!t.isEnabled)return this.available=Z_,void(this.activated=Z_);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED")}get isEnabled(){return this.sw.isEnabled}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:t},t)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(J_));const t=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:t},t)}}))();class sv{}const iv=new Rt("NGSW_REGISTER_SCRIPT");function rv(t,e,n,s){return()=>{if(!(Gl(s)&&"serviceWorker"in navigator&&!1!==n.enabled))return;let i;if(navigator.serviceWorker.addEventListener("controllerchange",()=>{null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),"function"==typeof n.registrationStrategy)i=n.registrationStrategy();else{const[e,...s]=(n.registrationStrategy||"registerWhenStable").split(":");switch(e){case"registerImmediately":i=Xl(null);break;case"registerWithDelay":i=Xl(null).pipe(function(t,e=vp){var n;const s=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new Q_(s,e))}(+s[0]||0));break;case"registerWhenStable":i=t.get(vr).isStable.pipe(oa(t=>t));break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${n.registrationStrategy}`)}}i.pipe(Ea(1)).subscribe(()=>navigator.serviceWorker.register(e,{scope:n.scope}))}}function ov(t,e){return new tv(Gl(e)&&!1!==t.enabled?navigator.serviceWorker:void 0)}const lv=(()=>{class t{static register(e,n={}){return{ngModule:t,providers:[{provide:iv,useValue:e},{provide:sv,useValue:n},{provide:tv,useFactory:ov,deps:[sv,Di]},{provide:Ii,useFactory:rv,deps:[Dt,iv,sv,Di],multi:!0}]}}}return t})(),av="Google Analytics";function cv(t,e,n,s="debug",i){if(window.debug){const r=["color: #0288D1",`color:${i||"#009688"}`,"color:rgba(0,0,0,0.87)"];n?uv()?console[s](`%c[${av}]%c[${t}] %c${e}`,...r,n):console[s](`[${av}][${t}] ${e}`,n):uv()?console[s](`%c[${av}]%c[${t}] %c${e}`,...r):console[s](`[${av}][${t}] ${e}`)}}function uv(){return!(document.documentMode||/Edge/.test(navigator.userAgent))}const hv=(()=>{class t{constructor(t){var e,n,s,i,r;this.title=t,this.enabled=!0,this.app_name="GA_APP",this.timers={},e=window,n=document,s="script",e.GoogleAnalyticsObject="ga",e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,i=n.createElement(s),r=n.getElementsByTagName(s)[0],i.async=1,i.src="https://www.google-analytics.com/analytics.js",r.parentNode.insertBefore(i,r),cv("Service","Injected Google Analytics into page"),this.service=window.ga}load(t){if(!this.enabled)throw new Error("Google Analytics needs to be enabled before being initialised");if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.service("create",t,"auto"),this.service("send","pageview")}setUser(t){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`user|${t}`,()=>{cv("Service",`Set user ID: ${t}`),this.service("set","userId",t),this.event("authentication","user-id available")},100)}event(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`event|${t}|${e}|${n}|${s}`,()=>{cv("Service",`Event: ${t}, ${e}${n?", "+n:""}${s?", "+s:""}`),this.service("send","event",`${this.app_prefix?this.app_prefix+"_":""}${t}`,e,n,s)},100)}screen(t,e){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");t&&this.enabled&&this.timeout(`event|${t}|${e||this.app_name}`,()=>{cv("Service",`Screen: ${t}${e?", "+e:""}`),this.service("send","screenview",{appName:e||this.app_name,screenName:t})},100)}page(t,e=!1){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&(this.last_route=t||"/",this.timeout(`page|${t}`,()=>{cv("Service",`Page: ${t}`),this.service("send","pageview",`${e?location.origin:""}${t}`)},100))}timing(t,e,n,s){if(!this.service)throw new Error("Google Analytics hasn't been installed on this page");this.enabled&&this.timeout(`page|${t}|${e}|${n}|${s}`,()=>{cv("Service",`Timing: ${t}, ${e}, ${n}${s?", "+s:""}`),this.service("send","timing",t,e,n,s)},100)}timeout(t,e,n=300){this.timers[t]&&(clearTimeout(this.timers[t]),this.timers[t]=null),this.timers[t]=setTimeout(()=>{e instanceof Function&&e(),this.timers[t]=null},n)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(tu))},token:t,providedIn:"root"}),t})(),dv=(()=>{class t extends a_{constructor(t,e,n,s,i,r,o,l,a){super(),this._title=t,this._router=e,this._version=n,this._settings=s,this._overlay=i,this._analytics=r,this._hotkeys=o,this._build=l,this._test=a,this._route_trail=[],this._subjects={},this._observers={},this.set("system",null),this._build.parent=this._test.parent=this,this.init(),this.registerOverlays()}get Overlay(){return this._overlay}get Analytics(){return this._analytics}get Hotkeys(){return this._hotkeys}get Build(){return this._build}get Test(){return this._test}setting(t){return this._settings.get(t)}get name(){return this._settings.app_name}set title(t){const e=this.setting("app.title");this._title.setTitle(`${t?t+" | ":""}${e}`)}get title(){return this._title.getTitle()}get endpoint(){return`${location.origin}`}get engine_endpoint(){return"/control/api/"}get is_ready(){return this._settings.setup}notify(t,e,n,s){this._overlay.notify(`
${e}
`,n,s,t)}notifySuccess(t,e,n){this.notify("success",t,e,n)}notifyError(t,e,n){this.notify("error",t,e,n)}notifyInfo(t,e,n){this.notify("info",t,e,n)}log(t,e,n,s="debug",i=!1){this._settings.log(t,e,n,s,i)}navigate(t,e){const n=t instanceof Array?[...t]:[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})}navigateBack(){if(this._route_trail&&this._route_trail.length>0){const t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])}get(t){return this._subjects[t]&&this._subjects[t]instanceof Kl?this._subjects[t].getValue():null}listen(t,e){return this._observers[t]?this._observers[t].subscribe(e):null}set(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new Kl(e),this._observers[t]=this._subjects[t].asObservable())}init(){if(!this._settings.setup)return this.timeout("init",()=>this.init());this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(t=>{this.log("CACHE",`Update available: ${`current version is ${t.current.hash}`} ${`available version is ${t.available.hash}`}`),this.notifyInfo("Newer version of the app is available","Refresh",()=>location.reload())}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],()=>{this.navigate("bootstrap",{clear:!0})})}registerOverlays(){if(W_)for(const t of W_)this._overlay.register(t.id,t.config)}}return t.ngInjectableDef=mt({factory:function(){return new t(Ot(tu),Ot(wd),Ot(nv),Ot(H_),Ot(Qf),Ot(hv),Ot(G_),Ot(Y_),Ot(q_))},token:t,providedIn:"root"}),t})();class pv extends c_{constructor(t,e){super(),this.service=t,this.route=e,this.commit_list=[],this.spec_list=[],this.spec_commit_list=[]}ngOnInit(){this.subscription("route.query",this.route.queryParamMap.subscribe(t=>{t.has("filter")&&(console.log("Filter:",t.get("filter")),this.timeout("filter_update",()=>{this.service.set("TEST.filter",t.get("filter")),console.log("Update filter")}))})),this.subscription("route.params",this.route.paramMap.subscribe(t=>{t.has("repo")&&(this.repo=t.get("repo"),this.timeout("repo_update",()=>this.service.set("TEST.repository",this.repo))),t.has("driver")?(this.driver=t.get("driver"),this.timeout("driver_update",()=>this.service.set("TEST.driver",this.driver)),this.test_results="",this.commit=null,this.updateCommits(),this.spec=null,this.spec_commit=null,this.updateSpecs(),this.show=!1):this.timeout("driver_update",()=>this.service.set("TEST.driver",""))})),this.updateCommits(),this.updateSpecs(),this.updateSpecCommits(),this.interval("update",()=>{this.updateCommits(),this.updateSpecs(),this.updateSpecCommits()},6e4)}updateCommits(){this.driver&&(this.loading_commits=!0,this.service.Build.driverCommits(this.driver,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:hl(t.date).format("DD MMM YYYY h:mm A")})),this.commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecs(){this.driver&&(this.loading_commits=!0,this.service.Test.query({repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_list=(t||[]).map(t=>({id:t,name:t})),this.spec||(this.spec=this.spec_list.reduce((t,e)=>t&&this.driver.localeCompare(t.id)>this.driver.localeCompare(e.id)?t:e,null),this.updateSpecCommits()),this.loading_commits=!1},t=>this.loading_commits=!1))}updateSpecCommits(){this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(t=>{this.spec_commit_list=(t||[]).map(t=>({id:t.commit,name:t.commit,author:t.author,date:hl(t.date).format("DD MMM YYYY h:mm A")})),this.spec_commit_list.unshift({id:null,name:"Latest Commit"}),this.loading_commits=!1},t=>this.loading_commits=!1))}test(){if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";const t=t=>{t instanceof Object&&(t=t.error),this.test_results=this.styleResults(t||"");const e=this.service.get("TEST.results")||{},n=t.indexOf("exited with 0")>=0;e[`${this.repo}|${this.driver}`]=n?"passed":"failed",this.service.set("TEST.results",e),this.testing=!1,this.timeout("scroll",()=>this.body.nativeElement.scrollTo(0,this.body.nativeElement.scrollHeight),10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(t,t)}}styleResults(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')}}var fv=Xn({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function gv(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Spec Commit:"])),(t()(),Lr(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.spec_commit=n)&&s),s},$m,Pm)),ai(5,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(7,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(9,16384,null,0,jg,[[4,Lg]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,Zs(e,9).ngClassUntouched,Zs(e,9).ngClassTouched,Zs(e,9).ngClassPristine,Zs(e,9).ngClassDirty,Zs(e,9).ngClassValid,Zs(e,9).ngClassInvalid,Zs(e,9).ngClassPending)})}function mv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),Qr(1,2)],null,function(t,e){var n=e.component,s=qn(e,0,0,t(e,1,0,Zs(e.parent.parent,0),n.test_results,"html"));t(e,0,0,s)})}function _v(t){return to(0,[(t()(),Lr(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Lr(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Repository:"])),(t()(),Lr(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Xr(6,null,["",""])),(t()(),Lr(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Driver:"])),(t()(),Lr(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),Xr(11,null,["",""])),(t()(),Lr(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Commit:"])),(t()(),Lr(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.commit=n)&&s),s},$m,Pm)),ai(17,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(19,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(21,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Lr(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),Xr(-1,null,["Spec:"])),(t()(),Lr(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Lr(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,i=t.component;return"ngModelChange"===e&&(s=!1!==(i.spec=n)&&s),"ngModelChange"===e&&(s=!1!==i.updateSpecCommits()&&s),s},$m,Pm)),ai(27,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(29,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(31,16384,null,0,jg,[[4,Lg]],null,null),(t()(),$r(16777216,null,null,1,null,gv)),ai(33,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Lr(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Lr(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Lr(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.force=n)&&s),s},Xm,Zm)),ai(38,49152,null,0,jm,[],{klass:[0,"klass"],label:[1,"label"]},null),ui(1024,null,Pg,function(t){return[t]},[jm]),ai(40,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(42,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Lr(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0;return"ngModelChange"===e&&(s=!1!==(t.component.debug=n)&&s),s},Xm,Zm)),ai(45,49152,null,0,jm,[],{klass:[0,"klass"],label:[1,"label"]},null),ui(1024,null,Pg,function(t){return[t]},[jm]),ai(47,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(49,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Lr(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Lr(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.test()&&s),s},s_,n_)),ui(5120,null,Pg,function(t){return[t]},[Jm]),ai(55,4767744,null,0,Jm,[sn,cn],null,{tapped:"tapped"}),ai(56,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Xr(-1,0,["Run!"])),(t()(),Lr(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),Xr(59,null,[" "," "])),(t()(),$r(16777216,null,null,1,null,mv)),ai(61,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null),(t()(),Lr(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,63).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,63).handleTouch(n)&&s),"tapped"===e&&(s=0!=(i.show=!i.show)&&s),s},qm,Ym)),ai(63,4440064,null,0,Fm,[sn,cn],{klass:[0,"klass"],center:[1,"center"]},null),ai(64,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,Zs(e,21).ngClassUntouched,Zs(e,21).ngClassTouched,Zs(e,21).ngClassPristine,Zs(e,21).ngClassDirty,Zs(e,21).ngClassValid,Zs(e,21).ngClassInvalid,Zs(e,21).ngClassPending),t(e,26,0,Zs(e,31).ngClassUntouched,Zs(e,31).ngClassTouched,Zs(e,31).ngClassPristine,Zs(e,31).ngClassDirty,Zs(e,31).ngClassValid,Zs(e,31).ngClassInvalid,Zs(e,31).ngClassPending),t(e,37,0,Zs(e,42).ngClassUntouched,Zs(e,42).ngClassTouched,Zs(e,42).ngClassPristine,Zs(e,42).ngClassDirty,Zs(e,42).ngClassValid,Zs(e,42).ngClassInvalid,Zs(e,42).ngClassPending),t(e,44,0,Zs(e,49).ngClassUntouched,Zs(e,49).ngClassTouched,Zs(e,49).ngClassPristine,Zs(e,49).ngClassDirty,Zs(e,49).ngClassValid,Zs(e,49).ngClassInvalid,Zs(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_down":"keyboard_arrow_up")})}function vv(t){return to(0,[(t()(),Lr(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["arrow_back"])),(t()(),Lr(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(-1,null,["Select a driver from the sidebar"]))],null,null)}function yv(t){return to(0,[ci(0,i_,[Fc]),Hr(671088640,1,{body:0}),(t()(),Lr(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,_v)),ai(4,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),$r(0,[["select",2]],null,0,null,vv))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,Zs(e,5))},null)}function wv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"app-workspace",[],null,null,null,yv,fv)),ai(1,245760,null,0,pv,[dv,ch],null,null)],function(t,e){t(e,1,0)},null)}var bv=Ls("app-workspace",pv,wv,{},{},[]);class Cv{constructor(){this.menu=!0,this.menuChange=new ki}toggleMenu(){this.menu=!this.menu,this.menuChange.emit(this.menu)}}var xv=Xn({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function Sv(t){return to(0,[(t()(),Lr(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var s=!0,i=t.component;return"mousedown"===e&&(s=!1!==Zs(t,2).handleMouse(n)&&s),"touchstart"===e&&(s=!1!==Zs(t,2).handleTouch(n)&&s),"tapped"===e&&(s=!1!==i.toggleMenu()&&s),s},qm,Ym)),ai(2,4440064,null,0,Fm,[sn,cn],{klass:[0,"klass"]},null),ai(3,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["menu"])),(t()(),Lr(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Lr(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Lr(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),Xr(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}class Ev{transform(t){if(t.indexOf("/")>=0){const e=t.split("/");return e.splice(0,1),`
${e.map(t=>`
${t}
`).join('
keyboard_arrow_right
')}
`}return t}}class kv extends c_{constructor(t){super(),this.service=t,this.repository_list=[],this.status={}}ngOnInit(){this.service.set("TEST.repository",""),this.service.set("TEST.filter",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",()=>this.updateRepositoryList(),6e4),this.subscription("test_results",this.service.listen("TEST.filter",t=>{console.log("Filter:",t),this.search_str=t||"",this.filter(this.search_str)})),this.subscription("test_results",this.service.listen("TEST.results",t=>{this.status=t||{}})),this.subscription("repository",this.service.listen("TEST.repository",t=>{t&&(this.repo={id:t,name:t},this.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",t=>{this.driver=t}))}setRepository(t){this.service.navigate([t],{filter:this.search_str}),this.search_str="",this.updateDriverList()}setDriver(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t],{filter:this.search_str})}filter(t){this.filtered_list=(this.driver_list||[]).filter(e=>e.toLowerCase().indexOf(t.toLowerCase())>=0)}updateDriverList(){this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(t=>{this.driver_list=t||[],this.filter(this.search_str),this.loading=!1},t=>this.loading=!1)}updateRepositoryList(){this.service.Build.repositories().then(t=>{this.repository_list=(t||[]).map(t=>({id:t,name:t})),this.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),this.updateDriverList()})}}var Tv=Xn({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function Ov(t){return to(0,[(t()(),Lr(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var s=!0;return"tapped"===e&&(s=!1!==t.component.setDriver(t.context.$implicit)&&s),s},null,null)),ai(1,4341760,null,0,Hm,[sn,cn],null,{tapped:"tapped"}),(t()(),Lr(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Lr(3,0,null,null,1,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null)),Qr(4,1)],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]);var s=qn(e,3,0,t(e,4,0,Zs(e.parent,0),e.context.$implicit));t(e,3,0,s)})}function Iv(t){return to(0,[(t()(),Lr(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(3,null,["",""])),(t()(),Lr(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),Xr(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function Rv(t){return to(0,[ci(0,Ev,[]),(t()(),Lr(1,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Lr(3,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var s=!0,i=t.component;return"ngModelChange"===e&&(s=!1!==(i.repo=n)&&s),"ngModelChange"===e&&(s=!1!==i.setRepository(n.id)&&s),s},$m,Pm)),ai(4,4767744,null,0,Qd,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),ui(1024,null,Pg,function(t){return[t]},[Qd]),ai(6,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(8,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(9,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Lr(10,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Lr(11,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),Xr(-1,null,["search"])),(t()(),Lr(13,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var s=!0,i=t.component;return"input"===e&&(s=!1!==Zs(t,14)._handleInput(n.target.value)&&s),"blur"===e&&(s=!1!==Zs(t,14).onTouched()&&s),"compositionstart"===e&&(s=!1!==Zs(t,14)._compositionStart()&&s),"compositionend"===e&&(s=!1!==Zs(t,14)._compositionEnd(n.target.value)&&s),"ngModelChange"===e&&(s=!1!==(i.search_str=n)&&s),"ngModelChange"===e&&(s=!1!==i.filter(n)&&s),s},null,null)),ai(14,16384,null,0,Ng,[cn,sn,[2,Mg]],null,null),ui(1024,null,Pg,function(t){return[t]},[Ng]),ai(16,671744,null,0,xm,[[8,null],[8,null],[8,null],[6,Pg]],{model:[0,"model"]},{update:"ngModelChange"}),ui(2048,null,Lg,null,[xm]),ai(18,16384,null,0,jg,[[4,Lg]],null,null),(t()(),Lr(19,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),$r(16777216,null,null,1,null,Ov)),ai(21,278528,null,0,Al,[An,Rn,xn],{ngForOf:[0,"ngForOf"]},null),(t()(),$r(16777216,null,null,1,null,Iv)),ai(23,16384,null,0,Nl,[An,Rn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,4,0,"simple",n.repository_list||Ss,"ACA Drivers"),t(e,6,0,n.repo),t(e,16,0,n.search_str),t(e,21,0,n.filtered_list),t(e,23,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,3,0,Zs(e,8).ngClassUntouched,Zs(e,8).ngClassTouched,Zs(e,8).ngClassPristine,Zs(e,8).ngClassDirty,Zs(e,8).ngClassValid,Zs(e,8).ngClassInvalid,Zs(e,8).ngClassPending),t(e,13,0,Zs(e,18).ngClassUntouched,Zs(e,18).ngClassTouched,Zs(e,18).ngClassPristine,Zs(e,18).ngClassDirty,Zs(e,18).ngClassValid,Zs(e,18).ngClassInvalid,Zs(e,18).ngClassPending)})}var Pv=Xn({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:20em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}.formatted-driver-name{display:flex;align-items:center}.formatted-driver-name .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:1.5em}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:28em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Av(t){return to(0,[(t()(),Lr(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Lr(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Lr(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var s=!0;return"menuChange"===e&&(s=!1!==(t.component.show_menu=n)&&s),s},Sv,xv)),ai(3,49152,null,0,Cv,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Lr(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Lr(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Lr(6,0,null,null,1,"sidebar",[],null,null,null,Rv,Tv)),ai(7,245760,null,0,kv,[dv],null,null),(t()(),Lr(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Lr(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),ai(10,212992,null,0,xd,[Cd,An,Xe,[8,null],En],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function Mv(t){return to(0,[(t()(),Lr(0,0,null,null,1,"app-root",[],null,null,null,Av,Pv)),ai(1,49152,null,0,pl,[],null,null)],null,null)}var Nv=Ls("app-root",pl,Mv,{},{},[]);class Dv{}class Vv{}var $v=ol(dl,[pl],function(t){return function(t){const e={},n=[];let s=!1;for(let i=0;i(t[e.name]=e.token,t),{}))),()=>lc),Fd(e),rv(n,s,i,r)];var o},[[2,pr],zd,Dt,iv,sv,Di]),Is(512,Ri,Ri,[[2,Ii]]),Is(131584,vr,vr,[Ji,$i,Dt,ie,Xe,Ri]),Is(1073742336,Vr,Vr,[vr]),Is(1073742336,Kc,Kc,[[3,Kc]]),Is(1024,Pd,$d,[[3,wd]]),Is(512,zu,Fu,[]),Is(512,Cd,Cd,[]),Is(256,Rd,{useHash:!0},[]),Is(1024,ml,Vd,[fl,[2,_l],Rd]),Is(512,vl,vl,[ml,fl]),Is(512,Hi,Hi,[]),Is(512,Oi,Cr,[Hi,[2,wr]]),Is(1024,pd,function(){return[[{path:"",component:pv},{path:":repo",component:pv},{path:":repo/:driver",component:pv}]]},[]),Is(1024,wd,jd,[vr,zu,Cd,vl,Dt,Oi,Hi,pd,Rd,[2,gd],[2,hd]]),Is(1073742336,Nd,Nd,[[2,Pd],[2,wd]]),Is(1073742336,Dv,Dv,[]),Is(1073742336,lv,lv,[]),Is(1073742336,Em,Em,[]),Is(1073742336,Tm,Tm,[]),Is(1073742336,Om,Om,[]),Is(1073742336,Wm,Wm,[]),Is(1073742336,e_,e_,[]),Is(1073742336,zm,zm,[]),Is(1073742336,sg,sg,[]),Is(1073742336,gf,gf,[]),Is(1073742336,Fp,Fp,[]),Is(1073742336,of,of,[]),Is(1073742336,Hf,Hf,[]),Is(1073742336,tg,tg,[]),Is(1073742336,l_,l_,[]),Is(1073742336,Kd,Kd,[]),Is(1073742336,Vv,Vv,[]),Is(1073742336,z_,z_,[]),Is(1073742336,F_,F_,[]),Is(1073742336,dl,dl,[]),Is(256,Ge,!0,[]),Is(256,D_,"XSRF-TOKEN",[]),Is(256,V_,"X-XSRF-TOKEN",[])])});(function(){if(oe)throw new Error("Cannot enable prod mode after platform setup.");re=!1})(),Qc().bootstrapModuleFactory($v).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file diff --git a/www/main-es5.72cbbae2b0ff73724475.js b/www/main-es5.72cbbae2b0ff73724475.js deleted file mode 100644 index b512f256295..00000000000 --- a/www/main-es5.72cbbae2b0ff73724475.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},Wgwc:function(t,e,n){t.exports=function(){"use strict";var t="millisecond",e="second",n="minute",r="hour",o="day",i="week",s="month",a="quarter",l="year",u=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,c=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},p={s:h,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+h(r,2,"0")+":"+h(o,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,s),o=e-r<0,i=t.clone().add(n+(o?-1:1),s);return Number(-(n+(e-r)/(o?r-i:i-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(u){return{M:s,y:l,w:i,d:o,h:r,m:n,s:e,ms:t,Q:a}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},d={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},f="en",g={};g[f]=d;var v=function(t){return t instanceof b},y=function(t,e,n){var r;if(!t)return null;if("string"==typeof t)g[t]&&(r=t),e&&(g[t]=e,r=t);else{var o=t.name;g[o]=t,r=o}return n||(f=r),r},m=function(t,e,n){if(v(t))return t.clone();var r=e?"string"==typeof e?{format:e,pl:n}:e:{};return r.date=t,new b(r)},_=p;_.l=y,_.i=v,_.w=function(t,e){return m(t,{locale:e.$L,utc:e.$u})};var b=function(){function h(t){this.$L=this.$L||y(t.locale,null,!0)||f,this.parse(t)}var p=h.prototype;return p.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(_.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(u);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},p.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},p.$utils=function(){return _},p.isValid=function(){return!("Invalid Date"===this.$d.toString())},p.isSame=function(t,e){var n=m(t);return this.startOf(e)<=n&&n<=this.endOf(e)},p.isAfter=function(t,e){return m(t)=0;a--)(o=t[a])&&(s=(i<3?o(s):i>3?o(e,n,s):o(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}function a(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function l(t,e,n,r){return new(n||(n=Promise))(function(o,i){function s(t){try{l(r.next(t))}catch(e){i(e)}}function a(t){try{l(r.throw(t))}catch(e){i(e)}}function l(t){t.done?o(t.value):new n(function(e){e(t.value)}).then(s,a)}l((r=r.apply(t,e||[])).next())})}function u(t,e){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,r=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function h(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(a){o={error:a}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function p(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(X);function st(t){return t}function at(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),rt(st,t)}function lt(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof o&&(n=t.pop()),null===r&&1===t.length&&t[0]instanceof R?t[0]:at(n)(et(t,r))}function ut(){return function(t){return t.lift(new ct(t))}}var ct=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var r=new ht(t,n),o=e.subscribe(r);return r.closed||(r.connection=n.connect()),o},t}(),ht=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},e}(E),pt=function(t){function e(e,n){var r=t.call(this)||this;return r.source=e,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return o(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 m).add(this.source.subscribe(new ft(this.getSubject(),this))),t.closed?(this._connection=null,t=m.EMPTY):this._connection=t),t},e.prototype.refCount=function(){return ut()(this)},e}(R).prototype,dt={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:pt._subscribe},_isComplete:{value:pt._isComplete,writable:!0},getSubject:{value:pt.getSubject},connect:{value:pt.connect},refCount:{value:pt.refCount}},ft=function(t){function e(e,n){var r=t.call(this,e)||this;return r.connectable=n,r}return o(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}(j);function gt(t,e){return function(n){var r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new vt(r,e));var o=Object.create(n,dt);return o.source=n,o.subjectFactory=r,o}}var vt=function(){function t(t,e){this.subjectFactory=t,this.selector=e}return t.prototype.call=function(t,e){var n=this.selector,r=this.subjectFactory(),o=n(r).subscribe(t);return o.add(e.subscribe(r)),o},t}();function yt(){return new V}var mt="__parameters__";function _t(t,e,n){var r=function(t){return function(){for(var e=[],n=0;n ");else if("object"==typeof e){var i=[];for(var s in e)if(e.hasOwnProperty(s)){var a=e[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):Tt(a)))}o="{"+i.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+o+"]: "+t.replace(Xt,"\n ")}function ne(t,e){return new Error(ee(t,e,"StaticInjectorError"))}var re="ngDebugContext",oe="ngOriginalError",ie="ngErrorLogger",se=new Ut("AnalyzeForEntryComponents"),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({}),le=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt)}();function ue(t){return t[re]}function ce(t){return t[oe]}function he(t){for(var e=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return t.prototype.getInertBodyElement_XHR=function(t){t=""+t+"";try{t=encodeURI(t)}catch(r){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=""+t+"";try{var e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(n){return null}},t.prototype.getInertBodyElement_InertDocument=function(t){var e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},t.prototype.stripCustomNsAttrs=function(t){for(var e=t.attributes,n=e.length-1;0"),!0},t.prototype.endElement=function(t){var e=t.nodeName.toLowerCase();ke.hasOwnProperty(e)&&!xe.hasOwnProperty(e)&&(this.buf.push(""))},t.prototype.chars=function(t){this.buf.push(De(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}(),Me=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ne=/([^\#-~ |!])/g;function De(t){return t.replace(/&/g,"&").replace(Me,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ne,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}function je(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Ve=function(t){return 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",t}({}),Le=function(){return function(){}}(),ze=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ue=/^url\(([^)]+)\)$/,Fe=/([A-Z])/g;function He(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function Be(t){return!!t&&"function"==typeof t.then}function We(t){return!!t&&"function"==typeof t.subscribe}var Ge=null;function Ye(){if(!Ge){var t=Dt.Symbol;if(t&&t.iterator)Ge=t.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),n=0;n-1}(r)||"root"===o.providedIn&&r._def.isRoot))){var c=t._providers.length;return t._def.providers[c]=t._def.providersByKey[e.tokenKey]={flags:5120,value:a.factory,deps:[],index:c,token:e.token},t._providers[c]=Ar,t._providers[c]=Lr(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{Vt(i)}}function Lr(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(Vr(t,n[0]));case 2:return new e(Vr(t,n[0]),Vr(t,n[1]));case 3:return new e(Vr(t,n[0]),Vr(t,n[1]),Vr(t,n[2]));default:for(var o=new Array(r),i=0;i=n.length)&&(e=n.length-1),e<0)return null;var r=n[e];return r.viewContainerParent=null,Br(n,e),Xn.dirtyParentQueries(r),Fr(r),r}function Ur(t,e,n){var r=e?fr(e,e.def.lastRenderRootNode):t.renderElement,o=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);xr(n,2,o,i,void 0)}function Fr(t){xr(t,3,null,null,void 0)}function Hr(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Br(t,e){e>=t.length-1?t.pop():t.splice(e,1)}var Wr=new Object;function Gr(t,e,n,r,o,i){return new Yr(t,e,n,r,o,i)}var Yr=function(t){function e(e,n,r,o,i,s){var a=t.call(this)||this;return a.selector=e,a.componentType=n,a._inputs=o,a._outputs=i,a.ngContentSelectors=s,a.viewDefFactory=r,a}return o(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){var t=[],e=this._inputs;for(var n in e)t.push({propName:n,templateName:e[n]});return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var t=[];for(var e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,r){if(!r)throw new Error("ngModule should be provided");var o=Cr(this.viewDefFactory),i=o.nodes[0].element.componentProvider.nodeIndex,s=Xn.createRootView(t,e||[],n,o,r,Wr),a=Zn(s,i).instance;return n&&s.renderer.setAttribute(qn(s,0).renderElement,"ng-version",_n.full),new qr(s,new Xr(s),a)},e}(en),qr=function(t){function e(e,n,r){var o=t.call(this)||this;return o._view=e,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o.hostView=n,o.changeDetectorRef=n,o.instance=r,o}return o(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return new pn(qn(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new eo(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}(tn);function Zr(t,e,n){return new $r(t,e,n)}var $r=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 pn(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new eo(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=dr(t),t=t.parent;return t?new eo(t,e):new eo(this._view,null)},enumerable:!0,configurable:!0}),t.prototype.clear=function(){for(var t=this._embeddedViews.length-1;t>=0;t--){var e=zr(this._data,t);Xn.destroyView(e)}},t.prototype.get=function(t){var e=this._embeddedViews[t];if(e){var n=new Xr(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 r=t.createEmbeddedView(e||{});return this.insert(r,n),r},t.prototype.createComponent=function(t,e,n,r,o){var i=n||this.parentInjector;o||t instanceof ln||(o=i.get(un));var s=t.create(i,r,void 0,o);return this.insert(s.hostView,e),s},t.prototype.insert=function(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n,r,o,i,s=t;return i=(n=this._data).viewContainer._embeddedViews,null==(r=e)&&(r=i.length),(o=s._view).viewContainerParent=this._view,Hr(i,r,o),function(t,e){var n=pr(e);if(n&&n!==t&&!(16&e.state)){e.state|=16;var r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(e),function(t,n){if(!(4&n.flags)){e.parent.def.nodeFlags|=4,n.flags|=4;for(var r=n.parent;r;)r.childFlags|=4,r=r.parent}}(0,e.parentNodeDef)}}(n,o),Xn.dirtyParentQueries(o),Ur(n,r>0?i[r-1]:null,o),s.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,r,o,i,s,a=this._embeddedViews.indexOf(t._view);return o=e,s=(i=(n=this._data).viewContainer._embeddedViews)[r=a],Br(i,r),null==o&&(o=i.length),Hr(i,o,s),Xn.dirtyParentQueries(s),Fr(s),Ur(n,o>0?i[o-1]:null,s),t},t.prototype.indexOf=function(t){return this._embeddedViews.indexOf(t._view)},t.prototype.remove=function(t){var e=zr(this._data,t);e&&Xn.destroyView(e)},t.prototype.detach=function(t){var e=zr(this._data,t);return e?new Xr(e):null},t}();function Qr(t){return new Xr(t)}var Xr=function(){function t(t){this._view=t,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){return xr(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(){ur(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{Xn.checkAndUpdateView(this._view)}finally{t.end&&t.end()}},t.prototype.checkNoChanges=function(){Xn.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)),Xn.destroyView(this._view)},t.prototype.detachFromAppRef=function(){this._appRef=null,Fr(this._view),Xn.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 Kr(t,e){return new Jr(t,e)}var Jr=function(t){function e(e,n){var r=t.call(this)||this;return r._parentView=e,r._def=n,r}return o(e,t),e.prototype.createEmbeddedView=function(t){return new Xr(Xn.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new pn(qn(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),e}(Vn);function to(t,e){return new eo(t,e)}var eo=function(){function t(t,e){this.view=t,this.elDef=e}return t.prototype.get=function(t,e){return void 0===e&&(e=Gt.THROW_IF_NOT_FOUND),Xn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:tr(t)},e)},t}();function no(t,e){var n=t.def.nodes[e];if(1&n.flags){var r=qn(t,n.nodeIndex);return n.element.template?r.template:r.renderElement}if(2&n.flags)return Yn(t,n.nodeIndex).renderText;if(20240&n.flags)return Zn(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function ro(t){return new oo(t.renderer)}var oo=function(){function t(t){this.delegate=t}return t.prototype.selectRootElement=function(t){return this.delegate.selectRootElement(t)},t.prototype.createElement=function(t,e){var n=h(Tr(e),2),r=this.delegate.createElement(n[1],n[0]);return t&&this.delegate.appendChild(t,r),r},t.prototype.createViewRoot=function(t){return t},t.prototype.createTemplateAnchor=function(t){var e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e},t.prototype.createText=function(t,e){var n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n},t.prototype.projectNodes=function(t,e){for(var n=0;n0,e.provider.value,e.provider.deps);if(e.outputs.length)for(var r=0;r0,r=e.provider;switch(201347067&e.flags){case 512:return Eo(t,e.parent,n,r.value,r.deps);case 1024:return function(t,e,n,r,o){var i=o.length;switch(i){case 0:return r();case 1:return r(ko(t,e,n,o[0]));case 2:return r(ko(t,e,n,o[0]),ko(t,e,n,o[1]));case 3:return r(ko(t,e,n,o[0]),ko(t,e,n,o[1]),ko(t,e,n,o[2]));default:for(var s=Array(i),a=0;a0&&(o=setTimeout(function(){r._callbacks=r._callbacks.filter(function(t){return t.timeoutId!==o}),t(r._didWork,r.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:o,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}(),yi=function(){function t(){this._applications=new Map,mi.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),mi.findTestabilityInTree(this,t,e)},s([a("design:paramtypes",[])],t)}(),mi=new(function(){function t(){}return t.prototype.addToWindow=function(t){},t.prototype.findTestabilityInTree=function(t,e,n){return null},t}()),_i=new Ut("AllowMultipleToken"),bi=function(){return function(t,e){this.name=t,this.token=e}}();function wi(t,e,n){void 0===n&&(n=[]);var r="Platform: "+e,o=new Ut(r);return function(e){void 0===e&&(e=[]);var i=Ci();if(!i||i.injector.get(_i,!1))if(t)t(n.concat(e).concat({provide:o,useValue:!0}));else{var s=n.concat(e).concat({provide:o,useValue:!0});!function(t){if(fi&&!fi.destroyed&&!fi.injector.get(_i,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");fi=t.get(xi);var e=t.get(Ho,null);e&&e.forEach(function(t){return t()})}(Gt.create({providers:s,name:r}))}return function(t){var e=Ci();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}(o)}}function Ci(){return fi&&!fi.destroyed?fi:null}var xi=function(){function t(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return t.prototype.bootstrapModuleFactory=function(t,e){var n,r=this,o="noop"===(n=e?e.ngZone:void 0)?new gi:("zone.js"===n?void 0:n)||new li({enableLongStackTrace:ge()}),i=[{provide:li,useValue:o}];return o.run(function(){var e=Gt.create({providers:i,parent:r.injector,name:t.moduleType.name}),n=t.create(e),s=n.injector.get(pe,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy(function(){return Oi(r._modules,n)}),o.runOutsideAngular(function(){return o.onError.subscribe({next:function(t){s.handleError(t)}})}),function(t,e,o){try{var i=((s=n.injector.get(Lo)).runInitializers(),s.donePromise.then(function(){return r._moduleDoBootstrap(n),n}));return Be(i)?i.catch(function(n){throw e.runOutsideAngular(function(){return t.handleError(n)}),n}):i}catch(a){throw e.runOutsideAngular(function(){return t.handleError(a)}),a}var s}(s,o)})},t.prototype.bootstrapModule=function(t,e){var n=this;void 0===e&&(e=[]);var r=Si({},e);return function(t,e,n){return t.get(ti).createCompiler([e]).compileModuleAsync(n)}(this.injector,r,t).then(function(t){return n.bootstrapModuleFactory(t,r)})},t.prototype._moduleDoBootstrap=function(t){var e=t.injector.get(Ei);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(function(t){return e.bootstrap(t)});else{if(!t.instance.ngDoBootstrap)throw new Error("The module "+Tt(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}();function Si(t,e){return Array.isArray(e)?e.reduce(Si,t):i({},t,e)}var Ei=function(){function t(t,e,n,r,o,i){var s=this;this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=ge(),this._zone.onMicrotaskEmpty.subscribe({next:function(){s._zone.run(function(){s.tick()})}});var a=new R(function(t){s._stable=s._zone.isStable&&!s._zone.hasPendingMacrotasks&&!s._zone.hasPendingMicrotasks,s._zone.runOutsideAngular(function(){t.next(s._stable),t.complete()})}),l=new R(function(t){var e;s._zone.runOutsideAngular(function(){e=s._zone.onStable.subscribe(function(){li.assertNotInAngularZone(),ai(function(){s._stable||s._zone.hasPendingMacrotasks||s._zone.hasPendingMicrotasks||(s._stable=!0,t.next(!0))})})});var n=s._zone.onUnstable.subscribe(function(){li.assertInAngularZone(),s._stable&&(s._stable=!1,s._zone.runOutsideAngular(function(){t.next(!1)}))});return function(){e.unsubscribe(),n.unsubscribe()}});this.isStable=lt(a,l.pipe(function(t){return ut()(gt(yt)(t))}))}var e;return e=t,t.prototype.bootstrap=function(t,e){var n,r=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 en?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);var o=n instanceof ln?null:this._injector.get(un),i=n.create(Gt.NULL,[],e||n.selector,o);i.onDestroy(function(){r._unloadComponent(i)});var s=i.injector.get(vi,null);return s&&i.injector.get(yi).registerApplication(i.location.nativeElement,s),this._loadComponent(i),ge()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i},t.prototype.tick=function(){var t,n,r,o,i=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var s=e._tickScope();try{this._runningTick=!0;try{for(var a=c(this._views),l=a.next();!l.done;l=a.next())l.value.detectChanges()}catch(p){t={error:p}}finally{try{l&&!l.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}if(this._enforceNoNewChanges)try{for(var u=c(this._views),h=u.next();!h.done;h=u.next())h.value.checkNoChanges()}catch(d){r={error:d}}finally{try{h&&!h.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}}catch(f){this._zone.runOutsideAngular(function(){return i._exceptionHandler.handleError(f)})}finally{this._runningTick=!1,ii(s)}},t.prototype.attachView=function(t){var e=t;this._views.push(e),e.attachToAppRef(this)},t.prototype.detachView=function(t){var e=t;Oi(this._views,e),e.detachFromAppRef()},t.prototype._loadComponent=function(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Wo,[]).concat(this._bootstrapListeners).forEach(function(e){return e(t)})},t.prototype._unloadComponent=function(t){this.detachView(t.hostView),Oi(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._tickScope=oi("ApplicationRef#tick()"),t}();function Oi(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}var ki=function(){return function(){}}(),Pi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Ti=function(){function t(t,e){this._compiler=t,this._config=e||Pi}return t.prototype.load=function(t){return this._compiler instanceof Jo?this.loadFactory(t):this.loadAndCompile(t)},t.prototype.loadAndCompile=function(t){var e=this,r=h(t.split("#"),2),o=r[0],i=r[1];return void 0===i&&(i="default"),n("zn8P")(o).then(function(t){return t[i]}).then(function(t){return Ii(t,o,i)}).then(function(t){return e._compiler.compileModuleAsync(t)})},t.prototype.loadFactory=function(t){var e=h(t.split("#"),2),r=e[0],o=e[1],i="NgFactory";return void 0===o&&(o="default",i=""),n("zn8P")(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(t){return t[o+i]}).then(function(t){return Ii(t,r,o)})},t}();function Ii(t,e,n){if(!t)throw new Error("Cannot find '"+n+"' in '"+e+"'");return t}var Ri=function(){return function(t,e){this.name=t,this.callback=e}}(),Ai=function(){function t(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Mi&&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}(),Mi=function(t){function e(e,n,r){var o=t.call(this,e,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=e,o}return o(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,p([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,r){e.childNodes.forEach(function(e){e instanceof Mi&&(n(e)&&r.push(e),t(e,n,r))})}(this,t,e),e},e.prototype.queryAllNodes=function(t){var e=[];return function t(e,n,r){e instanceof Mi&&e.childNodes.forEach(function(e){n(e)&&r.push(e),e instanceof Mi&&t(e,n,r)})}(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}(Ai),Ni=new Map,Di=function(t){return Ni.get(t)||null};function ji(t){Ni.set(t.nativeNode,t)}var Vi=wi(null,"core",[{provide:Bo,useValue:"unknown"},{provide:xi,deps:[Gt]},{provide:yi,deps:[]},{provide:Go,deps:[]}]),Li=new Ut("LocaleId");function zi(){return Dn}function Ui(){return jn}function Fi(t){return t||"en-US"}function Hi(t){var e=[];return t.onStable.subscribe(function(){for(;e.length;)e.pop()()}),function(t){e.push(t)}}var Bi=function(){return function(t){}}();function Wi(t,e,n,r,o,i){t|=1;var s=mr(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s.matchedQueries,matchedQueryIds:s.matchedQueryIds,references:s.references,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?Cr(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Kn},provider:null,text:null,query:null,ngContent:null}}function Gi(t,e,n,r,o,i,s,a,l,u,c,p){var d;void 0===s&&(s=[]),u||(u=Kn);var f=mr(n),g=f.matchedQueries,v=f.references,y=f.matchedQueryIds,m=null,_=null;i&&(m=(d=h(Tr(i),2))[0],_=d[1]),a=a||[];for(var b=new Array(a.length),w=0;w0)u=g,ls(g)||(c=g);else for(;u&&f===u.nodeIndex+u.childCount;){var m=u.parent;m&&(m.childFlags|=u.childFlags,m.childMatchedQueries|=u.childMatchedQueries),c=(u=m)&&ls(u)?u.renderParent:u}}return{factory:null,nodeFlags:s,rootNodeFlags:a,nodeMatchedQueries:l,flags:t,nodes:e,updateDirectives:n||Kn,updateRenderer:r||Kn,handleEvent:function(t,n,r,o){return e[n].element.handleEvent(t,r,o)},bindingCount:o,outputCount:i,lastRenderRootNode:d}}function ls(t){return 0!=(1&t.flags)&&null===t.element.name}function us(t,e,n){var r=e.element&&e.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.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 o=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=o&&e.nodeIndex+e.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.nodeIndex+"!")}}function cs(t,e,n,r){var o=ds(t.root,t.renderer,t,e,n);return fs(o,t.component,r),gs(o),o}function hs(t,e,n){var r=ds(t,t.renderer,null,null,e);return fs(r,n,n),gs(r),r}function ps(t,e,n,r){var o,i=e.element.componentRendererType;return o=i?t.root.rendererFactory.createRenderer(r,i):t.root.renderer,ds(t.root,o,t,e.element.componentProvider,n)}function ds(t,e,n,r,o){var i=new Array(o.nodes.length),s=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(o.bindingCount),disposables:s,initIndex:-1}}function fs(t,e,n){t.component=e,t.context=n}function gs(t){var e;gr(t)&&(e=qn(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);for(var n=t.def,r=t.nodes,o=0;o0&&$i(t,e,0,n)&&(d=!0),p>1&&$i(t,e,1,r)&&(d=!0),p>2&&$i(t,e,2,o)&&(d=!0),p>3&&$i(t,e,3,i)&&(d=!0),p>4&&$i(t,e,4,s)&&(d=!0),p>5&&$i(t,e,5,a)&&(d=!0),p>6&&$i(t,e,6,l)&&(d=!0),p>7&&$i(t,e,7,u)&&(d=!0),p>8&&$i(t,e,8,c)&&(d=!0),p>9&&$i(t,e,9,h)&&(d=!0),d}(t,e,n,r,o,i,s,a,l,u,c,h);case 2:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=!1,d=e.bindings,f=d.length;if(f>0&&ar(t,e,0,n)&&(p=!0),f>1&&ar(t,e,1,r)&&(p=!0),f>2&&ar(t,e,2,o)&&(p=!0),f>3&&ar(t,e,3,i)&&(p=!0),f>4&&ar(t,e,4,s)&&(p=!0),f>5&&ar(t,e,5,a)&&(p=!0),f>6&&ar(t,e,6,l)&&(p=!0),f>7&&ar(t,e,7,u)&&(p=!0),f>8&&ar(t,e,8,c)&&(p=!0),f>9&&ar(t,e,9,h)&&(p=!0),p){var g=e.text.prefix;f>0&&(g+=ss(n,d[0])),f>1&&(g+=ss(r,d[1])),f>2&&(g+=ss(o,d[2])),f>3&&(g+=ss(i,d[3])),f>4&&(g+=ss(s,d[4])),f>5&&(g+=ss(a,d[5])),f>6&&(g+=ss(l,d[6])),f>7&&(g+=ss(u,d[7])),f>8&&(g+=ss(c,d[8])),f>9&&(g+=ss(h,d[9]));var v=Yn(t,e.nodeIndex).renderText;t.renderer.setValue(v,g)}return p}(t,e,n,r,o,i,s,a,l,u,c,h);case 16384:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=Zn(t,e.nodeIndex),d=p.instance,f=!1,g=void 0,v=e.bindings.length;return v>0&&sr(t,e,0,n)&&(f=!0,g=To(t,p,e,0,n,g)),v>1&&sr(t,e,1,r)&&(f=!0,g=To(t,p,e,1,r,g)),v>2&&sr(t,e,2,o)&&(f=!0,g=To(t,p,e,2,o,g)),v>3&&sr(t,e,3,i)&&(f=!0,g=To(t,p,e,3,i,g)),v>4&&sr(t,e,4,s)&&(f=!0,g=To(t,p,e,4,s,g)),v>5&&sr(t,e,5,a)&&(f=!0,g=To(t,p,e,5,a,g)),v>6&&sr(t,e,6,l)&&(f=!0,g=To(t,p,e,6,l,g)),v>7&&sr(t,e,7,u)&&(f=!0,g=To(t,p,e,7,u,g)),v>8&&sr(t,e,8,c)&&(f=!0,g=To(t,p,e,8,c,g)),v>9&&sr(t,e,9,h)&&(f=!0,g=To(t,p,e,9,h,g)),g&&d.ngOnChanges(g),65536&e.flags&&Gn(t,256,e.nodeIndex)&&d.ngOnInit(),262144&e.flags&&d.ngDoCheck(),f}(t,e,n,r,o,i,s,a,l,u,c,h);case 32:case 64:case 128:return function(t,e,n,r,o,i,s,a,l,u,c,h){var p=e.bindings,d=!1,f=p.length;if(f>0&&ar(t,e,0,n)&&(d=!0),f>1&&ar(t,e,1,r)&&(d=!0),f>2&&ar(t,e,2,o)&&(d=!0),f>3&&ar(t,e,3,i)&&(d=!0),f>4&&ar(t,e,4,s)&&(d=!0),f>5&&ar(t,e,5,a)&&(d=!0),f>6&&ar(t,e,6,l)&&(d=!0),f>7&&ar(t,e,7,u)&&(d=!0),f>8&&ar(t,e,8,c)&&(d=!0),f>9&&ar(t,e,9,h)&&(d=!0),d){var g=$n(t,e.nodeIndex),v=void 0;switch(201347067&e.flags){case 32:v=new Array(p.length),f>0&&(v[0]=n),f>1&&(v[1]=r),f>2&&(v[2]=o),f>3&&(v[3]=i),f>4&&(v[4]=s),f>5&&(v[5]=a),f>6&&(v[6]=l),f>7&&(v[7]=u),f>8&&(v[8]=c),f>9&&(v[9]=h);break;case 64:v={},f>0&&(v[p[0].name]=n),f>1&&(v[p[1].name]=r),f>2&&(v[p[2].name]=o),f>3&&(v[p[3].name]=i),f>4&&(v[p[4].name]=s),f>5&&(v[p[5].name]=a),f>6&&(v[p[6].name]=l),f>7&&(v[p[7].name]=u),f>8&&(v[p[8].name]=c),f>9&&(v[p[9].name]=h);break;case 128:var y=n;switch(f){case 1:v=y.transform(n);break;case 2:v=y.transform(r);break;case 3:v=y.transform(r,o);break;case 4:v=y.transform(r,o,i);break;case 5:v=y.transform(r,o,i,s);break;case 6:v=y.transform(r,o,i,s,a);break;case 7:v=y.transform(r,o,i,s,a,l);break;case 8:v=y.transform(r,o,i,s,a,l,u);break;case 9:v=y.transform(r,o,i,s,a,l,u,c);break;case 10:v=y.transform(r,o,i,s,a,l,u,c,h)}}g.value=v}return d}(t,e,n,r,o,i,s,a,l,u,c,h);default:throw"unreachable"}}(t,e,r,o,i,s,a,l,u,c,h,d):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){for(var r=!1,o=0;o0&&lr(t,e,0,n),p>1&&lr(t,e,1,r),p>2&&lr(t,e,2,o),p>3&&lr(t,e,3,i),p>4&&lr(t,e,4,s),p>5&&lr(t,e,5,a),p>6&&lr(t,e,6,l),p>7&&lr(t,e,7,u),p>8&&lr(t,e,8,c),p>9&&lr(t,e,9,h)}(t,e,r,o,i,s,a,l,u,c,h,p):function(t,e,n){for(var r=0;r0){var i=new Set(t.modules);Vs.forEach(function(e,r){if(i.has(kt(r).providedIn)){var o={token:r,flags:e.flags|(n?4096:0),deps:_r(e.deps),value:e.value,index:t.providers.length};t.providers.push(o),t.providersByKey[tr(r)]=o}})}}(t=t.factory(function(){return Kn})),t):t}(r))}var js=new Map,Vs=new Map,Ls=new Map;function zs(t){var e;js.set(t.token,t),"function"==typeof t.token&&(e=kt(t.token))&&"function"==typeof e.providedIn&&Vs.set(t.token,t)}function Us(t,e){var n=Cr(e.viewDefFactory),r=Cr(n.nodes[0].element.componentView);Ls.set(t,r)}function Fs(){js.clear(),Vs.clear(),Ls.clear()}function Hs(t){if(0===js.size)return t;var e=function(t){for(var e=[],n=null,r=0;r0?va(t,e[n]):e[n]:null}var ya=n("Wgwc"),ma=function(){function t(){if(this.build=ya(),!t.init){var e=ya();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][APP] "+fa+" - "+t+" | "+e):console[n].apply(console,["%c[ACA]%c[APP] %c"+fa+" - "+t+" | "+e].concat(["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0",t.init=!1,t}(),_a=function(){return function(){this.show_menu=!0}}(),ba=function(){return function(){}}(),wa=new Ut("Location Initialized"),Ca=function(){return function(){}}(),xa=new Ut("appBaseHref"),Sa=function(){function t(t,n){var r=this;this._subject=new No,this._urlChangeListeners=[],this._platformStrategy=t;var o=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=e.stripTrailingSlash(Ea(o)),this._platformStrategy.onPopState(function(t){r._subject.emit({url:r.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,n){return void 0===n&&(n=""),this.path()==this.normalize(t+e.normalizeQueryParams(n))},t.prototype.normalize=function(t){return e.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,Ea(t)))},t.prototype.prepareExternalUrl=function(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)},t.prototype.go=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.pushState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},t.prototype.replaceState=function(t,n,r){void 0===n&&(n=""),void 0===r&&(r=null),this._platformStrategy.replaceState(r,"",t,n),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+e.normalizeQueryParams(n)),r)},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=function(t){return t&&"?"!==t[0]?"?"+t:t},t.joinWithSlash=function(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},t.stripTrailingSlash=function(t){var e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)},t}();function Ea(t){return t.replace(/\/index.html$/,"")}var Oa=function(t){function e(e,n){var r=t.call(this)||this;return r._platformLocation=e,r._baseHref="",null!=n&&(r._baseHref=n),r}return o(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=Sa.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(Ca),ka=function(t){function e(e,n){var r=t.call(this)||this;if(r._platformLocation=e,null==n&&(n=r._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 r._baseHref=n,r}return o(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 Sa.joinWithSlash(this._baseHref,t)},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.pathname+Sa.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?""+e+n:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+Sa.normalizeQueryParams(r));this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(Ca),Pa=void 0,Ta=["en",[["a","p"],["AM","PM"],Pa],[["AM","PM"],Pa,Pa],[["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"]],Pa,[["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"]],Pa,[["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}",Pa,"{1} 'at' {0}",Pa],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}],Ia={},Ra=function(t){return 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",t}({}),Aa=new Ut("UseV4Plurals"),Ma=function(){return function(){}}(),Na=function(t){function e(e,n){var r=t.call(this)||this;return r.locale=e,r.deprecatedPluralFn=n,r}return o(e,t),e.prototype.getPluralCategory=function(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):function(t){return function(t){var e=t.toLowerCase().replace(/_/g,"-"),n=Ia[e];if(n)return n;var r=e.split("-")[0];if(n=Ia[r])return n;if("en"===r)return Ta;throw new Error('Missing locale data for the locale "'+t+'".')}(t)[18]}(e||this.locale)(t)){case Ra.Zero:return"zero";case Ra.One:return"one";case Ra.Two:return"two";case Ra.Few:return"few";case Ra.Many:return"many";default:return"other"}},e}(Ma);function Da(t,e){var n,r;e=encodeURIComponent(e);try{for(var o=c(t.split(";")),i=o.next();!i.done;i=o.next()){var s=i.value,a=s.indexOf("="),l=h(-1==a?[s,""]:[s.slice(0,a),s.slice(a+1)],2),u=l[1];if(l[0].trim()===e)return decodeURIComponent(u)}}catch(p){n={error:p}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}var ja=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(un);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(n.injector)}else this._moduleRef=null;var r=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(sn)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(r,this._viewContainerRef.length,e,this.ngComponentOutletContent)}},t.prototype.ngOnDestroy=function(){this._moduleRef&&this._moduleRef.destroy()},t}(),Va=function(){function t(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}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}(),La=function(){function t(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,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){ge()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(t)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#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(r){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;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,r,o){if(null==t.previousIndex){var i=e._viewContainer.createEmbeddedView(e._template,new Va(null,e._ngForOf,-1,-1),o),s=new za(t,i);n.push(s)}else null==o?e._viewContainer.remove(r):(i=e._viewContainer.get(r),e._viewContainer.move(i,o),s=new za(t,i),n.push(s))});for(var r=0;r0)for(var n=this.count>=this.total?this.total:this.count,r=this.ring,o=0;o=2;return function(r){return r.pipe(t?dl(function(e,n){return t(e,n,r)}):st,ml(1),n?Ol(e):Sl(function(){return new al}))}}function Il(t){return function(e){var n=new Rl(t),r=e.lift(n);return n.caught=r}}var Rl=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new Al(t,this.selector,this.caught))},t}(),Al=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.selector=n,o.caught=r,o}return o(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(o){return void t.prototype.error.call(this,o)}this._unsubscribeAndRecycle();var r=new U(this,void 0,void 0);this.add(r),Q(this,n,void 0,void 0,r)}},e}(X);function Ml(t){return function(e){return 0===t?nl():e.lift(new Nl(t))}}var Nl=function(){function t(t){if(this.total=t,this.total<0)throw new yl}return t.prototype.call=function(t,e){return e.subscribe(new Dl(t,this.total))},t}(),Dl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.total=n,r.count=0,r}return o(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}(E);function jl(t,e){var n=arguments.length>=2;return function(r){return r.pipe(t?dl(function(e,n){return t(e,n,r)}):st,Ml(1),n?Ol(e):Sl(function(){return new al}))}}var Vl=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new Ll(t,this.predicate,this.thisArg,this.source))},t}(),Ll=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.predicate=n,i.thisArg=r,i.source=o,i.index=0,i.thisArg=r||i,i}return o(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(E);function zl(t,e){return"function"==typeof e?function(n){return n.pipe(zl(function(n,r){return nt(t(n,r)).pipe(K(function(t,o){return e(n,t,r,o)}))}))}:function(e){return e.lift(new Ul(t))}}var Ul=function(){function t(t){this.project=t}return t.prototype.call=function(t,e){return e.subscribe(new Fl(t,this.project))},t}(),Fl=function(t){function e(e,n){var r=t.call(this,e)||this;return r.project=n,r.index=0,r}return o(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(r){return void this.destination.error(r)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var r=this.innerSubscription;r&&r.unsubscribe();var o=new U(this,void 0,void 0);this.destination.add(o),this.innerSubscription=Q(this,t,e,n,o)},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,r,o){this.destination.next(e)},e}(X);function Hl(){for(var t=[],e=0;e0?et(t,n):nl(n):rl(t[0]),e)}}function Wl(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(r){return r.lift(new Gl(t,e,n))}}var Gl=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new Yl(t,this.accumulator,this.seed,this.hasSeed))},t}(),Yl=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;return i.accumulator=n,i._seed=r,i.hasSeed=o,i.index=0,i}return o(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(r){this.destination.error(r)}this.seed=e,this.destination.next(e)},e}(E);function ql(t,e){return rt(t,e,1)}var Zl=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new $l(t,this.callback))},t}(),$l=function(t){function e(e,n){var r=t.call(this,e)||this;return r.add(new m(n)),r}return o(e,t),e}(E),Ql=null;function Xl(){return Ql}var Kl,Jl=function(t){function e(){var e=t.call(this)||this;e._animationPrefix=null,e._transitionEnd=null;try{var n=e.createElement("div",document);if(null!=e.getStyle(n,"animationName"))e._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o0},e.prototype.tagName=function(t){return t.tagName},e.prototype.attributeMap=function(t){for(var e=new Map,n=t.attributes,r=0;r0;s||(s=t[i]=[]);var l=Vu(e)?Zone.root:Zone.current;if(0===s.length)s.push({zone:l,handler:o});else{for(var u=!1,c=0;c-1},e}(vu),Gu=["alt","control","meta","shift"],Yu={alt:function(t){return t.altKey},control:function(t){return t.ctrlKey},meta:function(t){return t.metaKey},shift:function(t){return t.shiftKey}},qu=function(t){function e(e){return t.call(this,e)||this}var n;return o(e,t),n=e,e.prototype.supports=function(t){return null!=n.parseEventName(t)},e.prototype.addEventListener=function(t,e,r){var o=n.parseEventName(e),i=n.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return Xl().onAndCancel(t,o.domEventName,i)})},e.parseEventName=function(t){var e=t.toLowerCase().split("."),r=e.shift();if(0===e.length||"keydown"!==r&&"keyup"!==r)return null;var o=n._normalizeKey(e.pop()),i="";if(Gu.forEach(function(t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),i+=t+".")}),i+=o,0!=e.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s},e.getEventFullKey=function(t){var e="",n=Xl().getEventKey(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),Gu.forEach(function(r){r!=n&&(0,Yu[r])(t)&&(e+=r+".")}),e+=n},e.eventCallback=function(t,e,r){return function(o){n.getEventFullKey(o)===t&&r.runGuarded(function(){return e(o)})}},e._normalizeKey=function(t){switch(t){case"esc":return"escape";default:return t}},e}(vu),Zu=function(){return function(){}}(),$u=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n}return o(e,t),e.prototype.sanitize=function(t,e){if(null==e)return null;switch(t){case Ve.NONE:return e;case Ve.HTML:return e instanceof Xu?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(t,e){var n=null;try{Ce=Ce||new ve(t);var r=e?String(e):"";n=Ce.getInertBodyElement(r);var o=5,i=r;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=Ce.getInertBodyElement(r)}while(r!==i);var s=new Ae,a=s.sanitizeChildren(je(n)||n);return ge()&&s.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n)for(var l=je(n)||n;l.firstChild;)l.removeChild(l.firstChild)}}(this._doc,String(e)));case Ve.STYLE:return e instanceof Ku?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(t){if(!(t=String(t).trim()))return"";var e=t.match(Ue);return e&&_e(e[1])===e[1]||t.match(ze)&&function(t){for(var e=!0,n=!0,r=0;rt.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||r.length0?t[t.length-1]:null}function zc(t,e){for(var n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Uc(t){return We(t)?t:Be(t)?nt(Promise.resolve(t)):ol(t)}function Fc(t,e,n){return n?function(t,e){return jc(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!Gc(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(var r in n.children){if(!e.children[r])return!1;if(!t(e.children[r],n.children[r]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(function(n){return e[n]===t[n]})}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,r,o){if(n.segments.length>o.length)return!!Gc(s=n.segments.slice(0,o.length),o)&&!r.hasChildren();if(n.segments.length===o.length){if(!Gc(n.segments,o))return!1;for(var i in r.children){if(!n.children[i])return!1;if(!t(n.children[i],r.children[i]))return!1}return!0}var s=o.slice(0,n.segments.length),a=o.slice(n.segments.length);return!!Gc(n.segments,s)&&!!n.children[Ec]&&e(n.children[Ec],r,a)}(e,n,n.segments)}(t.root,e.root)}var Hc=function(){function t(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}return Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=kc(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return $c.serialize(this)},t}(),Bc=function(){function t(t,e){var n=this;this.segments=t,this.children=e,this.parent=null,zc(e,function(t,e){return t.parent=n})}return t.prototype.hasChildren=function(){return this.numberOfChildren>0},Object.defineProperty(t.prototype,"numberOfChildren",{get:function(){return Object.keys(this.children).length},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return Qc(this)},t}(),Wc=function(){function t(t,e){this.path=t,this.parameters=e}return Object.defineProperty(t.prototype,"parameterMap",{get:function(){return this._parameterMap||(this._parameterMap=kc(this.parameters)),this._parameterMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return nh(this)},t}();function Gc(t,e){return t.length===e.length&&t.every(function(t,n){return t.path===e[n].path})}function Yc(t,e){var n=[];return zc(t.children,function(t,r){r===Ec&&(n=n.concat(e(t,r)))}),zc(t.children,function(t,r){r!==Ec&&(n=n.concat(e(t,r)))}),n}var qc=function(){return function(){}}(),Zc=function(){function t(){}return t.prototype.parse=function(t){var e=new ah(t);return new Hc(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())},t.prototype.serialize=function(t){var e,n;return"/"+function t(e,n){if(!e.hasChildren())return Qc(e);if(n){var r=e.children[Ec]?t(e.children[Ec],!1):"",o=[];return zc(e.children,function(e,n){n!==Ec&&o.push(n+":"+t(e,!1))}),o.length>0?r+"("+o.join("//")+")":r}var i=Yc(e,function(n,r){return r===Ec?[t(e.children[Ec],!1)]:[r+":"+t(n,!1)]});return Qc(e)+"/("+i.join("//")+")"}(t.root,!0)+(e=t.queryParams,(n=Object.keys(e).map(function(t){var n=e[t];return Array.isArray(n)?n.map(function(e){return Kc(t)+"="+Kc(e)}).join("&"):Kc(t)+"="+Kc(n)})).length?"?"+n.join("&"):"")+("string"==typeof t.fragment?"#"+encodeURI(t.fragment):"")},t}(),$c=new Zc;function Qc(t){return t.segments.map(function(t){return nh(t)}).join("/")}function Xc(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Kc(t){return Xc(t).replace(/%3B/gi,";")}function Jc(t){return Xc(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function th(t){return decodeURIComponent(t)}function eh(t){return th(t.replace(/\+/g,"%20"))}function nh(t){return""+Jc(t.path)+(e=t.parameters,Object.keys(e).map(function(t){return";"+Jc(t)+"="+Jc(e[t])}).join(""));var e}var rh=/^[^\/()?;=#]+/;function oh(t){var e=t.match(rh);return e?e[0]:""}var ih=/^[^=?&#]+/,sh=/^[^?&#]+/,ah=function(){function t(t){this.url=t,this.remaining=t}return t.prototype.parseRootSegment=function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Bc([],{}):new Bc([],this.parseChildren())},t.prototype.parseQueryParams=function(){var t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t},t.prototype.parseFragment=function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null},t.prototype.parseChildren=function(){if(""===this.remaining)return{};this.consumeOptional("/");var t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());var e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));var n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n[Ec]=new Bc(t,e)),n},t.prototype.parseSegment=function(){var t=oh(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '"+this.remaining+"'.");return this.capture(t),new Wc(th(t),this.parseMatrixParams())},t.prototype.parseMatrixParams=function(){for(var t={};this.consumeOptional(";");)this.parseParam(t);return t},t.prototype.parseParam=function(t){var e=oh(this.remaining);if(e){this.capture(e);var n="";if(this.consumeOptional("=")){var r=oh(this.remaining);r&&this.capture(n=r)}t[th(e)]=th(n)}},t.prototype.parseQueryParam=function(t){var e,n=(e=this.remaining.match(ih))?e[0]:"";if(n){this.capture(n);var r="";if(this.consumeOptional("=")){var o=function(t){var e=t.match(sh);return e?e[0]:""}(this.remaining);o&&this.capture(r=o)}var i=eh(n),s=eh(r);if(t.hasOwnProperty(i)){var a=t[i];Array.isArray(a)||(t[i]=a=[a]),a.push(s)}else t[i]=s}},t.prototype.parseParens=function(t){var e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var n=oh(this.remaining),r=this.remaining[n.length];if("/"!==r&&")"!==r&&";"!==r)throw new Error("Cannot parse url '"+this.url+"'");var o=void 0;n.indexOf(":")>-1?(o=n.substr(0,n.indexOf(":")),this.capture(o),this.capture(":")):t&&(o=Ec);var i=this.parseChildren();e[o]=1===Object.keys(i).length?i[Ec]:new Bc([],i),this.consumeOptional("//")}return e},t.prototype.peekStartsWith=function(t){return this.remaining.startsWith(t)},t.prototype.consumeOptional=function(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)},t.prototype.capture=function(t){if(!this.consumeOptional(t))throw new Error('Expected "'+t+'".')},t}(),lh=function(){function t(t){this._root=t}return Object.defineProperty(t.prototype,"root",{get:function(){return this._root.value},enumerable:!0,configurable:!0}),t.prototype.parent=function(t){var e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null},t.prototype.children=function(t){var e=uh(t,this._root);return e?e.children.map(function(t){return t.value}):[]},t.prototype.firstChild=function(t){var e=uh(t,this._root);return e&&e.children.length>0?e.children[0].value:null},t.prototype.siblings=function(t){var e=ch(t,this._root);return e.length<2?[]:e[e.length-2].children.map(function(t){return t.value}).filter(function(e){return e!==t})},t.prototype.pathFromRoot=function(t){return ch(t,this._root).map(function(t){return t.value})},t}();function uh(t,e){var n,r;if(t===e.value)return e;try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=uh(t,i.value);if(s)return s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}function ch(t,e){var n,r;if(t===e.value)return[e];try{for(var o=c(e.children),i=o.next();!i.done;i=o.next()){var s=ch(t,i.value);if(s.length)return s.unshift(e),s}}catch(a){n={error:a}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return[]}var hh=function(){function t(t,e){this.value=t,this.children=e}return t.prototype.toString=function(){return"TreeNode("+this.value+")"},t}();function ph(t){var e={};return t&&t.children.forEach(function(t){return e[t.value.outlet]=t}),e}var dh=function(t){function e(e,n){var r=t.call(this,e)||this;return r.snapshot=n,_h(r,e),r}return o(e,t),e.prototype.toString=function(){return this.snapshot.toString()},e}(lh);function fh(t,e){var n=function(t,e){var n=new yh([],{},{},"",{},Ec,e,null,t.root,-1,{});return new mh("",new hh(n,[]))}(t,e),r=new il([new Wc("",{})]),o=new il({}),i=new il({}),s=new il({}),a=new il(""),l=new gh(r,o,s,a,i,Ec,e,n.root);return l.snapshot=n.root,new dh(new hh(l,[]),n)}var gh=function(){function t(t,e,n,r,o,i,s,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this._futureSnapshot=a}return Object.defineProperty(t.prototype,"routeConfig",{get:function(){return this._futureSnapshot.routeConfig},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=this.params.pipe(K(function(t){return kc(t)}))),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(function(t){return kc(t)}))),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return this.snapshot?this.snapshot.toString():"Future("+this._futureSnapshot+")"},t}();function vh(t,e){void 0===e&&(e="emptyOnly");var n=t.pathFromRoot,r=0;if("always"!==e)for(r=n.length-1;r>=1;){var o=n[r],s=n[r-1];if(o.routeConfig&&""===o.routeConfig.path)r--;else{if(s.component)break;r--}}return function(t){return t.reduce(function(t,e){return{params:i({},t.params,e.params),data:i({},t.data,e.data),resolve:i({},t.resolve,e._resolvedData)}},{params:{},data:{},resolve:{}})}(n.slice(r))}var yh=function(){function t(t,e,n,r,o,i,s,a,l,u,c){this.url=t,this.params=e,this.queryParams=n,this.fragment=r,this.data=o,this.outlet=i,this.component=s,this.routeConfig=a,this._urlSegment=l,this._lastPathIndex=u,this._resolve=c}return Object.defineProperty(t.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=kc(this.params)),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=kc(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return"Route(url:'"+this.url.map(function(t){return t.toString()}).join("/")+"', path:'"+(this.routeConfig?this.routeConfig.path:"")+"')"},t}(),mh=function(t){function e(e,n){var r=t.call(this,n)||this;return r.url=e,_h(r,n),r}return o(e,t),e.prototype.toString=function(){return bh(this._root)},e}(lh);function _h(t,e){e.value._routerState=t,e.children.forEach(function(e){return _h(t,e)})}function bh(t){var e=t.children.length>0?" { "+t.children.map(bh).join(", ")+" } ":"";return""+t.value+e}function wh(t){if(t.snapshot){var e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,jc(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),jc(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(var n=0;n0&&xh(n[0]))throw new Error("Root segment cannot have matrix parameters");var r=n.find(function(t){return"object"==typeof t&&null!=t&&t.outlets});if(r&&r!==Lc(n))throw new Error("{outlets:{}} has to be the last command")}return t.prototype.toRoot=function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]},t}(),Oh=function(){return function(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}();function kh(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets[Ec]:""+t}function Ph(t,e,n){if(t||(t=new Bc([],{})),0===t.segments.length&&t.hasChildren())return Th(t,e,n);var r=function(t,e,n){for(var r=0,o=e,i={match:!1,pathIndex:0,commandIndex:0};o=n.length)return i;var s=t.segments[o],a=kh(n[r]),l=r0&&void 0===a)break;if(a&&l&&"object"==typeof l&&void 0===l.outlets){if(!Mh(a,l,s))return i;r+=2}else{if(!Mh(a,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(t,e,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndex0?new Bc([],((r={})[Ec]=t,r)):t;return new Hc(o,e,n)},t.prototype.expandSegmentGroup=function(t,e,n,r){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(K(function(t){return new Bc([],t)})):this.expandSegment(t,n,e,n.segments,r,!0)},t.prototype.expandChildren=function(t,e,n){var r=this;return function(n,o){if(0===Object.keys(n).length)return ol({});var i=[],s=[],a={};return zc(n,function(n,o){var l,u,c=(l=o,u=n,r.expandSegmentGroup(t,e,u,l)).pipe(K(function(t){return a[o]=t}));o===Ec?i.push(c):s.push(c)}),ol.apply(null,i.concat(s)).pipe(pl(),Tl(),K(function(){return a}))}(n.children)},t.prototype.expandSegment=function(t,e,n,r,o,i){var s=this;return ol.apply(void 0,p(n)).pipe(K(function(a){return s.expandSegmentAgainstRoute(t,e,n,a,r,o,i).pipe(Il(function(t){if(t instanceof Lh)return ol(null);throw t}))}),pl(),jl(function(t){return!!t}),Il(function(t,n){if(t instanceof al||"EmptyError"===t.name){if(s.noLeftoversInUrl(e,r,o))return ol(new Bc([],{}));throw new Lh(e)}throw t}))},t.prototype.noLeftoversInUrl=function(t,e,n){return 0===e.length&&!t.children[n]},t.prototype.expandSegmentAgainstRoute=function(t,e,n,r,o,i,s){return qh(r)!==i?Uh(e):void 0===r.redirectTo?this.matchSegmentAgainstRoute(t,e,r,o):s&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i):Uh(e)},t.prototype.expandSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){return"**"===r.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,r,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,r,o,i)},t.prototype.expandWildCardWithParamsAgainstRouteUsingRedirect=function(t,e,n,r){var o=this,i=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Fh(i):this.lineralizeSegments(n,i).pipe(rt(function(n){var i=new Bc(n,{});return o.expandSegment(t,i,e,n,r,!1)}))},t.prototype.expandRegularSegmentAgainstRouteUsingRedirect=function(t,e,n,r,o,i){var s=this,a=Wh(e,r,o),l=a.consumedSegments,u=a.lastChild,c=a.positionalParamSegments;if(!a.matched)return Uh(e);var h=this.applyRedirectCommands(l,r.redirectTo,c);return r.redirectTo.startsWith("/")?Fh(h):this.lineralizeSegments(r,h).pipe(rt(function(r){return s.expandSegment(t,e,n,r.concat(o.slice(u)),i,!1)}))},t.prototype.matchSegmentAgainstRoute=function(t,e,n,r){var o=this;if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(K(function(t){return n._loadedConfig=t,new Bc(r,{})})):ol(new Bc(r,{}));var s=Wh(e,n,r),a=s.consumedSegments,l=s.lastChild;if(!s.matched)return Uh(e);var u=r.slice(l);return this.getChildConfig(t,n,r).pipe(rt(function(t){var n=t.module,r=t.routes,s=function(t,e,n,r){return n.length>0&&function(t,e,n){return r.some(function(n){return Yh(t,e,n)&&qh(n)!==Ec})}(t,n)?{segmentGroup:Gh(new Bc(e,function(t,e){var n,r,o={};o[Ec]=e;try{for(var i=c(t),s=i.next();!s.done;s=i.next()){var a=s.value;""===a.path&&qh(a)!==Ec&&(o[qh(a)]=new Bc([],{}))}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o}(r,new Bc(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return r.some(function(n){return Yh(t,e,n)})}(t,n)?{segmentGroup:Gh(new Bc(t.segments,function(t,e,n,r){var o,s,a={};try{for(var l=c(n),u=l.next();!u.done;u=l.next()){var h=u.value;Yh(t,e,h)&&!r[qh(h)]&&(a[qh(h)]=new Bc([],{}))}}catch(p){o={error:p}}finally{try{u&&!u.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}return i({},r,a)}(t,n,r,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,a,u,r),l=s.segmentGroup,h=s.slicedSegments;return 0===h.length&&l.hasChildren()?o.expandChildren(n,r,l).pipe(K(function(t){return new Bc(a,t)})):0===r.length&&0===h.length?ol(new Bc(a,{})):o.expandSegment(n,l,r,h,Ec,!0).pipe(K(function(t){return new Bc(a.concat(t.segments),t.children)}))}))},t.prototype.getChildConfig=function(t,e,n){var r=this;return e.children?ol(new Rc(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?ol(e._loadedConfig):function(t,e,n){var r,o=e.canLoad;return o&&0!==o.length?nt(o).pipe(K(function(r){var o,i=t.get(r);if(function(t){return t&&jh(t.canLoad)}(i))o=i.canLoad(e,n);else{if(!jh(i))throw new Error("Invalid CanLoad guard");o=i(e,n)}return Uc(o)})).pipe(pl(),(r=function(t){return!0===t},function(t){return t.lift(new Vl(r,void 0,t))})):ol(!0)}(t.injector,e,n).pipe(rt(function(n){return n?r.configLoader.load(t.injector,e).pipe(K(function(t){return e._loadedConfig=t,t})):function(t){return new R(function(e){return e.error(Tc("Cannot load children because the guard of the route \"path: '"+t.path+"'\" returned false"))})}(e)})):ol(new Rc([],t))},t.prototype.lineralizeSegments=function(t,e){for(var n=[],r=e.root;;){if(n=n.concat(r.segments),0===r.numberOfChildren)return ol(n);if(r.numberOfChildren>1||!r.children[Ec])return Hh(t.redirectTo);r=r.children[Ec]}},t.prototype.applyRedirectCommands=function(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)},t.prototype.applyRedirectCreatreUrlTree=function(t,e,n,r){var o=this.createSegmentGroup(t,e.root,n,r);return new Hc(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)},t.prototype.createQueryParams=function(t,e){var n={};return zc(t,function(t,r){if("string"==typeof t&&t.startsWith(":")){var o=t.substring(1);n[r]=e[o]}else n[r]=t}),n},t.prototype.createSegmentGroup=function(t,e,n,r){var o=this,i=this.createSegments(t,e.segments,n,r),s={};return zc(e.children,function(e,i){s[i]=o.createSegmentGroup(t,e,n,r)}),new Bc(i,s)},t.prototype.createSegments=function(t,e,n,r){var o=this;return e.map(function(e){return e.path.startsWith(":")?o.findPosParam(t,e,r):o.findOrReturn(e,n)})},t.prototype.findPosParam=function(t,e,n){var r=n[e.path.substring(1)];if(!r)throw new Error("Cannot redirect to '"+t+"'. Cannot find '"+e.path+"'.");return r},t.prototype.findOrReturn=function(t,e){var n,r,o=0;try{for(var i=c(e),s=i.next();!s.done;s=i.next()){var a=s.value;if(a.path===t.path)return e.splice(o),a;o++}}catch(l){n={error:l}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return t},t}();function Wh(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};var r=(e.matcher||Ic)(n,t,e);return r?{matched:!0,consumedSegments:r.consumed,lastChild:r.consumed.length,positionalParamSegments:r.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Gh(t){if(1===t.numberOfChildren&&t.children[Ec]){var e=t.children[Ec];return new Bc(t.segments.concat(e.segments),e.children)}return t}function Yh(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function qh(t){return t.outlet||Ec}var Zh=function(){return function(t){this.path=t,this.route=this.path[this.path.length-1]}}(),$h=function(){return function(t,e){this.component=t,this.route=e}}();function Qh(t,e,n){var r=function(t){if(!t)return null;for(var e=t.parent;e;e=e.parent){var n=e.routeConfig;if(n&&n._loadedConfig)return n._loadedConfig}return null}(e);return(r?r.module.injector:n).get(t)}function Xh(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=ph(e);return t.children.forEach(function(t){!function(t,e,n,r,o){void 0===o&&(o={canDeactivateChecks:[],canActivateChecks:[]});var i=t.value,s=e?e.value:null,a=n?n.getContext(t.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){var l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!Gc(t.url,e.url);case"pathParamsOrQueryParamsChange":return!Gc(t.url,e.url)||!jc(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Ch(t,e)||!jc(t.queryParams,e.queryParams);case"paramsChange":default:return!Ch(t,e)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Zh(r)):(i.data=s.data,i._resolvedData=s._resolvedData),Xh(t,e,i.component?a?a.children:null:n,r,o),l&&o.canDeactivateChecks.push(new $h(a&&a.outlet&&a.outlet.component||null,s))}else s&&Kh(e,a,o),o.canActivateChecks.push(new Zh(r)),Xh(t,null,i.component?a?a.children:null:n,r,o)}(t,i[t.value.outlet],n,r.concat([t.value]),o),delete i[t.value.outlet]}),zc(i,function(t,e){return Kh(t,n.getContext(e),o)}),o}function Kh(t,e,n){var r=ph(t),o=t.value;zc(r,function(t,r){Kh(t,o.component?e?e.children.getContext(r):null:e,n)}),n.canDeactivateChecks.push(new $h(o.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,o))}var Jh=Symbol("INITIAL_VALUE");function tp(){return zl(function(t){return(function(){for(var t=[],e=0;e0?Lc(n).parameters:{};o=new yh(n,l,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,pp(t),r,t.component,t,ap(e),lp(e)+n.length,dp(t))}else{var u=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new ip;return{consumedSegments:[],lastChild:0,parameters:{}}}var r=(e.matcher||Ic)(n,t,e);if(!r)throw new ip;var o={};zc(r.posParams,function(t,e){o[e]=t.path});var s=r.consumed.length>0?i({},o,r.consumed[r.consumed.length-1].parameters):o;return{consumedSegments:r.consumed,lastChild:r.consumed.length,parameters:s}}(e,t,n);s=u.consumedSegments,a=n.slice(u.lastChild),o=new yh(s,u.parameters,Object.freeze(i({},this.urlTree.queryParams)),this.urlTree.fragment,pp(t),r,t.component,t,ap(e),lp(e)+s.length,dp(t))}var c=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),h=up(e,s,a,c,this.relativeLinkResolution),p=h.segmentGroup,d=h.slicedSegments;if(0===d.length&&p.hasChildren()){var f=this.processChildren(c,p);return[new hh(o,f)]}if(0===c.length&&0===d.length)return[new hh(o,[])];var g=this.processSegment(c,p,d,Ec);return[new hh(o,g)]},t}();function ap(t){for(var e=t;e._sourceSegment;)e=e._sourceSegment;return e}function lp(t){for(var e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;e._sourceSegment;)n+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return n-1}function up(t,e,n,r,o){if(n.length>0&&function(t,e,n){return r.some(function(n){return cp(t,e,n)&&hp(n)!==Ec})}(t,n)){var s=new Bc(e,function(t,e,n,r){var o,i,s={};s[Ec]=r,r._sourceSegment=t,r._segmentIndexShift=e.length;try{for(var a=c(n),l=a.next();!l.done;l=a.next()){var u=l.value;if(""===u.path&&hp(u)!==Ec){var h=new Bc([],{});h._sourceSegment=t,h._segmentIndexShift=e.length,s[hp(u)]=h}}}catch(p){o={error:p}}finally{try{l&&!l.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return s}(t,e,r,new Bc(n,t.children)));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return r.some(function(n){return cp(t,e,n)})}(t,n)){var a=new Bc(t.segments,function(t,e,n,r,o,s){var a,l,u={};try{for(var h=c(r),p=h.next();!p.done;p=h.next()){var d=p.value;if(cp(t,n,d)&&!o[hp(d)]){var f=new Bc([],{});f._sourceSegment=t,f._segmentIndexShift="legacy"===s?t.segments.length:e.length,u[hp(d)]=f}}}catch(g){a={error:g}}finally{try{p&&!p.done&&(l=h.return)&&l.call(h)}finally{if(a)throw a.error}}return i({},o,u)}(t,e,n,r,t.children,o));return a._sourceSegment=t,a._segmentIndexShift=e.length,{segmentGroup:a,slicedSegments:n}}var l=new Bc(t.segments,t.children);return l._sourceSegment=t,l._segmentIndexShift=e.length,{segmentGroup:l,slicedSegments:n}}function cp(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function hp(t){return t.outlet||Ec}function pp(t){return t.data||{}}function dp(t){return t.resolve||{}}function fp(t,e,n,r){var o=Qh(t,e,r);return Uc(o.resolve?o.resolve(e,n):o(e,n))}function gp(t){return function(e){return e.pipe(zl(function(e){var n=t(e);return n?nt(n).pipe(K(function(){return e})):nt([e])}))}}var vp=function(){return function(){}}(),yp=function(){function t(){}return t.prototype.shouldDetach=function(t){return!1},t.prototype.store=function(t,e){},t.prototype.shouldAttach=function(t){return!1},t.prototype.retrieve=function(t){return null},t.prototype.shouldReuseRoute=function(t,e){return t.routeConfig===e.routeConfig},t}(),mp=new Ut("ROUTES"),_p=function(){function t(t,e,n,r){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=r}return t.prototype.load=function(t,e){var n=this;return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(K(function(r){n.onLoadEndListener&&n.onLoadEndListener(e);var o=r.create(t);return new Rc(Vc(o.injector.get(mp)).map(Dc),o)}))},t.prototype.loadModuleFactory=function(t){var e=this;return"string"==typeof t?nt(this.loader.load(t)):Uc(t()).pipe(rt(function(t){return t instanceof cn?ol(t):nt(e.compiler.compileModuleAsync(t))}))},t}(),bp=function(){return function(){}}(),wp=function(){function t(){}return t.prototype.shouldProcessUrl=function(t){return!0},t.prototype.extract=function(t){return t},t.prototype.merge=function(t,e){return t},t}();function Cp(t){throw t}function xp(t,e,n){return e.parse("/")}function Sp(t,e){return ol(null)}var Ep=function(){function t(t,e,n,r,o,i,s,a){var l=this;this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=r,this.config=a,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new V,this.errorHandler=Cp,this.malformedUriErrorHandler=xp,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Sp,afterPreactivation:Sp},this.urlHandlingStrategy=new wp,this.routeReuseStrategy=new yp,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=o.get(un),this.console=o.get(Go);var u=o.get(li);this.isNgZoneEnabled=u instanceof li,this.resetConfig(a),this.currentUrlTree=new Hc(new Bc([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new _p(i,s,function(t){return l.triggerEvent(new yc(t))},function(t){return l.triggerEvent(new mc(t))}),this.routerState=fh(this.currentUrlTree,this.rootComponentType),this.transitions=new il({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return t.prototype.setupNavigations=function(t){var e=this,n=this.events;return t.pipe(dl(function(t){return 0!==t.id}),K(function(t){return i({},t,{extractedUrl:e.urlHandlingStrategy.extract(t.rawUrl)})}),zl(function(t){var r,o,s,a,l=!1,u=!1;return ol(t).pipe(wl(function(t){e.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:e.lastSuccessfulNavigation?i({},e.lastSuccessfulNavigation,{previousNavigation:null}):null}}),zl(function(t){var r,o,s,a,l=!e.navigated||t.extractedUrl.toString()!==e.browserUrlTree.toString();if(("reload"===e.onSameUrlNavigation||l)&&e.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return ol(t).pipe(zl(function(t){var r=e.transitions.getValue();return n.next(new lc(t.id,e.serializeUrl(t.extractedUrl),t.source,t.restoredState)),r!==e.transitions.getValue()?el:[t]}),zl(function(t){return Promise.resolve(t)}),(r=e.ngModule.injector,o=e.configLoader,s=e.urlSerializer,a=e.config,function(t){return t.pipe(zl(function(t){return function(e,n,r,o,i){return new Bh(e,n,r,t.extractedUrl,i).apply()}(r,o,s,0,a).pipe(K(function(e){return i({},t,{urlAfterRedirects:e})}))}))}),wl(function(t){e.currentNavigation=i({},e.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,n,r,o,s){return function(r){return r.pipe(rt(function(r){return function(t,e,n,r,o,i){return void 0===o&&(o="emptyOnly"),void 0===i&&(i="legacy"),new sp(t,e,n,r,o,i).recognize()}(t,n,r.urlAfterRedirects,(a=r.urlAfterRedirects,e.serializeUrl(a)),o,s).pipe(K(function(t){return i({},r,{targetSnapshot:t})}));var a}))}}(e.rootComponentType,e.config,0,e.paramsInheritanceStrategy,e.relativeLinkResolution),wl(function(t){"eager"===e.urlUpdateStrategy&&(t.extras.skipLocationChange||e.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),e.browserUrlTree=t.urlAfterRedirects)}),wl(function(t){var r=new pc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);n.next(r)}));if(l&&e.rawUrlTree&&e.urlHandlingStrategy.shouldProcessUrl(e.rawUrlTree)){var u=t.extractedUrl,c=t.source,h=t.restoredState,p=t.extras,d=new lc(t.id,e.serializeUrl(u),c,h);n.next(d);var f=fh(u,e.rootComponentType).snapshot;return ol(i({},t,{targetSnapshot:f,urlAfterRedirects:u,extras:i({},p,{skipLocationChange:!1,replaceUrl:!1})}))}return e.rawUrlTree=t.rawUrl,e.browserUrlTree=t.urlAfterRedirects,t.resolve(null),el}),gp(function(t){var n=t.extras;return e.hooks.beforePreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),wl(function(t){var n=new dc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),K(function(t){return i({},t,{guards:(n=t.targetSnapshot,r=t.currentSnapshot,o=e.rootContexts,s=n._root,Xh(s,r?r._root:null,o,[s.value]))});var n,r,o,s}),function(t,e){return function(n){return n.pipe(rt(function(n){var r=n.targetSnapshot,o=n.currentSnapshot,s=n.guards,a=s.canActivateChecks,l=s.canDeactivateChecks;return 0===l.length&&0===a.length?ol(i({},n,{guardsResult:!0})):function(t,e,n,r){return nt(l).pipe(rt(function(t){return function(t,e,n,r,o){var i=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return i&&0!==i.length?ol(i.map(function(i){var s,a=Qh(i,e,o);if(function(t){return t&&jh(t.canDeactivate)}(a))s=Uc(a.canDeactivate(t,e,n,r));else{if(!jh(a))throw new Error("Invalid CanDeactivate guard");s=Uc(a(t,e,n,r))}return s.pipe(jl())})).pipe(tp()):ol(!0)}(t.component,t.route,n,e,r)}),jl(function(t){return!0!==t},!0))}(0,r,o,t).pipe(rt(function(n){return n&&"boolean"==typeof n?function(t,e,n,r){return nt(a).pipe(ql(function(e){return nt([np(e.route.parent,r),ep(e.route,r),op(t,e.path,n),rp(t,e.route,n)]).pipe(pl(),jl(function(t){return!0!==t},!0))}),jl(function(t){return!0!==t},!0))}(r,0,t,e):ol(n)}),K(function(t){return i({},n,{guardsResult:t})}))}))}}(e.ngModule.injector,function(t){return e.triggerEvent(t)}),wl(function(t){if(Vh(t.guardsResult)){var n=Tc('Redirecting to "'+e.serializeUrl(t.guardsResult)+'"');throw n.url=t.guardsResult,n}}),wl(function(t){var n=new fc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);e.triggerEvent(n)}),dl(function(t){if(!t.guardsResult){e.resetUrlToCurrentUrlTree();var r=new cc(t.id,e.serializeUrl(t.extractedUrl),"");return n.next(r),t.resolve(!1),!1}return!0}),gp(function(t){if(t.guards.canActivateChecks.length)return ol(t).pipe(wl(function(t){var n=new gc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}),(n=e.paramsInheritanceStrategy,r=e.ngModule.injector,function(t){return t.pipe(rt(function(t){var e=t.targetSnapshot,o=t.guards.canActivateChecks;return o.length?nt(o).pipe(ql(function(t){return function(t,n,r,o){return function(t,e,n,r){var o=Object.keys(t);if(0===o.length)return ol({});if(1===o.length){var i=o[0];return fp(t[i],e,n,r).pipe(K(function(t){var e;return(e={})[i]=t,e}))}var s={};return nt(o).pipe(rt(function(o){return fp(t[o],e,n,r).pipe(K(function(t){return s[o]=t,t}))})).pipe(Tl(),K(function(){return s}))}(t._resolve,t,e,o).pipe(K(function(e){return t._resolvedData=e,t.data=i({},t.data,vh(t,r).resolve),null}))}(t.route,0,n,r)}),function(t,e){return arguments.length>=2?function(e){return T(Wl(t,void 0),ml(1),Ol(void 0))(e)}:function(e){return T(Wl(function(e,n,r){return t(e)}),ml(1))(e)}}(function(t,e){return t}),K(function(e){return t})):ol(t)}))}),wl(function(t){var n=new vc(t.id,e.serializeUrl(t.extractedUrl),e.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.triggerEvent(n)}));var n,r}),gp(function(t){var n=t.extras;return e.hooks.afterPreactivation(t.targetSnapshot,{navigationId:t.id,appliedUrlTree:t.extractedUrl,rawUrlTree:t.rawUrl,skipLocationChange:!!n.skipLocationChange,replaceUrl:!!n.replaceUrl})}),K(function(t){var n,r,o,s=(o=function t(e,n,r){if(r&&e.shouldReuseRoute(n.value,r.value.snapshot)){(l=r.value)._futureSnapshot=n.value;var o=function(e,n,r){return n.children.map(function(n){var o,i;try{for(var s=c(r.children),a=s.next();!a.done;a=s.next()){var l=a.value;if(e.shouldReuseRoute(l.value.snapshot,n.value))return t(e,n,l)}}catch(u){o={error:u}}finally{try{a&&!a.done&&(i=s.return)&&i.call(s)}finally{if(o)throw o.error}}return t(e,n)})}(e,n,r);return new hh(l,o)}var i=e.retrieve(n.value);if(i){var s=i.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(var r=0;ra;){if(l-=a,!(s=s.parent))throw new Error("Invalid number of '../'");a=s.segments.length}return new Oh(s,!1,a-l)}()}(i,0,t),a=s.processChildren?Th(s.segmentGroup,s.index,i.commands):Ph(s.segmentGroup,s.index,i.commands);return Sh(s.segmentGroup,a,e,r,o)}(u,this.currentUrlTree,t,h,c)},t.prototype.navigateByUrl=function(t,e){void 0===e&&(e={skipLocationChange:!1}),ge()&&this.isNgZoneEnabled&&!li.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");var n=Vh(t)?t:this.parseUrl(t),r=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,e)},t.prototype.navigate=function(t,e){return void 0===e&&(e={skipLocationChange:!1}),function(t){for(var e=0;et.name.length?e:t},{id:"",name:""}),this.filter())},t.prototype.ngAfterViewInit=function(){this.resize()},t.prototype.trackByFn=function(t,e){return e?"string"==typeof e?e:e.id:t},t.prototype.resize=function(){this.reference&&this.reference.nativeElement&&(this.font_size=this.reference.nativeElement.clientHeight,this.width=this.reference.nativeElement.clientWidth+1)},t.prototype.filter=function(){var t=this;if(this.list&&(this.filtered_items=this.list,this.options&&this.options.can_filter&&this.search&&(this.filtered_items=this.filtered_items.filter(function(e){return("string"==typeof e?e:e.name).toLowerCase().indexOf(t.search.toLowerCase())>=0})),this.options&&this.options.hide_active&&this.selected)){var e="string"==typeof this.selected?this.selected:this.selected.id;this.filtered_items=this.filtered_items.filter(function(t){return("string"==typeof t?t:t.id).indexOf(e)<0})}},t.prototype.toggleShow=function(){var t=this;this.show=!this.show,this.show&&this.updateScroll(),this.cancelClose(),setTimeout(function(){t.input&&t.input.nativeElement.focus()},100)},t.prototype.updateScroll=function(){var t=this;if(!this.viewport||!this.scroll_el)return setTimeout(function(){return t.updateScroll()},50);this.viewport.elementRef.nativeElement.scroll_viewport=this.viewport;var e="string"==typeof this.selected?this.selected:this.selected?this.selected.id:null;this.viewport.scrollToIndex(this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)===e}))},t.prototype.select=function(t){this.selected=t,this.show=!1,this._onChange&&this._onChange(this.selected)},t.prototype.change=function(t){var e=this,n="string"==typeof this.selected?this.selected:this.selected.id,r=this.filtered_items.findIndex(function(t){return("string"==typeof t?t:t.id)==n})+t;r>=0&&r1?Array.prototype.slice.call(arguments):t)},r,n)})}var ld=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r.pending=!1,r}return o(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,r=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(r,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(r,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,r=void 0;try{this.work(t)}catch(o){n=!0,r=!!o&&o||new Error(o)}if(n)return this.unsubscribe(),r},e.prototype._unsubscribe=function(){var t=this.id,e=this.scheduler,n=e.actions,r=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==r&&n.splice(r,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 o(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(m)),ud=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(e,t),e.prototype.requestAsyncId=function(e,n,r){return void 0===r&&(r=0),null!==r&&r>0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame(function(){return e.flush(null)})))},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(cancelAnimationFrame(n),e.scheduled=void 0)},e}(ld),cd=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}(),hd=function(t){function e(n,r){void 0===r&&(r=cd.now);var o=t.call(this,n,function(){return e.delegate&&e.delegate!==o?e.delegate.now():r()})||this;return o.actions=[],o.active=!1,o.scheduled=void 0,o}return o(e,t),e.prototype.schedule=function(n,r,o){return void 0===r&&(r=0),e.delegate&&e.delegate!==this?e.delegate.schedule(n,r,o):t.prototype.schedule.call(this,n,r,o)},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}(cd),pd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r0?t.prototype.requestAsyncId.call(this,e,n,r):(e.actions.push(this),e.scheduled||(e.scheduled=(o=e.flush.bind(e,null),i=dd++,fd[i]=o,Promise.resolve().then(function(){return function(t){var e=fd[t];e&&e()}(i)}),i)));var o,i},e.prototype.recycleAsyncId=function(e,n,r){if(void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,r);0===e.actions.length&&(delete fd[n],e.scheduled=void 0)},e}(ld),vd=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,r=-1,o=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++r=0}function xd(t){var e=t.index,n=t.period,r=t.subscriber;if(r.next(e),!r.closed){if(-1===n)return r.complete();t.index=e+1,this.schedule(t,n)}}function Sd(t,e){return void 0===e&&(e=_d),n=function(){return function(t,e,n){void 0===t&&(t=0);var r=-1;return Cd(e)?r=Number(e)<1?1:Number(e):z(e)&&(n=e),z(n)||(n=_d),new R(function(e){var o=Cd(t)?t:+t-n.now();return n.schedule(xd,o,{index:0,period:r,subscriber:e})})}(t,e)},function(t){return t.lift(new bd(n))};var n}function Ed(t){return function(e){return e.lift(new kd(t))}}var Od,kd=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new Pd(t),r=Q(n,this.notifier);return r&&!n.seenValue?(n.add(r),e.subscribe(n)):n},t}(),Pd=function(t){function e(e){var n=t.call(this,e)||this;return n.seenValue=!1,n}return o(e,t),e.prototype.notifyNext=function(t,e,n,r,o){this.seenValue=!0,this.complete()},e.prototype.notifyComplete=function(){},e}(X),Td=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new Id(t))},t}(),Id=function(t){function e(e){var n=t.call(this,e)||this;return n.hasPrev=!1,n}return o(e,t),e.prototype._next=function(t){this.hasPrev?this.destination.next([this.prev,t]):this.hasPrev=!0,this.prev=t},e}(E),Rd=function(t){function e(e,n){var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r}return o(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,r){return void 0===r&&(r=0),null!==r&&r>0||null===r&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,r):e.flush(this)},e}(ld),Ad=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e}(hd))(Rd);function Md(t,e){return new R(e?function(n){return e.schedule(Nd,0,{error:t,subscriber:n})}:function(e){return e.error(t)})}function Nd(t){t.subscriber.error(t.error)}Od||(Od={});var Dd,jd=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 ol(this.value);case"E":return Md(this.error);case"C":return nl()}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}(),Vd=function(t){function e(e,n,r){void 0===r&&(r=0);var o=t.call(this,e)||this;return o.scheduler=n,o.delay=r,o}return o(e,t),e.dispatch=function(t){t.notification.observe(t.destination),this.unsubscribe()},e.prototype.scheduleMessage=function(t){this.destination.add(this.scheduler.schedule(e.dispatch,this.delay,new Ld(t,this.destination)))},e.prototype._next=function(t){this.scheduleMessage(jd.createNext(t))},e.prototype._error=function(t){this.scheduleMessage(jd.createError(t)),this.unsubscribe()},e.prototype._complete=function(){this.scheduleMessage(jd.createComplete()),this.unsubscribe()},e}(E),Ld=function(){return function(t,e){this.notification=t,this.destination=e}}(),zd=function(t){function e(e,n,r){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=Number.POSITIVE_INFINITY);var o=t.call(this)||this;return o.scheduler=r,o._events=[],o._infiniteTimeWindow=!1,o._bufferSize=e<1?1:e,o._windowTime=n<1?1:n,n===Number.POSITIVE_INFINITY?(o._infiniteTimeWindow=!0,o.next=o.nextInfiniteTimeWindow):o.next=o.nextTimeWindow,o}return o(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 Ud(this._getNow(),e)),this._trimBufferThenGetEvents(),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,n=this._infiniteTimeWindow,r=n?this._events:this._trimBufferThenGetEvents(),o=this.scheduler,i=r.length;if(this.closed)throw new N;if(this.isStopped||this.hasError?e=m.EMPTY:(this.observers.push(t),e=new D(this,t)),o&&t.add(t=new Vd(t,o)),n)for(var s=0;se&&(i=Math.max(i,o-e)),i>0&&r.splice(0,i),r},e}(V),Ud=function(){return function(t,e){this.time=t,this.value=e}}();try{Dd="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(Pm){Dd=!1}var Fd,Hd=function(){function t(t){this._platformId=t,this.isBrowser=this._platformId?Ka(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&&!Dd)&&"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.ngInjectableDef=Ot({factory:function(){return new t(Lt(Bo,8))},token:t,providedIn:"root"}),t}(),Bd=function(){return function(){}}(),Wd=function(){var t={NORMAL:0,NEGATED:1,INVERTED:2};return t[t.NORMAL]="NORMAL",t[t.NEGATED]="NEGATED",t[t.INVERTED]="INVERTED",t}();function Gd(){if("object"!=typeof document||!document)return Wd.NORMAL;if(!Fd){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"),r=n.style;r.width="2px",r.height="1px",t.appendChild(n),document.body.appendChild(t),Fd=Wd.NORMAL,0===t.scrollLeft&&(t.scrollLeft=1,Fd=0===t.scrollLeft?Wd.NEGATED:Wd.INVERTED),t.parentNode.removeChild(t)}return Fd}var Yd=function(t){function e(e){var n=t.call(this)||this;return n._data=e,n}return o(e,t),e.prototype.connect=function(){return this._data instanceof R?this._data:ol(this._data)},e.prototype.disconnect=function(){},e}(function(){return function(){}}()),qd=new Ut("VIRTUAL_SCROLL_STRATEGY"),Zd=function(){function t(t,e,n){this._scrolledIndexChange=new V,this.scrolledIndexChange=this._scrolledIndexChange.pipe(function(t){return t.lift(new yd(void 0,void 0))}),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(n0&&(r.end=Math.min(i,r.end+u),r.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(r),this._viewport.setRenderedContentOffset(this._itemSize*r.start),this._scrolledIndexChange.next(Math.floor(e))}},t}();function $d(t){return t._scrollStrategy}var Qd=function(){function t(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new Zd(this.itemSize,this.minBufferPx,this.maxBufferPx)}return Object.defineProperty(t.prototype,"itemSize",{get:function(){return this._itemSize},set:function(t){this._itemSize=od(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minBufferPx",{get:function(){return this._minBufferPx},set:function(t){this._minBufferPx=od(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxBufferPx",{get:function(){return this._maxBufferPx},set:function(t){this._maxBufferPx=od(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)},t}(),Xd=function(){function t(t,e){this._ngZone=t,this._platform=e,this._scrolled=new V,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map}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 R(function(n){e._globalSubscription||e._addGlobalListener();var r=t>0?e._scrolled.pipe(Sd(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){r.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):ol()},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(dl(function(t){return!t||n.indexOf(t)>-1}))},t.prototype.getAncestorScrollContainers=function(t){var e=this,n=[];return this.scrollContainers.forEach(function(r,o){e._scrollableContainsElement(o,t)&&n.push(o)}),n},t.prototype._scrollableContainsElement=function(t,e){var n=e.nativeElement,r=t.getElementRef().nativeElement;do{if(n==r)return!0}while(n=n.parentElement);return!1},t.prototype._addGlobalListener=function(){var t=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){return ad(window.document,"scroll").subscribe(function(){return t._scrolled.next()})})},t.prototype._removeGlobalListener=function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(li),Lt(Hd))},token:t,providedIn:"root"}),t}(),Kd=function(){function t(t,e,n,r){var o=this;this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=r,this._destroyed=new V,this._elementScrolled=new R(function(t){return o.ngZone.runOutsideAngular(function(){return ad(o.elementRef.nativeElement,"scroll").pipe(Ed(o._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;t.left=null==t.left?n?t.end:t.start:t.left,t.right=null==t.right?n?t.start:t.end:t.right,null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&Gd()!=Wd.NORMAL?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),Gd()==Wd.INVERTED?t.left=t.right:Gd()==Wd.NEGATED&&(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"==typeof document&&"scrollBehavior"in document.documentElement.style?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&&Gd()==Wd.INVERTED?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&Gd()==Wd.NEGATED?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft},t}(),Jd="undefined"!=typeof requestAnimationFrame?pd:vd,tf=function(t){function e(e,n,r,o,i,s){var a=t.call(this,e,s,r,i)||this;if(a.elementRef=e,a._changeDetectorRef=n,a._scrollStrategy=o,a._detachedSubject=new V,a._renderedRangeSubject=new V,a.orientation="vertical",a.scrolledIndexChange=new R(function(t){return a._scrollStrategy.scrolledIndexChange.subscribe(function(e){return Promise.resolve().then(function(){return a.ngZone.run(function(){return t.next(e)})})})}),a.renderedRangeStream=a._renderedRangeSubject.asObservable(),a._totalContentSizeTransform="",a._totalContentSize=0,a._renderedRange={start:0,end:0},a._dataLength=0,a._viewportSize=0,a._renderedContentOffset=0,a._renderedContentOffsetNeedsRewrite=!1,a._isChangeDetectionPending=!1,a._runAfterChangeDetection=[],!o)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.');return a}return o(e,t),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(Bl(null),Sd(0,Jd)).subscribe(function(){return e._scrollStrategy.onContentScrolled()}),e._markChangeDetectionNeeded()})})},e.prototype.ngOnDestroy=function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),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(Ed(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._totalContentSizeTransform="scale"+("horizontal"==this.orientation?"X":"Y")+"("+this._totalContentSize+")",this._markChangeDetectionNeeded())},e.prototype.setRenderedRange=function(t){var e,n,r=this;((e=this._renderedRange).start!=(n=t).start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(function(){return r._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 r="horizontal"==this.orientation,o=r?"X":"Y",i="translate"+o+"("+Number((r&&this.dir&&"rtl"==this.dir.value?-1:1)*t)+"px)";this._renderedContentOffset=t,"to-end"===e&&(i+=" translate"+o+"(-100%)",this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=i&&(this._renderedContentTransform=i,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 t.prototype.measureScrollOffset.call(this,e||("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=this;this._isChangeDetectionPending=!1,this.ngZone.run(function(){return t._changeDetectorRef.markForCheck()}),this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform;var e=this._runAfterChangeDetection;this._runAfterChangeDetection=[];for(var n=0,r=e;n=t.end)return 0;if(t.startthis._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");for(var n=t.start-this._renderedRange.start,r=0,o=t.end-t.start;o--;)for(var i=this._viewContainerRef.get(o+n),s=i?i.rootNodes.length:0;s--;)r+=ef(e,i.rootNodes[s]);return r},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(){this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();for(var t=0,e=this._templateCache;t0?this._change.pipe(Sd(t)):this._change},t.prototype._updateViewportSize=function(){this._viewportSize=this._platform.isBrowser?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0}},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Hd),Lt(li))},token:t,providedIn:"root"}),t}();function sf(){throw Error("Host already has a portal attached")}var af=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()&&sf(),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}(),lf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.component=e,i.viewContainerRef=n,i.injector=r,i.componentFactoryResolver=o,i}return o(e,t),e}(af),uf=function(t){function e(e,n,r){var o=t.call(this)||this;return o.templateRef=e,o.viewContainerRef=n,o.context=r,o}return o(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}(af),cf=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.outletElement=e,i._componentFactoryResolver=n,i._appRef=r,i._defaultInjector=o,i}return o(e,t),e.prototype.attachComponentPortal=function(t){var e,n=this,r=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);return t.viewContainerRef?(e=t.viewContainerRef.createComponent(r,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(function(){return e.destroy()})):(e=r.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,r=n.createEmbeddedView(t.templateRef,t.context);return r.detectChanges(),r.rootNodes.forEach(function(t){return e.outletElement.appendChild(t)}),this.setDisposeFn(function(){var t=n.indexOf(r);-1!==t&&n.remove(t)}),r},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}(function(){function t(){this._isDisposed=!1}return t.prototype.hasAttached=function(){return!!this._attachedPortal},t.prototype.attach=function(t){return t||function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&sf(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof lf?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof uf?(this._attachedPortal=t,this.attachTemplatePortal(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}()),hf=function(){return function(){}}(),pf=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=sd(-this._previousScrollPosition.left),t.style.top=sd(-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=t.style,n=this._document.body.style,r=e.scrollBehavior||"",o=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),e.scrollBehavior=n.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),e.scrollBehavior=r,n.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}();function df(){return Error("Scroll strategy has already been attached.")}var ff=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return t.prototype.attach=function(t){if(this._overlayRef)throw df();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}(),gf=function(){function t(){}return t.prototype.enable=function(){},t.prototype.disable=function(){},t.prototype.attach=function(){},t}();function vf(t,e){return e.some(function(e){return t.bottome.bottom||t.righte.right})}function yf(t,e){return e.some(function(e){return t.tope.bottom||t.lefte.right})}var mf=function(){function t(t,e,n,r){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=r,this._scrollSubscription=null}return t.prototype.attach=function(t){if(this._overlayRef)throw df();this._overlayRef=t},t.prototype.enable=function(){var t=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(t._overlayRef.updatePosition(),t._config&&t._config.autoClose){var e=t._overlayRef.overlayElement.getBoundingClientRect(),n=t._viewportRuler.getViewportSize(),r=n.width,o=n.height;vf(e,[{width:r,height:o,bottom:o,right:r,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}(),_f=function(){function t(t,e,n,r){var o=this;this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=function(){return new gf},this.close=function(t){return new ff(o._scrollDispatcher,o._ngZone,o._viewportRuler,t)},this.block=function(){return new pf(o._viewportRuler,o._document)},this.reposition=function(t){return new mf(o._scrollDispatcher,o._viewportRuler,o._ngZone,t)},this._document=r}return t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Xd),Lt(of),Lt(li),Lt($a))},token:t,providedIn:"root"}),t}(),bf=function(){return function(t){var e=this;this.scrollStrategy=new gf,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t&&Object.keys(t).forEach(function(n){void 0!==t[n]&&(e[n]=t[n])})}}(),wf=function(){return function(t,e,n,r,o){this.offsetX=n,this.offsetY=r,this.panelClass=o,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}(),Cf=function(){return function(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}();function xf(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "top", "bottom" or "center".')}function Sf(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "start", "end" or "center".')}var Ef=function(){function t(t){var e=this;this._attachedOverlays=[],this._keydownListener=function(t){for(var n=e._attachedOverlays,r=n.length-1;r>-1;r--)if(n[r]._keydownEventSubscriptions>0){n[r]._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.ngInjectableDef=Ot({factory:function(){return new t(Lt($a))},token:t,providedIn:"root"}),t}(),Of=function(){function t(t){this._document=t}return t.prototype.ngOnDestroy=function(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)},t.prototype.getContainerElement=function(){return this._containerElement||this._createContainer(),this._containerElement},t.prototype._createContainer=function(){var t=this._document.createElement("div");t.classList.add("cdk-overlay-container"),this._document.body.appendChild(t),this._containerElement=t},t.ngInjectableDef=Ot({factory:function(){return new t(Lt($a))},token:t,providedIn:"root"}),t}(),kf=function(){function t(t,e,n,r,o,i,s,a){var l=this;this._portalOutlet=t,this._host=e,this._pane=n,this._config=r,this._ngZone=o,this._keyboardDispatcher=i,this._document=s,this._location=a,this._backdropElement=null,this._backdropClick=new V,this._attachments=new V,this._detachments=new V,this._locationChanges=m.EMPTY,this._keydownEventsObservable=new R(function(t){var e=l._keydownEvents.subscribe(t);return l._keydownEventSubscriptions++,function(){e.unsubscribe(),l._keydownEventSubscriptions--}}),this._keydownEvents=new V,this._keydownEventSubscriptions=0,r.scrollStrategy&&(this._scrollStrategy=r.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=r.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._positionStrategy&&this._positionStrategy.attach(this),!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Ml(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=i({},this._config,t),this._updateElementSize()},t.prototype.setDirection=function(t){this._config=i({},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(){var t=this._pane.style;t.width=sd(this._config.width),t.height=sd(this._config.height),t.minWidth=sd(this._config.minWidth),t.minHeight=sd(this._config.minHeight),t.maxWidth=sd(this._config.maxWidth),t.maxHeight=sd(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",function(e){return t._backdropClick.next(e)}),"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,r=function(){e&&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",r)}),e.style.pointerEvents="none",n=this._ngZone.runOutsideAngular(function(){return setTimeout(r,500)})}},t.prototype._toggleClasses=function(t,e,n){var r=t.classList;id(e).forEach(function(t){n?r.add(t):r.remove(t)})},t.prototype._detachContentWhenStable=function(){var t=this;this._ngZone.runOutsideAngular(function(){var e=t._ngZone.onStable.asObservable().pipe(Ed(lt(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}(),Pf=function(){function t(t,e,n,r,o){this._viewportRuler=e,this._document=n,this._platform=r,this._overlayContainer=o,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 V,this._resizeSubscription=m.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(){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();for(var t,e=this._originRect,n=this._overlayRect,r=this._viewportRect,o=[],i=0,s=this._preferredPositions;ip&&(p=v,h=g)}return this._isPushed=!1,void this._applyPosition(h.position,h.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(t.position,t.originPoint);this._applyPosition(t.position,t.originPoint)}},t.prototype.detach=function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()},t.prototype.dispose=function(){this._isDisposed||(this._boundingBox&&Tf(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 r=this._isRtl()?t.right:t.left,o=this._isRtl()?t.left:t.right;n="start"==e.originX?r:o}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 r;return r="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,{x:t.x+r,y:t.y+("center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height)}},t.prototype._getOverlayFit=function(t,e,n,r){var o=t.x,i=t.y,s=this._getOffset(r,"x"),a=this._getOffset(r,"y");s&&(o+=s),a&&(i+=a);var l=0-i,u=i+e.height-n.height,c=this._subtractOverflows(e.width,0-o,o+e.width-n.width),h=this._subtractOverflows(e.height,l,u),p=c*h;return{visibleArea:p,isCompletelyWithinViewport:e.width*e.height===p,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:c==e.width}},t.prototype._canFitWithFlexibleDimensions=function(t,e,n){if(this._hasFlexibleDimensions){var r=n.bottom-e.y,o=n.right-e.x,i=this._overlayRef.getConfig().minHeight,s=this._overlayRef.getConfig().minWidth;return(t.fitsInViewportVertically||null!=i&&i<=r)&&(t.fitsInViewportHorizontally||null!=s&&s<=o)}},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 r,o,i=this._viewportRect,s=Math.max(t.x+e.width-i.right,0),a=Math.max(t.y+e.height-i.bottom,0),l=Math.max(i.top-n.top-t.y,0),u=Math.max(i.left-n.left-t.x,0);return this._previousPushAmount={x:r=e.width<=i.width?u||-s:t.xh&&!this._isInitialRender&&!this._growAfterOpen&&(r=t.y-h/2)}if("end"===e.overlayX&&!u||"start"===e.overlayX&&u)a=l.right-t.x+this._viewportMargin,i=t.x-l.left;else if("start"===e.overlayX&&!u||"end"===e.overlayX&&u)s=t.x,i=l.right-t.x;else{c=Math.min(l.right-t.x+l.left,t.x);var p=this._lastBoundingBoxSize.width;s=t.x-c,(i=2*c)>p&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.x-p/2)}return{top:r,left:s,bottom:o,right:a,width:i,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 r={};if(this._hasExactPosition())r.top=r.left="0",r.bottom=r.right="",r.width=r.height="100%";else{var o=this._overlayRef.getConfig().maxHeight,i=this._overlayRef.getConfig().maxWidth;r.height=sd(n.height),r.top=sd(n.top),r.bottom=sd(n.bottom),r.width=sd(n.width),r.left=sd(n.left),r.right=sd(n.right),r.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",r.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",o&&(r.maxHeight=sd(o)),i&&(r.maxWidth=sd(i))}this._lastBoundingBoxSize=n,Tf(this._boundingBox.style,r)},t.prototype._resetBoundingBoxStyles=function(){Tf(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})},t.prototype._resetOverlayElementStyles=function(){Tf(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})},t.prototype._setOverlayElementStyles=function(t,e){var n={};if(this._hasExactPosition()){var r=this._viewportRuler.getViewportScrollPosition();Tf(n,this._getExactOverlayY(e,t,r)),Tf(n,this._getExactOverlayX(e,t,r))}else n.position="static";var o="",i=this._getOffset(e,"x"),s=this._getOffset(e,"y");i&&(o+="translateX("+i+"px) "),s&&(o+="translateY("+s+"px)"),n.transform=o.trim(),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxHeight&&(n.maxHeight=""),this._hasFlexibleDimensions&&this._overlayRef.getConfig().maxWidth&&(n.maxWidth=""),Tf(this._pane.style,n)},t.prototype._getExactOverlayY=function(t,e,n){var r={top:null,bottom:null},o=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n));var i=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return o.y-=i,"bottom"===t.overlayY?r.bottom=this._document.documentElement.clientHeight-(o.y+this._overlayRect.height)+"px":r.top=sd(o.y),r},t.prototype._getExactOverlayX=function(t,e,n){var r={left:null,right:null},o=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,n)),"right"==(this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")?r.right=this._document.documentElement.clientWidth-(o.x+this._overlayRect.width)+"px":r.left=sd(o.x),r},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:yf(t,n),isOriginOutsideView:vf(t,n),isOverlayClipped:yf(e,n),isOverlayOutsideView:vf(e,n)}},t.prototype._subtractOverflows=function(t){for(var e=[],n=1;n0?p(this.events,[t]):[t],this.displayed_events=this.events.slice(-8),t.close=function(){return e.remove(t.id)},0!==t.delay&&setTimeout(function(){return e.remove(t.id)},t.delay||this.delay||5e3))},t.prototype.remove=function(t){this.events=this.events.filter(function(e){return e.id!==t}),this.displayed_events=this.events.slice(-8)},t.prototype.action=function(t){t.action&&t.on_action&&t.on_action instanceof Function?t.on_action({type:"other",data:t}):this.remove(t.id)},t.prototype.grab=function(t,e){var n=this,r=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;this.offset=r,t.offset=0,t.listeners={mousemove:this.renderer.listen("window","mousemove",function(e){return n.pull(t,e)}),touchmove:this.renderer.listen("window","touchmove",function(e){return n.pull(t,e)}),mouseup:this.renderer.listen("window","mouseup",function(e){return n.release(t)}),touchend:this.renderer.listen("window","touchend",function(e){return n.release(t)})}},t.prototype.pull=function(t,e){var n=e instanceof MouseEvent?e.clientX:e.touches[0].clientX;t.offset=Math.max(0,n-this.offset)},t.prototype.release=function(t){for(var e in t.offset>128&&this.remove(t.id),t.listeners)t.listeners[e]&&t.listeners[e]();t.offset=0},t.prototype.trackByFn=function(t,e){return(t?t.id:null)||e},t}(),Wf=function(){function t(t,e){this.overlay=t,this.injector=e,this._refs={},this._presets={},this._notify={},this.timers={},this._notify.add=new V,this._notify.remove=new V,this._notify.delay=new V,this.registerPreset("default",new bf({minWidth:2,minHeight:2,hasBackdrop:!1,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.noop(),disposeOnNavigation:!0})),this.registerPreset("modal",new bf({minWidth:2,minHeight:2,hasBackdrop:!0,backdropClass:"overlay-backdrop",positionStrategy:this.overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:this.overlay.scrollStrategies.block(),disposeOnNavigation:!0})),this.loadNotificationsOutlet()}return t.prototype.register=function(t,e){return this._refs[t]&&this._refs[t].close(),this._refs[t]=new Hf(t,this,this.injector,this.overlay,e),this._refs[t]},t.prototype.open=function(t,e,n,r){if(e.config?e.config instanceof bf||(e.config=this.preset(e.config)):e.config=this.preset(),this._refs[t]||this.register(t,e),!this._refs[t].content)throw new Error("No content set for the overlay "+t);var o=this._refs[t],i=o.details.config instanceof bf?o.details.config:this.preset(o.details.config);o.open(e.data,e.config||i||this.preset()),this._refs[t]&&(n&&this._refs[t].listen(n),r&&this._refs[t].onClose.subscribe(r))},t.prototype.update=function(t,e){this._refs[t]&&this._refs[t].set(e)},t.prototype.close=function(t){this._refs[t]&&this._refs[t].close(null)},t.prototype.remove=function(t){this._refs[t]&&(this._refs[t]=null)},t.prototype.registerPreset=function(t,e){this._presets[t]=e},t.prototype.preset=function(t){return void 0===t&&(t="default"),this._presets[t]||this._presets.default},t.prototype.loadNotificationsOutlet=function(){var t=this;this.timers.notify&&(clearTimeout(this.timers.notify),this.timers.notify=null),this.timers.notify=setTimeout(function(){t.registerPreset("ACA_NOTIFICATIONS_OUTLET",new bf({width:"0",height:"0",hasBackdrop:!1,positionStrategy:t.overlay.position().global().bottom("0").right("0"),scrollStrategy:t.overlay.scrollStrategies.noop()})),t.open("ACA_NOTIFICATIONS_OUTLET",{content:Bf,data:t._notify,config:"ACA_NOTIFICATIONS_OUTLET"})},2e3)},t.prototype.notify=function(t,e,n,r,o){var i=null;return this._notify.add&&(i="notification-"+Math.floor(999999*Math.random()),this._notify.add.next({id:i,content:t,action:e,on_action:n,type:r,delay:o,event:function(t){return n?n(t):null}})),i},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(Nf),Lt(Bt))},token:t,providedIn:"root"}),t}(),Gf=function(){function t(t,e,n,r){this.el=t,this.service=e,this.overlay=n,this.renderer=r,this.id="tooltip-"+Math.floor(9999999*Math.random()),this.klass="default",this.position="bottom",this.reposition=!0,this.showChange=new No,this.event=new No,this.close=new No,this.listeners=[],this.positions={bottom:{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},left:{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},right:{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},top:{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"}}}return t.prototype.ngOnInit=function(){this.updateConfig(),this.el&&this.listenForScroll()},t.prototype.ngOnDestroy=function(){this.service.close(this.id),this.service.remove(this.id),this.show=!1,this.showChange.emit(!1),this._hover_listener&&(this._hover_listener(),this._hover_listener=null),this.clearListeners()},t.prototype.ngOnChanges=function(t){var e=this;if(t.config&&this.updateConfig(),t.reposition){var n=this.overlay.scrollStrategies;this.strategy=this.reposition?n.reposition():n.noop(),this.updateConfig()}t.hover&&this.listenForHover(),t.show&&(this.show&&this.content?setTimeout(function(){return e.open()},10):this.closeTooltip(t.show.previousValue))},t.prototype.open=function(){var t=this;this.listenForScroll(),this.service.open(this.id,{klass:this.klass,content:this.content,data:this.data,config:this.id},function(e){return t.event.emit(e)},function(e){t.show=!1,t.showChange.emit(!1),t.close.emit(e),t.clearListeners()})},t.prototype.getOverlayPosition=function(t){var e=this.getPositions();return this.overlay.position().flexibleConnectedTo(t).withPositions(e).withPush(!1)},t.prototype.getPositions=function(){var t=this.positions;switch(this.position){case"top":return[t.top,t.bottom,t.left,t.right];case"left":case"left":return[t.left,t.right,t.bottom,t.top];default:return[t.bottom,t.top,t.left,t.right]}},t.prototype.updateConfig=function(){this.service.registerPreset(this.id,new bf({minWidth:2,minHeight:2,positionStrategy:this.getOverlayPosition(this.el.nativeElement),scrollStrategy:this.strategy}))},t.prototype.listenForScroll=function(){var t=this;if(this.show)for(var e=this.el.nativeElement.parentElement;e;e=e.parentElement)this.listeners.push(this.renderer.listen(e,"scroll",function(){return t.update()}))},t.prototype.clearListeners=function(){var t,e;try{for(var n=c(this.listeners),r=n.next();!r.done;r=n.next())(0,r.value)()}catch(o){t={error:o}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}this.listeners=[],this._leave_listener&&(this._leave_listener(),this._leave_listener=null)},t.prototype.update=function(){this.updateConfig(),this.service.update(this.id,this.service.preset(this.id))},t.prototype.listenForHover=function(){var t=this;this._hover_listener=this.renderer.listen(this.el.nativeElement,"mouseenter",function(e){t.show=!0,t.showChange.emit(t.show),t._leave_listener=t.renderer.listen(t.el.nativeElement,"mouseleave",function(e){t.show=!1,t.showChange.emit(t.show),t.closeTooltip(t.show)}),t.open()})},t.prototype.closeTooltip=function(t){!this.content&&this.el?function(t,e,n,r,o){if(void 0===r&&(r="debug"),window.debug){var i=["color: #0288D1","color:#009688","color:rgba(0,0,0,0.87)"];n?zf()?console[r].apply(console,p(["%c["+Lf+"]%c["+t+"] %c"+e],i,[n])):console[r]("["+Lf+"]["+t+"] "+e,n):zf()?console[r].apply(console,p(["%c["+Lf+"]%c["+t+"] %c"+e],i)):console[r]("["+Lf+"]["+t+"] "+e)}}("Tooltip","No content for tooltip attached to element",this.el.nativeElement,"warn"):!this.show&&t&&this.service.close(this.id),this.clearListeners()},t}(),Yf=function(){function t(t,e){this.item=t,this.service=e}return t.prototype.ngOnInit=function(){var t=this;setTimeout(function(){t.text=t.item.details.data.text,t.center=t.item.details.data.center},10),setTimeout(function(){return t.service.close(t.item.ID)},1e3)},t}(),qf=ya,Zf=function(){function t(){if(this.build=qf(),!t.init){var e=qf();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),zf()?console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Lf+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"])):console[n]("[ACA][LIB] "+Lf+" - "+t+" | "+e)}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),$f=new Ut("cdk-dir-doc",{providedIn:"root",factory:function(){return zt($a)}}),Qf=function(){function t(t){if(this.value="ltr",this.change=new No,t){var e=(t.body?t.body.dir:null)||(t.documentElement?t.documentElement.dir:null);this.value="ltr"===e||"rtl"===e?e:"ltr"}}return t.prototype.ngOnDestroy=function(){this.change.complete()},t.ngInjectableDef=Ot({factory:function(){return new t(Lt($f,8))},token:t,providedIn:"root"}),t}(),Xf=function(){return function(){}}(),Kf=or({encapsulation:2,styles:[".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{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;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}overlay-outlet .content{position:relative}"],data:{}});function Jf(t){return as(0,[(t()(),Gi(0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.component.content)})}function tg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function eg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,tg)),vo(2,540672,null,0,qa,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){var n=e.component;t(e,2,0,n.context,n.content)},null)}function ng(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function rg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,ng)),vo(2,671744,null,0,ja,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.component.content)},null)}function og(t){return as(0,[(t()(),Gi(0,0,null,null,8,"div",[["widget",""]],[[8,"className",0],[4,"position",null],[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),Gi(1,0,null,null,7,null,null,null,null,null,null,null)),vo(2,16384,null,0,Wa,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Wi(16777216,null,null,1,null,Jf)),vo(4,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,eg)),vo(6,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,rg)),vo(8,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null)],function(t,e){t(e,2,0,e.component.method),t(e,4,0,"text"),t(e,6,0,"template"),t(e,8,0,"component")},function(t,e){var n=e.component;t(e,0,0,"overlay-outlet"+(n.klass?" "+n.klass:""),n.offset?"fixed":"",(null==n.offset?null:n.offset.y)+"px",(null==n.offset?null:n.offset.x)+"px")})}function ig(t){return as(0,[(t()(),Wi(16777216,null,null,1,null,og)),vo(1,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,1,0,e.component.content)},null)}function sg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"overlay-outlet",[],null,null,null,ig,Kf)),vo(1,114688,null,0,Ff,[Gt],null,null)],function(t,e){t(e,1,0)},null)}var ag=Gr("overlay-outlet",Ff,sg,{},{},[]),lg=or({encapsulation:0,styles:[".floating-text[_ngcontent-%COMP%]{position:fixed;color:#000;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-animation:1s linear fly-off;animation:1s linear fly-off;font-size:12px}@-webkit-keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}@keyframes fly-off{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}85%{-webkit-transform:translateY(-900%);transform:translateY(-900%);opacity:1}100%{-webkit-transform:translateY(-1000%);transform:translateY(-1000%);opacity:0}}"],data:{}});function ug(t){return as(0,[(t()(),Gi(0,0,null,null,1,"div",[["class","floating-text"]],[[4,"top",null],[4,"left",null]],null,null,null,null)),(t()(),os(1,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,(null==n.center?null:n.center.y)+"px",(null==n.center?null:n.center.x)+"px"),t(e,1,0,n.text)})}function cg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"a-floating-text",[],null,null,null,ug,lg)),vo(1,114688,null,0,Yf,[Hf,Wf],null,null)],function(t,e){t(e,1,0)},null)}var hg=Gr("a-floating-text",Yf,cg,{},{},[]),pg=or({encapsulation:0,styles:[".notification-outlet[_ngcontent-%COMP%]{position:absolute;bottom:4px;right:4px;display:flex;flex-direction:column;z-index:9999}.notification-outlet[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.5em;width:16em;min-height:2em;max-width:calc(100vw - 16px);background-color:#fff;border-radius:4px;margin:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.notification[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover .action[_ngcontent-%COMP%]{display:flex}.content[_ngcontent-%COMP%]{flex:1;font-size:.8em}.action[_ngcontent-%COMP%]{display:none;justify-content:center;align-items:center;height:100%;min-width:1.5em;cursor:pointer;font-size:.8em;font-weight:500;margin:.5em;transition:opacity .2s}.action.visible[_ngcontent-%COMP%]{display:flex}.action[_ngcontent-%COMP%]:hover{opacity:.54}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);background-size:cover}"],data:{animation:[{type:7,name:"show",definitions:[{type:1,expr:":enter",animation:[{type:6,styles:{opacity:0,height:0,transform:"translateY(-100%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:1,transform:"translateY(0%)",height:"*"},offset:null},timings:100}],options:null},{type:1,expr:":leave",animation:[{type:6,styles:{opacity:1,height:"*",transform:"translate(0%, 0%)"},offset:null},{type:4,styles:{type:6,styles:{opacity:0,transform:"translate(100%, -100%)",height:0},offset:null},timings:100}],options:null}],options:{}}]}});function dg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function fg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,dg)),vo(2,540672,null,0,qa,[zn],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.context,e.parent.context.$implicit.content)},null)}function gg(t){return as(0,[(t()(),Gi(0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function vg(t){return as(0,[(t()(),Gi(0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,gg)),vo(2,671744,null,0,ja,[zn],{ngComponentOutlet:[0,"ngComponentOutlet"]},null),(t()(),Wi(0,null,null,0))],function(t,e){t(e,2,0,e.parent.context.$implicit.content)},null)}function yg(t){return as(0,[(t()(),Gi(0,0,null,null,0,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null))],null,function(t,e){t(e,0,0,e.parent.context.$implicit.content)})}function mg(t){return as(0,[(t()(),Gi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),os(1,null,["",""]))],null,function(t,e){t(e,1,0,e.parent.context.$implicit.action)})}function _g(t){return as(0,[(t()(),Gi(0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,0,"div",[["class","icon"]],null,null,null,null,null))],null,null)}function bg(t){return as(0,[(t()(),Gi(0,0,null,null,16,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,15,"div",[["widget",""]],[[8,"className",0],[24,"@show",0]],null,null,null,null)),(t()(),Gi(2,0,null,null,14,"div",[["class","item"]],[[4,"transform",null]],[[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),"touchstart"===e&&(r=!1!==o.grab(t.context.$implicit,n)&&r),r},null,null)),(t()(),Gi(3,0,null,null,8,"div",[["class","content"]],null,null,null,null,null)),(t()(),Gi(4,0,null,null,7,null,null,null,null,null,null,null)),vo(5,16384,null,0,Wa,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),Wi(16777216,null,null,1,null,fg)),vo(7,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,vg)),vo(9,278528,null,0,Ga,[zn,Vn,Wa],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),Wi(16777216,null,null,1,null,yg)),vo(11,16384,null,0,Ya,[zn,Vn,Wa],null,null),(t()(),Gi(12,0,null,null,4,"div",[["class","action"]],[[2,"visible",null]],[[null,"click"],[null,"touchend"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),"touchend"===e&&(o.action(t.context.$implicit),r=!1!==n.preventDefault()&&r),r},null,null)),(t()(),Wi(16777216,null,null,1,null,mg)),vo(14,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Wi(16777216,null,null,1,null,_g)),vo(16,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){t(e,5,0,e.context.$implicit.method),t(e,7,0,"template"),t(e,9,0,"component"),t(e,14,0,e.context.$implicit.action),t(e,16,0,!e.context.$implicit.action)},function(t,e){t(e,1,0,"notification"+(e.context.$implicit.type?" "+e.context.$implicit.type:""),void 0),t(e,2,0,"translateX("+e.context.$implicit.offset+"px)"),t(e,12,0,e.context.$implicit.action)})}function wg(t){return as(0,[(t()(),Gi(0,0,null,null,2,"div",[["class","notification-outlet"],["widget",""]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,bg)),vo(2,278528,null,0,La,[zn,Vn,In],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],function(t,e){var n=e.component;t(e,2,0,n.displayed_events,n.trackByFn)},null)}function Cg(t){return as(0,[(t()(),Gi(0,0,null,null,1,"notification-outlet",[],null,null,null,wg,pg)),vo(1,245760,null,0,Bf,[Hf,yn],null,null)],function(t,e){t(e,1,0)},null)}var xg=Gr("notification-outlet",Bf,Cg,{},{},[]),Sg=function(t){function e(e,n){var r=t.call(this,e)||this;r.sources=n,r.completed=0,r.haveValues=0;var o=n.length;r.values=new Array(o);for(var i=0;it?{max:{max:t,actual:e.value}}:null}},t.required=function(t){return Ng(t.value)?{required:!0}:null},t.requiredTrue=function(t){return!0===t.value?null:{required:!0}},t.email=function(t){return Ng(t.value)?null:Dg.test(t.value)?null:{email:!0}},t.minLength=function(t){return function(e){if(Ng(e.value))return null;var n=e.value?e.value.length:0;return nt?{maxlength:{requiredLength:t,actualLength:n}}:null}},t.pattern=function(e){return e?("string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),n=new RegExp(r)):(r=e.toString(),n=e),function(t){if(Ng(t.value))return null;var e=t.value;return n.test(e)?null:{pattern:{requiredPattern:r,actualValue:e}}}):t.nullValidator;var n,r},t.nullValidator=function(t){return null},t.compose=function(t){if(!t)return null;var e=t.filter(Vg);return 0==e.length?null:function(t){return zg(function(t,n){return e.map(function(e){return e(t)})}(t))}},t.composeAsync=function(t){if(!t)return null;var e=t.filter(Vg);return 0==e.length?null:function(t){return function t(){for(var e,n=[],r=0;r=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}(),Wg=function(){function t(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return t.prototype.ngOnInit=function(){this._control=this._injector.get(Ag),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: \n ')},t}(),Gg='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Yg='\n
\n
\n \n
\n
';function qg(t,e){return p(e.path,[t])}function Zg(t,e){t||Qg(e,"Cannot find control with"),e.valueAccessor||Qg(e,"No value accessor for form control with"),t.validator=jg.compose([t.validator,e.validator]),t.asyncValidator=jg.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&&$g(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&&$g(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 $g(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Qg(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 Xg(t){return null!=t?jg.compose(t.map(Ug)):null}function Kg(t){return null!=t?jg.composeAsync(t.map(Fg)):null}var Jg=[Og,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}(),Hg,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=qe}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=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}(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=c(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var i=o.value;if(this._compareWith(this._optionMap.get(i),t))return i}}catch(s){e={error:s}}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},t}(),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=qe}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 r=t.map(function(t){return n._getOptionId(t)});e=function(t,e){t._setSelected(r.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 r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i0||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}(rv),sv=function(t){function e(e,n,r){var o=t.call(this,tv(n),ev(r,n))||this;return o.controls=e,o._initObservables(),o._setUpdateStrategy(n),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return o(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,r){n._throwIfControlMissing(r),n.at(r).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,r){n.at(r)&&n.at(r).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,r){n.reset(t[r],{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 ov?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=c(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(o){t={error:o}}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}(rv),av=function(){return Promise.resolve(null)}(),lv=function(t){function e(e,n){var r=t.call(this)||this;return r.submitted=!1,r._directives=[],r.ngSubmit=new No,r.form=new iv({},Xg(e),Kg(n)),r}return o(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;av.then(function(){var n=e._findContainer(t.path);t.control=n.registerControl(t.name,t.control),Zg(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;av.then(function(){var n,r,o=e._findContainer(t.path);o&&o.removeControl(t.name),(r=(n=e._directives).indexOf(t))>-1&&n.splice(r,1)})},e.prototype.addFormGroup=function(t){var e=this;av.then(function(){var n=e._findContainer(t.path),r=new iv({});(function(t,e){null==t&&Qg(e,"Cannot find control with"),t.validator=jg.compose([t.validator,e.validator]),t.asyncValidator=jg.composeAsync([t.asyncValidator,e.asyncValidator])})(r,t),n.registerControl(t.name,r),r.updateValueAndValidity({emitEvent:!1})})},e.prototype.removeFormGroup=function(t){var e=this;av.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;av.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,e=this._directives,this.form._syncPendingControls(),e.forEach(function(t){var e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)}),this.ngSubmit.emit(t),!1;var e},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},e}(Ig),uv=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 \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\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
\n \n \n
\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 "+Gg+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+Yg)},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: \n Example 2: ')},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 "+Gg+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+Yg)},t.ngFormWarning=function(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")},t}(),cv=new Ut("NgFormSelectorWarning"),hv=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(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 qg(this.name,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 Xg(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Kg(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){},e}(Ig),pv=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}var n;return o(e,t),n=e,e.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof lv||uv.modelGroupParentException()},e}(hv),dv=function(){return Promise.resolve(null)}(),fv=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i.control=new ov,i._registered=!1,i.update=new No,i._parent=e,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||Qg(t,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,o=void 0;return e.forEach(function(e){var i;e.constructor===Pg?n=e:(i=e,Jg.some(function(t){return i.constructor===t})?(r&&Qg(t,"More than one built-in value accessor matches form control with"),r=e):(o&&Qg(t,"More than one custom value accessor matches form control with"),o=e))}),o||r||n||(Qg(t,"No valid value accessor for form control with"),null)}(i,o),i}return o(e,t),e.prototype.ngOnChanges=function(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;var n=t.model;return!!n.isFirstChange()||!qe(e,n.currentValue)}(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?qg(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 Xg(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return Kg(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(){Zg(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 pv)&&this._parent instanceof hv?uv.formGroupNameException():this._parent instanceof pv||this._parent instanceof lv||uv.modelParentException()},e.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||uv.missingNameException()},e.prototype._updateValue=function(t){var e=this;dv.then(function(){e.control.setValue(t,{emitViewToModelChange:!1})})},e.prototype._updateDisabled=function(t){var e=this,n=t.isDisabled.currentValue,r=""===n||n&&"false"!==n;dv.then(function(){r&&!e.control.disabled?e.control.disable():!r&&e.control.disabled&&e.control.enable()})},e}(Ag),gv=new Ut("NgModelWithFormControlWarning"),vv=function(){return function(){}}(),yv=function(){function t(){}return t.prototype.group=function(t,e){void 0===e&&(e=null);var n=this._reduceControls(t),r=null,o=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(r=null!=e.validators?e.validators:null,o=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(r=null!=e.validator?e.validator:null,o=null!=e.asyncValidator?e.asyncValidator:null)),new iv(n,{asyncValidators:o,updateOn:i,validators:r})},t.prototype.control=function(t,e,n){return new ov(t,e,n)},t.prototype.array=function(t,e,n){var r=this,o=t.map(function(t){return r._createControl(t)});return new sv(o,e,n)},t.prototype._reduceControls=function(t){var e=this,n={};return Object.keys(t).forEach(function(r){n[r]=e._createControl(t[r])}),n},t.prototype._createControl=function(t){return t instanceof ov||t instanceof iv||t instanceof sv?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)},t}(),mv=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:cv,useValue:t.warnOnDeprecatedNgFormSelector}]}},t}(),_v=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:gv,useValue:t.warnOnNgModelWithFormControl}]}},t}(),bv=or({encapsulation:2,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:0}.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:0}.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}"],data:{}});function wv(t){return as(2,[Qi(402653184,1,{_contentWrapper:0}),(t()(),Gi(1,0,[[1,0],["contentWrapper",1]],null,1,"div",[["class","cdk-virtual-scroll-content-wrapper"]],null,null,null,null,null)),es(null,0),(t()(),Gi(3,0,null,null,0,"div",[["class","cdk-virtual-scroll-spacer"]],[[4,"transform",null]],null,null,null,null))],null,function(t,e){t(e,3,0,e.component._totalContentSizeTransform)})}var Cv=or({encapsulation:0,styles:[".dropdown[_ngcontent-%COMP%]{position:relative;border:1px solid #ccc;overflow:hidden;height:2em;width:8em;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dropdown.show[_ngcontent-%COMP%]{opacity:0}.dropdown[_ngcontent-%COMP%]:focus{border-color:#000}.reference[_ngcontent-%COMP%]{position:absolute;height:1em;width:100%;opacity:0;pointer-events:none}.item[_ngcontent-%COMP%]{display:flex;align-items:center;height:2em;max-width:100%;transition:opacity .2s;cursor:pointer}.item[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.05)}.item.max[_ngcontent-%COMP%]{height:1px;opacity:0;pointer-events:none;overflow-y:scroll}.active[_ngcontent-%COMP%]:hover{background-color:none}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{border-left:1px solid #ccc}.active[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:1em}.searchbar[_ngcontent-%COMP%]{display:flex;align-items:center;border-top:1px solid #ccc;font-size:.9em;padding:.25em 0}.value[_ngcontent-%COMP%]{flex:1;min-width:1px}.text[_ngcontent-%COMP%]{padding:.25em .5em;flex:1;min-width:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text.placeholder[_ngcontent-%COMP%]{opacity:.2}.icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:2em;width:2em;opacity:0}.icon[_ngcontent-%COMP%] > i[_ngcontent-%COMP%]{height:1.5em;width:1.5em;background-repeat:no-repeat;background-position:center;background-size:contain;font-size:.9em}.icon.show[_ngcontent-%COMP%]{opacity:1}.down-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+)}.up-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSAxNS40MUwxMiAxMC44M2w0LjU5IDQuNThMMTggMTRsLTYtNi02IDZ6Ii8+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==)}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}.search-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+)}.dropdown-list[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;flex-direction:column;top:-2em;border:1px solid #ccc;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.dropdown-list[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{width:100%}.dropdown-list.reverse[_ngcontent-%COMP%]{top:2em;flex-direction:column-reverse}.list[_ngcontent-%COMP%]{border-top:1px solid #ccc;max-height:12em}.reverse[_ngcontent-%COMP%] .list[_ngcontent-%COMP%], .reverse[_ngcontent-%COMP%] .searchbar[_ngcontent-%COMP%]{border:none;border-bottom:1px solid #ccc}input[_ngcontent-%COMP%]{background:0 0;outline:0;border:none;font-size:1em;width:100%}cdk-virtual-scroll-viewport[_ngcontent-%COMP%]{height:100%;width:100%}.no-items[_ngcontent-%COMP%]{color:rgba(0,0,0,.54)}"],data:{}});function xv(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","searchbar"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,0,"i",[["class","search-icon"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(4,0,[[3,0],["input",1]],null,5,"input",[["placeholder","Search..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==no(t,5)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==no(t,5).onTouched()&&r),"compositionstart"===e&&(r=!1!==no(t,5)._compositionStart()&&r),"compositionend"===e&&(r=!1!==no(t,5)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search=n)&&r),"ngModelChange"===e&&(o.searchChange.emit(n),r=!1!==o.filter()&&r),r},null,null)),vo(5,16384,null,0,Pg,[yn,pn,[2,kg]],null,null),mo(1024,null,Eg,function(t){return[t]},[Pg]),vo(7,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(9,16384,null,0,Mg,[[4,Ag]],null,null)],function(t,e){t(e,7,0,e.component.search)},function(t,e){t(e,4,0,no(e,9).ngClassUntouched,no(e,9).ngClassTouched,no(e,9).ngClassPristine,no(e,9).ngClassDirty,no(e,9).ngClassValid,no(e,9).ngClassInvalid,no(e,9).ngClassPending)})}function Sv(t){return as(0,[(t()(),Gi(0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","item"]],null,[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.select(t.context.$implicit)&&r),r},null,null)),(t()(),Gi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","icon"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(5,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null))],null,function(t,e){var n=e.component;t(e,3,0,(null==e.context.$implicit?null:e.context.$implicit.name)||e.context.$implicit),t(e,4,0,null!=e.context.$implicit&&e.context.$implicit.name&&n.selected?e.context.$implicit.name===n.selected.name:e.context.$implicit===n.selected)})}function Ev(t){return as(0,[(t()(),Gi(0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,6,"cdk-virtual-scroll-viewport",[["class","cdk-virtual-scroll-viewport"]],[[2,"cdk-virtual-scroll-orientation-horizontal",null],[2,"cdk-virtual-scroll-orientation-vertical",null]],null,null,wv,bv)),mo(6144,null,Kd,null,[tf]),vo(3,540672,null,0,Qd,[],{itemSize:[0,"itemSize"]},null),mo(1024,null,qd,$d,[Qd]),vo(5,245760,[[4,4],[5,4],["viewport",4]],0,tf,[pn,An,li,[2,qd],[2,Qf],Xd],null,null),(t()(),Wi(16777216,[[2,2]],0,1,null,Sv)),vo(7,409600,null,0,nf,[zn,Vn,In,[1,tf],li],{cdkVirtualForOf:[0,"cdkVirtualForOf"],cdkVirtualForTrackBy:[1,"cdkVirtualForTrackBy"]},null)],function(t,e){var n=e.component;t(e,3,0,2*n.font_size),t(e,5,0),t(e,7,0,n.filtered_items,n.trackByFn)},function(t,e){t(e,1,0,"horizontal"===no(e,5).orientation,"horizontal"!==no(e,5).orientation)})}function Ov(t){return as(0,[(t()(),Gi(0,0,null,null,2,"div",[["class","item no-items"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,2,0,(n.options?n.options.no_item_text:"")||"No items")})}function kv(t){return as(0,[(t()(),Gi(0,0,null,null,11,"div",[["widget",""]],[[8,"className",0],[4,"width",null],[2,"reverse",null]],[[null,"click"]],function(t,e,n){var r=!0;return"click"===e&&(r=!1!==t.component.cancelClose()&&r),r},null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","item active"]],[[2,"placeholder",null]],[[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"click"===e&&(r=0!=(o.show=!o.show)&&r),r},null,null)),(t()(),Gi(2,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(5,0,null,null,0,"i",[["class","up-icon"]],null,null,null,null,null)),(t()(),Wi(16777216,[[2,2]],null,1,null,xv)),vo(7,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(8,0,null,null,3,"div",[["class","list"]],[[4,"height",null]],null,null,null,null)),(t()(),Wi(16777216,[[2,2]],null,1,null,Ev)),vo(10,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Wi(0,[[2,2],["noItems",2]],null,0,null,Ov))],function(t,e){var n=e.component;t(e,7,0,n.options&&n.options.can_filter),t(e,10,0,n.filtered_items&&n.filtered_items.length>0,no(e,11))},function(t,e){var n=e.component;t(e,0,0,"dropdown-list"+(n.klass?" "+n.klass:""),n.width+"px","top"===(null==e.context.position?null:e.context.position.y)),t(e,1,0,!n.selected),t(e,3,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,8,0,2*(n.filtered_items.length||1)+"em")})}function Pv(t){return as(0,[Qi(402653184,1,{reference:0}),Qi(402653184,2,{dropdown_tooltip:0}),Qi(402653184,3,{input:0}),Qi(402653184,4,{viewport:0}),Qi(402653184,5,{scroll_el:0}),(t()(),Gi(5,0,null,null,13,"div",[["tabindex","0"],["widget",""]],[[8,"className",0],[2,"show",null]],[[null,"keyup.enter"],[null,"keydown.arrowup"],[null,"keydown.arrowdown"],[null,"keyup.arrowup"],[null,"keyup.arrowdown"],[null,"focus"],[null,"blur"],["window","resize"],["window","click"]],function(t,e,n){var r=!0,o=t.component;return"keyup.enter"===e&&(r=!1!==o.toggleShow()&&r),"keydown.arrowup"===e&&(r=!1!==n.preventDefault()&&r),"keydown.arrowdown"===e&&(r=!1!==n.preventDefault()&&r),"keyup.arrowup"===e&&(r=!1!==(o.focus?o.change(-1):"")&&r),"keyup.arrowdown"===e&&(r=!1!==(o.focus?o.change(1):"")&&r),"focus"===e&&(r=0!=(o.focus=!0)&&r),"blur"===e&&(r=0!=(o.focus=!1)&&r),"window:resize"===e&&(r=!1!==o.resize()&&r),"window:click"===e&&(r=!1!==(o.show?o.close():"")&&r),r},null,null)),(t()(),Gi(6,0,[[1,0],["ref",1]],null,0,"div",[["class","reference"]],null,null,null,null,null)),(t()(),Gi(7,0,null,null,5,"div",[["a-tooltip",""],["class","item active"]],null,[[null,"showChange"],[null,"click"]],function(t,e,n){var r=!0,o=t.component;return"showChange"===e&&(r=!1!==(o.show=n)&&r),"showChange"===e&&(r=!1!==o.updateScroll()&&r),"click"===e&&(r=!1!==o.toggleShow()&&r),r},null,null)),vo(8,737280,null,0,Gf,[pn,Wf,Nf,yn],{show:[0,"show"],content:[1,"content"]},{showChange:"showChange"}),(t()(),Gi(9,0,null,null,1,"div",[["class","text"]],[[2,"placeholder",null]],null,null,null,null)),(t()(),os(10,null,["",""])),(t()(),Gi(11,0,null,null,1,"div",[["class","icon show"]],null,null,null,null,null)),(t()(),Gi(12,0,null,null,0,"i",[["class","down-icon"]],null,null,null,null,null)),(t()(),Gi(13,0,null,null,4,"div",[["class","item max"]],null,null,null,null,null)),(t()(),Gi(14,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(15,null,["",""])),(t()(),Gi(16,0,null,null,1,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(17,0,null,null,0,"i",[["class","done-icon"]],null,null,null,null,null)),(t()(),Wi(0,[[2,2],["dropdown",2]],null,0,null,kv))],function(t,e){t(e,8,0,e.component.show,no(e,18))},function(t,e){var n=e.component;t(e,5,0,"dropdown"+(n.klass?" "+n.klass:""),n.show),t(e,9,0,!n.selected),t(e,10,0,(null==n.selected?null:n.selected.name)||n.placeholder),t(e,15,0,null==n.longest?null:n.longest.name)})}var Tv="Checkbox",Iv=function(){function t(){this.klass="default"}return t.prototype.toggle=function(){this.state=!this.state,this.onChange&&this.onChange(this.state)},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouch=t},t}(),Rv=ya,Av=function(){function t(){if(this.build=Rv(),!t.init){var e=Rv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Tv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Tv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Mv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.center=!1,this.position={left:"50%",top:"50%"},this.size=64}return t.prototype.handleMouse=function(t){this.handleEvent(t)},t.prototype.handleTouch=function(t){this.handleEvent(t)},t.prototype.ngOnInit=function(){},t.prototype.ngAfterViewInit=function(){var t=this;setTimeout(function(){t.element&&t.element.nativeElement&&(t.cached_box=t.element.nativeElement.getBoundingClientRect(),t.size=Math.ceil(1.5*Math.max(t.cached_box.height,t.cached_box.width)))})},t.prototype.ngOnDestroy=function(){this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t.prototype.handleEvent=function(t){var e=this;this.cancelled=!1;var n=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX,r=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientY:t.clientY;this.show=!0,this.cached_box||(this.cached_box=this.element.nativeElement.getBoundingClientRect(),this.size=Math.ceil(1.5*Math.max(this.cached_box.height,this.cached_box.width))),this.position=this.center?{top:"50%",left:"50%"}:{top:r-this.cached_box.top+"px",left:n-this.cached_box.left+"px"},this.mouse_release_cancel=this.renderer.listen("window","mouseup",function(t){return e.handleRelease(t)}),this.touch_release_cancel=this.renderer.listen("window","touchend",function(t){return e.handleRelease(t)}),this.transitioning=!0,setTimeout(function(){e.transitioning=!1,e.cancelled&&(e.show=!1)},350)},t.prototype.handleRelease=function(t){this.transitioning?this.cancelled=!0:this.show=!1,this.mouse_release_cancel&&(this.mouse_release_cancel(),this.mouse_release_cancel=null),this.touch_release_cancel&&(this.touch_release_cancel(),this.touch_release_cancel=null)},t}(),Nv=function(){function t(t,e){this.el=t,this.renderer=e,this.tapped=new No,this.touchrelease=new No,this.tolerance=40,this.max_delay=1e3,this.start={x:-999,y:-999},this.timer=null,this.event_timer=null}return t.prototype.ngAfterViewInit=function(){var t=this;this.el&&this.el.nativeElement&&(this.mouse_listener=this.renderer.listen(this.el.nativeElement,"mousedown",function(e){return t.handleHold(e)}),this.touch_listener=this.renderer.listen(this.el.nativeElement,"touchstart",function(e){return t.handleHold(e)}))},t.prototype.ngOnDestroy=function(){this.mouse_listener&&(this.mouse_listener(),this.mouse_listener=null),this.touch_listener&&(this.touch_listener(),this.touch_listener=null),this.remove(),this.start={x:-999,y:-999}},t.prototype.remove=function(){this.mouse_cancel&&(this.mouse_cancel(),this.mouse_cancel=null),this.touch_cancel&&(this.touch_cancel(),this.touch_cancel=null)},t.prototype.handleHold=function(t){var e=this,n={x:window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX,y:window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientY:t.clientY};this.start=n,this.mouse_listener=this.renderer.listen(window,"mouseup",function(t){return e.handleRelease(t)}),this.touch_listener=this.renderer.listen(window,"touchend",function(t){return e.handleRelease(t)}),this.timer=setTimeout(function(){return e.remove()},this.max_delay)},t.prototype.handleRelease=function(t){var e=this;this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout(function(){var n=window.TouchEvent&&t instanceof TouchEvent?t.touches[0].clientX:t.clientX;window.TouchEvent&&TouchEvent,Math.sqrt(Math.pow(n-e.start.x,2)+2) div[_ngcontent-%COMP%]{display:none}.active[_ngcontent-%COMP%]{background-color:#1976d2;border-color:transparent;color:#fff}.active[_ngcontent-%COMP%]:hover{background-color:#00336d}.active[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:initial;height:1.25em;width:1.25em}.icon[_ngcontent-%COMP%]{height:1.25em;width:1.25em;background-position:center;background-size:contain}.done-icon[_ngcontent-%COMP%]{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSIjZmZmIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTkgMTYuMkw0LjggMTJsLTEuNCAxLjRMOSAxOSAyMSA3bC0xLjQtMS40TDkgMTYuMnoiLz48L3N2Zz4=)}label[_ngcontent-%COMP%]{padding-left:.5em;cursor:pointer}label[_ngcontent-%COMP%]:hover{opacity:.54}"],data:{}});function Fv(t){return as(0,[(t()(),Gi(0,0,null,null,2,"label",[],[[8,"htmlFor",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.toggle()&&r),r},null,null)),vo(1,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),os(2,null,["",""]))],null,function(t,e){var n=e.component;t(e,0,0,n.id),t(e,2,0,n.label)})}function Hv(t){return as(0,[(t()(),Gi(0,0,null,null,6,"div",[["widget",""]],[[8,"className",0]],null,null,null,null)),(t()(),Gi(1,0,null,null,3,"div",[["class","box"],["feedback",""],["style","overflow: visible"],["tabindex","0"]],[[8,"id",0],[2,"active",null]],[[null,"keyup.enter"],[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,2).handleTouch(n)&&r),"keyup.enter"===e&&(r=!1!==o.toggle()&&r),"tapped"===e&&(r=!1!==o.toggle()&&r),r},zv,Lv)),vo(2,4440064,null,0,Mv,[pn,yn],{center:[0,"center"]},null),vo(3,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(4,0,null,0,0,"div",[["class","icon done-icon"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,Fv)),vo(6,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,2,0,!0),t(e,6,0,n.label)},function(t,e){var n=e.component;t(e,0,0,"checkbox"+(n.klass?" "+n.klass:"")),t(e,1,0,n.id,n.state)})}var Bv="Buttons",Wv=function(){function t(t,e){this.element=t,this.renderer=e,this.klass="default",this.tapped=new No,this.id="button-"+Math.floor(999999*Math.random())}return t.prototype.ngOnChanges=function(t){t.klass&&this.setClass(this.klass,t.klass.previousValue),t.state&&this.setClass(this.state?"active":"",this.state?"":"active"),t.group&&this.setGroup()},t.prototype.ngAfterViewInit=function(){this.setClass(this.klass)},t.prototype.setClass=function(t,e){this.element&&this.element.nativeElement&&(e&&this.renderer.removeClass(this.element.nativeElement,e),t&&this.renderer.addClass(this.element.nativeElement,t))},t.prototype.setGroup=function(){this.group?this.renderer.setAttribute(this.element.nativeElement,"group-item",""):this.renderer.removeAttribute(this.element.nativeElement,"group-item")},t.prototype.setState=function(t){this.state=t,this.setClass(this.state?"active":"",this.state?"":"active")},t.prototype.tap=function(){this.tapped.emit(),(void 0!==this.state||this.group)&&(this.setState(!this.state),this._onChange&&this._onChange(this.state))},t.prototype.writeValue=function(t){this.state=t},t.prototype.registerOnChange=function(t){this._onChange=t},t.prototype.registerOnTouched=function(t){this._onTouch=t},t}(),Gv=ya,Yv=function(){function t(){if(this.build=Gv(),!t.init){var e=Gv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Bv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Bv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),qv=or({encapsulation:0,styles:["button[_nghost-%COMP%]{font-size:1em;border-radius:4px;background-color:#1e88e5;color:#fff;margin:.25em;padding:0;border:none;transition:box-shadow .2s,background-color .2s,color .2s}button[_nghost-%COMP%]:hover{box-shadow:0 2px 6px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 4px 2px -2px rgba(0,0,0,.12)}button[group-item][_nghost-%COMP%]{border-radius:0;margin:0;border-left:1px solid #ccc}button[group-item][_nghost-%COMP%]:first-child{border-radius:4px 0 0 4px;border:none}button[group-item][_nghost-%COMP%]:last-child{border-radius:0 4px 4px 0}button[group-item].active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}button.active[_nghost-%COMP%]{background-color:#fff;color:rgba(0,0,0,.87);border:1px solid #ccc}.wrapper[_ngcontent-%COMP%]{padding:.35em 1em;display:flex;align-items:center;justify-content:center}"],data:{}});function Zv(t){return as(0,[(t()(),Gi(0,0,null,null,3,"div",[["class","wrapper"],["feedback",""]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,1).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,1).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.tap()&&r),r},zv,Lv)),vo(1,4440064,null,0,Mv,[pn,yn],null,null),vo(2,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),es(0,0)],function(t,e){t(e,1,0)},null)}var $v=function(){function t(t){this.sanitizer=t}return t.prototype.transform=function(t,e){switch(void 0===e&&(e="html"),e){case"resource":return this.sanitizer.bypassSecurityTrustResourceUrl(t);case"url":return this.sanitizer.bypassSecurityTrustUrl(t);case"script":return this.sanitizer.bypassSecurityTrustScript(t);case"style":return this.sanitizer.bypassSecurityTrustStyle(t);default:return this.sanitizer.bypassSecurityTrustHtml(t)}},t}(),Qv="Pipes",Xv=ya,Kv=function(){function t(){if(this.build=Xv(),!t.init){var e=Xv();t.init=!0;var n=e.isSame(this.build,"d")?"Today at "+this.build.format("h:mmA"):this.build.format("D MMM YYYY, h:mmA");!function(t,e,n){void 0===n&&(n="debug"),document.documentMode||/Edge/.test(navigator.userAgent)?console[n]("[ACA][LIB] "+Qv+" - "+t+" | "+e):console[n].apply(console,p(["%c[ACA]%c[LIB] %c"+Qv+" - "+t+" | "+e],["color: #f44336","color: #9c27b0","color:rgba(0,0,0,0.87)"]))}(t.version,n)}}return t.version="0.0.0-development",t.init=!1,t}(),Jv=function(){function t(){this._timers={},this._intervals={},this._subscriptions={}}return t.prototype.timeout=function(t,e,n){var r=this;if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named timeout without a name":"Cannot create a timeout without a callback");this.clearTimeout(t),this._timers[t]=setTimeout(function(){e(),r._timers[t]=null},n)},t.prototype.clearTimeout=function(t){this._timers[t]&&(clearTimeout(this._timers[t]),this._timers[t]=null)},t.prototype.interval=function(t,e,n){if(void 0===n&&(n=300),!(t&&e&&e instanceof Function))throw new Error(t?"Cannot create named interval without a name":"Cannot create a interval without a callback");this.clearInterval(t),this._intervals[t]=setInterval(function(){return e()},n)},t.prototype.clearInterval=function(t){this._intervals[t]&&(clearInterval(this._intervals[t]),this._intervals[t]=null)},t.prototype.subscription=function(t,e){this.unsub(t),this._subscriptions[t]=e},t.prototype.unsub=function(t){this._subscriptions&&this._subscriptions[t]&&(this._subscriptions[t]instanceof m?this._subscriptions[t].unsubscribe():this._subscriptions[t](),this._subscriptions[t]=null)},t}(),ty=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.ngOnDestroy=function(){for(var t in this._timers)this._timers.hasOwnProperty(t)&&this.clearTimeout(t);for(var t in this._intervals)this._intervals.hasOwnProperty(t)&&this.clearInterval(t);for(var t in this._subscriptions)this._subscriptions.hasOwnProperty(t)&&this.unsub(t)},e}(Jv),ey=function(){return function(){}}(),ny=function(){return function(){}}(),ry=function(){function t(t){var e=this;this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?function(){e.headers=new Map,t.split("\n").forEach(function(t){var n=t.indexOf(":");if(n>0){var r=t.slice(0,n),o=r.toLowerCase(),i=t.slice(n+1).trim();e.maybeSetNormalizedName(r,o),e.headers.has(o)?e.headers.get(o).push(i):e.headers.set(o,[i])}})}:function(){e.headers=new Map,Object.keys(t).forEach(function(n){var r=t[n],o=n.toLowerCase();"string"==typeof r&&(r=[r]),r.length>0&&(e.headers.set(o,r),e.maybeSetNormalizedName(n,o))})}:this.headers=new Map}return t.prototype.has=function(t){return this.init(),this.headers.has(t.toLowerCase())},t.prototype.get=function(t){this.init();var e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null},t.prototype.keys=function(){return this.init(),Array.from(this.normalizedNames.values())},t.prototype.getAll=function(t){return this.init(),this.headers.get(t.toLowerCase())||null},t.prototype.append=function(t,e){return this.clone({name:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({name:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({name:t,value:e,op:"d"})},t.prototype.maybeSetNormalizedName=function(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)},t.prototype.init=function(){var e=this;this.lazyInit&&(this.lazyInit instanceof t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(t){return e.applyUpdate(t)}),this.lazyUpdate=null))},t.prototype.copyFrom=function(t){var e=this;t.init(),Array.from(t.headers.keys()).forEach(function(n){e.headers.set(n,t.headers.get(n)),e.normalizedNames.set(n,t.normalizedNames.get(n))})},t.prototype.clone=function(e){var n=new t;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([e]),n},t.prototype.applyUpdate=function(t){var e=t.name.toLowerCase();switch(t.op){case"a":case"s":var n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);var r=("a"===t.op?this.headers.get(e):void 0)||[];r.push.apply(r,p(n)),this.headers.set(e,r);break;case"d":var o=t.value;if(o){var i=this.headers.get(e);if(!i)return;0===(i=i.filter(function(t){return-1===o.indexOf(t)})).length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,i)}else this.headers.delete(e),this.normalizedNames.delete(e)}},t.prototype.forEach=function(t){var e=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return t(e.normalizedNames.get(n),e.headers.get(n))})},t}(),oy=function(){function t(){}return t.prototype.encodeKey=function(t){return iy(t)},t.prototype.encodeValue=function(t){return iy(t)},t.prototype.decodeKey=function(t){return decodeURIComponent(t)},t.prototype.decodeValue=function(t){return decodeURIComponent(t)},t}();function iy(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}var sy=function(){function t(t){var e,n,r,o=this;if(void 0===t&&(t={}),this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new oy,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=(e=t.fromString,n=this.encoder,r=new Map,e.length>0&&e.split("&").forEach(function(t){var e=t.indexOf("="),o=h(-1==e?[n.decodeKey(t),""]:[n.decodeKey(t.slice(0,e)),n.decodeValue(t.slice(e+1))],2),i=o[0],s=o[1],a=r.get(i)||[];a.push(s),r.set(i,a)}),r)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(function(e){var n=t.fromObject[e];o.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}return t.prototype.has=function(t){return this.init(),this.map.has(t)},t.prototype.get=function(t){this.init();var e=this.map.get(t);return e?e[0]:null},t.prototype.getAll=function(t){return this.init(),this.map.get(t)||null},t.prototype.keys=function(){return this.init(),Array.from(this.map.keys())},t.prototype.append=function(t,e){return this.clone({param:t,value:e,op:"a"})},t.prototype.set=function(t,e){return this.clone({param:t,value:e,op:"s"})},t.prototype.delete=function(t,e){return this.clone({param:t,value:e,op:"d"})},t.prototype.toString=function(){var t=this;return this.init(),this.keys().map(function(e){var n=t.encoder.encodeKey(e);return t.map.get(e).map(function(e){return n+"="+t.encoder.encodeValue(e)}).join("&")}).join("&")},t.prototype.clone=function(e){var n=new t({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat([e]),n},t.prototype.init=function(){var t=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(e){return t.map.set(e,t.cloneFrom.map.get(e))}),this.updates.forEach(function(e){switch(e.op){case"a":case"s":var n=("a"===e.op?t.map.get(e.param):void 0)||[];n.push(e.value),t.map.set(e.param,n);break;case"d":if(void 0===e.value){t.map.delete(e.param);break}var r=t.map.get(e.param)||[],o=r.indexOf(e.value);-1!==o&&r.splice(o,1),r.length>0?t.map.set(e.param,r):t.map.delete(e.param)}}),this.cloneFrom=this.updates=null)},t}();function ay(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function ly(t){return"undefined"!=typeof Blob&&t instanceof Blob}function uy(t){return"undefined"!=typeof FormData&&t instanceof FormData}var cy=function(){function t(t,e,n,r){var o;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,o=r):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.params&&(this.params=o.params)),this.headers||(this.headers=new ry),this.params){var i=this.params.toString();if(0===i.length)this.urlWithParams=e;else{var s=e.indexOf("?");this.urlWithParams=e+(-1===s?"?":s=200&&this.status<300}}(),dy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=hy.ResponseHeader,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(py),fy=function(t){function e(e){void 0===e&&(e={});var n=t.call(this,e)||this;return n.type=hy.Response,n.body=void 0!==e.body?e.body:null,n}return o(e,t),e.prototype.clone=function(t){return void 0===t&&(t={}),new e({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})},e}(py),gy=function(t){function e(e){var n=t.call(this,e,0,"Unknown Error")||this;return n.name="HttpErrorResponse",n.ok=!1,n.message=n.status>=200&&n.status<300?"Http failure during parsing for "+(e.url||"(unknown url)"):"Http failure response for "+(e.url||"(unknown url)")+": "+e.status+" "+e.statusText,n.error=e.error||null,n}return o(e,t),e}(py);function vy(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}var yy=function(){function t(t){this.handler=t}return t.prototype.request=function(t,e,n){var r,o=this;if(void 0===n&&(n={}),t instanceof cy)r=t;else{var i;i=n.headers instanceof ry?n.headers:new ry(n.headers);var s=void 0;n.params&&(s=n.params instanceof sy?n.params:new sy({fromObject:n.params})),r=new cy(t,e,void 0!==n.body?n.body:null,{headers:i,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}var a=ol(r).pipe(ql(function(t){return o.handler.handle(t)}));if(t instanceof cy||"events"===n.observe)return a;var l=a.pipe(dl(function(t){return t instanceof fy}));switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return l.pipe(K(function(t){if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return l.pipe(K(function(t){if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return l.pipe(K(function(t){return t.body}))}case"response":return l;default:throw new Error("Unreachable: unhandled observe type "+n.observe+"}")}},t.prototype.delete=function(t,e){return void 0===e&&(e={}),this.request("DELETE",t,e)},t.prototype.get=function(t,e){return void 0===e&&(e={}),this.request("GET",t,e)},t.prototype.head=function(t,e){return void 0===e&&(e={}),this.request("HEAD",t,e)},t.prototype.jsonp=function(t,e){return this.request("JSONP",t,{params:(new sy).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})},t.prototype.options=function(t,e){return void 0===e&&(e={}),this.request("OPTIONS",t,e)},t.prototype.patch=function(t,e,n){return void 0===n&&(n={}),this.request("PATCH",t,vy(n,e))},t.prototype.post=function(t,e,n){return void 0===n&&(n={}),this.request("POST",t,vy(n,e))},t.prototype.put=function(t,e,n){return void 0===n&&(n={}),this.request("PUT",t,vy(n,e))},t}(),my=function(){function t(t,e){this.next=t,this.interceptor=e}return t.prototype.handle=function(t){return this.interceptor.intercept(t,this.next)},t}(),_y=new Ut("HTTP_INTERCEPTORS"),by=function(){function t(){}return t.prototype.intercept=function(t,e){return e.handle(t)},t}(),wy=/^\)\]\}',?\n/,Cy=function(){return function(){}}(),xy=function(){function t(){}return t.prototype.build=function(){return new XMLHttpRequest},t}(),Sy=function(){function t(t){this.xhrFactory=t}return t.prototype.handle=function(t){var e=this;if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new R(function(n){var r=e.xhrFactory.build();if(r.open(t.method,t.urlWithParams),t.withCredentials&&(r.withCredentials=!0),t.headers.forEach(function(t,e){return r.setRequestHeader(t,e.join(","))}),t.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){var o=t.detectContentTypeHeader();null!==o&&r.setRequestHeader("Content-Type",o)}if(t.responseType){var i=t.responseType.toLowerCase();r.responseType="json"!==i?i:"text"}var s=t.serializeBody(),a=null,l=function(){if(null!==a)return a;var e=1223===r.status?204:r.status,n=r.statusText||"OK",o=new ry(r.getAllResponseHeaders()),i=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(r)||t.url;return a=new dy({headers:o,status:e,statusText:n,url:i})},u=function(){var e=l(),o=e.headers,i=e.status,s=e.statusText,a=e.url,u=null;204!==i&&(u=void 0===r.response?r.responseText:r.response),0===i&&(i=u?200:0);var c=i>=200&&i<300;if("json"===t.responseType&&"string"==typeof u){var h=u;u=u.replace(wy,"");try{u=""!==u?JSON.parse(u):null}catch(p){u=h,c&&(c=!1,u={error:p,text:u})}}c?(n.next(new fy({body:u,headers:o,status:i,statusText:s,url:a||void 0})),n.complete()):n.error(new gy({error:u,headers:o,status:i,statusText:s,url:a||void 0}))},c=function(t){var e=l().url,o=new gy({error:t,status:r.status||0,statusText:r.statusText||"Unknown Error",url:e||void 0});n.error(o)},h=!1,p=function(e){h||(n.next(l()),h=!0);var o={type:hy.DownloadProgress,loaded:e.loaded};e.lengthComputable&&(o.total=e.total),"text"===t.responseType&&r.responseText&&(o.partialText=r.responseText),n.next(o)},d=function(t){var e={type:hy.UploadProgress,loaded:t.loaded};t.lengthComputable&&(e.total=t.total),n.next(e)};return r.addEventListener("load",u),r.addEventListener("error",c),t.reportProgress&&(r.addEventListener("progress",p),null!==s&&r.upload&&r.upload.addEventListener("progress",d)),r.send(s),n.next({type:hy.Sent}),function(){r.removeEventListener("error",c),r.removeEventListener("load",u),t.reportProgress&&(r.removeEventListener("progress",p),null!==s&&r.upload&&r.upload.removeEventListener("progress",d)),r.abort()}})},t}(),Ey=new Ut("XSRF_COOKIE_NAME"),Oy=new Ut("XSRF_HEADER_NAME"),ky=function(){return function(){}}(),Py=function(){function t(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return t.prototype.getToken=function(){if("server"===this.platform)return null;var t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Da(t,this.cookieName),this.lastCookieString=t),this.lastToken},t}(),Ty=function(){function t(t,e){this.tokenService=t,this.headerName=e}return t.prototype.intercept=function(t,e){var n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);var r=this.tokenService.getToken();return null===r||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,r)})),e.handle(t)},t}(),Iy=function(){function t(t,e){this.backend=t,this.injector=e,this.chain=null}return t.prototype.handle=function(t){if(null===this.chain){var e=this.injector.get(_y,[]);this.chain=e.reduceRight(function(t,e){return new my(t,e)},this.backend)}return this.chain.handle(t)},t}(),Ry=function(){function t(){}var e;return e=t,t.disable=function(){return{ngModule:e,providers:[{provide:Ty,useClass:by}]}},t.withOptions=function(t){return void 0===t&&(t={}),{ngModule:e,providers:[t.cookieName?{provide:Ey,useValue:t.cookieName}:[],t.headerName?{provide:Oy,useValue:t.headerName}:[]]}},t}(),Ay=function(){return function(){}}(),My=function(){function t(t){this.http=t,this._settings={api:{},local:{},session:{}},this._promises={},this._setup=!1,this._app_name="ACA",this._is_setup=new il(!1),this._is_setup_observer=this._is_setup.asObservable(),this.init()}return t.prototype.init=function(){return l(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.loadFromFile("api")];case 1:return t.sent(),this.loadStore("local",localStorage),this.loadStore("session",sessionStorage),this._settings.api.debug&&(window.debug=!0),this._settings.api.app&&this._settings.api.app.name&&(this._app_name=this._settings.api.app.name),this.log("Settings","Successfully loaded settings"),this._setup=!0,this._is_setup.next(this._setup),this._is_setup.complete(),[2]}})})},Object.defineProperty(t.prototype,"setup",{get:function(){return this._setup},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"app_name",{get:function(){return this._app_name},enumerable:!0,configurable:!0}),t.prototype.isSetup=function(t){return this._is_setup_observer.subscribe(t)},t.prototype.log=function(t,e,n,r,o){if(void 0===r&&(r="debug"),void 0===o&&(o=!1),window.debug||o){var i=["color: #E91E63","color: #3F51B5","color: rgba(#000, 0.87"];n?console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i,[n])):console[r].apply(console,["%c["+this.app_name+"]%c["+t+"] %c"+e].concat(i))}},t.prototype.get=function(t){var e=t.split("."),n=null;return"session"===e[0]?(e.shift(),n=va(e,this._settings.session)):"local"===e[0]?(e.shift(),n=va(e,this._settings.local)):n=va(e,this._settings.api)||va(e,this._settings.session)||va(e,this._settings.local),n},t.prototype.loadStore=function(t,e){if(e)for(var n=0;n5?[2,Promise.resolve()]:(this._promises[r="load|"+t+"|"+e]||(this._promises[r]=new Promise(function(s,a){o.http.get(e).subscribe(function(e){o._settings[t]=i({},o._settings[t]||{},e||{})},function(i){o.log("Settings",'Failed to load settings from "'+e+'"'),o._promises[r]=null,o.loadFromFile(t,e,++n).then(function(){return s()})},function(){return s()})})),[2,this._promises[r]])})})},t.ngInjectableDef=Ot({factory:function(){return new t(Lt(yy))},token:t,providedIn:"root"}),t}(),Ny=["control","shift","alt","meta","os"],Dy=function(){function t(){var t=this;this.keydown_states={},this.keydown_observers={},this.combo_end=[],this.registered_combos=[],this.counter=0,window.addEventListener("keydown",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.last_down!==n&&(t.keydown_states[n]||(t.keydown_states[n]=new il(null),t.keydown_observers[n]=t.keydown_states[n].asObservable()),t.keydown_states[n].next(t.counter++),t.combo_end.indexOf(n)>=0&&e.preventDefault(),t.last_down=n)}),window.addEventListener("keyup",function(e){var n=t.mapKey((e.code||"").toLowerCase());t.keydown_states[n].next(null),t.last_down===n&&(t.last_down=null)})}return t.prototype.listen=function(t,e){var n=this,r=(t=t instanceof Array?t:t.split("+")).map(function(t){return n.mapKey(t.toLowerCase())});if(r.length>0&&this.validCombination(r)){this.registered_combos.push(r);var o=r[r.length-1];return this.keydown_states[o]||(this.keydown_states[o]=new il(null),this.keydown_observers[o]=this.keydown_states[o].asObservable()),this.updateCombinationEndList(),this.keydown_observers[o].subscribe(function(t){if(t){var o=[];if(r.length>1){for(var i=0,s=r;io[l+1])return}e()}})}return null},t.prototype.mapKey=function(t){return t.indexOf("alt")||t.indexOf("shift")||t.indexOf("control")?t.replace("left","").replace("right",""):t},t.prototype.updateCombinationEndList=function(){for(var t,e=0,n=this.registered_combos;e0},t.ngInjectableDef=Ot({factory:function(){return new t},token:t,providedIn:"root"}),t}(),jy=[],Vy=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=ga(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.repositories=function(){var t=this,e="repositories";return this._promises[e]||(this._promises[e]=new Promise(function(n,r){var o;t.http.get(t.api_route+"/repositories").subscribe(function(t){return o=t},function(n){r(n),delete t._promises[e]},function(){n(o),t.timeout(e,function(){return delete t._promises[e]},1e3)})})),this._promises[e]},e.prototype.commits=function(t){var e=this,n="commits|"+ga(t);return this._promises[n]||(this._promises[n]=new Promise(function(t,r){var o;e.http.get(e.api_route+"/repositories_commits").subscribe(function(t){return o=t},function(t){r(t),delete e._promises[n]},function(){t(o),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.versions=function(t){var e=this,n="versions|"+t;return this._promises[n]||(this._promises[n]=new Promise(function(r,o){var i,s=e.api_route+"/"+encodeURIComponent(t);e.http.get(s).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[n]},function(){r(i),e.timeout(n,function(){return delete e._promises[n]},1e3)})})),this._promises[n]},e.prototype.driverCommits=function(t,e){var n=this,r=ga(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.build=function(t){var e=this,n=ga(t),r="build|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){e.http.post(""+e.api_route,n).subscribe(function(t){return null},function(t){o(t),delete e._promises[r]},function(){t(),delete e._promises[r]})})),this._promises[r]},e.prototype.clean=function(t,e){var n=this,r=ga(e),o="clean|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(t,e){n.http.delete(n.api_route+(r?"?"+r:"")).subscribe(function(t){return null},function(t){e(t),delete n._promises[o]},function(){t(),delete n._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/build":"/build"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(yy))},token:e,providedIn:"root"}),e}(Jv),Ly=function(t){function e(e){var n=t.call(this)||this;return n.http=e,n._promises={},n}return o(e,t),e.prototype.query=function(t){var e=this,n=ga(t),r="query|"+n;return this._promises[r]||(this._promises[r]=new Promise(function(t,o){var i;e.http.get(e.api_route+(n?"?"+n:"")).subscribe(function(t){return i=t},function(t){o(t),delete e._promises[r]},function(){t(i),e.timeout(r,function(){return delete e._promises[r]},1e3)})})),this._promises[r]},e.prototype.specCommits=function(t,e){var n=this,r=ga(e),o="commits|"+t+"|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(e,r){var i,s=n.api_route+"/"+encodeURIComponent(t)+"/commits";n.http.get(s).subscribe(function(t){return i=t},function(t){r(t),delete n._promises[o]},function(){e(i),n.timeout(o,function(){return delete n._promises[o]},1e3)})})),this._promises[o]},e.prototype.run=function(t){var e=this;for(var n in t)null==t[n]&&delete t[n];var r=ga(t),o="build|"+r;return this._promises[o]||(this._promises[o]=new Promise(function(n,i){var s;e.http.post(e.api_route+(r?"?"+r:""),t,{responseType:"text"}).subscribe(function(t){return s=t},function(t){i(t),delete e._promises[o]},function(){n(s),delete e._promises[o]})})),this._promises[o]},Object.defineProperty(e.prototype,"api_route",{get:function(){return this.parent?this.parent.endpoint+"/test":"/test"},enumerable:!0,configurable:!0}),e.ngInjectableDef=Ot({factory:function(){return new e(Lt(yy))},token:e,providedIn:"root"}),e}(Jv),zy=new R(P),Uy=function(){function t(t,e){this.delay=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new Fy(t,this.delay,this.scheduler))},t}(),Fy=function(t){function e(e,n,r){var o=t.call(this,e)||this;return o.delay=n,o.scheduler=r,o.queue=[],o.active=!1,o.errored=!1,o}return o(e,t),e.dispatch=function(t){for(var e=t.source,n=e.queue,r=t.scheduler,o=t.destination;n.length>0&&n[0].time-r.now()<=0;)n.shift().notification.observe(o);if(n.length>0){var i=Math.max(0,n[0].time-r.now());this.schedule(t,i)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.destination.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new Hy(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(jd.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.scheduleNotification(jd.createComplete()),this.unsubscribe()},e}(E),Hy=function(){return function(t,e){this.time=t,this.notification=e}}(),By="Service workers are disabled or not supported by this browser",Wy=function(){function t(t){if(this.serviceWorker=t,t){var e=ad(t,"controllerchange").pipe(K(function(){return t.controller})),n=Hl(hl(function(){return ol(t.controller)}),e);this.worker=n.pipe(dl(function(t){return!!t})),this.registration=this.worker.pipe(zl(function(){return t.getRegistration()}));var r=ad(t,"message").pipe(K(function(t){return t.data})).pipe(dl(function(t){return t&&t.type})).pipe(gt(new V));r.connect(),this.events=r}else this.worker=this.events=this.registration=(o=By,hl(function(){return Md(new Error(o))}));var o}return t.prototype.postMessage=function(t,e){return this.worker.pipe(Ml(1),wl(function(n){n.postMessage(i({action:t},e))})).toPromise().then(function(){})},t.prototype.postMessageWithStatus=function(t,e,n){var r=this.waitForStatus(n),o=this.postMessage(t,e);return Promise.all([r,o]).then(function(){})},t.prototype.generateNonce=function(){return Math.round(1e7*Math.random())},t.prototype.eventsOfType=function(t){return this.events.pipe(dl(function(e){return e.type===t}))},t.prototype.nextEventOfType=function(t){return this.eventsOfType(t).pipe(Ml(1))},t.prototype.waitForStatus=function(t){return this.eventsOfType("STATUS").pipe(dl(function(e){return e.nonce===t}),Ml(1),K(function(t){if(!t.status)throw new Error(t.error)})).toPromise()},Object.defineProperty(t.prototype,"isEnabled",{get:function(){return!!this.serviceWorker},enumerable:!0,configurable:!0}),t}(),Gy=function(){function t(t){if(this.sw=t,this.subscriptionChanges=new V,!t.isEnabled)return this.messages=zy,this.notificationClicks=zy,void(this.subscription=zy);this.messages=this.sw.eventsOfType("PUSH").pipe(K(function(t){return t.data})),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(K(function(t){return t.data})),this.pushManager=this.sw.registration.pipe(K(function(t){return t.pushManager}));var e=this.pushManager.pipe(zl(function(t){return t.getSubscription()}));this.subscription=lt(e,this.subscriptionChanges)}return Object.defineProperty(t.prototype,"isEnabled",{get:function(){return this.sw.isEnabled},enumerable:!0,configurable:!0}),t.prototype.requestSubscription=function(t){var e=this;if(!this.sw.isEnabled)return Promise.reject(new Error(By));for(var n={userVisibleOnly:!0},r=this.decodeBase64(t.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),o=new Uint8Array(new ArrayBuffer(r.length)),i=0;i
'+e+"
",n,r,t)},e.prototype.notifySuccess=function(t,e,n){this.notify("success",t,e,n)},e.prototype.notifyError=function(t,e,n){this.notify("error",t,e,n)},e.prototype.notifyInfo=function(t,e,n){this.notify("info",t,e,n)},e.prototype.log=function(t,e,n,r,o){void 0===r&&(r="debug"),void 0===o&&(o=!1),this._settings.log(t,e,n,r,o)},e.prototype.navigate=function(t,e){var n=t instanceof Array?t.slice():[t];this._route_trail.push(this._router.url),this._router.navigate(n,{queryParams:e})},e.prototype.navigateBack=function(){if(this._route_trail&&this._route_trail.length>0){var t=this._route_trail.pop();this._router.navigate([t])}else this._router.navigate([""])},e.prototype.get=function(t){return this._subjects[t]&&this._subjects[t]instanceof il?this._subjects[t].getValue():null},e.prototype.listen=function(t,e){return this._observers[t]?this._observers[t].subscribe(e):null},e.prototype.set=function(t,e){this._subjects[t]?this._subjects[t].next(e):(this._subjects[t]=new il(e),this._observers[t]=this._subjects[t].asObservable())},e.prototype.init=function(){var t=this;if(!this._settings.setup)return this.timeout("init",function(){return t.init()});this._analytics.enabled=!!this.setting("app.analytics.enabled"),this._analytics.enabled&&this._analytics.load(this.setting("app.analytics.tracking_id")),this._version.available.subscribe(function(e){t.log("CACHE","Update available: current version is "+e.current.hash+" available version is "+e.available.hash),t.notifyInfo("Newer version of the app is available","Refresh",function(){return location.reload()})}),window.debug&&(window.application=this),this._hotkeys.listen(["Shift","Backslash"],function(){t.navigate("bootstrap",{clear:!0})})},e.prototype.registerOverlays=function(){if(jy)for(var t=0,e=jy;tt.driver.localeCompare(n.id)?e:n},null),t.updateSpecCommits()),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.updateSpecCommits=function(){var t=this;this.spec&&(this.loading_commits=!0,this.service.Test.specCommits(this.spec.id,{repository:"aca_drivers"!==this.repo?this.repo:null}).then(function(e){t.spec_commit_list=(e||[]).map(function(t){return{id:t.commit,name:t.commit,author:t.author,date:ya(t.date).format("DD MMM YYYY h:mm A")}}),t.spec_commit_list.unshift({id:null,name:"Latest Commit"}),t.loading_commits=!1},function(e){return t.loading_commits=!1}))},e.prototype.test=function(){var t=this;if(this.repo&&this.driver&&this.spec){this.testing=!0,this.test_results="";var e=function(e){e instanceof Object&&(e=e.error),t.test_results=t.styleResults(e||"");var n=t.service.get("TEST.results")||{},r=e.indexOf("exited with 0")>=0;n[t.repo+"|"+t.driver]=r?"passed":"failed",t.service.set("TEST.results",n),t.testing=!1,t.timeout("scroll",function(){return t.body.nativeElement.scrollTo(0,t.body.nativeElement.scrollHeight)},10)};this.service.Test.run({repository:"aca_drivers"!==this.repo?this.repo:null,driver:this.driver,commit:this.commit?this.commit.id:null,spec:this.spec.id,spec_commit:this.spec_commit?this.spec_commit.id:null,force:this.force||null,debug:this.debug||null}).then(e,e)}},e.prototype.styleResults=function(t){return t.replace(/\n/g,"
").replace("errors",'errors').replace("pending",'pending').replace("failures",'failures').replace("examples",'examples')},e}(ty),om=or({encapsulation:0,styles:[[".workspace[_ngcontent-%COMP%]{position:relative;height:100%;width:100%;display:flex;align-items:center;flex-direction:column}.header[_ngcontent-%COMP%]{width:100%;padding:.5em 1.5em 1em;background-color:#263238;color:#fff}.header[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%]{position:relative;width:100%;min-height:10em;flex:1;overflow:hidden;background-color:#263238;color:#fff;border-top:1px solid rgba(255,255,255,.2)}.body[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{font-family:monospace}.body[_ngcontent-%COMP%] .scrollable[_ngcontent-%COMP%]{height:100%;width:100%;overflow:auto;padding:1em 1.5em}.body.show[_ngcontent-%COMP%]{position:absolute;top:1em;bottom:0;left:0;right:0}.field[_ngcontent-%COMP%]{display:flex;align-items:center;margin:.5em 0}.field[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{padding:.5em .5em .5em 0;width:9em}.field[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{flex:1;min-width:12em}.info-block[_ngcontent-%COMP%]{font-size:2.5em;text-align:center}.info-block[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.05em;height:1.05em;font-size:5em}.toggle[_ngcontent-%COMP%]{position:absolute;top:.25em;right:.25em;height:1.2em;width:1.2em;display:flex;align-items:center;justify-content:center;border-radius:100%;font-size:2em}.toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-family:'Material Icons'}"]],data:{}});function im(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Spec Commit:"])),(t()(),Gi(3,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(4,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.spec_commit=n)&&r),r},Pv,Cv)),vo(5,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(7,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(9,16384,null,0,Mg,[[4,Ag]],null,null)],function(t,e){var n=e.component;t(e,5,0,"wide mono",n.spec_commit_list,"Latest commit"),t(e,7,0,n.spec_commit)},function(t,e){t(e,4,0,no(e,9).ngClassUntouched,no(e,9).ngClassTouched,no(e,9).ngClassPristine,no(e,9).ngClassDirty,no(e,9).ngClassValid,no(e,9).ngClassInvalid,no(e,9).ngClassPending)})}function sm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"div",[["class","test-results"]],[[8,"innerHTML",1]],null,null,null,null)),rs(1,2)],null,function(t,e){var n=e.component,r=er(e,0,0,t(e,1,0,no(e.parent.parent,0),n.test_results,"html"));t(e,0,0,r)})}function am(t){return as(0,[(t()(),Gi(0,0,null,null,66,null,null,null,null,null,null,null)),(t()(),Gi(1,0,null,null,48,"div",[["class","header"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Repository:"])),(t()(),Gi(5,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),os(6,null,["",""])),(t()(),Gi(7,0,null,null,4,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(8,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Driver:"])),(t()(),Gi(10,0,null,null,1,"div",[["class","value"]],null,null,null,null,null)),(t()(),os(11,null,["",""])),(t()(),Gi(12,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(13,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Commit:"])),(t()(),Gi(15,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(16,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Latest commit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.commit=n)&&r),r},Pv,Cv)),vo(17,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(19,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(21,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(22,0,null,null,9,"div",[["class","field"]],null,null,null,null,null)),(t()(),Gi(23,0,null,null,1,"label",[],null,null,null,null,null)),(t()(),os(-1,null,["Spec:"])),(t()(),Gi(25,0,null,null,6,"div",[["class","value"]],null,null,null,null,null)),(t()(),Gi(26,0,null,null,5,"a-dropdown",[["klass","wide mono"],["placeholder","Select Spec file"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.spec=n)&&r),"ngModelChange"===e&&(r=!1!==o.updateSpecCommits()&&r),r},Pv,Cv)),vo(27,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(29,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(31,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Wi(16777216,null,null,1,null,im)),vo(33,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(34,0,null,null,15,"div",[["class","header-footer"]],null,null,null,null,null)),(t()(),Gi(35,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),Gi(36,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Gi(37,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Force recompilation"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.force=n)&&r),r},Hv,Uv)),vo(38,49152,null,0,Iv,[],{klass:[0,"klass"],label:[1,"label"]},null),mo(1024,null,Eg,function(t){return[t]},[Iv]),vo(40,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(42,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(43,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),Gi(44,0,null,null,5,"a-checkbox",[["klass","mono"],["label","Compile with debug symbols"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0;return"ngModelChange"===e&&(r=!1!==(t.component.debug=n)&&r),r},Hv,Uv)),vo(45,49152,null,0,Iv,[],{klass:[0,"klass"],label:[1,"label"]},null),mo(1024,null,Eg,function(t){return[t]},[Iv]),vo(47,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(49,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(50,0,[[1,0],["body",1]],null,16,"div",[["class","body"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(51,0,null,null,10,"div",[["class","scrollable"]],null,null,null,null,null)),(t()(),Gi(52,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),Gi(53,0,null,null,4,"button",[["widget",""]],[[8,"disabled",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.test()&&r),r},Zv,qv)),mo(5120,null,Eg,function(t){return[t]},[Wv]),vo(55,4767744,null,0,Wv,[pn,yn],null,{tapped:"tapped"}),vo(56,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),os(-1,0,["Run!"])),(t()(),Gi(58,0,null,null,1,"div",[["class","pre-test"]],null,null,null,null,null)),(t()(),os(59,null,[" "," "])),(t()(),Wi(16777216,null,null,1,null,sm)),vo(61,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null),(t()(),Gi(62,0,null,null,4,"div",[["class","toggle icon"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,63).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,63).handleTouch(n)&&r),"tapped"===e&&(r=0!=(o.show=!o.show)&&r),r},zv,Lv)),vo(63,4440064,null,0,Mv,[pn,yn],{klass:[0,"klass"],center:[1,"center"]},null),vo(64,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(65,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(66,null,["",""]))],function(t,e){var n=e.component;t(e,17,0,"wide mono",n.commit_list,"Latest commit"),t(e,19,0,n.commit),t(e,27,0,"wide mono",n.spec_list,"Select Spec file"),t(e,29,0,n.spec),t(e,33,0,n.spec),t(e,38,0,"mono","Force recompilation"),t(e,40,0,n.force),t(e,45,0,"mono","Compile with debug symbols"),t(e,47,0,n.debug),t(e,61,0,n.test_results),t(e,63,0,"light",!0)},function(t,e){var n=e.component;t(e,6,0,n.repo),t(e,11,0,n.driver),t(e,16,0,no(e,21).ngClassUntouched,no(e,21).ngClassTouched,no(e,21).ngClassPristine,no(e,21).ngClassDirty,no(e,21).ngClassValid,no(e,21).ngClassInvalid,no(e,21).ngClassPending),t(e,26,0,no(e,31).ngClassUntouched,no(e,31).ngClassTouched,no(e,31).ngClassPristine,no(e,31).ngClassDirty,no(e,31).ngClassValid,no(e,31).ngClassInvalid,no(e,31).ngClassPending),t(e,37,0,no(e,42).ngClassUntouched,no(e,42).ngClassTouched,no(e,42).ngClassPristine,no(e,42).ngClassDirty,no(e,42).ngClassValid,no(e,42).ngClassInvalid,no(e,42).ngClassPending),t(e,44,0,no(e,49).ngClassUntouched,no(e,49).ngClassTouched,no(e,49).ngClassPristine,no(e,49).ngClassDirty,no(e,49).ngClassValid,no(e,49).ngClassInvalid,no(e,49).ngClassPending),t(e,50,0,n.show),t(e,53,0,!n.spec||n.testing),t(e,59,0,n.testing?"Running tests...":n.test_results?"Results below:":"No test results to display"),t(e,66,0,n.show?"keyboard_arrow_down":"keyboard_arrow_up")})}function lm(t){return as(0,[(t()(),Gi(0,0,null,null,5,"div",[["class","info-block center"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["arrow_back"])),(t()(),Gi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(-1,null,["Select a driver from the sidebar"]))],null,null)}function um(t){return as(0,[yo(0,$v,[Zu]),Qi(671088640,1,{body:0}),(t()(),Gi(2,0,null,null,3,"div",[["class","workspace"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,am)),vo(4,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),Wi(0,[["select",2]],null,0,null,lm))],function(t,e){var n=e.component;t(e,4,0,n.repo&&n.driver,no(e,5))},null)}function cm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"app-workspace",[],null,null,null,um,om)),vo(1,245760,null,0,rm,[nm,gh],null,null)],function(t,e){t(e,1,0)},null)}var hm=Gr("app-workspace",rm,cm,{},{},[]),pm=function(){function t(){this.menu=!0,this.menuChange=new No}return t.prototype.toggleMenu=function(){this.menu=!this.menu,this.menuChange.emit(this.menu)},t}(),dm=or({encapsulation:0,styles:[[".topbar-header[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:#1976d2;color:#fff;width:100%;height:3em;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.menu[_ngcontent-%COMP%]{height:100%;width:3.5em;display:flex;align-items:center;justify-content:center}.menu[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{font-size:2em}.logo[_ngcontent-%COMP%]{padding:.6em .5em;height:100%}.logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:100%}.title[_ngcontent-%COMP%]{font-size:1.2em;margin:.5em}"]],data:{}});function fm(t){return as(0,[(t()(),Gi(0,0,null,null,9,"div",[["class","topbar-header"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,4,"div",[["class","menu"],["feedback",""],["klass","light"]],null,[[null,"tapped"],[null,"mousedown"],[null,"touchstart"]],function(t,e,n){var r=!0,o=t.component;return"mousedown"===e&&(r=!1!==no(t,2).handleMouse(n)&&r),"touchstart"===e&&(r=!1!==no(t,2).handleTouch(n)&&r),"tapped"===e&&(r=!1!==o.toggleMenu()&&r),r},zv,Lv)),vo(2,4440064,null,0,Mv,[pn,yn],{klass:[0,"klass"]},null),vo(3,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(4,0,null,0,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["menu"])),(t()(),Gi(6,0,null,null,1,"div",[["class","logo"]],null,null,null,null,null)),(t()(),Gi(7,0,null,null,0,"img",[["src","assets/img/logo.svg"]],null,null,null,null,null)),(t()(),Gi(8,0,null,null,1,"div",[["class","title"]],null,null,null,null,null)),(t()(),os(-1,null,["Driver Test Runner"]))],function(t,e){t(e,2,0,"light")},null)}var gm=function(){function t(){}return t.prototype.transform=function(t){if(t.indexOf("/")>=0){var e=t.split("/");return e.splice(0,1),'
'+e.map(function(t){return'
'+t+"
"}).join('
keyboard_arrow_right
')+"
"}return t},t}(),vm=function(t){function e(e){var n=t.call(this)||this;return n.service=e,n.repository_list=[],n.status={},n}return o(e,t),e.prototype.ngOnInit=function(){var t=this;this.service.set("TEST.repository",""),this.service.set("TEST.filter",""),this.service.set("TEST.driver",""),this.service.set("TEST.results",{}),this.updateRepositoryList(),this.interval("update_repo",function(){return t.updateRepositoryList()},6e4),this.subscription("test_results",this.service.listen("TEST.filter",function(e){console.log("Filter:",e),t.search_str=e||"",t.filter(t.search_str)})),this.subscription("test_results",this.service.listen("TEST.results",function(e){t.status=e||{}})),this.subscription("repository",this.service.listen("TEST.repository",function(e){e&&(t.repo={id:e,name:e},t.updateDriverList())})),this.subscription("driver",this.service.listen("TEST.driver",function(e){t.driver=e}))},e.prototype.setRepository=function(t){this.service.navigate([t],{filter:this.search_str}),this.search_str="",this.updateDriverList()},e.prototype.setDriver=function(t){this.driver=t,this.service.navigate([this.repo?this.repo.id:"aca_drivers",t],{filter:this.search_str})},e.prototype.filter=function(t){this.filtered_list=(this.driver_list||[]).filter(function(e){return e.toLowerCase().indexOf(t.toLowerCase())>=0})},e.prototype.updateDriverList=function(){var t=this;this.loading=!0,this.service.Build.query({repository:this.repo&&"aca_drivers"!==this.repo.id?this.repo.name:null}).then(function(e){t.driver_list=e||[],t.filter(t.search_str),t.loading=!1},function(e){return t.loading=!1})},e.prototype.updateRepositoryList=function(){var t=this;this.service.Build.repositories().then(function(e){t.repository_list=(e||[]).map(function(t){return{id:t,name:t}}),t.repository_list.unshift({id:"aca_drivers",name:"aca_drivers"}),t.updateDriverList()})},e}(ty),ym=or({encapsulation:0,styles:[[".sidebar[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;align-items:center;flex-direction:column}.repository[_ngcontent-%COMP%], .repository[_ngcontent-%COMP%] a-dropdown[_ngcontent-%COMP%]{width:100%}.list[_ngcontent-%COMP%]{min-height:10em;width:100%;flex:1;overflow:auto}.item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:.75em .75em .75em 0}.item[_ngcontent-%COMP%]:hover{background-color:#f0f0f0}.item.active[_ngcontent-%COMP%]{background-color:#b71c1c;color:#fff}.item.active[_ngcontent-%COMP%]:hover{background-color:#b71c1c}.item.active[_ngcontent-%COMP%] .status[_ngcontent-%COMP%]{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.text[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:10em}.status[_ngcontent-%COMP%]{height:.5em;width:.5em;border-radius:100%;background-color:#ffb300;margin:.25em .5em}.status.passed[_ngcontent-%COMP%]{background-color:#43a047}.status.failed[_ngcontent-%COMP%]{background-color:#e53935}.search[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid #f0f0f0;width:100%}.search[_ngcontent-%COMP%]:focus{border-color:#1976d2}.icon[_ngcontent-%COMP%]{height:1.5em;width:1.5em;display:flex;align-items:center;justify-content:center;font-size:1.6em}input[_ngcontent-%COMP%]{flex:1;min-width:10em;background:0 0;border:none;outline:0;font-size:1em}.info-block[_ngcontent-%COMP%]{color:rgba(0,0,0,.6);margin:1em;padding:1em}.info-block[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:normal;max-width:100%;text-align:center}"]],data:{}});function mm(t){return as(0,[(t()(),Gi(0,0,null,null,4,"div",[["class","item"]],[[2,"active",null],[8,"title",0]],[[null,"tapped"]],function(t,e,n){var r=!0;return"tapped"===e&&(r=!1!==t.component.setDriver(t.context.$implicit)&&r),r},null,null)),vo(1,4341760,null,0,Nv,[pn,yn],null,{tapped:"tapped"}),(t()(),Gi(2,0,null,null,0,"div",[["class","status"]],[[2,"failed",null],[2,"passed",null]],null,null,null,null)),(t()(),Gi(3,0,null,null,1,"div",[["class","text"]],[[8,"innerHTML",1]],null,null,null,null)),rs(4,1)],null,function(t,e){var n=e.component;t(e,0,0,e.context.$implicit===n.driver,e.context.$implicit),t(e,2,0,"failed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit],"passed"===n.status[(n.repo?n.repo.id:"aca_drivers")+"|"+e.context.$implicit]);var r=er(e,3,0,t(e,4,0,no(e.parent,0),e.context.$implicit));t(e,3,0,r)})}function _m(t){return as(0,[(t()(),Gi(0,0,null,null,5,"div",[["class","info-block"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(3,null,["",""])),(t()(),Gi(4,0,null,null,1,"div",[["class","text"]],null,null,null,null,null)),(t()(),os(5,null,[" "," "]))],null,function(t,e){var n=e.component;t(e,3,0,n.repo?"not_interested":"arrow_upward"),t(e,5,0,n.repo?n.search_str?'No drivers matching "'+n.search_str+'"':"No drivers in the selected repository":"Select a repository from above")})}function bm(t){return as(0,[yo(0,gm,[]),(t()(),Gi(1,0,null,null,22,"div",[["class","sidebar"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,6,"div",[["class","repository"]],null,null,null,null,null)),(t()(),Gi(3,0,null,null,5,"a-dropdown",[["klass","simple"],["placeholder","ACA Drivers"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],function(t,e,n){var r=!0,o=t.component;return"ngModelChange"===e&&(r=!1!==(o.repo=n)&&r),"ngModelChange"===e&&(r=!1!==o.setRepository(n.id)&&r),r},Pv,Cv)),vo(4,4767744,null,0,ed,[],{klass:[0,"klass"],items:[1,"items"],placeholder:[2,"placeholder"]},null),mo(1024,null,Eg,function(t){return[t]},[ed]),vo(6,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(8,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(9,0,null,null,9,"div",[["class","search"],["tabindex","0"]],null,null,null,null,null)),(t()(),Gi(10,0,null,null,2,"div",[["class","icon"]],null,null,null,null,null)),(t()(),Gi(11,0,null,null,1,"i",[["class","material-icons"]],null,null,null,null,null)),(t()(),os(-1,null,["search"])),(t()(),Gi(13,0,null,null,5,"input",[["placeholder","Search drivers..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var r=!0,o=t.component;return"input"===e&&(r=!1!==no(t,14)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==no(t,14).onTouched()&&r),"compositionstart"===e&&(r=!1!==no(t,14)._compositionStart()&&r),"compositionend"===e&&(r=!1!==no(t,14)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(o.search_str=n)&&r),"ngModelChange"===e&&(r=!1!==o.filter(n)&&r),r},null,null)),vo(14,16384,null,0,Pg,[yn,pn,[2,kg]],null,null),mo(1024,null,Eg,function(t){return[t]},[Pg]),vo(16,671744,null,0,fv,[[8,null],[8,null],[8,null],[6,Eg]],{model:[0,"model"]},{update:"ngModelChange"}),mo(2048,null,Ag,null,[fv]),vo(18,16384,null,0,Mg,[[4,Ag]],null,null),(t()(),Gi(19,0,null,null,4,"div",[["class","list"]],null,null,null,null,null)),(t()(),Wi(16777216,null,null,1,null,mm)),vo(21,278528,null,0,La,[zn,Vn,In],{ngForOf:[0,"ngForOf"]},null),(t()(),Wi(16777216,null,null,1,null,_m)),vo(23,16384,null,0,Ua,[zn,Vn],{ngIf:[0,"ngIf"]},null)],function(t,e){var n=e.component;t(e,4,0,"simple",n.repository_list||Rr,"ACA Drivers"),t(e,6,0,n.repo),t(e,16,0,n.search_str),t(e,21,0,n.filtered_list),t(e,23,0,!n.filtered_list||0===n.filtered_list.length)},function(t,e){t(e,3,0,no(e,8).ngClassUntouched,no(e,8).ngClassTouched,no(e,8).ngClassPristine,no(e,8).ngClassDirty,no(e,8).ngClassValid,no(e,8).ngClassInvalid,no(e,8).ngClassPending),t(e,13,0,no(e,18).ngClassUntouched,no(e,18).ngClassTouched,no(e,18).ngClassPristine,no(e,18).ngClassDirty,no(e,18).ngClassValid,no(e,18).ngClassInvalid,no(e,18).ngClassPending)})}var wm=or({encapsulation:2,styles:[["@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(MaterialIcons-Regular.e79bfd88537def476913.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(MaterialIcons-Regular.570eb83859dc23dd0eec.woff2) format('woff2'),url(MaterialIcons-Regular.012cf6a10129e2275d79.woff) format('woff'),url(MaterialIcons-Regular.a37b0c01c0baf1888ca8.ttf) format('truetype')}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;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;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-size:1em}@media only screen and (orientation:portrait) and (min-width:800px){body,html{font-size:20px}}@media only screen and (orientation:landscape) and (min-width:1048px){body,html{font-size:20px}}@media only screen and (orientation:portrait) and (max-width:450px){body,html{font-size:16px}}@media only screen and (orientation:landscape) and (max-width:800px){body,html{font-size:16px}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:\"Roboto Slab\",Roboto,Verdana,\"Helvetica Neue\",Arial,sans-serif;box-sizing:border-box}span.highlight{color:#1976d2}.fs-small{font-size:.8rem}.fs-normal{font-size:1rem}.fs-big{font-size:1.2rem}.fs-large{font-size:1.5rem}.info-block{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:.5em}.info-block .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:2em}.info-block .icon a-spinner{font-size:.25em}.info-block .text{margin:.5em 0 0}.application{display:flex;align-items:center;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f0f0}.application>.header{height:3em;width:100%;z-index:10}.application>.body{display:flex;align-items:center;min-height:3em;width:100%;flex:1;z-index:1}.application>.body>.sidebar{height:100%;width:0;background-color:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);overflow:hidden;transition:width .2s}.application>.body>.sidebar.show{width:20em}.application>.body>.content{height:100%;flex:1;min-width:3em}.test-results *{font-family:monospace}.test-results span.error{color:#e53935}.test-results span.pending{color:#ffb300}.test-results span.success{color:#43a047}.formatted-driver-name{display:flex;align-items:center}.formatted-driver-name .icon{display:flex;align-items:center;justify-content:center;height:1.2em;width:1.2em;font-size:1.5em}"],["button[widget][disabled]{pointer-events:none;background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}button[widget][disabled]:hover{background-color:rgba(255,255,255,.6);color:rgba(0,0,0,.3);box-shadow:none}.dropdown-list[widget].simple,.dropdown[widget].simple{width:100%;font-size:1.25em}.dropdown-list[widget].simple .item.active,.dropdown-list[widget].simple .item.active *,.dropdown[widget].simple .item.active,.dropdown[widget].simple .item.active *{border:none}.dropdown-list[widget].simple .text,.dropdown[widget].simple .text{font-size:.8em}.dropdown-list[widget].wide,.dropdown[widget].wide{width:100%;max-width:28em}.checkbox[widget].mono *,.dropdown-list[widget].mono *,.dropdown[widget].mono *{font-family:monospace}"],[""]],data:{}});function Cm(t){return as(0,[(t()(),Gi(0,0,null,null,10,"div",[["class","application"]],null,null,null,null,null)),(t()(),Gi(1,0,null,null,2,"div",[["class","header"]],null,null,null,null,null)),(t()(),Gi(2,0,null,null,1,"topbar-header",[],null,[[null,"menuChange"]],function(t,e,n){var r=!0;return"menuChange"===e&&(r=!1!==(t.component.show_menu=n)&&r),r},fm,dm)),vo(3,49152,null,0,pm,[],{menu:[0,"menu"]},{menuChange:"menuChange"}),(t()(),Gi(4,0,null,null,6,"div",[["class","body"]],null,null,null,null,null)),(t()(),Gi(5,0,null,null,2,"div",[["class","sidebar"]],[[2,"show",null]],null,null,null,null)),(t()(),Gi(6,0,null,null,1,"sidebar",[],null,null,null,bm,ym)),vo(7,245760,null,0,vm,[nm],null,null),(t()(),Gi(8,0,null,null,2,"div",[["class","content"]],null,null,null,null,null)),(t()(),Gi(9,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),vo(10,212992,null,0,Pp,[kp,zn,sn,[8,null],An],null,null)],function(t,e){t(e,3,0,e.component.show_menu),t(e,7,0),t(e,10,0)},function(t,e){t(e,5,0,!1!==e.component.show_menu)})}function xm(t){return as(0,[(t()(),Gi(0,0,null,null,1,"app-root",[],null,null,null,Cm,wm)),vo(1,49152,null,0,_a,[],null,null)],null,null)}var Sm=Gr("app-root",_a,xm,{},{},[]),Em=function(){return function(){}}(),Om=function(){return function(){}}(),km=pa(ma,[_a],function(t){return function(t){for(var e={},n=[],r=!1,o=0;o