From 5647149852f141d00f2394973a0dd2ea279a6e1b Mon Sep 17 00:00:00 2001 From: Mo Firouz Date: Fri, 26 Feb 2021 13:08:46 +0000 Subject: [PATCH] Check-in angular dist folder. --- .gitignore | 2 - console/ui/.gitignore | 1 - console/ui/dist/favicon.ico | Bin 0 -> 16958 bytes console/ui/dist/index.html | 14 + console/ui/dist/static/3rdpartylicenses.txt | 1118 +++++++++++++++++ .../dist/static/main.b4f850eaa09a25379ae0.js | 1 + .../static/polyfills.cb4331e883de4daa4c94.js | 1 + .../static/runtime.4ced225923cd14368d64.js | 1 + console/ui/dist/static/spinner.svg | 1 + .../static/styles.14b882f135e080634619.css | 6 + console/ui/dist/static/svg/accounts.svg | 12 + console/ui/dist/static/svg/api-explorer.svg | 13 + console/ui/dist/static/svg/arrow-down.svg | 10 + console/ui/dist/static/svg/arrow-right.svg | 10 + console/ui/dist/static/svg/ban.svg | 13 + console/ui/dist/static/svg/bin-recorded.svg | 18 + console/ui/dist/static/svg/bin-red.svg | 12 + console/ui/dist/static/svg/bin-white.svg | 12 + console/ui/dist/static/svg/bin.svg | 12 + console/ui/dist/static/svg/blog.svg | 19 + console/ui/dist/static/svg/configuration.svg | 16 + console/ui/dist/static/svg/docs.svg | 20 + console/ui/dist/static/svg/export.svg | 14 + console/ui/dist/static/svg/forum.svg | 17 + console/ui/dist/static/svg/green-tick.svg | 30 + console/ui/dist/static/svg/heroiccloud.svg | 30 + console/ui/dist/static/svg/hint.svg | 36 + console/ui/dist/static/svg/hl-logo-dark.svg | 65 + console/ui/dist/static/svg/hl-logo-white.svg | 543 ++++++++ console/ui/dist/static/svg/leaderboard.svg | 17 + console/ui/dist/static/svg/log-out.svg | 13 + console/ui/dist/static/svg/logo-icon.svg | 26 + console/ui/dist/static/svg/logo.svg | 69 + console/ui/dist/static/svg/page-first.svg | 13 + console/ui/dist/static/svg/page-next.svg | 12 + console/ui/dist/static/svg/page-prev.svg | 12 + console/ui/dist/static/svg/purple-cog-1.svg | 16 + console/ui/dist/static/svg/purple-cog-2.svg | 12 + console/ui/dist/static/svg/purple-server.svg | 19 + console/ui/dist/static/svg/red-cross.svg | 33 + console/ui/dist/static/svg/red-triangle.svg | 31 + console/ui/dist/static/svg/role-admin.svg | 36 + console/ui/dist/static/svg/role-developer.svg | 31 + .../ui/dist/static/svg/role-maintainer.svg | 34 + console/ui/dist/static/svg/role-viewonly.svg | 33 + .../ui/dist/static/svg/running-matches.svg | 19 + .../ui/dist/static/svg/runtime-modules.svg | 13 + console/ui/dist/static/svg/status.svg | 11 + console/ui/dist/static/svg/storage.svg | 19 + .../ui/dist/static/svg/user-management.svg | 15 + 50 files changed, 2528 insertions(+), 3 deletions(-) create mode 100644 console/ui/dist/favicon.ico create mode 100644 console/ui/dist/index.html create mode 100644 console/ui/dist/static/3rdpartylicenses.txt create mode 100644 console/ui/dist/static/main.b4f850eaa09a25379ae0.js create mode 100644 console/ui/dist/static/polyfills.cb4331e883de4daa4c94.js create mode 100644 console/ui/dist/static/runtime.4ced225923cd14368d64.js create mode 100644 console/ui/dist/static/spinner.svg create mode 100644 console/ui/dist/static/styles.14b882f135e080634619.css create mode 100644 console/ui/dist/static/svg/accounts.svg create mode 100644 console/ui/dist/static/svg/api-explorer.svg create mode 100644 console/ui/dist/static/svg/arrow-down.svg create mode 100644 console/ui/dist/static/svg/arrow-right.svg create mode 100644 console/ui/dist/static/svg/ban.svg create mode 100644 console/ui/dist/static/svg/bin-recorded.svg create mode 100644 console/ui/dist/static/svg/bin-red.svg create mode 100644 console/ui/dist/static/svg/bin-white.svg create mode 100644 console/ui/dist/static/svg/bin.svg create mode 100644 console/ui/dist/static/svg/blog.svg create mode 100644 console/ui/dist/static/svg/configuration.svg create mode 100644 console/ui/dist/static/svg/docs.svg create mode 100644 console/ui/dist/static/svg/export.svg create mode 100644 console/ui/dist/static/svg/forum.svg create mode 100644 console/ui/dist/static/svg/green-tick.svg create mode 100755 console/ui/dist/static/svg/heroiccloud.svg create mode 100644 console/ui/dist/static/svg/hint.svg create mode 100644 console/ui/dist/static/svg/hl-logo-dark.svg create mode 100644 console/ui/dist/static/svg/hl-logo-white.svg create mode 100644 console/ui/dist/static/svg/leaderboard.svg create mode 100644 console/ui/dist/static/svg/log-out.svg create mode 100644 console/ui/dist/static/svg/logo-icon.svg create mode 100644 console/ui/dist/static/svg/logo.svg create mode 100644 console/ui/dist/static/svg/page-first.svg create mode 100644 console/ui/dist/static/svg/page-next.svg create mode 100644 console/ui/dist/static/svg/page-prev.svg create mode 100644 console/ui/dist/static/svg/purple-cog-1.svg create mode 100644 console/ui/dist/static/svg/purple-cog-2.svg create mode 100644 console/ui/dist/static/svg/purple-server.svg create mode 100644 console/ui/dist/static/svg/red-cross.svg create mode 100644 console/ui/dist/static/svg/red-triangle.svg create mode 100644 console/ui/dist/static/svg/role-admin.svg create mode 100644 console/ui/dist/static/svg/role-developer.svg create mode 100644 console/ui/dist/static/svg/role-maintainer.svg create mode 100644 console/ui/dist/static/svg/role-viewonly.svg create mode 100644 console/ui/dist/static/svg/running-matches.svg create mode 100644 console/ui/dist/static/svg/runtime-modules.svg create mode 100644 console/ui/dist/static/svg/status.svg create mode 100644 console/ui/dist/static/svg/storage.svg create mode 100644 console/ui/dist/static/svg/user-management.svg diff --git a/.gitignore b/.gitignore index 8d4af3ae1..f2ea6c346 100644 --- a/.gitignore +++ b/.gitignore @@ -7,7 +7,6 @@ nakama ### Angular ### ## Angular ## # compiled output -dist/ tmp/ app/**/*.js app/**/*.js.map @@ -271,7 +270,6 @@ jspm_packages/ # Nuxt.js build / generate output .nuxt -dist # Gatsby files .cache/ diff --git a/console/ui/.gitignore b/console/ui/.gitignore index 86d943a9b..e8419902c 100644 --- a/console/ui/.gitignore +++ b/console/ui/.gitignore @@ -1,7 +1,6 @@ # See http://help.github.com/ignore-files/ for more about ignoring files. # compiled output -/dist /tmp /out-tsc # Only exists if Bazel was run diff --git a/console/ui/dist/favicon.ico b/console/ui/dist/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..bf5db61efe9da5a12f0709d2a047cbe8c2e6ad9e GIT binary patch literal 16958 zcmZQzU}RuqaBu+83Je-f3=Con3=A3!3=9qo3=9nn5OIc4Fd6~_6axQG8ZZ!x2gr$3 zwHE4E#{VY`nEszM;QD{kK<)oY1E>Ed4Z{DQG)Vh@(jfo;NrS@wCk+bzpESt)f6^fO z|49S)|0fM}|DQAv_KWVW4|4D;)So{j}Ga(ulCZKR@ z{D0EG>i>RtTy}qV~yGWpX*Kk|K4iy|L=aI|NoCe)Dj3sP&jY<^LxQKyJYBJILL?HktnaJi+?^+dPN=uM-{rzlwGG|0*S#SCk<|5E#HnCfYb4(K5MZ1 zU&RpNUwmN#3X2rS{~z0I{{LKO`v2cCLtNqT`u|CTivK4KxIuA5lxIj#1Tquqcjx~n z4X$AG``^Qc|GzD=`2V)Rf%v$_=XYee7^nYlvK{_^oniU^?*SuRdEzCs9R;o%Nbnv( zrOt-`v1Pp4xG zwY@;?Bz}|8u|f|5x;icbMN{bga|=kFBC0x9QVaWR1On@orQpf&=Qvf%Uo zlLk?sHZnec;*x{5D_f!cH@M$HVg0GwhWd3J1!4H1(H2`93DhC8I3WL! zf}cg&|G(^~|No%3%>U<$)M5Tcra}Eg31ZU#NZtRF2B7xNA(Xb>34{ONmz)2mTRVq{ z^5AKN-T&k6YX3J_aQ$Cv&i4OmyZrw@NA!{X4q}7G)IeiWxS|_H9O{42SPrNT1?dN4 zP`UTH&-y>beHtSCMNIs^jB@;c)=TUEdJE3~Ys^@|_)v`4|L?nX!R|#Ww?Jc!fyCAW z(7f;Y|D?euBs2d1J!JI%eHj(fevI?~*Gb<0U#AEDe--COc3yfAYWaV=tr*zfF#m6L z<^BJ8yEeN2L1jSo|C0u+C=rc=0}7}ACk;UD-EYYL|FhrtKgH#Ky!-$6liUCQxN_nD z&wF?Nf8Dp^|C{2(|F5E*v4;bw|BM4)4KVt@!IJC$S~E5{UT??o|Lq!0^m+hP56%UR z8RGCViZImw&FJ<1uPr7NxA)#Q6#oDH^4b6Y|Nj05fq%b${r|du$N$%<{#gD0uEhTT z$4=Y-pSo-?@WUp9|7R+s|DUdqg5xt)(*NJC(E9%mG~R}26NB1yot z1oY=k)*k3UlZ3V-(Y#e|Nn1P|NsBx*8l&n z_y7NYE)ZSqpZ_NfK;=0bibrv9aQPoJrvItk25Wp_E$;~U6Pq4TU;gWCE7H>aDU<*I zU+n(>|KIQb|36>*|NlZ1y8l7*Gobl(793ti5ys_z(7Y6Ae4FTb3_|{gwQFLXz~#z^ zCfol%R+>ZVJ8-;W^ySd~1>v6$`2YXYt^fc3|NH;{)#3mD&)7r65oUaW&cidJcoYW* zr~gkH{QtGZ6g&=(E$(oMJqok_e<#r7|AQd2|Br&q!T4FC#s3eD*8e|sTmSz$+w%Xf zO=kGU_0j!<#5er^|7OSk|G(b<|NrOf|Nr;r{QrLvV~zwgPo)g%*WmCniZDL^|2t&( z|6_+O(S4xjk@o+OyQ%))V#)vitb^?TOO6WvFF7gvf7+t)|IdB{$haM7z7r8wNPZ(C z{?EAn|Nm<5|NsC0{{R2&$^ZWsC9!47-o4W~!8U6o%z4HJ6U+*A!|M}+s|3UQtYFL8C z06}YQh#m(<^FOHWKye2s4S>emKy@^(G!GNM8*K4^qb2wMebz$%FF447{eLY~;s2L4 zIw)p>!j)uv*6;uS_vaveiSN(<|G%7#E$v_Wf6@Rnevc={QKiuQfBXMQgRdxVJ7EAF z19ZS!7l8Wb7kza9uQTWPf816A>~~Q7-_BP0|7(vPW&S^H^Z);&rT_o``S$<+-yi?~ zKVI?wKS&HU?m^{#Kd9eJY~BZj1e*UB{Xc228+{xMG#2t@x)pey8Wz{+^ouBm|A$=U z|8KV7`hUh=8tnf|PICVrH>myx%^#qIDXP2ihs`PT|Nn1y|NsB$U-ppy z|8@oidHJ=pUM44^e^$nAfS|3PccKy%+GP{u<+Y4!x9 zO#lu9wDlcVqjmppvE@O{`{_#m{~W{^pCr!zXFUJ^e|rQ{*MZXhgL(h|pSHuM7qk`v zv?hib<|k5UEb$NWKWMEJC?7mQi4$lTfab$KG~50M_1Qt?0BF6-hdIXouQ$m5zu*n2 z_bxih{eRY>{{Qb$V*L+l$AB=j9RMod?oIpu|J_MQyo2~4`%y7y?zfMUwJ^5c^FK%)REI#<<+l7k zX#i?hfb2xUpnBoQ3iJPpSt4$$1jdgz*QqT9GIzhI*Y`5&YQ8U~=cHRk_G1JHV3jCL|c zIf-yHs((&d{r`WX{{R1b(;?#+7b75f9-PM^c?gSHpgQi&|C0uw_MHMK-a+o71}4V; zAbX%;09pqMN_Wc$u7Snnf6~Q4aSmFK6AS9sf!qOd54A9{{)gEI3VUd|2&!}ULHi4! z_(6?l(*239AC%AU{6A^X^Z%p)Xx%X=>|xHJ8cl}(L3JYtgW3q7x+fXhX8_fc7;Q!@ zX&K$0$b3+~0?otS`hU`(3s5}{%G=lepETI;|D-_%bZ-Huyg{~(>TFP$g2svepEOtstyAYf z(>6(VLCpc}-2sIKX#Wam-w$XU0@Np&_y459#{VY`_WnO<09s=JT0_3`|4D4AjBZ1bXNkR88fc7zf!U(iq2*tl3J>>Xapne|8x`+QK4M2T=FM7wtK!nHtlLnyj`wUVU4N3=~_3k4j{z3UO^#4f%P#A#H z0ch`80;ywY0}*%BvJ+Ycg3+|NjScu)zQS|9^nI^#A|=4 + + + + Nakama Console + + + + + + + + + diff --git a/console/ui/dist/static/3rdpartylicenses.txt b/console/ui/dist/static/3rdpartylicenses.txt new file mode 100644 index 000000000..ea2a4700c --- /dev/null +++ b/console/ui/dist/static/3rdpartylicenses.txt @@ -0,0 +1,1118 @@ +@angular/animations +MIT + +@angular/cdk +MIT +The MIT License + +Copyright (c) 2020 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/common +MIT + +@angular/core +MIT + +@angular/forms +MIT + +@angular/localize +MIT + +@angular/platform-browser +MIT + +@angular/router +MIT + +@ng-bootstrap/ng-bootstrap +MIT +The MIT License (MIT) + +Copyright (c) 2015-2018 Angular ng-bootstrap team + +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. + + +@ng-select/ng-select +MIT + +@swimlane/ngx-charts +MIT +MIT License + +Copyright (c) 2017 Swimlane + +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. + + +ace-builds +BSD-3-Clause +Copyright (c) 2010, Ajax.org B.V. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of Ajax.org B.V. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +base64-js +MIT +The MIT License (MIT) + +Copyright (c) 2014 Jameson Little + +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. + + +buffer +MIT +The MIT License (MIT) + +Copyright (c) Feross Aboukhadijeh, and other contributors. + +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. + + +css-loader +MIT +Copyright JS Foundation and other contributors + +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. + + +d3-array +BSD-3-Clause +Copyright 2010-2020 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-brush +BSD-3-Clause +Copyright 2010-2016 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-color +BSD-3-Clause +Copyright 2010-2016 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-dispatch +BSD-3-Clause +Copyright 2010-2016 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-drag +BSD-3-Clause +Copyright 2010-2016 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-ease +BSD-3-Clause +Copyright 2010-2016 Mike Bostock +Copyright 2001 Robert Penner +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-format +BSD-3-Clause +Copyright 2010-2015 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-hierarchy +BSD-3-Clause +Copyright 2010-2016 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-interpolate +BSD-3-Clause +Copyright 2010-2016 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-path +BSD-3-Clause +Copyright 2015-2016 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-scale +BSD-3-Clause +Copyright 2010-2015 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-selection +BSD-3-Clause +Copyright (c) 2010-2018, Michael Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* The name Michael Bostock may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL MICHAEL BOSTOCK BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-shape +BSD-3-Clause +Copyright 2010-2015 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-time +BSD-3-Clause +Copyright 2010-2016 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-time-format +BSD-3-Clause +Copyright 2010-2017 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-timer +BSD-3-Clause +Copyright 2010-2016 Mike Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +d3-transition +BSD-3-Clause +Copyright (c) 2010-2015, Michael Bostock +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* The name Michael Bostock may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL MICHAEL BOSTOCK BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +TERMS OF USE - EASING EQUATIONS + +Open source under the BSD License. + +Copyright 2001 Robert Penner +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +- Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +- Neither the name of the author nor the names of contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +esprima +BSD-2-Clause +Copyright JS Foundation and other contributors, https://js.foundation/ + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +file-saver +MIT +The MIT License + +Copyright © 2016 [Eli Grey][1]. + +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. + + [1]: http://eligrey.com + + +ieee754 +BSD-3-Clause +Copyright 2008 Fair Oaks Labs, Inc. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +isarray +MIT + +js-yaml +MIT +(The MIT License) + +Copyright (C) 2011-2015 by Vitaly Puzrin + +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. + + +ngx-file-drop +MIT + +ngx-segment-analytics +MIT + +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 +0BSD +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. + +ui + +webpack +MIT +Copyright JS Foundation and other contributors + +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. + + +zone.js +MIT +The MIT License + +Copyright (c) 2010-2020 Google LLC. http://angular.io/license + +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/console/ui/dist/static/main.b4f850eaa09a25379ae0.js b/console/ui/dist/static/main.b4f850eaa09a25379ae0.js new file mode 100644 index 000000000..bedc56557 --- /dev/null +++ b/console/ui/dist/static/main.b4f850eaa09a25379ae0.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{"+U4B":function(t,e,n){var i;i=function(){return function(t){var e={};function n(i){if(e[i])return e[i].exports;var r=e[i]={exports:{},id:i,loaded:!1};return t[i].call(r.exports,r,r.exports,n),r.loaded=!0,r.exports}return n.m=t,n.c=e,n.p="",n(0)}([function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(1),r=n(3),s=n(8),o=n(15);function a(t,e,n){var o=null,a=function(t,e){n&&n(t,e),o&&o.visit(t,e)},l="function"==typeof n?a:null,c=!1;if(e){var h="boolean"==typeof e.attachComment&&e.attachComment;((c="boolean"==typeof e.comment&&e.comment)||h)&&((o=new i.CommentHandler).attach=h,e.comment=!0,l=a)}var u,d=!1;e&&"string"==typeof e.sourceType&&(d="module"===e.sourceType),u=e&&"boolean"==typeof e.jsx&&e.jsx?new r.JSXParser(t,e,l):new s.Parser(t,e,l);var f=d?u.parseModule():u.parseScript();return c&&o&&(f.comments=o.comments),u.config.tokens&&(f.tokens=u.tokens),u.config.tolerant&&(f.errors=u.errorHandler.errors),f}e.parse=a,e.parseModule=function(t,e,n){var i=e||{};return i.sourceType="module",a(t,i,n)},e.parseScript=function(t,e,n){var i=e||{};return i.sourceType="script",a(t,i,n)},e.tokenize=function(t,e,n){var i,r=new o.Tokenizer(t,e);i=[];try{for(;;){var s=r.getNextToken();if(!s)break;n&&(s=n(s)),i.push(s)}}catch(a){r.errorHandler.tolerate(a)}return r.errorHandler.tolerant&&(i.errors=r.errors()),i};var l=n(2);e.Syntax=l.Syntax,e.version="4.0.1"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=function(){function t(){this.attach=!1,this.comments=[],this.stack=[],this.leading=[],this.trailing=[]}return t.prototype.insertInnerComments=function(t,e){if(t.type===i.Syntax.BlockStatement&&0===t.body.length){for(var n=[],r=this.leading.length-1;r>=0;--r){var s=this.leading[r];e.end.offset>=s.start&&(n.unshift(s.comment),this.leading.splice(r,1),this.trailing.splice(r,1))}n.length&&(t.innerComments=n)}},t.prototype.findTrailingComments=function(t){var e=[];if(this.trailing.length>0){for(var n=this.trailing.length-1;n>=0;--n){var i=this.trailing[n];i.start>=t.end.offset&&e.unshift(i.comment)}return this.trailing.length=0,e}var r=this.stack[this.stack.length-1];if(r&&r.node.trailingComments){var s=r.node.trailingComments[0];s&&s.range[0]>=t.end.offset&&(e=r.node.trailingComments,delete r.node.trailingComments)}return e},t.prototype.findLeadingComments=function(t){for(var e,n=[];this.stack.length>0&&(s=this.stack[this.stack.length-1])&&s.start>=t.start.offset;)e=s.node,this.stack.pop();if(e){for(var i=(e.leadingComments?e.leadingComments.length:0)-1;i>=0;--i){var r=e.leadingComments[i];r.range[1]<=t.start.offset&&(n.unshift(r),e.leadingComments.splice(i,1))}return e.leadingComments&&0===e.leadingComments.length&&delete e.leadingComments,n}for(i=this.leading.length-1;i>=0;--i){var s;(s=this.leading[i]).start<=t.start.offset&&(n.unshift(s.comment),this.leading.splice(i,1))}return n},t.prototype.visitNode=function(t,e){if(!(t.type===i.Syntax.Program&&t.body.length>0)){this.insertInnerComments(t,e);var n=this.findTrailingComments(e),r=this.findLeadingComments(e);r.length>0&&(t.leadingComments=r),n.length>0&&(t.trailingComments=n),this.stack.push({node:t,start:e.start.offset})}},t.prototype.visitComment=function(t,e){var n="L"===t.type[0]?"Line":"Block",i={type:n,value:t.value};if(t.range&&(i.range=t.range),t.loc&&(i.loc=t.loc),this.comments.push(i),this.attach){var r={comment:{type:n,value:t.value,range:[e.start.offset,e.end.offset]},start:e.start.offset};t.loc&&(r.comment.loc=t.loc),t.type=n,this.leading.push(r),this.trailing.push(r)}},t.prototype.visit=function(t,e){"LineComment"===t.type||"BlockComment"===t.type?this.visitComment(t,e):this.attach&&this.visitNode(t,e)},t}();e.CommentHandler=r},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Syntax={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DoWhileStatement:"DoWhileStatement",DebuggerStatement:"DebuggerStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForOfStatement:"ForOfStatement",ForInStatement:"ForInStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",Program:"Program",Property:"Property",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchCase:"SwitchCase",SwitchStatement:"SwitchStatement",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var s=n(4),o=n(5),a=n(6),l=n(7),c=n(8),h=n(13),u=n(14);function d(t){var e;switch(t.type){case a.JSXSyntax.JSXIdentifier:e=t.name;break;case a.JSXSyntax.JSXNamespacedName:var n=t;e=d(n.namespace)+":"+d(n.name);break;case a.JSXSyntax.JSXMemberExpression:var i=t;e=d(i.object)+"."+d(i.property)}return e}h.TokenName[100]="JSXIdentifier",h.TokenName[101]="JSXText";var f=function(t){function e(e,n,i){return t.call(this,e,n,i)||this}return r(e,t),e.prototype.parsePrimaryExpression=function(){return this.match("<")?this.parseJSXRoot():t.prototype.parsePrimaryExpression.call(this)},e.prototype.startJSX=function(){this.scanner.index=this.startMarker.index,this.scanner.lineNumber=this.startMarker.line,this.scanner.lineStart=this.startMarker.index-this.startMarker.column},e.prototype.finishJSX=function(){this.nextToken()},e.prototype.reenterJSX=function(){this.startJSX(),this.expectJSX("}"),this.config.tokens&&this.tokens.pop()},e.prototype.createJSXNode=function(){return this.collectComments(),{index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}},e.prototype.createJSXChildNode=function(){return{index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}},e.prototype.scanXHTMLEntity=function(t){for(var e="&",n=!0,i=!1,r=!1,o=!1;!this.scanner.eof()&&n&&!i;){var a=this.scanner.source[this.scanner.index];if(a===t)break;if(i=";"===a,e+=a,++this.scanner.index,!i)switch(e.length){case 2:r="#"===a;break;case 3:r&&(n=(o="x"===a)||s.Character.isDecimalDigit(a.charCodeAt(0)),r=r&&!o);break;default:n=(n=n&&!(r&&!s.Character.isDecimalDigit(a.charCodeAt(0))))&&!(o&&!s.Character.isHexDigit(a.charCodeAt(0)))}}if(n&&i&&e.length>2){var l=e.substr(1,e.length-2);r&&l.length>1?e=String.fromCharCode(parseInt(l.substr(1),10)):o&&l.length>2?e=String.fromCharCode(parseInt("0"+l.substr(1),16)):r||o||!u.XHTMLEntities[l]||(e=u.XHTMLEntities[l])}return e},e.prototype.lexJSX=function(){var t=this.scanner.source.charCodeAt(this.scanner.index);if(60===t||62===t||47===t||58===t||61===t||123===t||125===t)return{type:7,value:r=this.scanner.source[this.scanner.index++],lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index-1,end:this.scanner.index};if(34===t||39===t){for(var e=this.scanner.index,n=this.scanner.source[this.scanner.index++],i="";!this.scanner.eof()&&(l=this.scanner.source[this.scanner.index++])!==n;)i+="&"===l?this.scanXHTMLEntity(n):l;return{type:8,value:i,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:e,end:this.scanner.index}}if(46===t){var r,o=this.scanner.source.charCodeAt(this.scanner.index+1),a=this.scanner.source.charCodeAt(this.scanner.index+2);return e=this.scanner.index,this.scanner.index+=(r=46===o&&46===a?"...":".").length,{type:7,value:r,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:e,end:this.scanner.index}}if(96===t)return{type:10,value:"",lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index,end:this.scanner.index};if(s.Character.isIdentifierStart(t)&&92!==t){for(e=this.scanner.index,++this.scanner.index;!this.scanner.eof();){var l=this.scanner.source.charCodeAt(this.scanner.index);if(s.Character.isIdentifierPart(l)&&92!==l)++this.scanner.index;else{if(45!==l)break;++this.scanner.index}}return{type:100,value:this.scanner.source.slice(e,this.scanner.index),lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:e,end:this.scanner.index}}return this.scanner.lex()},e.prototype.nextJSXToken=function(){this.collectComments(),this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart;var t=this.lexJSX();return this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart,this.config.tokens&&this.tokens.push(this.convertToken(t)),t},e.prototype.nextJSXText=function(){this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart;for(var t=this.scanner.index,e="";!this.scanner.eof();){var n=this.scanner.source[this.scanner.index];if("{"===n||"<"===n)break;++this.scanner.index,e+=n,s.Character.isLineTerminator(n.charCodeAt(0))&&(++this.scanner.lineNumber,"\r"===n&&"\n"===this.scanner.source[this.scanner.index]&&++this.scanner.index,this.scanner.lineStart=this.scanner.index)}this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart;var i={type:101,value:e,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:t,end:this.scanner.index};return e.length>0&&this.config.tokens&&this.tokens.push(this.convertToken(i)),i},e.prototype.peekJSXToken=function(){var t=this.scanner.saveState();this.scanner.scanComments();var e=this.lexJSX();return this.scanner.restoreState(t),e},e.prototype.expectJSX=function(t){var e=this.nextJSXToken();7===e.type&&e.value===t||this.throwUnexpectedToken(e)},e.prototype.matchJSX=function(t){var e=this.peekJSXToken();return 7===e.type&&e.value===t},e.prototype.parseJSXIdentifier=function(){var t=this.createJSXNode(),e=this.nextJSXToken();return 100!==e.type&&this.throwUnexpectedToken(e),this.finalize(t,new o.JSXIdentifier(e.value))},e.prototype.parseJSXElementName=function(){var t=this.createJSXNode(),e=this.parseJSXIdentifier();if(this.matchJSX(":")){var n=e;this.expectJSX(":");var i=this.parseJSXIdentifier();e=this.finalize(t,new o.JSXNamespacedName(n,i))}else if(this.matchJSX("."))for(;this.matchJSX(".");){var r=e;this.expectJSX(".");var s=this.parseJSXIdentifier();e=this.finalize(t,new o.JSXMemberExpression(r,s))}return e},e.prototype.parseJSXAttributeName=function(){var t,e=this.createJSXNode(),n=this.parseJSXIdentifier();if(this.matchJSX(":")){var i=n;this.expectJSX(":");var r=this.parseJSXIdentifier();t=this.finalize(e,new o.JSXNamespacedName(i,r))}else t=n;return t},e.prototype.parseJSXStringLiteralAttribute=function(){var t=this.createJSXNode(),e=this.nextJSXToken();8!==e.type&&this.throwUnexpectedToken(e);var n=this.getTokenRaw(e);return this.finalize(t,new l.Literal(e.value,n))},e.prototype.parseJSXExpressionAttribute=function(){var t=this.createJSXNode();this.expectJSX("{"),this.finishJSX(),this.match("}")&&this.tolerateError("JSX attributes must only be assigned a non-empty expression");var e=this.parseAssignmentExpression();return this.reenterJSX(),this.finalize(t,new o.JSXExpressionContainer(e))},e.prototype.parseJSXAttributeValue=function(){return this.matchJSX("{")?this.parseJSXExpressionAttribute():this.matchJSX("<")?this.parseJSXElement():this.parseJSXStringLiteralAttribute()},e.prototype.parseJSXNameValueAttribute=function(){var t=this.createJSXNode(),e=this.parseJSXAttributeName(),n=null;return this.matchJSX("=")&&(this.expectJSX("="),n=this.parseJSXAttributeValue()),this.finalize(t,new o.JSXAttribute(e,n))},e.prototype.parseJSXSpreadAttribute=function(){var t=this.createJSXNode();this.expectJSX("{"),this.expectJSX("..."),this.finishJSX();var e=this.parseAssignmentExpression();return this.reenterJSX(),this.finalize(t,new o.JSXSpreadAttribute(e))},e.prototype.parseJSXAttributes=function(){for(var t=[];!this.matchJSX("/")&&!this.matchJSX(">");){var e=this.matchJSX("{")?this.parseJSXSpreadAttribute():this.parseJSXNameValueAttribute();t.push(e)}return t},e.prototype.parseJSXOpeningElement=function(){var t=this.createJSXNode();this.expectJSX("<");var e=this.parseJSXElementName(),n=this.parseJSXAttributes(),i=this.matchJSX("/");return i&&this.expectJSX("/"),this.expectJSX(">"),this.finalize(t,new o.JSXOpeningElement(e,i,n))},e.prototype.parseJSXBoundaryElement=function(){var t=this.createJSXNode();if(this.expectJSX("<"),this.matchJSX("/")){this.expectJSX("/");var e=this.parseJSXElementName();return this.expectJSX(">"),this.finalize(t,new o.JSXClosingElement(e))}var n=this.parseJSXElementName(),i=this.parseJSXAttributes(),r=this.matchJSX("/");return r&&this.expectJSX("/"),this.expectJSX(">"),this.finalize(t,new o.JSXOpeningElement(n,r,i))},e.prototype.parseJSXEmptyExpression=function(){var t=this.createJSXChildNode();return this.collectComments(),this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart,this.finalize(t,new o.JSXEmptyExpression)},e.prototype.parseJSXExpressionContainer=function(){var t,e=this.createJSXNode();return this.expectJSX("{"),this.matchJSX("}")?(t=this.parseJSXEmptyExpression(),this.expectJSX("}")):(this.finishJSX(),t=this.parseAssignmentExpression(),this.reenterJSX()),this.finalize(e,new o.JSXExpressionContainer(t))},e.prototype.parseJSXChildren=function(){for(var t=[];!this.scanner.eof();){var e=this.createJSXChildNode(),n=this.nextJSXText();if(n.start0))break;s=this.finalize(t.node,new o.JSXElement(t.opening,t.children,t.closing)),(t=e[e.length-1]).children.push(s),e.pop()}}return t},e.prototype.parseJSXElement=function(){var t=this.createJSXNode(),e=this.parseJSXOpeningElement(),n=[],i=null;if(!e.selfClosing){var r=this.parseComplexJSXElement({node:t,opening:e,closing:i,children:n});n=r.children,i=r.closing}return this.finalize(t,new o.JSXElement(e,n,i))},e.prototype.parseJSXRoot=function(){this.config.tokens&&this.tokens.pop(),this.startJSX();var t=this.parseJSXElement();return this.finishJSX(),t},e.prototype.isStartOfExpression=function(){return t.prototype.isStartOfExpression.call(this)||this.match("<")},e}(c.Parser);e.JSXParser=f},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/};e.Character={fromCodePoint:function(t){return t<65536?String.fromCharCode(t):String.fromCharCode(55296+(t-65536>>10))+String.fromCharCode(56320+(t-65536&1023))},isWhiteSpace:function(t){return 32===t||9===t||11===t||12===t||160===t||t>=5760&&[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].indexOf(t)>=0},isLineTerminator:function(t){return 10===t||13===t||8232===t||8233===t},isIdentifierStart:function(t){return 36===t||95===t||t>=65&&t<=90||t>=97&&t<=122||92===t||t>=128&&n.NonAsciiIdentifierStart.test(e.Character.fromCodePoint(t))},isIdentifierPart:function(t){return 36===t||95===t||t>=65&&t<=90||t>=97&&t<=122||t>=48&&t<=57||92===t||t>=128&&n.NonAsciiIdentifierPart.test(e.Character.fromCodePoint(t))},isDecimalDigit:function(t){return t>=48&&t<=57},isHexDigit:function(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102},isOctalDigit:function(t){return t>=48&&t<=55}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(6);e.JSXClosingElement=function(t){this.type=i.JSXSyntax.JSXClosingElement,this.name=t},e.JSXElement=function(t,e,n){this.type=i.JSXSyntax.JSXElement,this.openingElement=t,this.children=e,this.closingElement=n},e.JSXEmptyExpression=function(){this.type=i.JSXSyntax.JSXEmptyExpression},e.JSXExpressionContainer=function(t){this.type=i.JSXSyntax.JSXExpressionContainer,this.expression=t},e.JSXIdentifier=function(t){this.type=i.JSXSyntax.JSXIdentifier,this.name=t},e.JSXMemberExpression=function(t,e){this.type=i.JSXSyntax.JSXMemberExpression,this.object=t,this.property=e},e.JSXAttribute=function(t,e){this.type=i.JSXSyntax.JSXAttribute,this.name=t,this.value=e},e.JSXNamespacedName=function(t,e){this.type=i.JSXSyntax.JSXNamespacedName,this.namespace=t,this.name=e},e.JSXOpeningElement=function(t,e,n){this.type=i.JSXSyntax.JSXOpeningElement,this.name=t,this.selfClosing=e,this.attributes=n},e.JSXSpreadAttribute=function(t){this.type=i.JSXSyntax.JSXSpreadAttribute,this.argument=t},e.JSXText=function(t,e){this.type=i.JSXSyntax.JSXText,this.value=t,this.raw=e}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.JSXSyntax={JSXAttribute:"JSXAttribute",JSXClosingElement:"JSXClosingElement",JSXElement:"JSXElement",JSXEmptyExpression:"JSXEmptyExpression",JSXExpressionContainer:"JSXExpressionContainer",JSXIdentifier:"JSXIdentifier",JSXMemberExpression:"JSXMemberExpression",JSXNamespacedName:"JSXNamespacedName",JSXOpeningElement:"JSXOpeningElement",JSXSpreadAttribute:"JSXSpreadAttribute",JSXText:"JSXText"}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);e.ArrayExpression=function(t){this.type=i.Syntax.ArrayExpression,this.elements=t},e.ArrayPattern=function(t){this.type=i.Syntax.ArrayPattern,this.elements=t},e.ArrowFunctionExpression=function(t,e,n){this.type=i.Syntax.ArrowFunctionExpression,this.id=null,this.params=t,this.body=e,this.generator=!1,this.expression=n,this.async=!1},e.AssignmentExpression=function(t,e,n){this.type=i.Syntax.AssignmentExpression,this.operator=t,this.left=e,this.right=n},e.AssignmentPattern=function(t,e){this.type=i.Syntax.AssignmentPattern,this.left=t,this.right=e},e.AsyncArrowFunctionExpression=function(t,e,n){this.type=i.Syntax.ArrowFunctionExpression,this.id=null,this.params=t,this.body=e,this.generator=!1,this.expression=n,this.async=!0},e.AsyncFunctionDeclaration=function(t,e,n){this.type=i.Syntax.FunctionDeclaration,this.id=t,this.params=e,this.body=n,this.generator=!1,this.expression=!1,this.async=!0},e.AsyncFunctionExpression=function(t,e,n){this.type=i.Syntax.FunctionExpression,this.id=t,this.params=e,this.body=n,this.generator=!1,this.expression=!1,this.async=!0},e.AwaitExpression=function(t){this.type=i.Syntax.AwaitExpression,this.argument=t},e.BinaryExpression=function(t,e,n){this.type="||"===t||"&&"===t?i.Syntax.LogicalExpression:i.Syntax.BinaryExpression,this.operator=t,this.left=e,this.right=n},e.BlockStatement=function(t){this.type=i.Syntax.BlockStatement,this.body=t},e.BreakStatement=function(t){this.type=i.Syntax.BreakStatement,this.label=t},e.CallExpression=function(t,e){this.type=i.Syntax.CallExpression,this.callee=t,this.arguments=e},e.CatchClause=function(t,e){this.type=i.Syntax.CatchClause,this.param=t,this.body=e},e.ClassBody=function(t){this.type=i.Syntax.ClassBody,this.body=t},e.ClassDeclaration=function(t,e,n){this.type=i.Syntax.ClassDeclaration,this.id=t,this.superClass=e,this.body=n},e.ClassExpression=function(t,e,n){this.type=i.Syntax.ClassExpression,this.id=t,this.superClass=e,this.body=n},e.ComputedMemberExpression=function(t,e){this.type=i.Syntax.MemberExpression,this.computed=!0,this.object=t,this.property=e},e.ConditionalExpression=function(t,e,n){this.type=i.Syntax.ConditionalExpression,this.test=t,this.consequent=e,this.alternate=n},e.ContinueStatement=function(t){this.type=i.Syntax.ContinueStatement,this.label=t},e.DebuggerStatement=function(){this.type=i.Syntax.DebuggerStatement},e.Directive=function(t,e){this.type=i.Syntax.ExpressionStatement,this.expression=t,this.directive=e},e.DoWhileStatement=function(t,e){this.type=i.Syntax.DoWhileStatement,this.body=t,this.test=e},e.EmptyStatement=function(){this.type=i.Syntax.EmptyStatement},e.ExportAllDeclaration=function(t){this.type=i.Syntax.ExportAllDeclaration,this.source=t},e.ExportDefaultDeclaration=function(t){this.type=i.Syntax.ExportDefaultDeclaration,this.declaration=t},e.ExportNamedDeclaration=function(t,e,n){this.type=i.Syntax.ExportNamedDeclaration,this.declaration=t,this.specifiers=e,this.source=n},e.ExportSpecifier=function(t,e){this.type=i.Syntax.ExportSpecifier,this.exported=e,this.local=t},e.ExpressionStatement=function(t){this.type=i.Syntax.ExpressionStatement,this.expression=t},e.ForInStatement=function(t,e,n){this.type=i.Syntax.ForInStatement,this.left=t,this.right=e,this.body=n,this.each=!1},e.ForOfStatement=function(t,e,n){this.type=i.Syntax.ForOfStatement,this.left=t,this.right=e,this.body=n},e.ForStatement=function(t,e,n,r){this.type=i.Syntax.ForStatement,this.init=t,this.test=e,this.update=n,this.body=r},e.FunctionDeclaration=function(t,e,n,r){this.type=i.Syntax.FunctionDeclaration,this.id=t,this.params=e,this.body=n,this.generator=r,this.expression=!1,this.async=!1},e.FunctionExpression=function(t,e,n,r){this.type=i.Syntax.FunctionExpression,this.id=t,this.params=e,this.body=n,this.generator=r,this.expression=!1,this.async=!1},e.Identifier=function(t){this.type=i.Syntax.Identifier,this.name=t},e.IfStatement=function(t,e,n){this.type=i.Syntax.IfStatement,this.test=t,this.consequent=e,this.alternate=n},e.ImportDeclaration=function(t,e){this.type=i.Syntax.ImportDeclaration,this.specifiers=t,this.source=e},e.ImportDefaultSpecifier=function(t){this.type=i.Syntax.ImportDefaultSpecifier,this.local=t},e.ImportNamespaceSpecifier=function(t){this.type=i.Syntax.ImportNamespaceSpecifier,this.local=t},e.ImportSpecifier=function(t,e){this.type=i.Syntax.ImportSpecifier,this.local=t,this.imported=e},e.LabeledStatement=function(t,e){this.type=i.Syntax.LabeledStatement,this.label=t,this.body=e},e.Literal=function(t,e){this.type=i.Syntax.Literal,this.value=t,this.raw=e},e.MetaProperty=function(t,e){this.type=i.Syntax.MetaProperty,this.meta=t,this.property=e},e.MethodDefinition=function(t,e,n,r,s){this.type=i.Syntax.MethodDefinition,this.key=t,this.computed=e,this.value=n,this.kind=r,this.static=s},e.Module=function(t){this.type=i.Syntax.Program,this.body=t,this.sourceType="module"},e.NewExpression=function(t,e){this.type=i.Syntax.NewExpression,this.callee=t,this.arguments=e},e.ObjectExpression=function(t){this.type=i.Syntax.ObjectExpression,this.properties=t},e.ObjectPattern=function(t){this.type=i.Syntax.ObjectPattern,this.properties=t},e.Property=function(t,e,n,r,s,o){this.type=i.Syntax.Property,this.key=e,this.computed=n,this.value=r,this.kind=t,this.method=s,this.shorthand=o},e.RegexLiteral=function(t,e,n,r){this.type=i.Syntax.Literal,this.value=t,this.raw=e,this.regex={pattern:n,flags:r}},e.RestElement=function(t){this.type=i.Syntax.RestElement,this.argument=t},e.ReturnStatement=function(t){this.type=i.Syntax.ReturnStatement,this.argument=t},e.Script=function(t){this.type=i.Syntax.Program,this.body=t,this.sourceType="script"},e.SequenceExpression=function(t){this.type=i.Syntax.SequenceExpression,this.expressions=t},e.SpreadElement=function(t){this.type=i.Syntax.SpreadElement,this.argument=t},e.StaticMemberExpression=function(t,e){this.type=i.Syntax.MemberExpression,this.computed=!1,this.object=t,this.property=e},e.Super=function(){this.type=i.Syntax.Super},e.SwitchCase=function(t,e){this.type=i.Syntax.SwitchCase,this.test=t,this.consequent=e},e.SwitchStatement=function(t,e){this.type=i.Syntax.SwitchStatement,this.discriminant=t,this.cases=e},e.TaggedTemplateExpression=function(t,e){this.type=i.Syntax.TaggedTemplateExpression,this.tag=t,this.quasi=e},e.TemplateElement=function(t,e){this.type=i.Syntax.TemplateElement,this.value=t,this.tail=e},e.TemplateLiteral=function(t,e){this.type=i.Syntax.TemplateLiteral,this.quasis=t,this.expressions=e},e.ThisExpression=function(){this.type=i.Syntax.ThisExpression},e.ThrowStatement=function(t){this.type=i.Syntax.ThrowStatement,this.argument=t},e.TryStatement=function(t,e,n){this.type=i.Syntax.TryStatement,this.block=t,this.handler=e,this.finalizer=n},e.UnaryExpression=function(t,e){this.type=i.Syntax.UnaryExpression,this.operator=t,this.argument=e,this.prefix=!0},e.UpdateExpression=function(t,e,n){this.type=i.Syntax.UpdateExpression,this.operator=t,this.argument=e,this.prefix=n},e.VariableDeclaration=function(t,e){this.type=i.Syntax.VariableDeclaration,this.declarations=t,this.kind=e},e.VariableDeclarator=function(t,e){this.type=i.Syntax.VariableDeclarator,this.id=t,this.init=e},e.WhileStatement=function(t,e){this.type=i.Syntax.WhileStatement,this.test=t,this.body=e},e.WithStatement=function(t,e){this.type=i.Syntax.WithStatement,this.object=t,this.body=e},e.YieldExpression=function(t,e){this.type=i.Syntax.YieldExpression,this.argument=t,this.delegate=e}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(9),r=n(10),s=n(11),o=n(7),a=n(12),l=n(2),c=n(13),h="ArrowParameterPlaceHolder",u=function(){function t(t,e,n){void 0===e&&(e={}),this.config={range:"boolean"==typeof e.range&&e.range,loc:"boolean"==typeof e.loc&&e.loc,source:null,tokens:"boolean"==typeof e.tokens&&e.tokens,comment:"boolean"==typeof e.comment&&e.comment,tolerant:"boolean"==typeof e.tolerant&&e.tolerant},this.config.loc&&e.source&&null!==e.source&&(this.config.source=String(e.source)),this.delegate=n,this.errorHandler=new r.ErrorHandler,this.errorHandler.tolerant=this.config.tolerant,this.scanner=new a.Scanner(t,this.errorHandler),this.scanner.trackComment=this.config.comment,this.operatorPrecedence={")":0,";":0,",":0,"=":0,"]":0,"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":11,"/":11,"%":11},this.lookahead={type:2,value:"",lineNumber:this.scanner.lineNumber,lineStart:0,start:0,end:0},this.hasLineTerminator=!1,this.context={isModule:!1,await:!1,allowIn:!0,allowStrictDirective:!0,allowYield:!0,firstCoverInitializedNameError:null,isAssignmentTarget:!1,isBindingElement:!1,inFunctionBody:!1,inIteration:!1,inSwitch:!1,labelSet:{},strict:!1},this.tokens=[],this.startMarker={index:0,line:this.scanner.lineNumber,column:0},this.lastMarker={index:0,line:this.scanner.lineNumber,column:0},this.nextToken(),this.lastMarker={index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}return t.prototype.throwError=function(t){for(var e=[],n=1;n0&&this.delegate)for(var e=0;e>="===t||">>>="===t||"&="===t||"^="===t||"|="===t},t.prototype.isolateCoverGrammar=function(t){var e=this.context.isBindingElement,n=this.context.isAssignmentTarget,i=this.context.firstCoverInitializedNameError;this.context.isBindingElement=!0,this.context.isAssignmentTarget=!0,this.context.firstCoverInitializedNameError=null;var r=t.call(this);return null!==this.context.firstCoverInitializedNameError&&this.throwUnexpectedToken(this.context.firstCoverInitializedNameError),this.context.isBindingElement=e,this.context.isAssignmentTarget=n,this.context.firstCoverInitializedNameError=i,r},t.prototype.inheritCoverGrammar=function(t){var e=this.context.isBindingElement,n=this.context.isAssignmentTarget,i=this.context.firstCoverInitializedNameError;this.context.isBindingElement=!0,this.context.isAssignmentTarget=!0,this.context.firstCoverInitializedNameError=null;var r=t.call(this);return this.context.isBindingElement=this.context.isBindingElement&&e,this.context.isAssignmentTarget=this.context.isAssignmentTarget&&n,this.context.firstCoverInitializedNameError=i||this.context.firstCoverInitializedNameError,r},t.prototype.consumeSemicolon=function(){this.match(";")?this.nextToken():this.hasLineTerminator||(2===this.lookahead.type||this.match("}")||this.throwUnexpectedToken(this.lookahead),this.lastMarker.index=this.startMarker.index,this.lastMarker.line=this.startMarker.line,this.lastMarker.column=this.startMarker.column)},t.prototype.parsePrimaryExpression=function(){var t,e,n,i=this.createNode();switch(this.lookahead.type){case 3:(this.context.isModule||this.context.await)&&"await"===this.lookahead.value&&this.tolerateUnexpectedToken(this.lookahead),t=this.matchAsyncFunction()?this.parseFunctionExpression():this.finalize(i,new o.Identifier(this.nextToken().value));break;case 6:case 8:this.context.strict&&this.lookahead.octal&&this.tolerateUnexpectedToken(this.lookahead,s.Messages.StrictOctalLiteral),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,e=this.nextToken(),n=this.getTokenRaw(e),t=this.finalize(i,new o.Literal(e.value,n));break;case 1:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,e=this.nextToken(),n=this.getTokenRaw(e),t=this.finalize(i,new o.Literal("true"===e.value,n));break;case 5:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,e=this.nextToken(),n=this.getTokenRaw(e),t=this.finalize(i,new o.Literal(null,n));break;case 10:t=this.parseTemplateLiteral();break;case 7:switch(this.lookahead.value){case"(":this.context.isBindingElement=!1,t=this.inheritCoverGrammar(this.parseGroupExpression);break;case"[":t=this.inheritCoverGrammar(this.parseArrayInitializer);break;case"{":t=this.inheritCoverGrammar(this.parseObjectInitializer);break;case"/":case"/=":this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.scanner.index=this.startMarker.index,e=this.nextRegexToken(),n=this.getTokenRaw(e),t=this.finalize(i,new o.RegexLiteral(e.regex,n,e.pattern,e.flags));break;default:t=this.throwUnexpectedToken(this.nextToken())}break;case 4:!this.context.strict&&this.context.allowYield&&this.matchKeyword("yield")?t=this.parseIdentifierName():!this.context.strict&&this.matchKeyword("let")?t=this.finalize(i,new o.Identifier(this.nextToken().value)):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.matchKeyword("function")?t=this.parseFunctionExpression():this.matchKeyword("this")?(this.nextToken(),t=this.finalize(i,new o.ThisExpression)):t=this.matchKeyword("class")?this.parseClassExpression():this.throwUnexpectedToken(this.nextToken()));break;default:t=this.throwUnexpectedToken(this.nextToken())}return t},t.prototype.parseSpreadElement=function(){var t=this.createNode();this.expect("...");var e=this.inheritCoverGrammar(this.parseAssignmentExpression);return this.finalize(t,new o.SpreadElement(e))},t.prototype.parseArrayInitializer=function(){var t=this.createNode(),e=[];for(this.expect("[");!this.match("]");)if(this.match(","))this.nextToken(),e.push(null);else if(this.match("...")){var n=this.parseSpreadElement();this.match("]")||(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.expect(",")),e.push(n)}else e.push(this.inheritCoverGrammar(this.parseAssignmentExpression)),this.match("]")||this.expect(",");return this.expect("]"),this.finalize(t,new o.ArrayExpression(e))},t.prototype.parsePropertyMethod=function(t){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var e=this.context.strict,n=this.context.allowStrictDirective;this.context.allowStrictDirective=t.simple;var i=this.isolateCoverGrammar(this.parseFunctionSourceElements);return this.context.strict&&t.firstRestricted&&this.tolerateUnexpectedToken(t.firstRestricted,t.message),this.context.strict&&t.stricted&&this.tolerateUnexpectedToken(t.stricted,t.message),this.context.strict=e,this.context.allowStrictDirective=n,i},t.prototype.parsePropertyMethodFunction=function(){var t=this.createNode(),e=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters(),i=this.parsePropertyMethod(n);return this.context.allowYield=e,this.finalize(t,new o.FunctionExpression(null,n.params,i,!1))},t.prototype.parsePropertyMethodAsyncFunction=function(){var t=this.createNode(),e=this.context.allowYield,n=this.context.await;this.context.allowYield=!1,this.context.await=!0;var i=this.parseFormalParameters(),r=this.parsePropertyMethod(i);return this.context.allowYield=e,this.context.await=n,this.finalize(t,new o.AsyncFunctionExpression(null,i.params,r))},t.prototype.parseObjectPropertyKey=function(){var t,e=this.createNode(),n=this.nextToken();switch(n.type){case 8:case 6:this.context.strict&&n.octal&&this.tolerateUnexpectedToken(n,s.Messages.StrictOctalLiteral);var i=this.getTokenRaw(n);t=this.finalize(e,new o.Literal(n.value,i));break;case 3:case 1:case 5:case 4:t=this.finalize(e,new o.Identifier(n.value));break;case 7:"["===n.value?(t=this.isolateCoverGrammar(this.parseAssignmentExpression),this.expect("]")):t=this.throwUnexpectedToken(n);break;default:t=this.throwUnexpectedToken(n)}return t},t.prototype.isPropertyKey=function(t,e){return t.type===l.Syntax.Identifier&&t.name===e||t.type===l.Syntax.Literal&&t.value===e},t.prototype.parseObjectProperty=function(t){var e,n=this.createNode(),i=this.lookahead,r=null,a=null,l=!1,c=!1,h=!1,u=!1;if(3===i.type){var d=i.value;this.nextToken(),l=this.match("["),r=(u=!(this.hasLineTerminator||"async"!==d||this.match(":")||this.match("(")||this.match("*")||this.match(",")))?this.parseObjectPropertyKey():this.finalize(n,new o.Identifier(d))}else this.match("*")?this.nextToken():(l=this.match("["),r=this.parseObjectPropertyKey());var f=this.qualifiedPropertyName(this.lookahead);if(3===i.type&&!u&&"get"===i.value&&f)e="get",l=this.match("["),r=this.parseObjectPropertyKey(),this.context.allowYield=!1,a=this.parseGetterMethod();else if(3===i.type&&!u&&"set"===i.value&&f)e="set",l=this.match("["),r=this.parseObjectPropertyKey(),a=this.parseSetterMethod();else if(7===i.type&&"*"===i.value&&f)e="init",l=this.match("["),r=this.parseObjectPropertyKey(),a=this.parseGeneratorMethod(),c=!0;else if(r||this.throwUnexpectedToken(this.lookahead),e="init",this.match(":")&&!u)!l&&this.isPropertyKey(r,"__proto__")&&(t.value&&this.tolerateError(s.Messages.DuplicateProtoProperty),t.value=!0),this.nextToken(),a=this.inheritCoverGrammar(this.parseAssignmentExpression);else if(this.match("("))a=u?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),c=!0;else if(3===i.type)if(d=this.finalize(n,new o.Identifier(i.value)),this.match("=")){this.context.firstCoverInitializedNameError=this.lookahead,this.nextToken(),h=!0;var p=this.isolateCoverGrammar(this.parseAssignmentExpression);a=this.finalize(n,new o.AssignmentPattern(d,p))}else h=!0,a=d;else this.throwUnexpectedToken(this.nextToken());return this.finalize(n,new o.Property(e,r,l,a,c,h))},t.prototype.parseObjectInitializer=function(){var t=this.createNode();this.expect("{");for(var e=[],n={value:!1};!this.match("}");)e.push(this.parseObjectProperty(n)),this.match("}")||this.expectCommaSeparator();return this.expect("}"),this.finalize(t,new o.ObjectExpression(e))},t.prototype.parseTemplateHead=function(){i.assert(this.lookahead.head,"Template literal must start with a template head");var t=this.createNode(),e=this.nextToken();return this.finalize(t,new o.TemplateElement({raw:e.value,cooked:e.cooked},e.tail))},t.prototype.parseTemplateElement=function(){10!==this.lookahead.type&&this.throwUnexpectedToken();var t=this.createNode(),e=this.nextToken();return this.finalize(t,new o.TemplateElement({raw:e.value,cooked:e.cooked},e.tail))},t.prototype.parseTemplateLiteral=function(){var t=this.createNode(),e=[],n=[],i=this.parseTemplateHead();for(n.push(i);!i.tail;)e.push(this.parseExpression()),i=this.parseTemplateElement(),n.push(i);return this.finalize(t,new o.TemplateLiteral(n,e))},t.prototype.reinterpretExpressionAsPattern=function(t){switch(t.type){case l.Syntax.Identifier:case l.Syntax.MemberExpression:case l.Syntax.RestElement:case l.Syntax.AssignmentPattern:break;case l.Syntax.SpreadElement:t.type=l.Syntax.RestElement,this.reinterpretExpressionAsPattern(t.argument);break;case l.Syntax.ArrayExpression:t.type=l.Syntax.ArrayPattern;for(var e=0;e")||this.expect("=>"),t={type:h,params:[],async:!1};else{var e=this.lookahead,n=[];if(this.match("..."))t=this.parseRestElement(n),this.expect(")"),this.match("=>")||this.expect("=>"),t={type:h,params:[t],async:!1};else{var i=!1;if(this.context.isBindingElement=!0,t=this.inheritCoverGrammar(this.parseAssignmentExpression),this.match(",")){var r=[];for(this.context.isAssignmentTarget=!1,r.push(t);2!==this.lookahead.type&&this.match(",");){if(this.nextToken(),this.match(")")){this.nextToken();for(var s=0;s")||this.expect("=>"),this.context.isBindingElement=!1,s=0;s")&&(t.type===l.Syntax.Identifier&&"yield"===t.name&&(i=!0,t={type:h,params:[t],async:!1}),!i)){if(this.context.isBindingElement||this.throwUnexpectedToken(this.lookahead),t.type===l.Syntax.SequenceExpression)for(s=0;s")){for(var l=0;l0){this.nextToken(),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;for(var r=[t,this.lookahead],s=e,a=this.isolateCoverGrammar(this.parseExponentiationExpression),l=[s,n.value,a],c=[i];!((i=this.binaryPrecedence(this.lookahead))<=0);){for(;l.length>2&&i<=c[c.length-1];){a=l.pop();var h=l.pop();c.pop(),s=l.pop(),r.pop();var u=this.startNode(r[r.length-1]);l.push(this.finalize(u,new o.BinaryExpression(h,s,a)))}l.push(this.nextToken().value),c.push(i),r.push(this.lookahead),l.push(this.isolateCoverGrammar(this.parseExponentiationExpression))}var d=l.length-1;e=l[d];for(var f=r.pop();d>1;){var p=r.pop();u=this.startNode(p,f&&f.lineStart),e=this.finalize(u,new o.BinaryExpression(h=l[d-1],l[d-2],e)),d-=2,f=p}}return e},t.prototype.parseConditionalExpression=function(){var t=this.lookahead,e=this.inheritCoverGrammar(this.parseBinaryExpression);if(this.match("?")){this.nextToken();var n=this.context.allowIn;this.context.allowIn=!0;var i=this.isolateCoverGrammar(this.parseAssignmentExpression);this.context.allowIn=n,this.expect(":");var r=this.isolateCoverGrammar(this.parseAssignmentExpression);e=this.finalize(this.startNode(t),new o.ConditionalExpression(e,i,r)),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}return e},t.prototype.checkPatternParam=function(t,e){switch(e.type){case l.Syntax.Identifier:this.validateParam(t,e,e.name);break;case l.Syntax.RestElement:this.checkPatternParam(t,e.argument);break;case l.Syntax.AssignmentPattern:this.checkPatternParam(t,e.left);break;case l.Syntax.ArrayPattern:for(var n=0;n")){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var r=t.async,a=this.reinterpretAsCoverFormalsList(t);if(a){this.hasLineTerminator&&this.tolerateUnexpectedToken(this.lookahead),this.context.firstCoverInitializedNameError=null;var c=this.context.strict,u=this.context.allowStrictDirective;this.context.allowStrictDirective=a.simple;var d=this.context.allowYield,f=this.context.await;this.context.allowYield=!0,this.context.await=r;var p=this.startNode(e);this.expect("=>");var g=void 0;if(this.match("{")){var m=this.context.allowIn;this.context.allowIn=!0,g=this.parseFunctionSourceElements(),this.context.allowIn=m}else g=this.isolateCoverGrammar(this.parseAssignmentExpression);var v=g.type!==l.Syntax.BlockStatement;this.context.strict&&a.firstRestricted&&this.throwUnexpectedToken(a.firstRestricted,a.message),this.context.strict&&a.stricted&&this.tolerateUnexpectedToken(a.stricted,a.message),t=this.finalize(p,r?new o.AsyncArrowFunctionExpression(a.params,g,v):new o.ArrowFunctionExpression(a.params,g,v)),this.context.strict=c,this.context.allowStrictDirective=u,this.context.allowYield=d,this.context.await=f}}else if(this.matchAssign()){if(this.context.isAssignmentTarget||this.tolerateError(s.Messages.InvalidLHSInAssignment),this.context.strict&&t.type===l.Syntax.Identifier){var y=t;this.scanner.isRestrictedWord(y.name)&&this.tolerateUnexpectedToken(n,s.Messages.StrictLHSAssignment),this.scanner.isStrictModeReservedWord(y.name)&&this.tolerateUnexpectedToken(n,s.Messages.StrictReservedWord)}this.match("=")?this.reinterpretExpressionAsPattern(t):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1);var w=(n=this.nextToken()).value,b=this.isolateCoverGrammar(this.parseAssignmentExpression);t=this.finalize(this.startNode(e),new o.AssignmentExpression(w,t,b)),this.context.firstCoverInitializedNameError=null}}return t},t.prototype.parseExpression=function(){var t=this.lookahead,e=this.isolateCoverGrammar(this.parseAssignmentExpression);if(this.match(",")){var n=[];for(n.push(e);2!==this.lookahead.type&&this.match(",");)this.nextToken(),n.push(this.isolateCoverGrammar(this.parseAssignmentExpression));e=this.finalize(this.startNode(t),new o.SequenceExpression(n))}return e},t.prototype.parseStatementListItem=function(){var t;if(this.context.isAssignmentTarget=!0,this.context.isBindingElement=!0,4===this.lookahead.type)switch(this.lookahead.value){case"export":this.context.isModule||this.tolerateUnexpectedToken(this.lookahead,s.Messages.IllegalExportDeclaration),t=this.parseExportDeclaration();break;case"import":this.context.isModule||this.tolerateUnexpectedToken(this.lookahead,s.Messages.IllegalImportDeclaration),t=this.parseImportDeclaration();break;case"const":t=this.parseLexicalDeclaration({inFor:!1});break;case"function":t=this.parseFunctionDeclaration();break;case"class":t=this.parseClassDeclaration();break;case"let":t=this.isLexicalDeclaration()?this.parseLexicalDeclaration({inFor:!1}):this.parseStatement();break;default:t=this.parseStatement()}else t=this.parseStatement();return t},t.prototype.parseBlock=function(){var t=this.createNode();this.expect("{");for(var e=[];!this.match("}");)e.push(this.parseStatementListItem());return this.expect("}"),this.finalize(t,new o.BlockStatement(e))},t.prototype.parseLexicalBinding=function(t,e){var n=this.createNode(),i=this.parsePattern([],t);this.context.strict&&i.type===l.Syntax.Identifier&&this.scanner.isRestrictedWord(i.name)&&this.tolerateError(s.Messages.StrictVarName);var r=null;return"const"===t?this.matchKeyword("in")||this.matchContextualKeyword("of")||(this.match("=")?(this.nextToken(),r=this.isolateCoverGrammar(this.parseAssignmentExpression)):this.throwError(s.Messages.DeclarationMissingInitializer,"const")):(!e.inFor&&i.type!==l.Syntax.Identifier||this.match("="))&&(this.expect("="),r=this.isolateCoverGrammar(this.parseAssignmentExpression)),this.finalize(n,new o.VariableDeclarator(i,r))},t.prototype.parseBindingList=function(t,e){for(var n=[this.parseLexicalBinding(t,e)];this.match(",");)this.nextToken(),n.push(this.parseLexicalBinding(t,e));return n},t.prototype.isLexicalDeclaration=function(){var t=this.scanner.saveState();this.scanner.scanComments();var e=this.scanner.lex();return this.scanner.restoreState(t),3===e.type||7===e.type&&"["===e.value||7===e.type&&"{"===e.value||4===e.type&&"let"===e.value||4===e.type&&"yield"===e.value},t.prototype.parseLexicalDeclaration=function(t){var e=this.createNode(),n=this.nextToken().value;i.assert("let"===n||"const"===n,"Lexical declaration must be either let or const");var r=this.parseBindingList(n,t);return this.consumeSemicolon(),this.finalize(e,new o.VariableDeclaration(r,n))},t.prototype.parseBindingRestElement=function(t,e){var n=this.createNode();this.expect("...");var i=this.parsePattern(t,e);return this.finalize(n,new o.RestElement(i))},t.prototype.parseArrayPattern=function(t,e){var n=this.createNode();this.expect("[");for(var i=[];!this.match("]");)if(this.match(","))this.nextToken(),i.push(null);else{if(this.match("...")){i.push(this.parseBindingRestElement(t,e));break}i.push(this.parsePatternWithDefault(t,e)),this.match("]")||this.expect(",")}return this.expect("]"),this.finalize(n,new o.ArrayPattern(i))},t.prototype.parsePropertyPattern=function(t,e){var n,i,r=this.createNode(),s=!1,a=!1;if(3===this.lookahead.type){var l=this.lookahead;n=this.parseVariableIdentifier();var c=this.finalize(r,new o.Identifier(l.value));if(this.match("=")){t.push(l),a=!0,this.nextToken();var h=this.parseAssignmentExpression();i=this.finalize(this.startNode(l),new o.AssignmentPattern(c,h))}else this.match(":")?(this.expect(":"),i=this.parsePatternWithDefault(t,e)):(t.push(l),a=!0,i=c)}else s=this.match("["),n=this.parseObjectPropertyKey(),this.expect(":"),i=this.parsePatternWithDefault(t,e);return this.finalize(r,new o.Property("init",n,s,i,!1,a))},t.prototype.parseObjectPattern=function(t,e){var n=this.createNode(),i=[];for(this.expect("{");!this.match("}");)i.push(this.parsePropertyPattern(t,e)),this.match("}")||this.expect(",");return this.expect("}"),this.finalize(n,new o.ObjectPattern(i))},t.prototype.parsePattern=function(t,e){var n;return this.match("[")?n=this.parseArrayPattern(t,e):this.match("{")?n=this.parseObjectPattern(t,e):(!this.matchKeyword("let")||"const"!==e&&"let"!==e||this.tolerateUnexpectedToken(this.lookahead,s.Messages.LetInLexicalBinding),t.push(this.lookahead),n=this.parseVariableIdentifier(e)),n},t.prototype.parsePatternWithDefault=function(t,e){var n=this.lookahead,i=this.parsePattern(t,e);if(this.match("=")){this.nextToken();var r=this.context.allowYield;this.context.allowYield=!0;var s=this.isolateCoverGrammar(this.parseAssignmentExpression);this.context.allowYield=r,i=this.finalize(this.startNode(n),new o.AssignmentPattern(i,s))}return i},t.prototype.parseVariableIdentifier=function(t){var e=this.createNode(),n=this.nextToken();return 4===n.type&&"yield"===n.value?this.context.strict?this.tolerateUnexpectedToken(n,s.Messages.StrictReservedWord):this.context.allowYield||this.throwUnexpectedToken(n):3!==n.type?this.context.strict&&4===n.type&&this.scanner.isStrictModeReservedWord(n.value)?this.tolerateUnexpectedToken(n,s.Messages.StrictReservedWord):(this.context.strict||"let"!==n.value||"var"!==t)&&this.throwUnexpectedToken(n):(this.context.isModule||this.context.await)&&3===n.type&&"await"===n.value&&this.tolerateUnexpectedToken(n),this.finalize(e,new o.Identifier(n.value))},t.prototype.parseVariableDeclaration=function(t){var e=this.createNode(),n=this.parsePattern([],"var");this.context.strict&&n.type===l.Syntax.Identifier&&this.scanner.isRestrictedWord(n.name)&&this.tolerateError(s.Messages.StrictVarName);var i=null;return this.match("=")?(this.nextToken(),i=this.isolateCoverGrammar(this.parseAssignmentExpression)):n.type===l.Syntax.Identifier||t.inFor||this.expect("="),this.finalize(e,new o.VariableDeclarator(n,i))},t.prototype.parseVariableDeclarationList=function(t){var e={inFor:t.inFor},n=[];for(n.push(this.parseVariableDeclaration(e));this.match(",");)this.nextToken(),n.push(this.parseVariableDeclaration(e));return n},t.prototype.parseVariableStatement=function(){var t=this.createNode();this.expectKeyword("var");var e=this.parseVariableDeclarationList({inFor:!1});return this.consumeSemicolon(),this.finalize(t,new o.VariableDeclaration(e,"var"))},t.prototype.parseEmptyStatement=function(){var t=this.createNode();return this.expect(";"),this.finalize(t,new o.EmptyStatement)},t.prototype.parseExpressionStatement=function(){var t=this.createNode(),e=this.parseExpression();return this.consumeSemicolon(),this.finalize(t,new o.ExpressionStatement(e))},t.prototype.parseIfClause=function(){return this.context.strict&&this.matchKeyword("function")&&this.tolerateError(s.Messages.StrictFunction),this.parseStatement()},t.prototype.parseIfStatement=function(){var t,e=this.createNode(),n=null;this.expectKeyword("if"),this.expect("(");var i=this.parseExpression();return!this.match(")")&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),t=this.finalize(this.createNode(),new o.EmptyStatement)):(this.expect(")"),t=this.parseIfClause(),this.matchKeyword("else")&&(this.nextToken(),n=this.parseIfClause())),this.finalize(e,new o.IfStatement(i,t,n))},t.prototype.parseDoWhileStatement=function(){var t=this.createNode();this.expectKeyword("do");var e=this.context.inIteration;this.context.inIteration=!0;var n=this.parseStatement();this.context.inIteration=e,this.expectKeyword("while"),this.expect("(");var i=this.parseExpression();return!this.match(")")&&this.config.tolerant?this.tolerateUnexpectedToken(this.nextToken()):(this.expect(")"),this.match(";")&&this.nextToken()),this.finalize(t,new o.DoWhileStatement(n,i))},t.prototype.parseWhileStatement=function(){var t,e=this.createNode();this.expectKeyword("while"),this.expect("(");var n=this.parseExpression();if(!this.match(")")&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),t=this.finalize(this.createNode(),new o.EmptyStatement);else{this.expect(")");var i=this.context.inIteration;this.context.inIteration=!0,t=this.parseStatement(),this.context.inIteration=i}return this.finalize(e,new o.WhileStatement(n,t))},t.prototype.parseForStatement=function(){var t,e,n,i=null,r=null,a=null,c=!0,h=this.createNode();if(this.expectKeyword("for"),this.expect("("),this.match(";"))this.nextToken();else if(this.matchKeyword("var")){i=this.createNode(),this.nextToken();var u=this.context.allowIn;this.context.allowIn=!1;var d=this.parseVariableDeclarationList({inFor:!0});if(this.context.allowIn=u,1===d.length&&this.matchKeyword("in")){var f=d[0];f.init&&(f.id.type===l.Syntax.ArrayPattern||f.id.type===l.Syntax.ObjectPattern||this.context.strict)&&this.tolerateError(s.Messages.ForInOfLoopInitializer,"for-in"),i=this.finalize(i,new o.VariableDeclaration(d,"var")),this.nextToken(),t=i,e=this.parseExpression(),i=null}else 1===d.length&&null===d[0].init&&this.matchContextualKeyword("of")?(i=this.finalize(i,new o.VariableDeclaration(d,"var")),this.nextToken(),t=i,e=this.parseAssignmentExpression(),i=null,c=!1):(i=this.finalize(i,new o.VariableDeclaration(d,"var")),this.expect(";"))}else if(this.matchKeyword("const")||this.matchKeyword("let")){i=this.createNode();var p=this.nextToken().value;this.context.strict||"in"!==this.lookahead.value?(u=this.context.allowIn,this.context.allowIn=!1,d=this.parseBindingList(p,{inFor:!0}),this.context.allowIn=u,1===d.length&&null===d[0].init&&this.matchKeyword("in")?(i=this.finalize(i,new o.VariableDeclaration(d,p)),this.nextToken(),t=i,e=this.parseExpression(),i=null):1===d.length&&null===d[0].init&&this.matchContextualKeyword("of")?(i=this.finalize(i,new o.VariableDeclaration(d,p)),this.nextToken(),t=i,e=this.parseAssignmentExpression(),i=null,c=!1):(this.consumeSemicolon(),i=this.finalize(i,new o.VariableDeclaration(d,p)))):(i=this.finalize(i,new o.Identifier(p)),this.nextToken(),t=i,e=this.parseExpression(),i=null)}else{var g=this.lookahead;if(u=this.context.allowIn,this.context.allowIn=!1,i=this.inheritCoverGrammar(this.parseAssignmentExpression),this.context.allowIn=u,this.matchKeyword("in"))this.context.isAssignmentTarget&&i.type!==l.Syntax.AssignmentExpression||this.tolerateError(s.Messages.InvalidLHSInForIn),this.nextToken(),this.reinterpretExpressionAsPattern(i),t=i,e=this.parseExpression(),i=null;else if(this.matchContextualKeyword("of"))this.context.isAssignmentTarget&&i.type!==l.Syntax.AssignmentExpression||this.tolerateError(s.Messages.InvalidLHSInForLoop),this.nextToken(),this.reinterpretExpressionAsPattern(i),t=i,e=this.parseAssignmentExpression(),i=null,c=!1;else{if(this.match(",")){for(var m=[i];this.match(",");)this.nextToken(),m.push(this.isolateCoverGrammar(this.parseAssignmentExpression));i=this.finalize(this.startNode(g),new o.SequenceExpression(m))}this.expect(";")}}if(void 0===t&&(this.match(";")||(r=this.parseExpression()),this.expect(";"),this.match(")")||(a=this.parseExpression())),!this.match(")")&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),n=this.finalize(this.createNode(),new o.EmptyStatement);else{this.expect(")");var v=this.context.inIteration;this.context.inIteration=!0,n=this.isolateCoverGrammar(this.parseStatement),this.context.inIteration=v}return this.finalize(h,void 0===t?new o.ForStatement(i,r,a,n):c?new o.ForInStatement(t,e,n):new o.ForOfStatement(t,e,n))},t.prototype.parseContinueStatement=function(){var t=this.createNode();this.expectKeyword("continue");var e=null;if(3===this.lookahead.type&&!this.hasLineTerminator){var n=this.parseVariableIdentifier();e=n,Object.prototype.hasOwnProperty.call(this.context.labelSet,"$"+n.name)||this.throwError(s.Messages.UnknownLabel,n.name)}return this.consumeSemicolon(),null!==e||this.context.inIteration||this.throwError(s.Messages.IllegalContinue),this.finalize(t,new o.ContinueStatement(e))},t.prototype.parseBreakStatement=function(){var t=this.createNode();this.expectKeyword("break");var e=null;if(3===this.lookahead.type&&!this.hasLineTerminator){var n=this.parseVariableIdentifier();Object.prototype.hasOwnProperty.call(this.context.labelSet,"$"+n.name)||this.throwError(s.Messages.UnknownLabel,n.name),e=n}return this.consumeSemicolon(),null!==e||this.context.inIteration||this.context.inSwitch||this.throwError(s.Messages.IllegalBreak),this.finalize(t,new o.BreakStatement(e))},t.prototype.parseReturnStatement=function(){this.context.inFunctionBody||this.tolerateError(s.Messages.IllegalReturn);var t=this.createNode();this.expectKeyword("return");var e=(this.match(";")||this.match("}")||this.hasLineTerminator||2===this.lookahead.type)&&8!==this.lookahead.type&&10!==this.lookahead.type?null:this.parseExpression();return this.consumeSemicolon(),this.finalize(t,new o.ReturnStatement(e))},t.prototype.parseWithStatement=function(){this.context.strict&&this.tolerateError(s.Messages.StrictModeWith);var t,e=this.createNode();this.expectKeyword("with"),this.expect("(");var n=this.parseExpression();return!this.match(")")&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),t=this.finalize(this.createNode(),new o.EmptyStatement)):(this.expect(")"),t=this.parseStatement()),this.finalize(e,new o.WithStatement(n,t))},t.prototype.parseSwitchCase=function(){var t,e=this.createNode();this.matchKeyword("default")?(this.nextToken(),t=null):(this.expectKeyword("case"),t=this.parseExpression()),this.expect(":");for(var n=[];!(this.match("}")||this.matchKeyword("default")||this.matchKeyword("case"));)n.push(this.parseStatementListItem());return this.finalize(e,new o.SwitchCase(t,n))},t.prototype.parseSwitchStatement=function(){var t=this.createNode();this.expectKeyword("switch"),this.expect("(");var e=this.parseExpression();this.expect(")");var n=this.context.inSwitch;this.context.inSwitch=!0;var i=[],r=!1;for(this.expect("{");!this.match("}");){var a=this.parseSwitchCase();null===a.test&&(r&&this.throwError(s.Messages.MultipleDefaultsInSwitch),r=!0),i.push(a)}return this.expect("}"),this.context.inSwitch=n,this.finalize(t,new o.SwitchStatement(e,i))},t.prototype.parseLabelledStatement=function(){var t,e=this.createNode(),n=this.parseExpression();if(n.type===l.Syntax.Identifier&&this.match(":")){this.nextToken();var i=n,r="$"+i.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,r)&&this.throwError(s.Messages.Redeclaration,"Label",i.name),this.context.labelSet[r]=!0;var a=void 0;if(this.matchKeyword("class"))this.tolerateUnexpectedToken(this.lookahead),a=this.parseClassDeclaration();else if(this.matchKeyword("function")){var c=this.lookahead,h=this.parseFunctionDeclaration();this.context.strict?this.tolerateUnexpectedToken(c,s.Messages.StrictFunction):h.generator&&this.tolerateUnexpectedToken(c,s.Messages.GeneratorInLegacyContext),a=h}else a=this.parseStatement();delete this.context.labelSet[r],t=new o.LabeledStatement(i,a)}else this.consumeSemicolon(),t=new o.ExpressionStatement(n);return this.finalize(e,t)},t.prototype.parseThrowStatement=function(){var t=this.createNode();this.expectKeyword("throw"),this.hasLineTerminator&&this.throwError(s.Messages.NewlineAfterThrow);var e=this.parseExpression();return this.consumeSemicolon(),this.finalize(t,new o.ThrowStatement(e))},t.prototype.parseCatchClause=function(){var t=this.createNode();this.expectKeyword("catch"),this.expect("("),this.match(")")&&this.throwUnexpectedToken(this.lookahead);for(var e=[],n=this.parsePattern(e),i={},r=0;r0&&this.tolerateError(s.Messages.BadGetterArity);var i=this.parsePropertyMethod(n);return this.context.allowYield=e,this.finalize(t,new o.FunctionExpression(null,n.params,i,!1))},t.prototype.parseSetterMethod=function(){var t=this.createNode(),e=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters();1!==n.params.length?this.tolerateError(s.Messages.BadSetterArity):n.params[0]instanceof o.RestElement&&this.tolerateError(s.Messages.BadSetterRestParameter);var i=this.parsePropertyMethod(n);return this.context.allowYield=e,this.finalize(t,new o.FunctionExpression(null,n.params,i,!1))},t.prototype.parseGeneratorMethod=function(){var t=this.createNode(),e=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters();this.context.allowYield=!1;var i=this.parsePropertyMethod(n);return this.context.allowYield=e,this.finalize(t,new o.FunctionExpression(null,n.params,i,!0))},t.prototype.isStartOfExpression=function(){var t=!0,e=this.lookahead.value;switch(this.lookahead.type){case 7:t="["===e||"("===e||"{"===e||"+"===e||"-"===e||"!"===e||"~"===e||"++"===e||"--"===e||"/"===e||"/="===e;break;case 4:t="class"===e||"delete"===e||"function"===e||"let"===e||"new"===e||"super"===e||"this"===e||"typeof"===e||"void"===e||"yield"===e}return t},t.prototype.parseYieldExpression=function(){var t=this.createNode();this.expectKeyword("yield");var e=null,n=!1;if(!this.hasLineTerminator){var i=this.context.allowYield;this.context.allowYield=!1,(n=this.match("*"))?(this.nextToken(),e=this.parseAssignmentExpression()):this.isStartOfExpression()&&(e=this.parseAssignmentExpression()),this.context.allowYield=i}return this.finalize(t,new o.YieldExpression(e,n))},t.prototype.parseClassElement=function(t){var e=this.lookahead,n=this.createNode(),i="",r=null,a=null,l=!1,c=!1,h=!1,u=!1;if(this.match("*"))this.nextToken();else if(l=this.match("["),"static"===(r=this.parseObjectPropertyKey()).name&&(this.qualifiedPropertyName(this.lookahead)||this.match("*"))&&(e=this.lookahead,h=!0,l=this.match("["),this.match("*")?this.nextToken():r=this.parseObjectPropertyKey()),3===e.type&&!this.hasLineTerminator&&"async"===e.value){var d=this.lookahead.value;":"!==d&&"("!==d&&"*"!==d&&(u=!0,e=this.lookahead,r=this.parseObjectPropertyKey(),3===e.type&&"constructor"===e.value&&this.tolerateUnexpectedToken(e,s.Messages.ConstructorIsAsync))}var f=this.qualifiedPropertyName(this.lookahead);return 3===e.type?"get"===e.value&&f?(i="get",l=this.match("["),r=this.parseObjectPropertyKey(),this.context.allowYield=!1,a=this.parseGetterMethod()):"set"===e.value&&f&&(i="set",l=this.match("["),r=this.parseObjectPropertyKey(),a=this.parseSetterMethod()):7===e.type&&"*"===e.value&&f&&(i="init",l=this.match("["),r=this.parseObjectPropertyKey(),a=this.parseGeneratorMethod(),c=!0),!i&&r&&this.match("(")&&(i="init",a=u?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),c=!0),i||this.throwUnexpectedToken(this.lookahead),"init"===i&&(i="method"),l||(h&&this.isPropertyKey(r,"prototype")&&this.throwUnexpectedToken(e,s.Messages.StaticPrototype),!h&&this.isPropertyKey(r,"constructor")&&(("method"!==i||!c||a&&a.generator)&&this.throwUnexpectedToken(e,s.Messages.ConstructorSpecialMethod),t.value?this.throwUnexpectedToken(e,s.Messages.DuplicateConstructor):t.value=!0,i="constructor")),this.finalize(n,new o.MethodDefinition(r,l,a,i,h))},t.prototype.parseClassElementList=function(){var t=[],e={value:!1};for(this.expect("{");!this.match("}");)this.match(";")?this.nextToken():t.push(this.parseClassElement(e));return this.expect("}"),t},t.prototype.parseClassBody=function(){var t=this.createNode(),e=this.parseClassElementList();return this.finalize(t,new o.ClassBody(e))},t.prototype.parseClassDeclaration=function(t){var e=this.createNode(),n=this.context.strict;this.context.strict=!0,this.expectKeyword("class");var i=t&&3!==this.lookahead.type?null:this.parseVariableIdentifier(),r=null;this.matchKeyword("extends")&&(this.nextToken(),r=this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall));var s=this.parseClassBody();return this.context.strict=n,this.finalize(e,new o.ClassDeclaration(i,r,s))},t.prototype.parseClassExpression=function(){var t=this.createNode(),e=this.context.strict;this.context.strict=!0,this.expectKeyword("class");var n=3===this.lookahead.type?this.parseVariableIdentifier():null,i=null;this.matchKeyword("extends")&&(this.nextToken(),i=this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall));var r=this.parseClassBody();return this.context.strict=e,this.finalize(t,new o.ClassExpression(n,i,r))},t.prototype.parseModule=function(){this.context.strict=!0,this.context.isModule=!0,this.scanner.isModule=!0;for(var t=this.createNode(),e=this.parseDirectivePrologues();2!==this.lookahead.type;)e.push(this.parseStatementListItem());return this.finalize(t,new o.Module(e))},t.prototype.parseScript=function(){for(var t=this.createNode(),e=this.parseDirectivePrologues();2!==this.lookahead.type;)e.push(this.parseStatementListItem());return this.finalize(t,new o.Script(e))},t.prototype.parseModuleSpecifier=function(){var t=this.createNode();8!==this.lookahead.type&&this.throwError(s.Messages.InvalidModuleSpecifier);var e=this.nextToken(),n=this.getTokenRaw(e);return this.finalize(t,new o.Literal(e.value,n))},t.prototype.parseImportSpecifier=function(){var t,e,n=this.createNode();return 3===this.lookahead.type?(e=t=this.parseVariableIdentifier(),this.matchContextualKeyword("as")&&(this.nextToken(),e=this.parseVariableIdentifier())):(e=t=this.parseIdentifierName(),this.matchContextualKeyword("as")?(this.nextToken(),e=this.parseVariableIdentifier()):this.throwUnexpectedToken(this.nextToken())),this.finalize(n,new o.ImportSpecifier(e,t))},t.prototype.parseNamedImports=function(){this.expect("{");for(var t=[];!this.match("}");)t.push(this.parseImportSpecifier()),this.match("}")||this.expect(",");return this.expect("}"),t},t.prototype.parseImportDefaultSpecifier=function(){var t=this.createNode(),e=this.parseIdentifierName();return this.finalize(t,new o.ImportDefaultSpecifier(e))},t.prototype.parseImportNamespaceSpecifier=function(){var t=this.createNode();this.expect("*"),this.matchContextualKeyword("as")||this.throwError(s.Messages.NoAsAfterImportNamespace),this.nextToken();var e=this.parseIdentifierName();return this.finalize(t,new o.ImportNamespaceSpecifier(e))},t.prototype.parseImportDeclaration=function(){this.context.inFunctionBody&&this.throwError(s.Messages.IllegalImportDeclaration);var t,e=this.createNode();this.expectKeyword("import");var n=[];return 8===this.lookahead.type||(this.match("{")?n=n.concat(this.parseNamedImports()):this.match("*")?n.push(this.parseImportNamespaceSpecifier()):this.isIdentifierName(this.lookahead)&&!this.matchKeyword("default")?(n.push(this.parseImportDefaultSpecifier()),this.match(",")&&(this.nextToken(),this.match("*")?n.push(this.parseImportNamespaceSpecifier()):this.match("{")?n=n.concat(this.parseNamedImports()):this.throwUnexpectedToken(this.lookahead))):this.throwUnexpectedToken(this.nextToken()),this.matchContextualKeyword("from")||this.throwError(this.lookahead.value?s.Messages.UnexpectedToken:s.Messages.MissingFromClause,this.lookahead.value),this.nextToken()),t=this.parseModuleSpecifier(),this.consumeSemicolon(),this.finalize(e,new o.ImportDeclaration(n,t))},t.prototype.parseExportSpecifier=function(){var t=this.createNode(),e=this.parseIdentifierName(),n=e;return this.matchContextualKeyword("as")&&(this.nextToken(),n=this.parseIdentifierName()),this.finalize(t,new o.ExportSpecifier(e,n))},t.prototype.parseExportDeclaration=function(){this.context.inFunctionBody&&this.throwError(s.Messages.IllegalExportDeclaration);var t,e=this.createNode();if(this.expectKeyword("export"),this.matchKeyword("default"))if(this.nextToken(),this.matchKeyword("function")){var n=this.parseFunctionDeclaration(!0);t=this.finalize(e,new o.ExportDefaultDeclaration(n))}else this.matchKeyword("class")?(n=this.parseClassDeclaration(!0),t=this.finalize(e,new o.ExportDefaultDeclaration(n))):this.matchContextualKeyword("async")?(n=this.matchAsyncFunction()?this.parseFunctionDeclaration(!0):this.parseAssignmentExpression(),t=this.finalize(e,new o.ExportDefaultDeclaration(n))):(this.matchContextualKeyword("from")&&this.throwError(s.Messages.UnexpectedToken,this.lookahead.value),n=this.match("{")?this.parseObjectInitializer():this.match("[")?this.parseArrayInitializer():this.parseAssignmentExpression(),this.consumeSemicolon(),t=this.finalize(e,new o.ExportDefaultDeclaration(n)));else if(this.match("*")){this.nextToken(),this.matchContextualKeyword("from")||this.throwError(this.lookahead.value?s.Messages.UnexpectedToken:s.Messages.MissingFromClause,this.lookahead.value),this.nextToken();var i=this.parseModuleSpecifier();this.consumeSemicolon(),t=this.finalize(e,new o.ExportAllDeclaration(i))}else if(4===this.lookahead.type){switch(n=void 0,this.lookahead.value){case"let":case"const":n=this.parseLexicalDeclaration({inFor:!1});break;case"var":case"class":case"function":n=this.parseStatementListItem();break;default:this.throwUnexpectedToken(this.lookahead)}t=this.finalize(e,new o.ExportNamedDeclaration(n,[],null))}else if(this.matchAsyncFunction())n=this.parseFunctionDeclaration(),t=this.finalize(e,new o.ExportNamedDeclaration(n,[],null));else{var r=[],a=null,l=!1;for(this.expect("{");!this.match("}");)l=l||this.matchKeyword("default"),r.push(this.parseExportSpecifier()),this.match("}")||this.expect(",");this.expect("}"),this.matchContextualKeyword("from")?(this.nextToken(),a=this.parseModuleSpecifier(),this.consumeSemicolon()):l?this.throwError(this.lookahead.value?s.Messages.UnexpectedToken:s.Messages.MissingFromClause,this.lookahead.value):this.consumeSemicolon(),t=this.finalize(e,new o.ExportNamedDeclaration(null,r,a))}return t},t}();e.Parser=u},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.assert=function(t,e){if(!t)throw new Error("ASSERT: "+e)}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(){this.errors=[],this.tolerant=!1}return t.prototype.recordError=function(t){this.errors.push(t)},t.prototype.tolerate=function(t){if(!this.tolerant)throw t;this.recordError(t)},t.prototype.constructError=function(t,e){var n=new Error(t);try{throw n}catch(i){Object.create&&Object.defineProperty&&(n=Object.create(i),Object.defineProperty(n,"column",{value:e}))}return n},t.prototype.createError=function(t,e,n,i){var r=this.constructError("Line "+e+": "+i,n);return r.index=t,r.lineNumber=e,r.description=i,r},t.prototype.throwError=function(t,e,n,i){throw this.createError(t,e,n,i)},t.prototype.tolerateError=function(t,e,n,i){var r=this.createError(t,e,n,i);if(!this.tolerant)throw r;this.recordError(r)},t}();e.ErrorHandler=n},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Messages={BadGetterArity:"Getter must not have any formal parameters",BadSetterArity:"Setter must have exactly one formal parameter",BadSetterRestParameter:"Setter function argument must not be a rest parameter",ConstructorIsAsync:"Class constructor may not be an async method",ConstructorSpecialMethod:"Class constructor may not be an accessor",DeclarationMissingInitializer:"Missing initializer in %0 declaration",DefaultRestParameter:"Unexpected token =",DuplicateBinding:"Duplicate binding %0",DuplicateConstructor:"A class may only have one constructor",DuplicateProtoProperty:"Duplicate __proto__ fields are not allowed in object literals",ForInOfLoopInitializer:"%0 loop variable declaration may not have an initializer",GeneratorInLegacyContext:"Generator declarations are not allowed in legacy contexts",IllegalBreak:"Illegal break statement",IllegalContinue:"Illegal continue statement",IllegalExportDeclaration:"Unexpected token",IllegalImportDeclaration:"Unexpected token",IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list",IllegalReturn:"Illegal return statement",InvalidEscapedReservedWord:"Keyword must not contain escaped characters",InvalidHexEscapeSequence:"Invalid hexadecimal escape sequence",InvalidLHSInAssignment:"Invalid left-hand side in assignment",InvalidLHSInForIn:"Invalid left-hand side in for-in",InvalidLHSInForLoop:"Invalid left-hand side in for-loop",InvalidModuleSpecifier:"Unexpected token",InvalidRegExp:"Invalid regular expression",LetInLexicalBinding:"let is disallowed as a lexically bound name",MissingFromClause:"Unexpected token",MultipleDefaultsInSwitch:"More than one default clause in switch statement",NewlineAfterThrow:"Illegal newline after throw",NoAsAfterImportNamespace:"Unexpected token",NoCatchOrFinally:"Missing catch or finally after try",ParameterAfterRestParameter:"Rest parameter must be last formal parameter",Redeclaration:"%0 '%1' has already been declared",StaticPrototype:"Classes may not have static property named prototype",StrictCatchVariable:"Catch variable may not be eval or arguments in strict mode",StrictDelete:"Delete of an unqualified identifier in strict mode.",StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block",StrictFunctionName:"Function name may not be eval or arguments in strict mode",StrictLHSAssignment:"Assignment to eval or arguments is not allowed in strict mode",StrictLHSPostfix:"Postfix increment/decrement may not have eval or arguments operand in strict mode",StrictLHSPrefix:"Prefix increment/decrement may not have eval or arguments operand in strict mode",StrictModeWith:"Strict mode code may not include a with statement",StrictOctalLiteral:"Octal literals are not allowed in strict mode.",StrictParamDupe:"Strict mode function may not have duplicate parameter names",StrictParamName:"Parameter name eval or arguments is not allowed in strict mode",StrictReservedWord:"Use of future reserved word in strict mode",StrictVarName:"Variable name may not be eval or arguments in strict mode",TemplateOctalLiteral:"Octal literals are not allowed in template strings.",UnexpectedEOS:"Unexpected end of input",UnexpectedIdentifier:"Unexpected identifier",UnexpectedNumber:"Unexpected number",UnexpectedReserved:"Unexpected reserved word",UnexpectedString:"Unexpected string",UnexpectedTemplate:"Unexpected quasi %0",UnexpectedToken:"Unexpected token %0",UnexpectedTokenIllegal:"Unexpected token ILLEGAL",UnknownLabel:"Undefined label '%0'",UnterminatedRegExp:"Invalid regular expression: missing /"}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(9),r=n(4),s=n(11);function o(t){return"0123456789abcdef".indexOf(t.toLowerCase())}function a(t){return"01234567".indexOf(t)}var l=function(){function t(t,e){this.source=t,this.errorHandler=e,this.trackComment=!1,this.isModule=!1,this.length=t.length,this.index=0,this.lineNumber=t.length>0?1:0,this.lineStart=0,this.curlyStack=[]}return t.prototype.saveState=function(){return{index:this.index,lineNumber:this.lineNumber,lineStart:this.lineStart}},t.prototype.restoreState=function(t){this.index=t.index,this.lineNumber=t.lineNumber,this.lineStart=t.lineStart},t.prototype.eof=function(){return this.index>=this.length},t.prototype.throwUnexpectedToken=function(t){return void 0===t&&(t=s.Messages.UnexpectedTokenIllegal),this.errorHandler.throwError(this.index,this.lineNumber,this.index-this.lineStart+1,t)},t.prototype.tolerateUnexpectedToken=function(t){void 0===t&&(t=s.Messages.UnexpectedTokenIllegal),this.errorHandler.tolerateError(this.index,this.lineNumber,this.index-this.lineStart+1,t)},t.prototype.skipSingleLineComment=function(t){var e,n,i=[];for(this.trackComment&&(i=[],e=this.index-t,n={start:{line:this.lineNumber,column:this.index-this.lineStart-t},end:{}});!this.eof();){var s=this.source.charCodeAt(this.index);if(++this.index,r.Character.isLineTerminator(s))return this.trackComment&&(n.end={line:this.lineNumber,column:this.index-this.lineStart-1},i.push({multiLine:!1,slice:[e+t,this.index-1],range:[e,this.index-1],loc:n})),13===s&&10===this.source.charCodeAt(this.index)&&++this.index,++this.lineNumber,this.lineStart=this.index,i}return this.trackComment&&(n.end={line:this.lineNumber,column:this.index-this.lineStart},i.push({multiLine:!1,slice:[e+t,this.index],range:[e,this.index],loc:n})),i},t.prototype.skipMultiLineComment=function(){var t,e,n=[];for(this.trackComment&&(n=[],t=this.index-2,e={start:{line:this.lineNumber,column:this.index-this.lineStart-2},end:{}});!this.eof();){var i=this.source.charCodeAt(this.index);if(r.Character.isLineTerminator(i))13===i&&10===this.source.charCodeAt(this.index+1)&&++this.index,++this.lineNumber,++this.index,this.lineStart=this.index;else if(42===i){if(47===this.source.charCodeAt(this.index+1))return this.index+=2,this.trackComment&&(e.end={line:this.lineNumber,column:this.index-this.lineStart},n.push({multiLine:!0,slice:[t+2,this.index-2],range:[t,this.index],loc:e})),n;++this.index}else++this.index}return this.trackComment&&(e.end={line:this.lineNumber,column:this.index-this.lineStart},n.push({multiLine:!0,slice:[t+2,this.index],range:[t,this.index],loc:e})),this.tolerateUnexpectedToken(),n},t.prototype.scanComments=function(){var t;this.trackComment&&(t=[]);for(var e=0===this.index;!this.eof();){var n=this.source.charCodeAt(this.index);if(r.Character.isWhiteSpace(n))++this.index;else if(r.Character.isLineTerminator(n))++this.index,13===n&&10===this.source.charCodeAt(this.index)&&++this.index,++this.lineNumber,this.lineStart=this.index,e=!0;else if(47===n)if(47===(n=this.source.charCodeAt(this.index+1))){this.index+=2;var i=this.skipSingleLineComment(2);this.trackComment&&(t=t.concat(i)),e=!0}else{if(42!==n)break;this.index+=2,i=this.skipMultiLineComment(),this.trackComment&&(t=t.concat(i))}else if(e&&45===n){if(45!==this.source.charCodeAt(this.index+1)||62!==this.source.charCodeAt(this.index+2))break;this.index+=3,i=this.skipSingleLineComment(3),this.trackComment&&(t=t.concat(i))}else{if(60!==n||this.isModule)break;if("!--"!==this.source.slice(this.index+1,this.index+4))break;this.index+=4,i=this.skipSingleLineComment(4),this.trackComment&&(t=t.concat(i))}}return t},t.prototype.isFutureReservedWord=function(t){switch(t){case"enum":case"export":case"import":case"super":return!0;default:return!1}},t.prototype.isStrictModeReservedWord=function(t){switch(t){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"yield":case"let":return!0;default:return!1}},t.prototype.isRestrictedWord=function(t){return"eval"===t||"arguments"===t},t.prototype.isKeyword=function(t){switch(t.length){case 2:return"if"===t||"in"===t||"do"===t;case 3:return"var"===t||"for"===t||"new"===t||"try"===t||"let"===t;case 4:return"this"===t||"else"===t||"case"===t||"void"===t||"with"===t||"enum"===t;case 5:return"while"===t||"break"===t||"catch"===t||"throw"===t||"const"===t||"yield"===t||"class"===t||"super"===t;case 6:return"return"===t||"typeof"===t||"delete"===t||"switch"===t||"export"===t||"import"===t;case 7:return"default"===t||"finally"===t||"extends"===t;case 8:return"function"===t||"continue"===t||"debugger"===t;case 10:return"instanceof"===t;default:return!1}},t.prototype.codePointAt=function(t){var e=this.source.charCodeAt(t);if(e>=55296&&e<=56319){var n=this.source.charCodeAt(t+1);n>=56320&&n<=57343&&(e=1024*(e-55296)+n-56320+65536)}return e},t.prototype.scanHexEscape=function(t){for(var e="u"===t?4:2,n=0,i=0;i1114111||"}"!==t)&&this.throwUnexpectedToken(),r.Character.fromCodePoint(e)},t.prototype.getIdentifier=function(){for(var t=this.index++;!this.eof();){var e=this.source.charCodeAt(this.index);if(92===e)return this.index=t,this.getComplexIdentifier();if(e>=55296&&e<57343)return this.index=t,this.getComplexIdentifier();if(!r.Character.isIdentifierPart(e))break;++this.index}return this.source.slice(t,this.index)},t.prototype.getComplexIdentifier=function(){var t,e=this.codePointAt(this.index),n=r.Character.fromCodePoint(e);for(this.index+=n.length,92===e&&(117!==this.source.charCodeAt(this.index)&&this.throwUnexpectedToken(),++this.index,"{"===this.source[this.index]?(++this.index,t=this.scanUnicodeCodePointEscape()):null!==(t=this.scanHexEscape("u"))&&"\\"!==t&&r.Character.isIdentifierStart(t.charCodeAt(0))||this.throwUnexpectedToken(),n=t);!this.eof()&&(e=this.codePointAt(this.index),r.Character.isIdentifierPart(e));)n+=t=r.Character.fromCodePoint(e),this.index+=t.length,92===e&&(n=n.substr(0,n.length-1),117!==this.source.charCodeAt(this.index)&&this.throwUnexpectedToken(),++this.index,"{"===this.source[this.index]?(++this.index,t=this.scanUnicodeCodePointEscape()):null!==(t=this.scanHexEscape("u"))&&"\\"!==t&&r.Character.isIdentifierPart(t.charCodeAt(0))||this.throwUnexpectedToken(),n+=t);return n},t.prototype.octalToDecimal=function(t){var e="0"!==t,n=a(t);return!this.eof()&&r.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(e=!0,n=8*n+a(this.source[this.index++]),"0123".indexOf(t)>=0&&!this.eof()&&r.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(n=8*n+a(this.source[this.index++]))),{code:n,octal:e}},t.prototype.scanIdentifier=function(){var t,e=this.index,n=92===this.source.charCodeAt(e)?this.getComplexIdentifier():this.getIdentifier();if(3!=(t=1===n.length?3:this.isKeyword(n)?4:"null"===n?5:"true"===n||"false"===n?1:3)&&e+n.length!==this.index){var i=this.index;this.index=e,this.tolerateUnexpectedToken(s.Messages.InvalidEscapedReservedWord),this.index=i}return{type:t,value:n,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},t.prototype.scanPunctuator=function(){var t=this.index,e=this.source[this.index];switch(e){case"(":case"{":"{"===e&&this.curlyStack.push("{"),++this.index;break;case".":++this.index,"."===this.source[this.index]&&"."===this.source[this.index+1]&&(this.index+=2,e="...");break;case"}":++this.index,this.curlyStack.pop();break;case")":case";":case",":case"[":case"]":case":":case"?":case"~":++this.index;break;default:">>>="===(e=this.source.substr(this.index,4))?this.index+=4:"==="===(e=e.substr(0,3))||"!=="===e||">>>"===e||"<<="===e||">>="===e||"**="===e?this.index+=3:"&&"===(e=e.substr(0,2))||"||"===e||"=="===e||"!="===e||"+="===e||"-="===e||"*="===e||"/="===e||"++"===e||"--"===e||"<<"===e||">>"===e||"&="===e||"|="===e||"^="===e||"%="===e||"<="===e||">="===e||"=>"===e||"**"===e?this.index+=2:"<>=!+-*%&|^/".indexOf(e=this.source[this.index])>=0&&++this.index}return this.index===t&&this.throwUnexpectedToken(),{type:7,value:e,lineNumber:this.lineNumber,lineStart:this.lineStart,start:t,end:this.index}},t.prototype.scanHexLiteral=function(t){for(var e="";!this.eof()&&r.Character.isHexDigit(this.source.charCodeAt(this.index));)e+=this.source[this.index++];return 0===e.length&&this.throwUnexpectedToken(),r.Character.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:6,value:parseInt("0x"+e,16),lineNumber:this.lineNumber,lineStart:this.lineStart,start:t,end:this.index}},t.prototype.scanBinaryLiteral=function(t){for(var e,n="";!this.eof()&&("0"===(e=this.source[this.index])||"1"===e);)n+=this.source[this.index++];return 0===n.length&&this.throwUnexpectedToken(),this.eof()||(e=this.source.charCodeAt(this.index),(r.Character.isIdentifierStart(e)||r.Character.isDecimalDigit(e))&&this.throwUnexpectedToken()),{type:6,value:parseInt(n,2),lineNumber:this.lineNumber,lineStart:this.lineStart,start:t,end:this.index}},t.prototype.scanOctalLiteral=function(t,e){var n="",i=!1;for(r.Character.isOctalDigit(t.charCodeAt(0))?(i=!0,n="0"+this.source[this.index++]):++this.index;!this.eof()&&r.Character.isOctalDigit(this.source.charCodeAt(this.index));)n+=this.source[this.index++];return i||0!==n.length||this.throwUnexpectedToken(),(r.Character.isIdentifierStart(this.source.charCodeAt(this.index))||r.Character.isDecimalDigit(this.source.charCodeAt(this.index)))&&this.throwUnexpectedToken(),{type:6,value:parseInt(n,8),octal:i,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},t.prototype.isImplicitOctalLiteral=function(){for(var t=this.index+1;t=0&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g,function(t,e,n){var r=parseInt(e||n,16);return r>1114111&&i.throwUnexpectedToken(s.Messages.InvalidRegExp),r<=65535?String.fromCharCode(r):"\uffff"}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"\uffff"));try{RegExp(n)}catch(r){this.throwUnexpectedToken(s.Messages.InvalidRegExp)}try{return new RegExp(t,e)}catch(o){return null}},t.prototype.scanRegExpBody=function(){var t=this.source[this.index];i.assert("/"===t,"Regular expression literal must start with a slash");for(var e=this.source[this.index++],n=!1,o=!1;!this.eof();)if(e+=t=this.source[this.index++],"\\"===t)t=this.source[this.index++],r.Character.isLineTerminator(t.charCodeAt(0))&&this.throwUnexpectedToken(s.Messages.UnterminatedRegExp),e+=t;else if(r.Character.isLineTerminator(t.charCodeAt(0)))this.throwUnexpectedToken(s.Messages.UnterminatedRegExp);else if(n)"]"===t&&(n=!1);else{if("/"===t){o=!0;break}"["===t&&(n=!0)}return o||this.throwUnexpectedToken(s.Messages.UnterminatedRegExp),e.substr(1,e.length-2)},t.prototype.scanRegExpFlags=function(){for(var t="";!this.eof();){var e=this.source[this.index];if(!r.Character.isIdentifierPart(e.charCodeAt(0)))break;if(++this.index,"\\"!==e||this.eof())t+=e;else if("u"===(e=this.source[this.index])){++this.index;var n=this.index,i=this.scanHexEscape("u");if(null!==i)for(t+=i;n=55296&&t<57343&&r.Character.isIdentifierStart(this.codePointAt(this.index))?this.scanIdentifier():this.scanPunctuator()},t}();e.Scanner=l},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TokenName={},e.TokenName[1]="Boolean",e.TokenName[2]="",e.TokenName[3]="Identifier",e.TokenName[4]="Keyword",e.TokenName[5]="Null",e.TokenName[6]="Numeric",e.TokenName[7]="Punctuator",e.TokenName[8]="String",e.TokenName[9]="RegularExpression",e.TokenName[10]="Template"},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.XHTMLEntities={quot:'"',amp:"&",apos:"'",gt:">",nbsp:"\xa0",iexcl:"\xa1",cent:"\xa2",pound:"\xa3",curren:"\xa4",yen:"\xa5",brvbar:"\xa6",sect:"\xa7",uml:"\xa8",copy:"\xa9",ordf:"\xaa",laquo:"\xab",not:"\xac",shy:"\xad",reg:"\xae",macr:"\xaf",deg:"\xb0",plusmn:"\xb1",sup2:"\xb2",sup3:"\xb3",acute:"\xb4",micro:"\xb5",para:"\xb6",middot:"\xb7",cedil:"\xb8",sup1:"\xb9",ordm:"\xba",raquo:"\xbb",frac14:"\xbc",frac12:"\xbd",frac34:"\xbe",iquest:"\xbf",Agrave:"\xc0",Aacute:"\xc1",Acirc:"\xc2",Atilde:"\xc3",Auml:"\xc4",Aring:"\xc5",AElig:"\xc6",Ccedil:"\xc7",Egrave:"\xc8",Eacute:"\xc9",Ecirc:"\xca",Euml:"\xcb",Igrave:"\xcc",Iacute:"\xcd",Icirc:"\xce",Iuml:"\xcf",ETH:"\xd0",Ntilde:"\xd1",Ograve:"\xd2",Oacute:"\xd3",Ocirc:"\xd4",Otilde:"\xd5",Ouml:"\xd6",times:"\xd7",Oslash:"\xd8",Ugrave:"\xd9",Uacute:"\xda",Ucirc:"\xdb",Uuml:"\xdc",Yacute:"\xdd",THORN:"\xde",szlig:"\xdf",agrave:"\xe0",aacute:"\xe1",acirc:"\xe2",atilde:"\xe3",auml:"\xe4",aring:"\xe5",aelig:"\xe6",ccedil:"\xe7",egrave:"\xe8",eacute:"\xe9",ecirc:"\xea",euml:"\xeb",igrave:"\xec",iacute:"\xed",icirc:"\xee",iuml:"\xef",eth:"\xf0",ntilde:"\xf1",ograve:"\xf2",oacute:"\xf3",ocirc:"\xf4",otilde:"\xf5",ouml:"\xf6",divide:"\xf7",oslash:"\xf8",ugrave:"\xf9",uacute:"\xfa",ucirc:"\xfb",uuml:"\xfc",yacute:"\xfd",thorn:"\xfe",yuml:"\xff",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02c6",tilde:"\u02dc",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039a",Lambda:"\u039b",Mu:"\u039c",Nu:"\u039d",Xi:"\u039e",Omicron:"\u039f",Pi:"\u03a0",Rho:"\u03a1",Sigma:"\u03a3",Tau:"\u03a4",Upsilon:"\u03a5",Phi:"\u03a6",Chi:"\u03a7",Psi:"\u03a8",Omega:"\u03a9",alpha:"\u03b1",beta:"\u03b2",gamma:"\u03b3",delta:"\u03b4",epsilon:"\u03b5",zeta:"\u03b6",eta:"\u03b7",theta:"\u03b8",iota:"\u03b9",kappa:"\u03ba",lambda:"\u03bb",mu:"\u03bc",nu:"\u03bd",xi:"\u03be",omicron:"\u03bf",pi:"\u03c0",rho:"\u03c1",sigmaf:"\u03c2",sigma:"\u03c3",tau:"\u03c4",upsilon:"\u03c5",phi:"\u03c6",chi:"\u03c7",psi:"\u03c8",omega:"\u03c9",thetasym:"\u03d1",upsih:"\u03d2",piv:"\u03d6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200c",zwj:"\u200d",lrm:"\u200e",rlm:"\u200f",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201a",ldquo:"\u201c",rdquo:"\u201d",bdquo:"\u201e",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203a",oline:"\u203e",frasl:"\u2044",euro:"\u20ac",image:"\u2111",weierp:"\u2118",real:"\u211c",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21b5",lArr:"\u21d0",uArr:"\u21d1",rArr:"\u21d2",dArr:"\u21d3",hArr:"\u21d4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220b",prod:"\u220f",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221a",prop:"\u221d",infin:"\u221e",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222a",int:"\u222b",there4:"\u2234",sim:"\u223c",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22a5",sdot:"\u22c5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230a",rfloor:"\u230b",loz:"\u25ca",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666",lang:"\u27e8",rang:"\u27e9"}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(10),r=n(12),s=n(13),o=function(){function t(){this.values=[],this.curly=this.paren=-1}return t.prototype.beforeFunctionExpression=function(t){return["(","{","[","in","typeof","instanceof","new","return","case","delete","throw","void","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=",",","+","-","*","**","/","%","++","--","<<",">>",">>>","&","|","^","!","~","&&","||","?",":","===","==",">=","<=","<",">","!=","!=="].indexOf(t)>=0},t.prototype.isRegexStart=function(){var t=this.values[this.values.length-1],e=null!==t;switch(t){case"this":case"]":e=!1;break;case")":var n=this.values[this.paren-1];e="if"===n||"while"===n||"for"===n||"with"===n;break;case"}":if(e=!1,"function"===this.values[this.curly-3])e=!!(i=this.values[this.curly-4])&&!this.beforeFunctionExpression(i);else if("function"===this.values[this.curly-4]){var i;e=!(i=this.values[this.curly-5])||!this.beforeFunctionExpression(i)}}return e},t.prototype.push=function(t){7===t.type||4===t.type?("{"===t.value?this.curly=this.values.length:"("===t.value&&(this.paren=this.values.length),this.values.push(t.value)):this.values.push(null)},t}(),a=function(){function t(t,e){this.errorHandler=new i.ErrorHandler,this.errorHandler.tolerant=!!e&&"boolean"==typeof e.tolerant&&e.tolerant,this.scanner=new r.Scanner(t,this.errorHandler),this.scanner.trackComment=!!e&&"boolean"==typeof e.comment&&e.comment,this.trackRange=!!e&&"boolean"==typeof e.range&&e.range,this.trackLoc=!!e&&"boolean"==typeof e.loc&&e.loc,this.buffer=[],this.reader=new o}return t.prototype.errors=function(){return this.errorHandler.errors},t.prototype.getNextToken=function(){if(0===this.buffer.length){var t=this.scanner.scanComments();if(this.scanner.trackComment)for(var e=0;e>10),56320+(t-65536&1023))}for(var _=new Array(256),C=new Array(256),S=0;S<256;S++)_[S]=b(S)?1:0,C[S]=b(S);function E(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||a,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function k(t,e){return new r(e,new s(t.filename,t.input,t.position,t.line,t.position-t.lineStart))}function A(t,e){throw k(t,e)}function D(t,e){t.onWarning&&t.onWarning.call(null,k(t,e))}var T={YAML:function(t,e,n){var i,r,s;null!==t.version&&A(t,"duplication of %YAML directive"),1!==n.length&&A(t,"YAML directive accepts exactly one argument"),null===(i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]))&&A(t,"ill-formed argument of the YAML directive"),r=parseInt(i[1],10),s=parseInt(i[2],10),1!==r&&A(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=s<2,1!==s&&2!==s&&D(t,"unsupported YAML version of the document")},TAG:function(t,e,n){var i,r;2!==n.length&&A(t,"TAG directive accepts exactly two arguments"),r=n[1],d.test(i=n[0])||A(t,"ill-formed tag handle (first argument) of the TAG directive"),l.call(t.tagMap,i)&&A(t,'there is a previously declared suffix for "'+i+'" tag handle'),f.test(r)||A(t,"ill-formed tag prefix (second argument) of the TAG directive"),t.tagMap[i]=r}};function R(t,e,n,i){var r,s,o,a;if(e1&&(t.result+=i.repeat("\n",e-1))}function P(t,e){var n,i,r=t.tag,s=t.anchor,o=[],a=!1;for(null!==t.anchor&&(t.anchorMap[t.anchor]=o),i=t.input.charCodeAt(t.position);0!==i&&45===i&&v(t.input.charCodeAt(t.position+1));)if(a=!0,t.position++,$(t,!0,-1)&&t.lineIndent<=e)o.push(null),i=t.input.charCodeAt(t.position);else if(n=t.line,U(t,e,3,!1,!0),o.push(t.result),$(t,!0,-1),i=t.input.charCodeAt(t.position),(t.line===n||t.lineIndent>e)&&0!==i)A(t,"bad indentation of a sequence entry");else if(t.lineIndente?b=1:t.lineIndent===e?b=0:t.lineIndente?b=1:t.lineIndent===e?b=0:t.lineIndente)&&(U(t,e,4,!0,r)&&(g?f=t.result:p=t.result),g||(L(t,h,u,d,f,p,s,o),d=f=p=null),$(t,!0,-1),a=t.input.charCodeAt(t.position)),t.lineIndent>e&&0!==a)A(t,"bad indentation of a mapping entry");else if(t.lineIndent=0))break;0===s?A(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):h?A(t,"repeat of an indentation width identifier"):(u=e+s-1,h=!0)}if(m(o)){do{o=t.input.charCodeAt(++t.position)}while(m(o));if(35===o)do{o=t.input.charCodeAt(++t.position)}while(!g(o)&&0!==o)}for(;0!==o;){for(M(t),t.lineIndent=0,o=t.input.charCodeAt(t.position);(!h||t.lineIndentu&&(u=t.lineIndent),g(o))d++;else{if(t.lineIndent0){for(r=o,s=0;r>0;r--)(o=w(a=t.input.charCodeAt(++t.position)))>=0?s=(s<<4)+o:A(t,"expected hexadecimal character");t.result+=x(s),t.position++}else A(t,"unknown escape sequence");n=i=t.position}else g(a)?(R(t,n,i,!0),I(t,$(t,!1,e)),n=i=t.position):t.position===t.lineStart&&O(t)?A(t,"unexpected end of the document within a double quoted scalar"):(t.position++,i=t.position)}A(t,"unexpected end of the stream within a double quoted scalar")}(t,f)?E=!0:function(t){var e,n,i;if(42!==(i=t.input.charCodeAt(t.position)))return!1;for(i=t.input.charCodeAt(++t.position),e=t.position;0!==i&&!v(i)&&!y(i);)i=t.input.charCodeAt(++t.position);return t.position===e&&A(t,"name of an alias node must contain at least one character"),n=t.input.slice(e,t.position),t.anchorMap.hasOwnProperty(n)||A(t,'unidentified alias "'+n+'"'),t.result=t.anchorMap[n],$(t,!0,-1),!0}(t)?(E=!0,null===t.tag&&null===t.anchor||A(t,"alias node should not have any properties")):function(t,e,n){var i,r,s,o,a,l,c,h,u=t.kind,d=t.result;if(v(h=t.input.charCodeAt(t.position))||y(h)||35===h||38===h||42===h||33===h||124===h||62===h||39===h||34===h||37===h||64===h||96===h)return!1;if((63===h||45===h)&&(v(i=t.input.charCodeAt(t.position+1))||n&&y(i)))return!1;for(t.kind="scalar",t.result="",r=s=t.position,o=!1;0!==h;){if(58===h){if(v(i=t.input.charCodeAt(t.position+1))||n&&y(i))break}else if(35===h){if(v(t.input.charCodeAt(t.position-1)))break}else{if(t.position===t.lineStart&&O(t)||n&&y(h))break;if(g(h)){if(a=t.line,l=t.lineStart,c=t.lineIndent,$(t,!1,-1),t.lineIndent>=e){o=!0,h=t.input.charCodeAt(t.position);continue}t.position=s,t.line=a,t.lineStart=l,t.lineIndent=c;break}}o&&(R(t,r,s,!1),I(t,t.line-a),r=s=t.position,o=!1),m(h)||(s=t.position+1),h=t.input.charCodeAt(++t.position)}return R(t,r,s,!1),!!t.result||(t.kind=u,t.result=d,!1)}(t,f,1===n)&&(E=!0,null===t.tag&&(t.tag="?")),null!==t.anchor&&(t.anchorMap[t.anchor]=t.result)):0===b&&(E=c&&P(t,p))),null!==t.tag&&"!"!==t.tag)if("?"===t.tag){for(null!==t.result&&"scalar"!==t.kind&&A(t,'unacceptable node kind for ! tag; it should be "scalar", not "'+t.kind+'"'),h=0,u=t.implicitTypes.length;h tag; it should be "'+d.kind+'", not "'+t.kind+'"'),d.resolve(t.result)?(t.result=d.construct(t.result),null!==t.anchor&&(t.anchorMap[t.anchor]=t.result)):A(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")):A(t,"unknown tag !<"+t.tag+">");return null!==t.listener&&t.listener("close",t),null!==t.tag||null!==t.anchor||E}function V(t){var e,n,i,r,s=t.position,o=!1;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap={},t.anchorMap={};0!==(r=t.input.charCodeAt(t.position))&&($(t,!0,-1),r=t.input.charCodeAt(t.position),!(t.lineIndent>0||37!==r));){for(o=!0,r=t.input.charCodeAt(++t.position),e=t.position;0!==r&&!v(r);)r=t.input.charCodeAt(++t.position);for(i=[],(n=t.input.slice(e,t.position)).length<1&&A(t,"directive name must not be less than one character in length");0!==r;){for(;m(r);)r=t.input.charCodeAt(++t.position);if(35===r){do{r=t.input.charCodeAt(++t.position)}while(0!==r&&!g(r));break}if(g(r))break;for(e=t.position;0!==r&&!v(r);)r=t.input.charCodeAt(++t.position);i.push(t.input.slice(e,t.position))}0!==r&&M(t),l.call(T,n)?T[n](t,n,i):D(t,'unknown document directive "'+n+'"')}$(t,!0,-1),0===t.lineIndent&&45===t.input.charCodeAt(t.position)&&45===t.input.charCodeAt(t.position+1)&&45===t.input.charCodeAt(t.position+2)?(t.position+=3,$(t,!0,-1)):o&&A(t,"directives end mark is expected"),U(t,t.lineIndent-1,4,!1,!0),$(t,!0,-1),t.checkLineBreaks&&h.test(t.input.slice(s,t.position))&&D(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&O(t)?46===t.input.charCodeAt(t.position)&&(t.position+=3,$(t,!0,-1)):t.position0?o-4:o;for(n=0;n>16&255,l[h++]=e>>8&255,l[h++]=255&e;return 2===a&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,l[h++]=255&e),1===a&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,l[h++]=e>>8&255,l[h++]=255&e),l},e.fromByteArray=function(t){for(var e,n=t.length,r=n%3,s=[],o=16383,a=0,l=n-r;al?l:a+o));return 1===r?s.push(i[(e=t[n-1])>>2]+i[e<<4&63]+"=="):2===r&&s.push(i[(e=(t[n-2]<<8)+t[n-1])>>10]+i[e>>4&63]+i[e<<2&63]+"="),s.join("")};for(var i=[],r=[],s="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,l=o.length;a0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function h(t,e,n){for(var r,s=[],o=e;o>18&63]+i[r>>12&63]+i[r>>6&63]+i[63&r]);return s.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},HUeH:function(t,e,n){"use strict";var i=n("ClZL"),r=n("XP29");function s(t){return function(){throw new Error("Function "+t+" is deprecated and cannot be used.")}}t.exports.Type=n("hyoZ"),t.exports.Schema=n("3lC6"),t.exports.FAILSAFE_SCHEMA=n("2YgE"),t.exports.JSON_SCHEMA=n("+VNs"),t.exports.CORE_SCHEMA=n("RSjF"),t.exports.DEFAULT_SAFE_SCHEMA=n("Z3Ei"),t.exports.DEFAULT_FULL_SCHEMA=n("VtPO"),t.exports.load=i.load,t.exports.loadAll=i.loadAll,t.exports.safeLoad=i.safeLoad,t.exports.safeLoadAll=i.safeLoadAll,t.exports.dump=r.dump,t.exports.safeDump=r.safeDump,t.exports.YAMLException=n("w+qe"),t.exports.MINIMAL_SCHEMA=n("2YgE"),t.exports.SAFE_SCHEMA=n("Z3Ei"),t.exports.DEFAULT_SCHEMA=n("VtPO"),t.exports.scan=s("scan"),t.exports.parse=s("parse"),t.exports.compose=s("compose"),t.exports.addConstructor=s("addConstructor")},Iab2:function(t,e,n){var i,r;void 0===(r="function"==typeof(i=function(){"use strict";function e(t,e,n){var i=new XMLHttpRequest;i.open("GET",t),i.responseType="blob",i.onload=function(){o(i.response,e,n)},i.onerror=function(){console.error("could not download file")},i.send()}function n(t){var e=new XMLHttpRequest;e.open("HEAD",t,!1);try{e.send()}catch(t){}return 200<=e.status&&299>=e.status}function i(t){try{t.dispatchEvent(new MouseEvent("click"))}catch(e){var n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t.dispatchEvent(n)}}var r="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:void 0,s=r.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),o=r.saveAs||("object"!=typeof window||window!==r?function(){}:"download"in HTMLAnchorElement.prototype&&!s?function(t,s,o){var a=r.URL||r.webkitURL,l=document.createElement("a");l.download=s=s||t.name||"download",l.rel="noopener","string"==typeof t?(l.href=t,l.origin===location.origin?i(l):n(l.href)?e(t,s,o):i(l,l.target="_blank")):(l.href=a.createObjectURL(t),setTimeout(function(){a.revokeObjectURL(l.href)},4e4),setTimeout(function(){i(l)},0))}:"msSaveOrOpenBlob"in navigator?function(t,r,s){if(r=r||t.name||"download","string"!=typeof t)navigator.msSaveOrOpenBlob(function(t,e){return void 0===e?e={autoBom:!1}:"object"!=typeof e&&(console.warn("Deprecated: Expected third argument to be a object"),e={autoBom:!e}),e.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(t.type)?new Blob(["\ufeff",t],{type:t.type}):t}(t,s),r);else if(n(t))e(t,r,s);else{var o=document.createElement("a");o.href=t,o.target="_blank",setTimeout(function(){i(o)})}}:function(t,n,i,o){if((o=o||open("","_blank"))&&(o.document.title=o.document.body.innerText="downloading..."),"string"==typeof t)return e(t,n,i);var a="application/octet-stream"===t.type,l=/constructor/i.test(r.HTMLElement)||r.safari,c=/CriOS\/[\d]+/.test(navigator.userAgent);if((c||a&&l||s)&&"undefined"!=typeof FileReader){var h=new FileReader;h.onloadend=function(){var t=h.result;t=c?t:t.replace(/^data:[^;]*;/,"data:attachment/file;"),o?o.location.href=t:location=t,o=null},h.readAsDataURL(t)}else{var u=r.URL||r.webkitURL,d=u.createObjectURL(t);o?o.location=d:location.href=d,o=null,setTimeout(function(){u.revokeObjectURL(d)},4e4)}});r.saveAs=o.saveAs=o,t.exports=o})?i.apply(e,[]):i)||(t.exports=r)},LFvy:function(t,e,n){"use strict";var i=n("hyoZ");t.exports=new i("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return null!==t?t:""}})},Ljib:function(t,e,n){"use strict";var i=n("hyoZ");t.exports=new i("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return null!==t?t:{}}})},MERt:function(t,e,n){"use strict";var i=n("hyoZ");t.exports=new i("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:function(){return!0},construct:function(){},predicate:function(t){return void 0===t},represent:function(){return""}})},Njqi:function(t,e,n){"use strict";var i;try{i=n("+U4B")}catch(s){"undefined"!=typeof window&&(i=window.esprima)}var r=n("hyoZ");t.exports=new r("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:function(t){if(null===t)return!1;try{var e=i.parse("("+t+")",{range:!0});return"Program"===e.type&&1===e.body.length&&"ExpressionStatement"===e.body[0].type&&("ArrowFunctionExpression"===e.body[0].expression.type||"FunctionExpression"===e.body[0].expression.type)}catch(n){return!1}},construct:function(t){var e,n="("+t+")",r=i.parse(n,{range:!0}),s=[];if("Program"!==r.type||1!==r.body.length||"ExpressionStatement"!==r.body[0].type||"ArrowFunctionExpression"!==r.body[0].expression.type&&"FunctionExpression"!==r.body[0].expression.type)throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(t){s.push(t.name)}),e=r.body[0].expression.body.range,new Function(s,"BlockStatement"===r.body[0].expression.body.type?n.slice(e[0]+1,e[1]-1):"return "+n.slice(e[0],e[1]))},predicate:function(t){return"[object Function]"===Object.prototype.toString.call(t)},represent:function(t){return t.toString()}})},Pe6h:function(t,e,n){"use strict";var i=n("Y2Yi"),r=n("hyoZ"),s=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),o=/^[-+]?[0-9]+e/;t.exports=new r("tag:yaml.org,2002:float",{kind:"scalar",resolve:function(t){return null!==t&&!(!s.test(t)||"_"===t[t.length-1])},construct:function(t){var e,n,i,r;return n="-"===(e=t.replace(/_/g,"").toLowerCase())[0]?-1:1,r=[],"+-".indexOf(e[0])>=0&&(e=e.slice(1)),".inf"===e?1===n?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:".nan"===e?NaN:e.indexOf(":")>=0?(e.split(":").forEach(function(t){r.unshift(parseFloat(t,10))}),e=0,i=1,r.forEach(function(t){e+=t*i,i*=60}),n*e):n*parseFloat(e,10)},predicate:function(t){return"[object Number]"===Object.prototype.toString.call(t)&&(t%1!=0||i.isNegativeZero(t))},represent:function(t,e){var n;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(i.isNegativeZero(t))return"-0.0";return n=t.toString(10),o.test(n)?n.replace("e",".e"):n},defaultStyle:"lowercase"})},RSjF:function(t,e,n){"use strict";var i=n("3lC6");t.exports=new i({include:[n("+VNs")]})},UQ3f:function(t,e,n){"use strict";var i=n("hyoZ");t.exports=new i("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:function(t){if(null===t)return!1;if(0===t.length)return!1;var e=t,n=/\/([gim]*)$/.exec(t),i="";if("/"===e[0]){if(n&&(i=n[1]),i.length>3)return!1;if("/"!==e[e.length-i.length-1])return!1}return!0},construct:function(t){var e=t,n=/\/([gim]*)$/.exec(t),i="";return"/"===e[0]&&(n&&(i=n[1]),e=e.slice(1,e.length-i.length-1)),new RegExp(e,i)},predicate:function(t){return"[object RegExp]"===Object.prototype.toString.call(t)},represent:function(t){var e="/"+t.source+"/";return t.global&&(e+="g"),t.multiline&&(e+="m"),t.ignoreCase&&(e+="i"),e}})},VtPO:function(t,e,n){"use strict";var i=n("3lC6");t.exports=i.DEFAULT=new i({include:[n("Z3Ei")],explicit:[n("MERt"),n("UQ3f"),n("Njqi")]})},XP29:function(t,e,n){"use strict";var i=n("Y2Yi"),r=n("w+qe"),s=n("VtPO"),o=n("Z3Ei"),a=Object.prototype.toString,l=Object.prototype.hasOwnProperty,c={0:"\\0",7:"\\a",8:"\\b",9:"\\t",10:"\\n",11:"\\v",12:"\\f",13:"\\r",27:"\\e",34:'\\"',92:"\\\\",133:"\\N",160:"\\_",8232:"\\L",8233:"\\P"},h=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function u(t){var e,n,s;if(e=t.toString(16).toUpperCase(),t<=255)n="x",s=2;else if(t<=65535)n="u",s=4;else{if(!(t<=4294967295))throw new r("code point within a string may not be greater than 0xFFFFFFFF");n="U",s=8}return"\\"+n+i.repeat("0",s-e.length)+e}function d(t){this.schema=t.schema||s,this.indent=Math.max(1,t.indent||2),this.noArrayIndent=t.noArrayIndent||!1,this.skipInvalid=t.skipInvalid||!1,this.flowLevel=i.isNothing(t.flowLevel)?-1:t.flowLevel,this.styleMap=function(t,e){var n,i,r,s,o,a,c;if(null===e)return{};for(n={},r=0,s=(i=Object.keys(e)).length;r0?e.charCodeAt(o-1):null,p=p&&v(a,l)}else{for(o=0;or&&" "!==e[f+1],f=o);else if(!m(a))return 5;l=o>0?e.charCodeAt(o-1):null,p=p&&v(a,l)}u=u||d&&o-f-1>r&&" "!==e[f+1]}return h||u?i>9&&y(e)?5:u?4:3:p&&!function(e){return function(t,e){var n,i;for(n=0,i=t.implicitTypes.length;n-1&&n>=t.flowLevel,t.indent,o)){case 1:return e;case 2:return"'"+e.replace(/'/g,"''")+"'";case 3:return"|"+b(e,t.indent)+x(f(e,s));case 4:return">"+b(e,t.indent)+x(f(function(t,e){for(var n,i,r,s=/(\n+)([^\n]*)/g,o=(r=t.indexOf("\n"),s.lastIndex=r=-1!==r?r:t.length,_(t.slice(0,r),e)),a="\n"===t[0]||" "===t[0];i=s.exec(t);){var l=i[2];n=" "===l[0],o+=i[1]+(a||n||""===l?"":"\n")+_(l,e),a=n}return o}(e,o),s));case 5:return'"'+function(t){for(var e,n,i,r="",s=0;s=55296&&e<=56319&&(n=t.charCodeAt(s+1))>=56320&&n<=57343?(r+=u(1024*(e-55296)+n-56320+65536),s++):r+=!(i=c[e])&&m(e)?t[s]:i||u(e);return r}(e)+'"';default:throw new r("impossible error: invalid scalar style")}}()}function b(t,e){var n=y(t)?String(e):"",i="\n"===t[t.length-1];return n+(!i||"\n"!==t[t.length-2]&&"\n"!==t?i?"":"-":"+")+"\n"}function x(t){return"\n"===t[t.length-1]?t.slice(0,-1):t}function _(t,e){if(""===t||" "===t[0])return t;for(var n,i,r=/ [^ ]/g,s=0,o=0,a=0,l="";n=r.exec(t);)(a=n.index)-s>e&&(l+="\n"+t.slice(s,i=o>s?o:a),s=i+1),o=a;return l+="\n",(l+=t.length-s>e&&o>s?t.slice(s,o)+"\n"+t.slice(o+1):t.slice(s)).slice(1)}function C(t,e,n){var i,s,o,c,h,u;for(o=0,c=(s=n?t.explicitTypes:t.implicitTypes).length;o tag resolver accepts not "'+u+'" style');i=h.represent[u](e,u)}t.dump=i}return!0}return!1}function S(t,e,n,i,s,o){t.tag=null,t.dump=n,C(t,n,!1)||C(t,n,!0);var l=a.call(t.dump);i&&(i=t.flowLevel<0||t.flowLevel>e);var c,h,u="[object Object]"===l||"[object Array]"===l;if(u&&(h=-1!==(c=t.duplicates.indexOf(n))),(null!==t.tag&&"?"!==t.tag||h||2!==t.indent&&e>0)&&(s=!1),h&&t.usedDuplicates[c])t.dump="*ref_"+c;else{if(u&&h&&!t.usedDuplicates[c]&&(t.usedDuplicates[c]=!0),"[object Object]"===l)i&&0!==Object.keys(t.dump).length?(function(t,e,n,i){var s,o,a,l,c,h,u="",d=t.tag,f=Object.keys(n);if(!0===t.sortKeys)f.sort();else if("function"==typeof t.sortKeys)f.sort(t.sortKeys);else if(t.sortKeys)throw new r("sortKeys must be a boolean or a function");for(s=0,o=f.length;s1024)&&(t.dump&&10===t.dump.charCodeAt(0)?h+="?":h+="? "),h+=t.dump,c&&(h+=p(t,e)),S(t,e+1,l,!0,c)&&(t.dump&&10===t.dump.charCodeAt(0)?h+=":":h+=": ",u+=h+=t.dump));t.tag=d,t.dump=u||"{}"}(t,e,t.dump,s),h&&(t.dump="&ref_"+c+t.dump)):(function(t,e,n){var i,r,s,o,a,l="",c=t.tag,h=Object.keys(n);for(i=0,r=h.length;i1024&&(a+="? "),a+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),S(t,e,o,!1,!1)&&(l+=a+=t.dump));t.tag=c,t.dump="{"+l+"}"}(t,e,t.dump),h&&(t.dump="&ref_"+c+" "+t.dump));else if("[object Array]"===l){var d=t.noArrayIndent&&e>0?e-1:e;i&&0!==t.dump.length?(function(t,e,n,i){var r,s,o="",a=t.tag;for(r=0,s=n.length;r "+t.dump)}return!0}function E(t,e){var n,i,r=[],s=[];for(k(t,r,s),n=0,i=s.length;n=0?parseFloat((s.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((s.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),e.isOldIE=e.isIE&&e.isIE<9,e.isGecko=e.isMozilla=s.match(/ Gecko\/\d+/),e.isOpera="object"==typeof opera&&"[object Opera]"==Object.prototype.toString.call(window.opera),e.isWebKit=parseFloat(s.split("WebKit/")[1])||void 0,e.isChrome=parseFloat(s.split(" Chrome/")[1])||void 0,e.isEdge=parseFloat(s.split(" Edge/")[1])||void 0,e.isAIR=s.indexOf("AdobeAIR")>=0,e.isAndroid=s.indexOf("Android")>=0,e.isChromeOS=s.indexOf(" CrOS ")>=0,e.isIOS=/iPad|iPhone|iPod/.test(s)&&!window.MSStream,e.isIOS&&(e.isMac=!0),e.isMobile=e.isIOS||e.isAndroid}),ace.define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(t,e,n){"use strict";var i=t("./useragent");if(e.buildDom=function t(e,n,i){if("string"==typeof e&&e){var r=document.createTextNode(e);return n&&n.appendChild(r),r}if(!Array.isArray(e))return e&&e.appendChild&&n&&n.appendChild(e),e;if("string"!=typeof e[0]||!e[0]){for(var s=[],o=0;o=1.5,"undefined"!=typeof document){var r=document.createElement("div");e.HI_DPI&&void 0!==r.style.transform&&(e.HAS_CSS_TRANSFORMS=!0),i.isEdge||void 0===r.style.animationName||(e.HAS_CSS_ANIMATION=!0),r=null}e.translate=e.HAS_CSS_TRANSFORMS?function(t,e,n){t.style.transform="translate("+Math.round(e)+"px, "+Math.round(n)+"px)"}:function(t,e,n){t.style.top=Math.round(n)+"px",t.style.left=Math.round(e)+"px"}}),ace.define("ace/lib/oop",["require","exports","module"],function(t,e,n){"use strict";e.inherits=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})},e.mixin=function(t,e){for(var n in e)t[n]=e[n];return t},e.implement=function(t,n){e.mixin(t,n)}}),ace.define("ace/lib/keys",["require","exports","module","ace/lib/oop"],function(t,e,n){"use strict";var i=t("./oop"),r=function(){var t,e,n={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta",91:"MetaLeft",92:"MetaRight",93:"ContextMenu"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,super:8,meta:8,command:8,cmd:8,control:1},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",111:"/",106:"*"}};for(e in n.FUNCTION_KEYS)t=n.FUNCTION_KEYS[e].toLowerCase(),n[t]=parseInt(e,10);for(e in n.PRINTABLE_KEYS)t=n.PRINTABLE_KEYS[e].toLowerCase(),n[t]=parseInt(e,10);return i.mixin(n,n.MODIFIER_KEYS),i.mixin(n,n.PRINTABLE_KEYS),i.mixin(n,n.FUNCTION_KEYS),n.enter=n.return,n.escape=n.esc,n.del=n.delete,n[173]="-",function(){for(var t=["cmd","ctrl","alt","shift"],e=Math.pow(2,t.length);e--;)n.KEY_MODS[e]=t.filter(function(t){return e&n.KEY_MODS[t]}).join("-")+"-"}(),n.KEY_MODS[0]="",n.KEY_MODS[-1]="input-",n}();i.mixin(e,r),e.keyCodeToString=function(t){var e=r[t];return"string"!=typeof e&&(e=String.fromCharCode(t)),e.toLowerCase()}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(t,e,n){"use strict";var i,r=t("./keys"),s=t("./useragent"),o=null,a=0;function l(){return null==i&&function(){i=!1;try{document.createComment("").addEventListener("test",function(){},{get passive(){i={passive:!1}}})}catch(t){}}(),i}function c(t,e,n){this.elem=t,this.type=e,this.callback=n}c.prototype.destroy=function(){u(this.elem,this.type,this.callback),this.elem=this.type=this.callback=void 0};var h=e.addListener=function(t,e,n,i){t.addEventListener(e,n,l()),i&&i.$toDestroy.push(new c(t,e,n))},u=e.removeListener=function(t,e,n){t.removeEventListener(e,n,l())};e.stopEvent=function(t){return e.stopPropagation(t),e.preventDefault(t),!1},e.stopPropagation=function(t){t.stopPropagation&&t.stopPropagation()},e.preventDefault=function(t){t.preventDefault&&t.preventDefault()},e.getButton=function(t){return"dblclick"==t.type?0:"contextmenu"==t.type||s.isMac&&t.ctrlKey&&!t.altKey&&!t.shiftKey?2:t.button},e.capture=function(t,e,n){var i=t&&t.ownerDocument||document;function r(t){e&&e(t),n&&n(t),u(i,"mousemove",e),u(i,"mouseup",r),u(i,"dragstart",r)}return h(i,"mousemove",e),h(i,"mouseup",r),h(i,"dragstart",r),r},e.addMouseWheelListener=function(t,e,n){"onmousewheel"in t?h(t,"mousewheel",function(t){void 0!==t.wheelDeltaX?(t.wheelX=-t.wheelDeltaX/8,t.wheelY=-t.wheelDeltaY/8):(t.wheelX=0,t.wheelY=-t.wheelDelta/8),e(t)},n):"onwheel"in t?h(t,"wheel",function(t){switch(t.deltaMode){case t.DOM_DELTA_PIXEL:t.wheelX=.35*t.deltaX||0,t.wheelY=.35*t.deltaY||0;break;case t.DOM_DELTA_LINE:case t.DOM_DELTA_PAGE:t.wheelX=5*(t.deltaX||0),t.wheelY=5*(t.deltaY||0)}e(t)},n):h(t,"DOMMouseScroll",function(t){t.axis&&t.axis==t.HORIZONTAL_AXIS?(t.wheelX=5*(t.detail||0),t.wheelY=0):(t.wheelX=0,t.wheelY=5*(t.detail||0)),e(t)},n)},e.addMultiMouseDownListener=function(t,n,i,r,o){var a,l,c,u=0,d={2:"dblclick",3:"tripleclick",4:"quadclick"};function f(t){if(0!==e.getButton(t)?u=0:t.detail>1?++u>4&&(u=1):u=1,s.isIE){var o=Math.abs(t.clientX-a)>5||Math.abs(t.clientY-l)>5;c&&!o||(u=1),c&&clearTimeout(c),c=setTimeout(function(){c=null},n[u-1]||600),1==u&&(a=t.clientX,l=t.clientY)}if(t._clicks=u,i[r]("mousedown",t),u>4)u=0;else if(u>1)return i[r](d[u],t)}Array.isArray(t)||(t=[t]),t.forEach(function(t){h(t,"mousedown",f,o)})};var d=function(t){return 0|(t.ctrlKey?1:0)|(t.altKey?2:0)|(t.shiftKey?4:0)|(t.metaKey?8:0)};function f(t,e,n){var i=d(e);if(!s.isMac&&o){if(e.getModifierState&&(e.getModifierState("OS")||e.getModifierState("Win"))&&(i|=8),o.altGr){if(3==(3&i))return;o.altGr=0}if(18===n||17===n){var l="location"in e?e.location:e.keyLocation;17===n&&1===l?1==o[n]&&(a=e.timeStamp):18===n&&3===i&&2===l&&e.timeStamp-a<50&&(o.altGr=!0)}}if(n in r.MODIFIER_KEYS&&(n=-1),i||13!==n||3!==(l="location"in e?e.location:e.keyLocation)||(t(e,i,-n),!e.defaultPrevented)){if(s.isChromeOS&&8&i){if(t(e,i,n),e.defaultPrevented)return;i&=-9}return!!(i||n in r.FUNCTION_KEYS||n in r.PRINTABLE_KEYS)&&t(e,i,n)}}function p(){o=Object.create(null)}if(e.getModifierString=function(t){return r.KEY_MODS[d(t)]},e.addCommandKeyListener=function(t,n,i){if(s.isOldGecko||s.isOpera&&!("KeyboardEvent"in window)){var r=null;h(t,"keydown",function(t){r=t.keyCode},i),h(t,"keypress",function(t){return f(n,t,r)},i)}else{var a=null;h(t,"keydown",function(t){o[t.keyCode]=(o[t.keyCode]||0)+1;var e=f(n,t,t.keyCode);return a=t.defaultPrevented,e},i),h(t,"keypress",function(t){a&&(t.ctrlKey||t.altKey||t.shiftKey||t.metaKey)&&(e.stopEvent(t),a=null)},i),h(t,"keyup",function(t){o[t.keyCode]=null},i),o||(p(),h(window,"focus",p))}},"object"==typeof window&&window.postMessage&&!s.isOldIE){var g=1;e.nextTick=function(t,n){n=n||window;var i="zero-timeout-message-"+g++,r=function(s){s.data==i&&(e.stopPropagation(s),u(n,"message",r),t())};h(n,"message",r),n.postMessage(i,"*")}}e.$idleBlocked=!1,e.onIdle=function(t,n){return setTimeout(function n(){e.$idleBlocked?setTimeout(n,100):t()},n)},e.$idleBlockId=null,e.blockIdle=function(t){e.$idleBlockId&&clearTimeout(e.$idleBlockId),e.$idleBlocked=!0,e.$idleBlockId=setTimeout(function(){e.$idleBlocked=!1},t||100)},e.nextFrame="object"==typeof window&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),e.nextFrame=e.nextFrame?e.nextFrame.bind(window):function(t){setTimeout(t,17)}}),ace.define("ace/range",["require","exports","module"],function(t,e,n){"use strict";var i=function(t,e,n,i){this.start={row:t,column:e},this.end={row:n,column:i}};(function(){this.isEqual=function(t){return this.start.row===t.start.row&&this.end.row===t.end.row&&this.start.column===t.start.column&&this.end.column===t.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(t,e){return 0==this.compare(t,e)},this.compareRange=function(t){var e,n=t.end,i=t.start;return 1==(e=this.compare(n.row,n.column))?1==(e=this.compare(i.row,i.column))?2:0==e?1:0:-1==e?-2:-1==(e=this.compare(i.row,i.column))?-1:1==e?42:0},this.comparePoint=function(t){return this.compare(t.row,t.column)},this.containsRange=function(t){return 0==this.comparePoint(t.start)&&0==this.comparePoint(t.end)},this.intersects=function(t){var e=this.compareRange(t);return-1==e||0==e||1==e},this.isEnd=function(t,e){return this.end.row==t&&this.end.column==e},this.isStart=function(t,e){return this.start.row==t&&this.start.column==e},this.setStart=function(t,e){"object"==typeof t?(this.start.column=t.column,this.start.row=t.row):(this.start.row=t,this.start.column=e)},this.setEnd=function(t,e){"object"==typeof t?(this.end.column=t.column,this.end.row=t.row):(this.end.row=t,this.end.column=e)},this.inside=function(t,e){return 0==this.compare(t,e)&&!this.isEnd(t,e)&&!this.isStart(t,e)},this.insideStart=function(t,e){return 0==this.compare(t,e)&&!this.isEnd(t,e)},this.insideEnd=function(t,e){return 0==this.compare(t,e)&&!this.isStart(t,e)},this.compare=function(t,e){return this.isMultiLine()||t!==this.start.row?tthis.end.row?1:this.start.row===t?e>=this.start.column?0:-1:this.end.row===t?e<=this.end.column?0:1:0:ethis.end.column?1:0},this.compareStart=function(t,e){return this.start.row==t&&this.start.column==e?-1:this.compare(t,e)},this.compareEnd=function(t,e){return this.end.row==t&&this.end.column==e?1:this.compare(t,e)},this.compareInside=function(t,e){return this.end.row==t&&this.end.column==e?1:this.start.row==t&&this.start.column==e?-1:this.compare(t,e)},this.clipRows=function(t,e){if(this.end.row>e)var n={row:e+1,column:0};else this.end.rowe)var r={row:e+1,column:0};else this.start.row0;)1&e&&(n+=t),(e>>=1)&&(t+=t);return n};var i=/^\s\s*/,r=/\s\s*$/;e.stringTrimLeft=function(t){return t.replace(i,"")},e.stringTrimRight=function(t){return t.replace(r,"")},e.copyObject=function(t){var e={};for(var n in t)e[n]=t[n];return e},e.copyArray=function(t){for(var e=[],n=0,i=t.length;nDate.now()-50)||(i=!1)},cancel:function(){i=Date.now()}}}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(t,e,n){"use strict";var i=t("../lib/event"),r=t("../lib/useragent"),s=t("../lib/dom"),o=t("../lib/lang"),a=t("../clipboard"),l=r.isChrome<18,c=r.isIE,h=r.isChrome>63,u=400,d=t("../lib/keys"),f=d.KEY_MODS,p=r.isIOS,g=p?/\s/:/\n/,m=r.isMobile;e.TextInput=function(t,e){var n=s.createElement("textarea");n.className="ace_text-input",n.setAttribute("wrap","off"),n.setAttribute("autocorrect","off"),n.setAttribute("autocapitalize","off"),n.setAttribute("spellcheck",!1),n.style.opacity="0",t.insertBefore(n,t.firstChild);var v=!1,y=!1,w=!1,b=!1,x="";m||(n.style.fontSize="1px");var _=!1,C=!1,S="",E=0,k=0,A=0;try{var D=document.activeElement===n}catch(G){}i.addListener(n,"blur",function(t){C||(e.onBlur(t),D=!1)},e),i.addListener(n,"focus",function(t){if(!C){if(D=!0,r.isEdge)try{if(!document.hasFocus())return}catch(t){}e.onFocus(t),r.isEdge?setTimeout(T):T()}},e),this.$focusScroll=!1,this.focus=function(){if(x||h||"browser"==this.$focusScroll)return n.focus({preventScroll:!0});var t=n.style.top;n.style.position="fixed",n.style.top="0px";try{var e=0!=n.getBoundingClientRect().top}catch(G){return}var i=[];if(e)for(var r=n.parentElement;r&&1==r.nodeType;)i.push(r),r.setAttribute("ace_nocontext",!0),r=!r.parentElement&&r.getRootNode?r.getRootNode().host:r.parentElement;n.focus({preventScroll:!0}),e&&i.forEach(function(t){t.removeAttribute("ace_nocontext")}),setTimeout(function(){n.style.position="","0px"==n.style.top&&(n.style.top=t)},0)},this.blur=function(){n.blur()},this.isFocused=function(){return D},e.on("beforeEndOperation",function(){var t=e.curOp,i=t&&t.command&&t.command.name;"insertstring"!=i&&(w&&i&&(t.docChanged||t.selectionChanged)&&(S=n.value="",U()),T())});var T=p?function(t){if(D&&(!v||t)&&!b){t||(t="");var i="\n ab"+t+"cde fg\n";i!=n.value&&(n.value=S=i);var r=4+(t.length||(e.selection.isEmpty()?0:1));4==E&&k==r||n.setSelectionRange(4,r),E=4,k=r}}:function(){if(!w&&!b&&(D||F)){w=!0;var t=0,i=0,r="";if(e.session){var s=e.selection,o=s.getRange(),a=s.cursor.row;if(t=o.start.column,i=o.end.column,r=e.session.getLine(a),o.start.row!=a){var l=e.session.getLine(a-1);t=o.start.rowa+1?c.length:i,i+=r.length+1,r=r+"\n"+c}else m&&a>0&&(r="\n"+r,i+=1,t+=1);r.length>u&&(t0&&S[d]==t[d];)d++,a--;for(c=c.slice(d),d=1;l>0&&S.length-d>E-1&&S[S.length-d]==t[t.length-d];)d++,l--;h-=d-1,u-=d-1;var f=c.length-d+1;if(f<0&&(a=-f,f=0),c=c.slice(0,f),!(i||c||h||a||l||u))return"";b=!0;var p=!1;return r.isAndroid&&". "==c&&(c=" ",p=!0),c&&!a&&!l&&!h&&!u||_?e.onTextInput(c):e.onTextInput(c,{extendLeft:a,extendRight:l,restoreStart:h,restoreEnd:u}),b=!1,S=t,E=s,k=o,A=u,p?"\n":c},M=function(t){if(w)return B();if(t&&t.inputType){if("historyUndo"==t.inputType)return e.execCommand("undo");if("historyRedo"==t.inputType)return e.execCommand("redo")}var i=n.value,r=L(i,!0);(i.length>500||g.test(r)||m&&E<1&&E==k)&&T()},$=function(t,e,n){var i=t.clipboardData||window.clipboardData;if(i&&!l){var r=c||n?"Text":"text/plain";try{return e?!1!==i.setData(r,e):i.getData(r)}catch(t){if(!n)return $(t,e,!0)}}},O=function(t,r){var s=e.getCopyText();if(!s)return i.preventDefault(t);$(t,s)?(p&&(T(s),v=s,setTimeout(function(){v=!1},10)),r?e.onCut():e.onCopy(),i.preventDefault(t)):(v=!0,n.value=s,n.select(),setTimeout(function(){v=!1,T(),r?e.onCut():e.onCopy()}))},I=function(t){O(t,!0)},P=function(t){O(t,!1)},N=function(t){var s=$(t);a.pasteCancelled()||("string"==typeof s?(s&&e.onPaste(s,t),r.isIE&&setTimeout(T),i.preventDefault(t)):(n.value="",y=!0))};i.addCommandKeyListener(n,e.onCommandKey.bind(e),e),i.addListener(n,"select",function(t){w||(v?v=!1:function(t){return 0===t.selectionStart&&t.selectionEnd>=S.length&&t.value===S&&S&&t.selectionEnd!==k}(n)?(e.selectAll(),T()):m&&n.selectionStart!=E&&T())},e),i.addListener(n,"input",M,e),i.addListener(n,"cut",I,e),i.addListener(n,"copy",P,e),i.addListener(n,"paste",N,e),"oncut"in n&&"oncopy"in n&&"onpaste"in n||i.addListener(t,"keydown",function(t){if((!r.isMac||t.metaKey)&&t.ctrlKey)switch(t.keyCode){case 67:P(t);break;case 86:N(t);break;case 88:I(t)}},e);var B=function(){if(w&&e.onCompositionUpdate&&!e.$readOnly){if(_)return V();w.useTextareaForIME?e.onCompositionUpdate(n.value):(L(n.value),w.markerRange&&(w.context&&(w.markerRange.start.column=w.selectionStart=w.context.compositionStartOffset),w.markerRange.end.column=w.markerRange.start.column+k-w.selectionStart+A))}},U=function(t){e.onCompositionEnd&&!e.$readOnly&&(w=!1,e.onCompositionEnd(),e.off("mousedown",V),t&&M())};function V(){C=!0,n.blur(),n.focus(),C=!1}var H,j=o.delayedCall(B,50).schedule.bind(null,null);function z(){clearTimeout(H),H=setTimeout(function(){x&&(n.style.cssText=x,x=""),e.renderer.$isMousePressed=!1,e.renderer.$keepTextAreaAtCursor&&e.renderer.$moveTextAreaToCursor()},0)}i.addListener(n,"compositionstart",function(t){if(!w&&e.onCompositionStart&&!e.$readOnly&&(w={},!_)){t.data&&(w.useTextareaForIME=!1),setTimeout(B,0),e._signal("compositionStart"),e.on("mousedown",V);var i=e.getSelectionRange();i.end.row=i.start.row,i.end.column=i.start.column,w.markerRange=i,w.selectionStart=E,e.onCompositionStart(w),w.useTextareaForIME?(S=n.value="",E=0,k=0):(n.msGetInputContext&&(w.context=n.msGetInputContext()),n.getInputContext&&(w.context=n.getInputContext()))}},e),i.addListener(n,"compositionupdate",B,e),i.addListener(n,"keyup",function(t){27==t.keyCode&&n.value.lengthk&&"\n"==S[s]?o=d.end:ik&&S.slice(0,s).split("\n").length>2?o=d.down:s>k&&" "==S[s-1]?(o=d.right,a=f.option):(s>k||s==k&&k!=E&&i==s)&&(o=d.right),i!==s&&(a|=f.shift),o){if(!e.onCommandKey({},a,o)&&e.commands){o=d.keyCodeToString(o);var l=e.commands.findKeyCommand(a,o);l&&e.execCommand(l)}E=i,k=s,T("")}}};document.addEventListener("selectionchange",s),e.on("destroy",function(){document.removeEventListener("selectionchange",s)})}(0,e,n)},e.$setUserAgentForTests=function(t,e){m=t,p=e}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(t,e,n){"use strict";var i=t("../lib/useragent");function r(t){t.$clickSelection=null;var e=t.editor;e.setDefaultHandler("mousedown",this.onMouseDown.bind(t)),e.setDefaultHandler("dblclick",this.onDoubleClick.bind(t)),e.setDefaultHandler("tripleclick",this.onTripleClick.bind(t)),e.setDefaultHandler("quadclick",this.onQuadClick.bind(t)),e.setDefaultHandler("mousewheel",this.onMouseWheel.bind(t)),["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"].forEach(function(e){t[e]=this[e]},this),t.selectByLines=this.extendSelectionBy.bind(t,"getLineRange"),t.selectByWords=this.extendSelectionBy.bind(t,"getWordRange")}function s(t,e){if(t.start.row==t.end.row)var n=2*e.column-t.start.column-t.end.column;else n=t.start.row!=t.end.row-1||t.start.column||t.end.column?2*e.row-t.start.row-t.end.row:e.column-4;return n<0?{cursor:t.start,anchor:t.end}:{cursor:t.end,anchor:t.start}}(function(){this.onMouseDown=function(t){var e=t.inSelection(),n=t.getDocumentPosition();this.mousedownEvent=t;var r=this.editor,s=t.getButton();return 0!==s?((r.getSelectionRange().isEmpty()||1==s)&&r.selection.moveToPosition(n),void(2==s&&(r.textInput.onContextMenu(t.domEvent),i.isMozilla||t.preventDefault()))):(this.mousedownEvent.time=Date.now(),!e||r.isFocused()||(r.focus(),!this.$focusTimeout||this.$clickSelection||r.inMultiSelectMode)?(this.captureMouse(t),this.startSelect(n,t.domEvent._clicks>1),t.preventDefault()):(this.setState("focusWait"),void this.captureMouse(t)))},this.startSelect=function(t,e){t=t||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var n=this.editor;this.mousedownEvent&&(this.mousedownEvent.getShiftKey()?n.selection.selectToPosition(t):e||n.selection.moveToPosition(t),e||this.select(),n.renderer.scroller.setCapture&&n.renderer.scroller.setCapture(),n.setStyle("ace_selecting"),this.setState("select"))},this.select=function(){var t,e=this.editor,n=e.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var i=this.$clickSelection.comparePoint(n);if(-1==i)t=this.$clickSelection.end;else if(1==i)t=this.$clickSelection.start;else{var r=s(this.$clickSelection,n);n=r.cursor,t=r.anchor}e.selection.setSelectionAnchor(t.row,t.column)}e.selection.selectToPosition(n),e.renderer.scrollCursorIntoView()},this.extendSelectionBy=function(t){var e,n=this.editor,i=n.renderer.screenToTextCoordinates(this.x,this.y),r=n.selection[t](i.row,i.column);if(this.$clickSelection){var o=this.$clickSelection.comparePoint(r.start),a=this.$clickSelection.comparePoint(r.end);if(-1==o&&a<=0)e=this.$clickSelection.end,r.end.row==i.row&&r.end.column==i.column||(i=r.start);else if(1==a&&o>=0)e=this.$clickSelection.start,r.start.row==i.row&&r.start.column==i.column||(i=r.end);else if(-1==o&&1==a)i=r.end,e=r.start;else{var l=s(this.$clickSelection,i);i=l.cursor,e=l.anchor}n.selection.setSelectionAnchor(e.row,e.column)}n.selection.selectToPosition(i),n.renderer.scrollCursorIntoView()},this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting"),this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()},this.focusWait=function(){var t,e,n=(t=this.mousedownEvent.y,e=this.y,Math.sqrt(Math.pow(this.x-this.mousedownEvent.x,2)+Math.pow(e-t,2))),i=Date.now();(n>0||i-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},this.onDoubleClick=function(t){var e=t.getDocumentPosition(),n=this.editor,i=n.session.getBracketRange(e);i?(i.isEmpty()&&(i.start.column--,i.end.column++),this.setState("select")):(i=n.selection.getWordRange(e.row,e.column),this.setState("selectByWords")),this.$clickSelection=i,this.select()},this.onTripleClick=function(t){var e=t.getDocumentPosition(),n=this.editor;this.setState("selectByLines");var i=n.getSelectionRange();i.isMultiLine()&&i.contains(e.row,e.column)?(this.$clickSelection=n.selection.getLineRange(i.start.row),this.$clickSelection.end=n.selection.getLineRange(i.end.row).end):this.$clickSelection=n.selection.getLineRange(e.row),this.select()},this.onQuadClick=function(t){var e=this.editor;e.selectAll(),this.$clickSelection=e.getSelectionRange(),this.setState("selectAll")},this.onMouseWheel=function(t){if(!t.getAccelKey()){t.getShiftKey()&&t.wheelY&&!t.wheelX&&(t.wheelX=t.wheelY,t.wheelY=0);var e=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var n=this.$lastScroll,i=t.domEvent.timeStamp,r=i-n.t,s=r?t.wheelX/r:n.vx,o=r?t.wheelY/r:n.vy;r<550&&(s=(s+n.vx)/2,o=(o+n.vy)/2);var a=Math.abs(s/o),l=!1;return a>=1&&e.renderer.isScrollableBy(t.wheelX*t.speed,0)&&(l=!0),a<=1&&e.renderer.isScrollableBy(0,t.wheelY*t.speed)&&(l=!0),l?n.allowed=i:i-n.allowed<550&&(Math.abs(s)<=1.5*Math.abs(n.vx)&&Math.abs(o)<=1.5*Math.abs(n.vy)?(l=!0,n.allowed=i):n.allowed=0),n.t=i,n.vx=s,n.vy=o,l?(e.renderer.scrollBy(t.wheelX*t.speed,t.wheelY*t.speed),t.stop()):void 0}}}).call(r.prototype),e.DefaultHandlers=r}),ace.define("ace/tooltip",["require","exports","module","ace/lib/oop","ace/lib/dom"],function(t,e,n){"use strict";t("./lib/oop");var i=t("./lib/dom");function r(t){this.isOpen=!1,this.$element=null,this.$parentNode=t}(function(){this.$init=function(){return this.$element=i.createElement("div"),this.$element.className="ace_tooltip",this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},this.getElement=function(){return this.$element||this.$init()},this.setText=function(t){this.getElement().textContent=t},this.setHtml=function(t){this.getElement().innerHTML=t},this.setPosition=function(t,e){this.getElement().style.left=t+"px",this.getElement().style.top=e+"px"},this.setClassName=function(t){i.addCssClass(this.getElement(),t)},this.show=function(t,e,n){null!=t&&this.setText(t),null!=e&&null!=n&&this.setPosition(e,n),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},this.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.isOpen=!1)},this.getHeight=function(){return this.getElement().offsetHeight},this.getWidth=function(){return this.getElement().offsetWidth},this.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)}}).call(r.prototype),e.Tooltip=r}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event","ace/tooltip"],function(t,e,n){"use strict";var i=t("../lib/dom"),r=t("../lib/oop"),s=t("../lib/event"),o=t("../tooltip").Tooltip;function a(t){o.call(this,t)}r.inherits(a,o),(function(){this.setPosition=function(t,e){var n=window.innerWidth||document.documentElement.clientWidth,i=window.innerHeight||document.documentElement.clientHeight,r=this.getWidth(),s=this.getHeight();(t+=15)+r>n&&(t-=t+r-n),(e+=15)+s>i&&(e-=20+s),o.prototype.setPosition.call(this,t,e)}}).call(a.prototype),e.GutterHandler=function(t){var e,n,r,o=t.editor,l=o.renderer.$gutterLayer,c=new a(o.container);function h(){e&&(e=clearTimeout(e)),r&&(c.hide(),r=null,o._signal("hideGutterTooltip",c),o.off("mousewheel",h))}function u(t){c.setPosition(t.x,t.y)}t.editor.setDefaultHandler("guttermousedown",function(e){if(o.isFocused()&&0==e.getButton()&&"foldWidgets"!=l.getRegion(e)){var n=e.getDocumentPosition().row,i=o.session.selection;if(e.getShiftKey())i.selectTo(n,0);else{if(2==e.domEvent.detail)return o.selectAll(),e.preventDefault();t.$clickSelection=o.selection.getLineRange(n)}return t.setState("selectByLines"),t.captureMouse(e),e.preventDefault()}}),t.editor.setDefaultHandler("guttermousemove",function(s){if(i.hasCssClass(s.domEvent.target||s.domEvent.srcElement,"ace_fold-widget"))return h();r&&t.$tooltipFollowsMouse&&u(s),n=s,e||(e=setTimeout(function(){e=null,n&&!t.isMousePressed?function(){var e=n.getDocumentPosition().row,i=l.$annotations[e];if(!i)return h();if(e==o.session.getLength()){var s=o.renderer.pixelToScreenCoordinates(0,n.y).row,a=n.$pos;if(s>o.session.documentToScreenRow(a.row,a.column))return h()}if(r!=i)if(r=i.text.join("
"),c.setHtml(r),c.show(),o._signal("showGutterTooltip",c),o.on("mousewheel",h),t.$tooltipFollowsMouse)u(n);else{var d=n.domEvent.target.getBoundingClientRect(),f=c.getElement().style;f.left=d.right+"px",f.top=d.bottom+"px"}}():h()},50))}),s.addListener(o.renderer.$gutter,"mouseout",function(t){n=null,r&&!e&&(e=setTimeout(function(){e=null,h()},50))},o),o.on("changeSession",h)}}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(t,e,n){"use strict";var i=t("../lib/event"),r=t("../lib/useragent"),s=e.MouseEvent=function(t,e){this.domEvent=t,this.editor=e,this.x=this.clientX=t.clientX,this.y=this.clientY=t.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1};(function(){this.stopPropagation=function(){i.stopPropagation(this.domEvent),this.propagationStopped=!0},this.preventDefault=function(){i.preventDefault(this.domEvent),this.defaultPrevented=!0},this.stop=function(){this.stopPropagation(),this.preventDefault()},this.getDocumentPosition=function(){return this.$pos||(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY)),this.$pos},this.inSelection=function(){if(null!==this.$inSelection)return this.$inSelection;var t=this.editor.getSelectionRange();if(t.isEmpty())this.$inSelection=!1;else{var e=this.getDocumentPosition();this.$inSelection=t.contains(e.row,e.column)}return this.$inSelection},this.getButton=function(){return i.getButton(this.domEvent)},this.getShiftKey=function(){return this.domEvent.shiftKey},this.getAccelKey=r.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(s.prototype)}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(t,e,n){"use strict";var i=t("../lib/dom"),r=t("../lib/event"),s=t("../lib/useragent");function o(t){var e=t.editor,n=i.createElement("img");n.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",s.isOpera&&(n.style.cssText="width:1px;height:1px;position:fixed;top:0;left:0;z-index:2147483647;opacity:0;"),["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"].forEach(function(e){t[e]=this[e]},this),e.on("mousedown",this.onMouseDown.bind(t));var o,l,c,h,u,d,f,p,g,m,v,y=e.container,w=0;function b(){var t=d;(function(t,n){var i=Date.now();m&&n&&t.row==n.row&&n&&t.column==n.column?a(v.x,v.y,l,c)>5?m=null:i-m>=200&&(e.renderer.scrollCursorIntoView(),m=null):(e.moveCursorToPosition(t),m=i,v={x:l,y:c})})(d=e.renderer.screenToTextCoordinates(l,c),t),function(t,n){var i=Date.now(),r=e.renderer.layerConfig.lineHeight,s=e.renderer.layerConfig.characterWidth,o=e.renderer.scroller.getBoundingClientRect(),a={x:{left:l-o.left,right:o.right-l},y:{top:c-o.top,bottom:o.bottom-c}},h=Math.min(a.x.left,a.x.right),u=Math.min(a.y.top,a.y.bottom),d={row:t.row,column:t.column};h/s<=2&&(d.column+=a.x.left=200&&e.renderer.scrollCursorIntoView(d):g=i:g=null}(d,t)}function x(){u=e.selection.toOrientedRange(),o=e.session.addMarker(u,"ace_selection",e.getSelectionStyle()),e.clearSelection(),e.isFocused()&&e.renderer.$cursorLayer.setBlinking(!1),clearInterval(h),b(),h=setInterval(b,20),w=0,r.addListener(document,"mousemove",S)}function _(){clearInterval(h),e.session.removeMarker(o),o=null,e.selection.fromOrientedRange(u),e.isFocused()&&!p&&e.$resetCursorStyle(),u=null,d=null,w=0,g=null,m=null,r.removeListener(document,"mousemove",S)}this.onDragStart=function(t){if(this.cancelDrag||!y.draggable){var i=this;return setTimeout(function(){i.startSelect(),i.captureMouse(t)},0),t.preventDefault()}u=e.getSelectionRange();var r=t.dataTransfer;r.effectAllowed=e.getReadOnly()?"copy":"copyMove",s.isOpera&&(e.container.appendChild(n),n.scrollTop=0),r.setDragImage&&r.setDragImage(n,0,0),s.isOpera&&e.container.removeChild(n),r.clearData(),r.setData("Text",e.session.getTextRange()),p=!0,this.setState("drag")},this.onDragEnd=function(t){y.draggable=!1,p=!1,this.setState(null),e.getReadOnly()||(f||"move"!=t.dataTransfer.dropEffect||e.session.remove(e.getSelectionRange()),e.$resetCursorStyle()),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(t){if(!e.getReadOnly()&&E(t.dataTransfer))return l=t.clientX,c=t.clientY,o||x(),w++,t.dataTransfer.dropEffect=f=k(t),r.preventDefault(t)},this.onDragOver=function(t){if(!e.getReadOnly()&&E(t.dataTransfer))return l=t.clientX,c=t.clientY,o||(x(),w++),null!==C&&(C=null),t.dataTransfer.dropEffect=f=k(t),r.preventDefault(t)},this.onDragLeave=function(t){if(--w<=0&&o)return _(),f=null,r.preventDefault(t)},this.onDrop=function(t){if(d){var n=t.dataTransfer;if(p)switch(f){case"move":u=u.contains(d.row,d.column)?{start:d,end:d}:e.moveText(u,d);break;case"copy":u=e.moveText(u,d,!0)}else{var i=n.getData("Text");u={start:d,end:e.session.insert(d,i)},e.focus(),f=null}return _(),r.preventDefault(t)}},r.addListener(y,"dragstart",this.onDragStart.bind(t),e),r.addListener(y,"dragend",this.onDragEnd.bind(t),e),r.addListener(y,"dragenter",this.onDragEnter.bind(t),e),r.addListener(y,"dragover",this.onDragOver.bind(t),e),r.addListener(y,"dragleave",this.onDragLeave.bind(t),e),r.addListener(y,"drop",this.onDrop.bind(t),e);var C=null;function S(){null==C&&(C=setTimeout(function(){null!=C&&o&&_()},20))}function E(t){var e=t.types;return!e||Array.prototype.some.call(e,function(t){return"text/plain"==t||"Text"==t})}function k(t){var e=["copy","copymove","all","uninitialized"],n=s.isMac?t.altKey:t.ctrlKey,i="uninitialized";try{i=t.dataTransfer.effectAllowed.toLowerCase()}catch(t){}var r="none";return n&&e.indexOf(i)>=0?r="copy":["move","copymove","linkmove","all","uninitialized"].indexOf(i)>=0?r="move":e.indexOf(i)>=0&&(r="copy"),r}}function a(t,e,n,i){return Math.sqrt(Math.pow(n-t,2)+Math.pow(i-e,2))}(function(){this.dragWait=function(){Date.now()-this.mousedownEvent.time>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){this.editor.container.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(t){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var t=this.editor;t.container.draggable=!0,t.renderer.$cursorLayer.setBlinking(!1),t.setStyle("ace_dragging"),t.renderer.setCursorStyle(s.isWin?"default":"move"),this.setState("dragReady")},this.onMouseDrag=function(t){var e=this.editor.container;s.isIE&&"dragReady"==this.state&&a(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y)>3&&e.dragDrop(),"dragWait"===this.state&&a(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y)>0&&(e.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))},this.onMouseDown=function(t){if(this.$dragEnabled){this.mousedownEvent=t;var e=this.editor,n=t.inSelection(),i=t.getButton();if(1===(t.domEvent.detail||1)&&0===i&&n){if(t.editor.inMultiSelectMode&&(t.getAccelKey()||t.getShiftKey()))return;this.mousedownEvent.time=Date.now();var r=t.domEvent.target||t.domEvent.srcElement;"unselectable"in r&&(r.unselectable="on"),e.getDragDelay()?(s.isWebKit&&(this.cancelDrag=!0,e.container.draggable=!0),this.setState("dragWait")):this.startDrag(),this.captureMouse(t,this.onMouseDrag.bind(this)),t.defaultPrevented=!0}}}}).call(o.prototype),e.DragdropHandler=o}),ace.define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(t,e,n){"use strict";var i=t("./mouse_event").MouseEvent,r=t("../lib/event"),s=t("../lib/dom");e.addTouchListeners=function(t,e){var n,o,a,l,c,h,u,d,f,p="scroll",g=0,m=0,v=0,y=0;function w(){var t,n,i;f||(t=window.navigator&&window.navigator.clipboard,n=!1,i=function(i){var r,o,a=i.target.getAttribute("action");if("more"==a||!n)return n=!n,r=e.getCopyText(),o=e.session.getUndoManager().hasUndo(),void f.replaceChild(s.buildDom(n?["span",!r&&["span",{class:"ace_mobile-button",action:"selectall"},"Select All"],r&&["span",{class:"ace_mobile-button",action:"copy"},"Copy"],r&&["span",{class:"ace_mobile-button",action:"cut"},"Cut"],t&&["span",{class:"ace_mobile-button",action:"paste"},"Paste"],o&&["span",{class:"ace_mobile-button",action:"undo"},"Undo"],["span",{class:"ace_mobile-button",action:"find"},"Find"],["span",{class:"ace_mobile-button",action:"openCommandPallete"},"Pallete"]]:["span"]),f.firstChild);"paste"==a?t.readText().then(function(t){e.execCommand(a,t)}):a&&("cut"!=a&&"copy"!=a||(t?t.writeText(e.getCopyText()):document.execCommand("copy")),e.execCommand(a)),f.firstChild.style.display="none",n=!1,"openCommandPallete"!=a&&e.focus()},f=s.buildDom(["div",{class:"ace_mobile-menu",ontouchstart:function(t){p="menu",t.stopPropagation(),t.preventDefault(),e.textInput.focus()},ontouchend:function(t){t.stopPropagation(),t.preventDefault(),i(t)},onclick:i},["span"],["span",{class:"ace_mobile-button",action:"more"},"..."]],e.container));var r=e.selection.cursor,o=e.renderer.textToScreenCoordinates(r.row,r.column),a=e.renderer.textToScreenCoordinates(0,0).pageX,l=e.renderer.scrollLeft,c=e.container.getBoundingClientRect();f.style.top=o.pageY-c.top-3+"px",o.pageX-c.left1)return clearTimeout(c),c=null,a=-1,void(p="zoom");d=e.$mouseHandler.isMousePressed=!0;var s=e.renderer.layerConfig.lineHeight,h=e.renderer.layerConfig.lineHeight,f=t.timeStamp;l=f;var w=r[0],b=w.clientX,_=w.clientY;Math.abs(n-b)+Math.abs(o-_)>s&&(a=-1),n=t.clientX=b,o=t.clientY=_,v=y=0;var C=new i(t,e);if(u=C.getDocumentPosition(),f-a<500&&1==r.length&&!g)m++,t.preventDefault(),t.button=0,function(){c=null,clearTimeout(c),e.selection.moveToPosition(u);var t=m>=2?e.selection.getLineRange(u.row):e.session.getBracketRange(u);t&&!t.isEmpty()?e.selection.setRange(t):e.selection.selectWord(),p="wait"}();else{m=0;var S=e.selection.cursor,E=e.selection.isEmpty()?S:e.selection.anchor,k=e.renderer.$cursorLayer.getPixelPosition(S,!0),A=e.renderer.$cursorLayer.getPixelPosition(E,!0),D=e.renderer.scroller.getBoundingClientRect(),T=e.renderer.layerConfig.offset,R=e.renderer.scrollLeft,F=function(t,e){return(t/=h)*t+(e=e/s-.75)*e};if(t.clientXM?"cursor":"anchor"),p=M<3.5?"anchor":L<3.5?"cursor":"scroll",c=setTimeout(x,450)}a=f},e),r.addListener(t,"touchend",function(t){d=e.$mouseHandler.isMousePressed=!1,h&&clearInterval(h),"zoom"==p?(p="",g=0):c?(e.selection.moveToPosition(u),g=0,w()):"scroll"==p?(g+=60,h=setInterval(function(){g--<=0&&(clearInterval(h),h=null),Math.abs(v)<.01&&(v=0),Math.abs(y)<.01&&(y=0),g<20&&(v*=.9),g<20&&(y*=.9);var t=e.session.getScrollTop();e.renderer.scrollBy(10*v,10*y),t==e.session.getScrollTop()&&(g=0)},10),b()):w(),clearTimeout(c),c=null},e),r.addListener(t,"touchmove",function(t){c&&(clearTimeout(c),c=null);var r=t.touches;if(!(r.length>1||"zoom"==p)){var s=r[0],a=n-s.clientX,h=o-s.clientY;if("wait"==p){if(!(a*a+h*h>4))return t.preventDefault();p="cursor"}n=s.clientX,o=s.clientY,t.clientX=s.clientX,t.clientY=s.clientY;var u=t.timeStamp,d=u-l;if(l=u,"scroll"==p){var f=new i(t,e);f.speed=1,f.wheelX=a,f.wheelY=h,10*Math.abs(a)1&&(r=n[n.length-2]);var o=l[e+"Path"];return null==o?o=l.basePath:"/"==i&&(e=i=""),o&&"/"!=o.slice(-1)&&(o+="/"),o+e+i+r+this.get("suffix")},e.setModuleUrl=function(t,e){return l.$moduleUrls[t]=e},e.$loading={},e.loadModule=function(n,i){var r,o;Array.isArray(n)&&(o=n[0],n=n[1]);try{r=t(n)}catch(l){}if(r&&!e.$loading[n])return i&&i(r);if(e.$loading[n]||(e.$loading[n]=[]),e.$loading[n].push(i),!(e.$loading[n].length>1)){var a=function(){t([n],function(t){e._emit("load.module",{name:n,module:t});var i=e.$loading[n];e.$loading[n]=null,i.forEach(function(e){e&&e(t)})})};if(!e.get("packaged"))return a();s.loadScript(e.moduleUrl(n,o),a),c()}};var c=function(){l.basePath||l.workerPath||l.modePath||l.themePath||Object.keys(l.$moduleUrls).length||(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),c=function(){})};function h(r){if(a&&a.document){l.packaged=r||t.packaged||i.packaged||a.define&&n("B9Yq").packaged;for(var s,o={},c="",h=document.currentScript||document._currentScript,u=(h&&h.ownerDocument||document).getElementsByTagName("script"),d=0;d=t){for(s=u+1;s=t;)s++;for(a=u,l=s-1;a=e.length||2!=(l=n[r-1])&&3!=l||2!=(c=e[r+1])&&3!=c?4:(s&&(c=3),c==l?c:4);case 10:return 2==(l=r>0?n[r-1]:5)&&r+10&&2==n[r-1])return 2;if(s)return 4;for(f=r+1,d=e.length;f=1425&&g<=2303||64286==g)&&(1==l||7==l))return 1}return r<1||5==(l=e[r-1])?4:n[r-1];case 5:return s=!1,o=!0,i;case 6:return a=!0,4;case 13:case 14:case 16:case 17:case 15:s=!1;case u:return 4}}function m(t){var e=t.charCodeAt(0),n=e>>8;return 0==n?e>191?0:d[e]:5==n?/[\u0591-\u05f4]/.test(t)?1:0:6==n?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(t)?12:/[\u0660-\u0669\u066b-\u066c]/.test(t)?3:1642==e?h:/[\u06f0-\u06f9]/.test(t)?2:7:32==n&&e<=8287?f[255&e]:254==n&&e>=65136?7:4}e.L=0,e.R=1,e.EN=2,e.ON_R=3,e.AN=4,e.R_H=5,e.B=6,e.RLE=7,e.DOT="\xb7",e.doBidiReorder=function(t,n,h){if(t.length<2)return{};var d=t.split(""),f=new Array(d.length),v=new Array(d.length),y=[];i=h?1:0,function(t,e,n,h){var u=i?c:l,d=null,f=null,p=null,v=0,y=null,w=-1,b=null,x=null,_=[];if(!h)for(b=0,h=[];b0)if(16==y){for(b=w;b-1){for(b=w;b=0&&8==h[C];C--)e[C]=i}}(d,y,d.length,n);for(var w=0;w7&&n[w]<13||4===n[w]||n[w]===u)?y[w]=e.ON_R:w>0&&"\u0644"===d[w-1]&&/\u0622|\u0623|\u0625|\u0627/.test(d[w])&&(y[w-1]=y[w]=e.R_H,w++);for(d[d.length-1]===e.DOT&&(y[d.length-1]=e.B),"\u202b"===d[0]&&(y[0]=e.RLE),w=0;w=0&&(t=this.session.$docRowCache[n])}return t},this.getSplitIndex=function(){var t=0,e=this.session.$screenRowCache;if(e.length)for(var n,i=this.session.$getRowCacheIndex(e,this.currentRow);this.currentRow-t>0&&(n=this.session.$getRowCacheIndex(e,this.currentRow-t-1))===i;)i=n,t++;else t=this.currentRow;return t},this.updateRowLine=function(t,e){void 0===t&&(t=this.getDocumentRow());var n=t===this.session.getLength()-1?this.EOF:this.EOL;if(this.wrapIndent=0,this.line=this.session.getLine(t),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE,this.session.$useWrapMode){var s=this.session.$wrapData[t];s&&(void 0===e&&(e=this.getSplitIndex()),e>0&&s.length?(this.wrapIndent=s.indent,this.wrapOffset=this.wrapIndent*this.charWidths[i.L],this.line=ee?this.session.getOverwrite()?t:t-1:e,r=i.getVisualFromLogicalIdx(n,this.bidiMap),s=this.bidiMap.bidiLevels,o=0;!this.session.getOverwrite()&&t<=e&&s[r]%2!=0&&r++;for(var a=0;ae&&s[r]%2==0&&(o+=this.charWidths[s[r]]),this.wrapIndent&&(o+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(o+=this.rtlLineOffset),o},this.getSelections=function(t,e){var n,i=this.bidiMap,r=i.bidiLevels,s=[],o=0,a=Math.min(t,e)-this.wrapIndent,l=Math.max(t,e)-this.wrapIndent,c=!1,h=!1,u=0;this.wrapIndent&&(o+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var d,f=0;f=a&&dn+s/2;){if(n+=s,i===r.length-1){s=0;break}s=this.charWidths[r[++i]]}return i>0&&r[i-1]%2!=0&&r[i]%2==0?(t0&&r[i-1]%2==0&&r[i]%2!=0?e=1+(t>n?this.bidiMap.logicalFromVisual[i]:this.bidiMap.logicalFromVisual[i-1]):this.isRtlDir&&i===r.length-1&&0===s&&r[i-1]%2==0||!this.isRtlDir&&0===i&&r[i]%2!=0?e=1+this.bidiMap.logicalFromVisual[i]:(i>0&&r[i-1]%2!=0&&0!==s&&i--,e=this.bidiMap.logicalFromVisual[i]),0===e&&this.isRtlDir&&e++,e+this.wrapIndent}}).call(o.prototype),e.BidiHandler=o}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(t,e,n){"use strict";var i=t("./lib/oop"),r=t("./lib/lang"),s=t("./lib/event_emitter").EventEmitter,o=t("./range").Range,a=function(t){this.session=t,this.doc=t.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var e=this;this.cursor.on("change",function(t){e.$cursorChanged=!0,e.$silent||e._emit("changeCursor"),e.$isEmpty||e.$silent||e._emit("changeSelection"),e.$keepDesiredColumnOnChange||t.old.column==t.value.column||(e.$desiredColumn=null)}),this.anchor.on("change",function(){e.$anchorChanged=!0,e.$isEmpty||e.$silent||e._emit("changeSelection")})};(function(){i.implement(this,s),this.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},this.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},this.getCursor=function(){return this.lead.getPosition()},this.setSelectionAnchor=function(t,e){this.$isEmpty=!1,this.anchor.setPosition(t,e)},this.getAnchor=this.getSelectionAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},this.getSelectionLead=function(){return this.lead.getPosition()},this.isBackwards=function(){var t=this.anchor,e=this.lead;return t.row>e.row||t.row==e.row&&t.column>e.column},this.getRange=function(){var t=this.anchor,e=this.lead;return this.$isEmpty?o.fromPoints(e,e):this.isBackwards()?o.fromPoints(e,t):o.fromPoints(t,e)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},this.setRange=this.setSelectionRange=function(t,e){var n=e?t.end:t.start,i=e?t.start:t.end;this.$setSelection(n.row,n.column,i.row,i.column)},this.$setSelection=function(t,e,n,i){if(!this.$silent){var r=this.$isEmpty,s=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(t,e),this.cursor.setPosition(n,i),this.$isEmpty=!o.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||r!=this.$isEmpty||s)&&this._emit("changeSelection")}},this.$moveSelection=function(t){var e=this.lead;this.$isEmpty&&this.setSelectionAnchor(e.row,e.column),t.call(this)},this.selectTo=function(t,e){this.$moveSelection(function(){this.moveCursorTo(t,e)})},this.selectToPosition=function(t){this.$moveSelection(function(){this.moveCursorToPosition(t)})},this.moveTo=function(t,e){this.clearSelection(),this.moveCursorTo(t,e)},this.moveToPosition=function(t){this.clearSelection(),this.moveCursorToPosition(t)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(t,e){if(void 0===e){var n=t||this.lead;t=n.row,e=n.column}return this.session.getWordRange(t,e)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var t=this.getCursor(),e=this.session.getAWordRange(t.row,t.column);this.setSelectionRange(e)},this.getLineRange=function(t,e){var n,i="number"==typeof t?t:this.lead.row,r=this.session.getFoldLine(i);return r?(i=r.start.row,n=r.end.row):n=i,!0===e?new o(i,0,n,this.session.getLine(n).length):new o(i,0,n+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.wouldMoveIntoSoftTab=function(t,e,n){var i=t.column,r=t.column+e;return n<0&&(i=t.column-e,r=t.column),this.session.isTabStop(t)&&this.doc.getLine(t.row).slice(i,r).split(" ").length-1==e},this.moveCursorLeft=function(){var t,e=this.lead.getPosition();if(t=this.session.getFoldAt(e.row,e.column,-1))this.moveCursorTo(t.start.row,t.start.column);else if(0===e.column)e.row>0&&this.moveCursorTo(e.row-1,this.doc.getLine(e.row-1).length);else{var n=this.session.getTabSize();this.wouldMoveIntoSoftTab(e,n,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-n):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var t,e=this.lead.getPosition();if(t=this.session.getFoldAt(e.row,e.column,1))this.moveCursorTo(t.end.row,t.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(e.column=i)}}this.moveCursorTo(e.row,e.column)},this.moveCursorFileEnd=function(){var t=this.doc.getLength()-1,e=this.doc.getLine(t).length;this.moveCursorTo(t,e)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var t=this.lead.row,e=this.lead.column,n=this.doc.getLine(t),i=n.substring(e);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var r=this.session.getFoldAt(t,e,1);if(r)this.moveCursorTo(r.end.row,r.end.column);else{if(this.session.nonTokenRe.exec(i)&&(e+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,i=n.substring(e)),e>=n.length)return this.moveCursorTo(t,n.length),this.moveCursorRight(),void(t0&&this.moveCursorWordLeft());this.session.tokenRe.exec(s)&&(n-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(e,n)}},this.$shortWordEndIndex=function(t){var e,n=0,i=/\s/,r=this.session.tokenRe;if(r.lastIndex=0,this.session.tokenRe.exec(t))n=this.session.tokenRe.lastIndex;else{for(;(e=t[n])&&i.test(e);)n++;if(n<1)for(r.lastIndex=0;(e=t[n])&&!r.test(e);)if(r.lastIndex=0,n++,i.test(e)){if(n>2){n--;break}for(;(e=t[n])&&i.test(e);)n++;if(n>2)break}}return r.lastIndex=0,n},this.moveCursorShortWordRight=function(){var t=this.lead.row,e=this.lead.column,n=this.doc.getLine(t),i=n.substring(e),r=this.session.getFoldAt(t,e,1);if(r)return this.moveCursorTo(r.end.row,r.end.column);if(e==n.length){var s=this.doc.getLength();do{t++,i=this.doc.getLine(t)}while(t0&&/^\s*$/.test(i));n=i.length,/\s+$/.test(i)||(i="")}var s=r.stringReverse(i),o=this.$shortWordEndIndex(s);return this.moveCursorTo(e,n-o)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(t,e){var n,i=this.session.documentToScreenPosition(this.lead.row,this.lead.column);if(0===e&&(0!==t&&(this.session.$bidiHandler.isBidiRow(i.row,this.lead.row)?(n=this.session.$bidiHandler.getPosLeft(i.column),i.column=Math.round(n/this.session.$bidiHandler.charWidths[0])):n=i.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?i.column=this.$desiredColumn:this.$desiredColumn=i.column),0!=t&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var r=this.session.lineWidgets[this.lead.row];t<0?t-=r.rowsAbove||0:t>0&&(t+=r.rowCount-(r.rowsAbove||0))}var s=this.session.screenToDocumentPosition(i.row+t,i.column,n);this.moveCursorTo(s.row,s.column+e,0===e)},this.moveCursorToPosition=function(t){this.moveCursorTo(t.row,t.column)},this.moveCursorTo=function(t,e,n){var i=this.session.getFoldAt(t,e,1);i&&(t=i.start.row,e=i.start.column),this.$keepDesiredColumnOnChange=!0;var r=this.session.getLine(t);/[\uDC00-\uDFFF]/.test(r.charAt(e))&&r.charAt(e-1)&&(this.lead.row==t&&this.lead.column==e+1?e-=1:e+=1),this.lead.setPosition(t,e),this.$keepDesiredColumnOnChange=!1,n||(this.$desiredColumn=null)},this.moveCursorToScreen=function(t,e,n){var i=this.session.screenToDocumentPosition(t,e);this.moveCursorTo(i.row,i.column,n)},this.detach=function(){this.lead.detach(),this.anchor.detach(),this.session=this.doc=null},this.fromOrientedRange=function(t){this.setSelectionRange(t,t.cursor==t.start),this.$desiredColumn=t.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(t){var e=this.getRange();return t?(t.start.column=e.start.column,t.start.row=e.start.row,t.end.column=e.end.column,t.end.row=e.end.row):t=e,t.cursor=this.isBackwards()?t.start:t.end,t.desiredColumn=this.$desiredColumn,t},this.getRangeOfMovements=function(t){var e=this.getCursor();try{t(this);var n=this.getCursor();return o.fromPoints(e,n)}catch(i){return o.fromPoints(e,e)}finally{this.moveCursorToPosition(e)}},this.toJSON=function(){if(this.rangeCount)var t=this.ranges.map(function(t){var e=t.clone();return e.isBackwards=t.cursor==t.start,e});else(t=this.getRange()).isBackwards=this.isBackwards();return t},this.fromJSON=function(t){if(null==t.start){if(this.rangeList&&t.length>1){this.toSingleRange(t[0]);for(var e=t.length;e--;){var n=o.fromPoints(t[e].start,t[e].end);t[e].isBackwards&&(n.cursor=n.start),this.addRange(n,!0)}return}t=t[0]}this.rangeList&&this.toSingleRange(t),this.setSelectionRange(t,t.isBackwards)},this.isEqual=function(t){if((t.length||this.rangeCount)&&t.length!=this.rangeCount)return!1;if(!t.length||!this.ranges)return this.getRange().isEqual(t);for(var e=this.ranges.length;e--;)if(!this.ranges[e].isEqual(t[e]))return!1;return!0}}).call(a.prototype),e.Selection=a}),ace.define("ace/tokenizer",["require","exports","module","ace/config"],function(t,e,n){"use strict";var i=t("./config"),r=2e3,s=function(t){for(var e in this.states=t,this.regExps={},this.matchMappings={},this.states){for(var n=this.states[e],i=[],r=0,s=this.matchMappings[e]={defaultToken:"text"},o="g",a=[],l=0;l1?this.$applyToken:c.token),u>1&&(/\\\d/.test(c.regex)?h=c.regex.replace(/\\([0-9]+)/g,function(t,e){return"\\"+(parseInt(e,10)+r+1)}):(u=1,h=this.removeCapturingGroups(c.regex)),c.splitRegex||"string"==typeof c.token||a.push(c)),s[r]=l,r+=u,i.push(h),c.onMatch||(c.onMatch=null)}}i.length||(s[0]=0,i.push("$")),a.forEach(function(t){t.splitRegex=this.createSplitterRegexp(t.regex,o)},this),this.regExps[e]=new RegExp("("+i.join(")|(")+")|($)",o)}};(function(){this.$setMaxTokenCount=function(t){r=0|t},this.$applyToken=function(t){var e=this.splitRegex.exec(t).slice(1),n=this.token.apply(this,e);if("string"==typeof n)return[{type:n,value:t}];for(var i=[],r=0,s=n.length;rh){var v=t.substring(h,m-g.length);d.type==f?d.value+=v:(d.type&&c.push(d),d={type:f,value:v})}for(var y=0;yr){for(u>2*t.length&&this.reportError("infinite loop with in ace tokenizer",{startState:e,line:t});h1&&n[0]!==i&&n.unshift("#tmp",i),{tokens:c,state:n.length?n:i}},this.reportError=i.reportError}).call(s.prototype),e.Tokenizer=s}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(t,e,n){"use strict";var i=t("../lib/lang"),r=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(t,e){if(e)for(var n in t){for(var i=t[n],r=0;r=this.$rowTokens.length;){if(this.$row+=1,t||(t=this.$session.getLength()),this.$row>=t)return this.$row=t-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},this.getCurrentTokenRow=function(){return this.$row},this.getCurrentTokenColumn=function(){var t=this.$rowTokens,e=this.$tokenIndex,n=t[e].start;if(void 0!==n)return n;for(n=0;e>0;)n+=t[e-=1].value.length;return n},this.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},this.getCurrentTokenRange=function(){var t=this.$rowTokens[this.$tokenIndex],e=this.getCurrentTokenColumn();return new i(this.$row,e,this.$row,e+t.value.length)}}).call(r.prototype),e.TokenIterator=r}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(t,e,n){"use strict";var i,r=t("../../lib/oop"),s=t("../behaviour").Behaviour,o=t("../../token_iterator").TokenIterator,a=t("../../lib/lang"),l=["text","paren.rparen","rparen","paren","punctuation.operator"],c=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],h={},u={'"':'"',"'":"'"},d=function(t){var e=-1;if(t.multiSelect&&(e=t.selection.index,h.rangeCount!=t.multiSelect.rangeCount&&(h={rangeCount:t.multiSelect.rangeCount})),h[e])return i=h[e];i=h[e]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},f=function(t,e,n,i){var r=t.end.row-t.start.row;return{text:n+e+i,selection:[0,t.start.column+1,r,t.end.column+(r?0:1)]}},p=function(t){this.add("braces","insertion",function(e,n,r,s,o){var l=r.getCursorPosition(),c=s.doc.getLine(l.row);if("{"==o){d(r);var h=r.getSelectionRange(),u=s.doc.getTextRange(h);if(""!==u&&"{"!==u&&r.getWrapBehavioursEnabled())return f(h,u,"{","}");if(p.isSaneInsertion(r,s))return/[\]\}\)]/.test(c[l.column])||r.inMultiSelectMode||t&&t.braces?(p.recordAutoInsert(r,s,"}"),{text:"{}",selection:[1,1]}):(p.recordMaybeInsert(r,s,"{"),{text:"{",selection:[1,1]})}else if("}"==o){if(d(r),"}"==c.substring(l.column,l.column+1)&&null!==s.$findOpeningBracket("}",{column:l.column+1,row:l.row})&&p.isAutoInsertedClosing(l,c,o))return p.popAutoInsertedClosing(),{text:"",selection:[1,1]}}else{if("\n"==o||"\r\n"==o){d(r);var g="";if(p.isMaybeInsertedClosing(l,c)&&(g=a.stringRepeat("}",i.maybeInsertedBrackets),p.clearMaybeInsertedClosing()),"}"===c.substring(l.column,l.column+1)){var m=s.findMatchingBracket({row:l.row,column:l.column+1},"}");if(!m)return null;var v=this.$getIndent(s.getLine(m.row))}else{if(!g)return void p.clearMaybeInsertedClosing();v=this.$getIndent(c)}var y=v+s.getTabString();return{text:"\n"+y+"\n"+v+g,selection:[1,y.length,1,y.length]}}p.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(t,e,n,r,s){var o=r.doc.getTextRange(s);if(!s.isMultiLine()&&"{"==o){if(d(n),"}"==r.doc.getLine(s.start.row).substring(s.end.column,s.end.column+1))return s.end.column++,s;i.maybeInsertedBrackets--}}),this.add("parens","insertion",function(t,e,n,i,r){if("("==r){d(n);var s=n.getSelectionRange(),o=i.doc.getTextRange(s);if(""!==o&&n.getWrapBehavioursEnabled())return f(s,o,"(",")");if(p.isSaneInsertion(n,i))return p.recordAutoInsert(n,i,")"),{text:"()",selection:[1,1]}}else if(")"==r){d(n);var a=n.getCursorPosition(),l=i.doc.getLine(a.row);if(")"==l.substring(a.column,a.column+1)&&null!==i.$findOpeningBracket(")",{column:a.column+1,row:a.row})&&p.isAutoInsertedClosing(a,l,r))return p.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}),this.add("parens","deletion",function(t,e,n,i,r){var s=i.doc.getTextRange(r);if(!r.isMultiLine()&&"("==s&&(d(n),")"==i.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2)))return r.end.column++,r}),this.add("brackets","insertion",function(t,e,n,i,r){if("["==r){d(n);var s=n.getSelectionRange(),o=i.doc.getTextRange(s);if(""!==o&&n.getWrapBehavioursEnabled())return f(s,o,"[","]");if(p.isSaneInsertion(n,i))return p.recordAutoInsert(n,i,"]"),{text:"[]",selection:[1,1]}}else if("]"==r){d(n);var a=n.getCursorPosition(),l=i.doc.getLine(a.row);if("]"==l.substring(a.column,a.column+1)&&null!==i.$findOpeningBracket("]",{column:a.column+1,row:a.row})&&p.isAutoInsertedClosing(a,l,r))return p.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}),this.add("brackets","deletion",function(t,e,n,i,r){var s=i.doc.getTextRange(r);if(!r.isMultiLine()&&"["==s&&(d(n),"]"==i.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2)))return r.end.column++,r}),this.add("string_dquotes","insertion",function(t,e,n,i,r){var s=i.$mode.$quotes||u;if(1==r.length&&s[r]){if(this.lineCommentStart&&-1!=this.lineCommentStart.indexOf(r))return;d(n);var o=r,a=n.getSelectionRange(),l=i.doc.getTextRange(a);if(!(""===l||1==l.length&&s[l])&&n.getWrapBehavioursEnabled())return f(a,l,o,o);if(!l){var c=n.getCursorPosition(),h=i.doc.getLine(c.row),p=h.substring(c.column-1,c.column),g=h.substring(c.column,c.column+1),m=i.getTokenAt(c.row,c.column),v=i.getTokenAt(c.row,c.column+1);if("\\"==p&&m&&/escape/.test(m.type))return null;var y,w=m&&/string|escape/.test(m.type),b=!v||/string|escape/.test(v.type);if(g==o)(y=w!==b)&&/string\.end/.test(v.type)&&(y=!1);else{if(w&&!b)return null;if(w&&b)return null;var x=i.$mode.tokenRe;x.lastIndex=0;var _=x.test(p);x.lastIndex=0;var C=x.test(p);if(_||C)return null;if(g&&!/[\s;,.})\]\\]/.test(g))return null;var S=h[c.column-2];if(p==o&&(S==o||x.test(S)))return null;y=!0}return{text:y?o+o:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(t,e,n,i,r){var s=i.$mode.$quotes||u,o=i.doc.getTextRange(r);if(!r.isMultiLine()&&s.hasOwnProperty(o)&&(d(n),i.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2)==o))return r.end.column++,r})};p.isSaneInsertion=function(t,e){var n=t.getCursorPosition(),i=new o(e,n.row,n.column);if(!this.$matchTokenType(i.getCurrentToken()||"text",l)){if(/[)}\]]/.test(t.session.getLine(n.row)[n.column]))return!0;var r=new o(e,n.row,n.column+1);if(!this.$matchTokenType(r.getCurrentToken()||"text",l))return!1}return i.stepForward(),i.getCurrentTokenRow()!==n.row||this.$matchTokenType(i.getCurrentToken()||"text",c)},p.$matchTokenType=function(t,e){return e.indexOf(t.type||t)>-1},p.recordAutoInsert=function(t,e,n){var r=t.getCursorPosition(),s=e.doc.getLine(r.row);this.isAutoInsertedClosing(r,s,i.autoInsertedLineEnd[0])||(i.autoInsertedBrackets=0),i.autoInsertedRow=r.row,i.autoInsertedLineEnd=n+s.substr(r.column),i.autoInsertedBrackets++},p.recordMaybeInsert=function(t,e,n){var r=t.getCursorPosition(),s=e.doc.getLine(r.row);this.isMaybeInsertedClosing(r,s)||(i.maybeInsertedBrackets=0),i.maybeInsertedRow=r.row,i.maybeInsertedLineStart=s.substr(0,r.column)+n,i.maybeInsertedLineEnd=s.substr(r.column),i.maybeInsertedBrackets++},p.isAutoInsertedClosing=function(t,e,n){return i.autoInsertedBrackets>0&&t.row===i.autoInsertedRow&&n===i.autoInsertedLineEnd[0]&&e.substr(t.column)===i.autoInsertedLineEnd},p.isMaybeInsertedClosing=function(t,e){return i.maybeInsertedBrackets>0&&t.row===i.maybeInsertedRow&&e.substr(t.column)===i.maybeInsertedLineEnd&&e.substr(0,t.column)==i.maybeInsertedLineStart},p.popAutoInsertedClosing=function(){i.autoInsertedLineEnd=i.autoInsertedLineEnd.substr(1),i.autoInsertedBrackets--},p.clearMaybeInsertedClosing=function(){i&&(i.maybeInsertedBrackets=0,i.maybeInsertedRow=-1)},r.inherits(p,s),e.CstyleBehaviour=p}),ace.define("ace/unicode",["require","exports","module"],function(t,e,n){"use strict";for(var i=[48,9,8,25,5,0,2,25,48,0,11,0,5,0,6,22,2,30,2,457,5,11,15,4,8,0,2,0,18,116,2,1,3,3,9,0,2,2,2,0,2,19,2,82,2,138,2,4,3,155,12,37,3,0,8,38,10,44,2,0,2,1,2,1,2,0,9,26,6,2,30,10,7,61,2,9,5,101,2,7,3,9,2,18,3,0,17,58,3,100,15,53,5,0,6,45,211,57,3,18,2,5,3,11,3,9,2,1,7,6,2,2,2,7,3,1,3,21,2,6,2,0,4,3,3,8,3,1,3,3,9,0,5,1,2,4,3,11,16,2,2,5,5,1,3,21,2,6,2,1,2,1,2,1,3,0,2,4,5,1,3,2,4,0,8,3,2,0,8,15,12,2,2,8,2,2,2,21,2,6,2,1,2,4,3,9,2,2,2,2,3,0,16,3,3,9,18,2,2,7,3,1,3,21,2,6,2,1,2,4,3,8,3,1,3,2,9,1,5,1,2,4,3,9,2,0,17,1,2,5,4,2,2,3,4,1,2,0,2,1,4,1,4,2,4,11,5,4,4,2,2,3,3,0,7,0,15,9,18,2,2,7,2,2,2,22,2,9,2,4,4,7,2,2,2,3,8,1,2,1,7,3,3,9,19,1,2,7,2,2,2,22,2,9,2,4,3,8,2,2,2,3,8,1,8,0,2,3,3,9,19,1,2,7,2,2,2,22,2,15,4,7,2,2,2,3,10,0,9,3,3,9,11,5,3,1,2,17,4,23,2,8,2,0,3,6,4,0,5,5,2,0,2,7,19,1,14,57,6,14,2,9,40,1,2,0,3,1,2,0,3,0,7,3,2,6,2,2,2,0,2,0,3,1,2,12,2,2,3,4,2,0,2,5,3,9,3,1,35,0,24,1,7,9,12,0,2,0,2,0,5,9,2,35,5,19,2,5,5,7,2,35,10,0,58,73,7,77,3,37,11,42,2,0,4,328,2,3,3,6,2,0,2,3,3,40,2,3,3,32,2,3,3,6,2,0,2,3,3,14,2,56,2,3,3,66,5,0,33,15,17,84,13,619,3,16,2,25,6,74,22,12,2,6,12,20,12,19,13,12,2,2,2,1,13,51,3,29,4,0,5,1,3,9,34,2,3,9,7,87,9,42,6,69,11,28,4,11,5,11,11,39,3,4,12,43,5,25,7,10,38,27,5,62,2,28,3,10,7,9,14,0,89,75,5,9,18,8,13,42,4,11,71,55,9,9,4,48,83,2,2,30,14,230,23,280,3,5,3,37,3,5,3,7,2,0,2,0,2,0,2,30,3,52,2,6,2,0,4,2,2,6,4,3,3,5,5,12,6,2,2,6,67,1,20,0,29,0,14,0,17,4,60,12,5,0,4,11,18,0,5,0,3,9,2,0,4,4,7,0,2,0,2,0,2,3,2,10,3,3,6,4,5,0,53,1,2684,46,2,46,2,132,7,6,15,37,11,53,10,0,17,22,10,6,2,6,2,6,2,6,2,6,2,6,2,6,2,6,2,31,48,0,470,1,36,5,2,4,6,1,5,85,3,1,3,2,2,89,2,3,6,40,4,93,18,23,57,15,513,6581,75,20939,53,1164,68,45,3,268,4,27,21,31,3,13,13,1,2,24,9,69,11,1,38,8,3,102,3,1,111,44,25,51,13,68,12,9,7,23,4,0,5,45,3,35,13,28,4,64,15,10,39,54,10,13,3,9,7,22,4,1,5,66,25,2,227,42,2,1,3,9,7,11171,13,22,5,48,8453,301,3,61,3,105,39,6,13,4,6,11,2,12,2,4,2,0,2,1,2,1,2,107,34,362,19,63,3,53,41,11,5,15,17,6,13,1,25,2,33,4,2,134,20,9,8,25,5,0,2,25,12,88,4,5,3,5,3,5,3,2],r=0,s=[],o=0;o2?i%c!=c-1:i%c==0})}else{if(!this.blockComment)return!1;var f=this.blockComment.start,p=this.blockComment.end,g=new RegExp("^(\\s*)(?:"+l.escapeRegExp(f)+")"),m=new RegExp("(?:"+l.escapeRegExp(p)+")\\s*$"),v=function(t,e){w(t,e)||s&&!/\S/.test(t)||(r.insertInLine({row:e,column:t.length},p),r.insertInLine({row:e,column:a},f))},y=function(t,e){var n;(n=t.match(m))&&r.removeInLine(e,t.length-n[0].length,t.length),(n=t.match(g))&&r.removeInLine(e,n[1].length,n[0].length)},w=function(t,n){if(g.test(t))return!0;for(var i=e.getTokens(n),r=0;rt.length&&(x=t.length)}),a==1/0&&(a=x,s=!1,o=!1),h&&a%c!=0&&(a=Math.floor(a/c)*c),b(o?y:v)},this.toggleBlockComment=function(t,e,n,i){var r=this.blockComment;if(r){!r.start&&r[0]&&(r=r[0]);var s,o,a=(g=new c(e,i.row,i.column)).getCurrentToken(),l=e.selection.toOrientedRange();if(a&&/comment/.test(a.type)){for(var u,d;a&&/comment/.test(a.type);){if(-1!=(m=a.value.indexOf(r.start))){var f=g.getCurrentTokenRow(),p=g.getCurrentTokenColumn()+m;u=new h(f,p,f,p+r.start.length);break}a=g.stepBackward()}var g;for(a=(g=new c(e,i.row,i.column)).getCurrentToken();a&&/comment/.test(a.type);){var m;if(-1!=(m=a.value.indexOf(r.end))){f=g.getCurrentTokenRow(),p=g.getCurrentTokenColumn()+m,d=new h(f,p,f,p+r.end.length);break}a=g.stepForward()}d&&e.remove(d),u&&(e.remove(u),s=u.start.row,o=-r.start.length)}else o=r.start.length,s=n.start.row,e.insert(n.end,r.end),e.insert(n.start,r.start);l.start.row==s&&(l.start.column+=o),l.end.row==s&&(l.end.column+=o),e.selection.fromOrientedRange(l)}},this.getNextLineIndent=function(t,e,n){return this.$getIndent(e)},this.checkOutdent=function(t,e,n){return!1},this.autoOutdent=function(t,e,n){},this.$getIndent=function(t){return t.match(/^\s*/)[0]},this.createWorker=function(t){return null},this.createModeDelegates=function(t){for(var e in this.$embeds=[],this.$modes={},t)if(t[e]){var n=t[e],r=n.prototype.$id,s=i.$modes[r];s||(i.$modes[r]=s=new n),i.$modes[e]||(i.$modes[e]=s),this.$embeds.push(e),this.$modes[e]=s}var o=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"];for(e=0;ethis.row)){var n=function(e,n,i){var r="insert"==e.action,s=(r?1:-1)*(e.end.row-e.start.row),o=(r?1:-1)*(e.end.column-e.start.column),a=e.start,l=r?a:e.end;return t(n,a,i)?{row:n.row,column:n.column}:t(l,n,!i)?{row:n.row+s,column:n.column+(n.row==l.row?o:0)}:{row:a.row,column:a.column}}(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(n.row,n.column,!0)}},this.setPosition=function(t,e,n){var i;if(i=n?{row:t,column:e}:this.$clipPositionToDocument(t,e),this.row!=i.row||this.column!=i.column){var r={row:this.row,column:this.column};this.row=i.row,this.column=i.column,this._signal("change",{old:r,value:i})}},this.detach=function(){this.document.off("change",this.$onChange)},this.attach=function(t){this.document=t||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(t,e){var n={};return t>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):t<0?(n.row=0,n.column=0):(n.row=t,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,e))),e<0&&(n.column=0),n}}).call(s.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(t,e,n){"use strict";var i=t("./lib/oop"),r=t("./apply_delta").applyDelta,s=t("./lib/event_emitter").EventEmitter,o=t("./range").Range,a=t("./anchor").Anchor,l=function(t){this.$lines=[""],0===t.length?this.$lines=[""]:Array.isArray(t)?this.insertMergedLines({row:0,column:0},t):this.insert({row:0,column:0},t)};(function(){i.implement(this,s),this.setValue=function(t){var e=this.getLength()-1;this.remove(new o(0,0,e,this.getLine(e).length)),this.insert({row:0,column:0},t)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(t,e){return new a(this,t,e)},this.$split=0==="aaa".split(/a/).length?function(t){return t.replace(/\r\n|\r/g,"\n").split("\n")}:function(t){return t.split(/\r\n|\r|\n/)},this.$detectNewLine=function(t){var e=t.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=e?e[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(t){this.$newLineMode!==t&&(this.$newLineMode=t,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(t){return"\r\n"==t||"\r"==t||"\n"==t},this.getLine=function(t){return this.$lines[t]||""},this.getLines=function(t,e){return this.$lines.slice(t,e+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(t){return this.getLinesForRange(t).join(this.getNewLineCharacter())},this.getLinesForRange=function(t){var e;if(t.start.row===t.end.row)e=[this.getLine(t.start.row).substring(t.start.column,t.end.column)];else{(e=this.getLines(t.start.row,t.end.row))[0]=(e[0]||"").substring(t.start.column);var n=e.length-1;t.end.row-t.start.row==n&&(e[n]=e[n].substring(0,t.end.column))}return e},this.insertLines=function(t,e){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(t,e)},this.removeLines=function(t,e){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(t,e)},this.insertNewLine=function(t){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(t,["",""])},this.insert=function(t,e){return this.getLength()<=1&&this.$detectNewLine(e),this.insertMergedLines(t,this.$split(e))},this.insertInLine=function(t,e){var n=this.clippedPos(t.row,t.column),i=this.pos(t.row,t.column+e.length);return this.applyDelta({start:n,end:i,action:"insert",lines:[e]},!0),this.clonePos(i)},this.clippedPos=function(t,e){var n=this.getLength();void 0===t?t=n:t<0?t=0:t>=n&&(t=n-1,e=void 0);var i=this.getLine(t);return null==e&&(e=i.length),{row:t,column:e=Math.min(Math.max(e,0),i.length)}},this.clonePos=function(t){return{row:t.row,column:t.column}},this.pos=function(t,e){return{row:t,column:e}},this.$clipPosition=function(t){var e=this.getLength();return t.row>=e?(t.row=Math.max(0,e-1),t.column=this.getLine(e-1).length):(t.row=Math.max(0,t.row),t.column=Math.min(Math.max(t.column,0),this.getLine(t.row).length)),t},this.insertFullLines=function(t,e){var n=0;(t=Math.min(Math.max(t,0),this.getLength()))0,i=e=0&&this.applyDelta({start:this.pos(t,this.getLine(t).length),end:this.pos(t+1,0),action:"remove",lines:["",""]})},this.replace=function(t,e){return t instanceof o||(t=o.fromPoints(t.start,t.end)),0===e.length&&t.isEmpty()?t.start:e==this.getTextRange(t)?t.end:(this.remove(t),e?this.insert(t.start,e):t.start)},this.applyDeltas=function(t){for(var e=0;e=0;e--)this.revertDelta(t[e])},this.applyDelta=function(t,e){var n="insert"==t.action;(n?t.lines.length<=1&&!t.lines[0]:!o.comparePoints(t.start,t.end))||(n&&t.lines.length>2e4?this.$splitAndapplyLargeDelta(t,2e4):(r(this.$lines,t,e),this._signal("change",t)))},this.$safeApplyDelta=function(t){var e=this.$lines.length;("remove"==t.action&&t.start.row20){n.running=setTimeout(n.$worker,20);break}}n.currentLine=e,-1==i&&(i=e),s<=i&&n.fireUpdateEvent(s,i)}}};(function(){i.implement(this,r),this.setTokenizer=function(t){this.tokenizer=t,this.lines=[],this.states=[],this.start(0)},this.setDocument=function(t){this.doc=t,this.lines=[],this.states=[],this.stop()},this.fireUpdateEvent=function(t,e){this._signal("update",{data:{first:t,last:e}})},this.start=function(t){this.currentLine=Math.min(t||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},this.$updateOnChange=function(t){var e=t.start.row,n=t.end.row-e;if(0===n)this.lines[e]=null;else if("remove"==t.action)this.lines.splice(e,n+1,null),this.states.splice(e,n+1,null);else{var i=Array(n+1);i.unshift(e,1),this.lines.splice.apply(this.lines,i),this.states.splice.apply(this.states,i)}this.currentLine=Math.min(e,this.currentLine,this.doc.getLength()),this.stop()},this.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},this.getTokens=function(t){return this.lines[t]||this.$tokenizeRow(t)},this.getState=function(t){return this.currentLine==t&&this.$tokenizeRow(t),this.states[t]||"start"},this.$tokenizeRow=function(t){var e=this.doc.getLine(t),n=this.tokenizer.getLineTokens(e,this.states[t-1],t);return this.states[t]+""!=n.state+""?(this.states[t]=n.state,this.lines[t+1]=null,this.currentLine>t+1&&(this.currentLine=t+1)):this.currentLine==t&&(this.currentLine=t+1),this.lines[t]=n.tokens}}).call(s.prototype),e.BackgroundTokenizer=s}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(t,e,n){"use strict";var i=t("./lib/lang"),r=(t("./lib/oop"),t("./range").Range),s=function(t,e,n){this.setRegexp(t),this.clazz=e,this.type=n||"text"};(function(){this.MAX_RANGES=500,this.setRegexp=function(t){this.regExp+""!=t+""&&(this.regExp=t,this.cache=[])},this.update=function(t,e,n,s){if(this.regExp)for(var o=s.lastRow,a=s.firstRow;a<=o;a++){var l=this.cache[a];null==l&&((l=i.getMatchOffsets(n.getLine(a),this.regExp)).length>this.MAX_RANGES&&(l=l.slice(0,this.MAX_RANGES)),l=l.map(function(t){return new r(a,t.offset,a,t.offset+t.length)}),this.cache[a]=l.length?l:"");for(var c=l.length;c--;)e.drawSingleLineMarker(t,l[c].toScreenRange(n),this.clazz,s)}}}).call(s.prototype),e.SearchHighlight=s}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(t,e,n){"use strict";var i=t("../range").Range;function r(t,e){this.foldData=t,Array.isArray(e)?this.folds=e:e=this.folds=[e];var n=e[e.length-1];this.range=new i(e[0].start.row,e[0].start.column,n.end.row,n.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(t){t.setFoldLine(this)},this)}(function(){this.shiftRow=function(t){this.start.row+=t,this.end.row+=t,this.folds.forEach(function(e){e.start.row+=t,e.end.row+=t})},this.addFold=function(t){if(t.sameRow){if(t.start.rowthis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(t),this.folds.sort(function(t,e){return-t.range.compareEnd(e.start.row,e.start.column)}),this.range.compareEnd(t.start.row,t.start.column)>0?(this.end.row=t.end.row,this.end.column=t.end.column):this.range.compareStart(t.end.row,t.end.column)<0&&(this.start.row=t.start.row,this.start.column=t.start.column)}else if(t.start.row==this.end.row)this.folds.push(t),this.end.row=t.end.row,this.end.column=t.end.column;else{if(t.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(t),this.start.row=t.start.row,this.start.column=t.start.column}t.foldLine=this},this.containsRow=function(t){return t>=this.start.row&&t<=this.end.row},this.walk=function(t,e,n){var i,r,s=0,o=this.folds,a=!0;null==e&&(e=this.end.row,n=this.end.column);for(var l=0;l0)){var l=i(t,o.start);return 0===a?e&&0!==l?-s-2:s:l>0||0===l&&!e?s:-s-1}}return-s-1},this.add=function(t){var e=!t.isEmpty(),n=this.pointIndex(t.start,e);n<0&&(n=-n-1);var i=this.pointIndex(t.end,e,n);return i<0?i=-i-1:i++,this.ranges.splice(n,i-n,t)},this.addList=function(t){for(var e=[],n=t.length;n--;)e.push.apply(e,this.add(t[n]));return e},this.substractPoint=function(t){var e=this.pointIndex(t);if(e>=0)return this.ranges.splice(e,1)},this.merge=function(){for(var t,e=[],n=this.ranges,r=(n=n.sort(function(t,e){return i(t.start,e.start)}))[0],s=1;s=0},this.containsPoint=function(t){return this.pointIndex(t)>=0},this.rangeAtPoint=function(t){var e=this.pointIndex(t);if(e>=0)return this.ranges[e]},this.clipRows=function(t,e){var n=this.ranges;if(n[0].start.row>e||n[n.length-1].start.row=i);o++);if("insert"==t.action){for(var l=r-i,c=-e.column+n.column;oi);o++)if(h.start.row==i&&h.start.column>=e.column&&(h.start.column==e.column&&this.$bias<=0||(h.start.column+=c,h.start.row+=l)),h.end.row==i&&h.end.column>=e.column){if(h.end.column==e.column&&this.$bias<0)continue;h.end.column==e.column&&c>0&&oh.start.column&&h.end.column==s[o+1].start.column&&(h.end.column-=c),h.end.column+=c,h.end.row+=l}}else for(l=i-r,c=e.column-n.column;or);o++)h.end.rowe.column)&&(h.end.column=e.column,h.end.row=e.row):(h.end.column+=c,h.end.row+=l):h.end.row>r&&(h.end.row+=l),h.start.rowe.column)&&(h.start.column=e.column,h.start.row=e.row):(h.start.column+=c,h.start.row+=l):h.start.row>r&&(h.start.row+=l);if(0!=l&&o=t)return r;if(r.end.row>t)return null}return null},this.getNextFoldLine=function(t,e){var n=this.$foldData,i=0;for(e&&(i=n.indexOf(e)),-1==i&&(i=0);i=t)return r}return null},this.getFoldedRowCount=function(t,e){for(var n=this.$foldData,i=e-t+1,r=0;r=e){a=t?i-=e-a:i=0);break}o>=t&&(i-=a>=t?o-a:o-t+1)}return i},this.$addFoldLine=function(t){return this.$foldData.push(t),this.$foldData.sort(function(t,e){return t.start.row-e.start.row}),t},this.addFold=function(t,e){var n,i=this.$foldData,o=!1;t instanceof s?n=t:(n=new s(e,t)).collapseChildren=e.collapseChildren,this.$clipRangeToDocument(n.range);var a=n.start.row,l=n.start.column,c=n.end.row,h=n.end.column,u=this.getFoldAt(a,l,1),d=this.getFoldAt(c,h,-1);if(u&&d==u)return u.addSubFold(n);u&&!u.range.isStart(a,l)&&this.removeFold(u),d&&!d.range.isEnd(c,h)&&this.removeFold(d);var f=this.getFoldsInRange(n.range);f.length>0&&(this.removeFolds(f),n.collapseChildren||f.forEach(function(t){n.addSubFold(t)}));for(var p=0;p0&&this.foldAll(t.start.row+1,t.end.row,t.collapseChildren-1),t.subFolds=[]},this.expandFolds=function(t){t.forEach(function(t){this.expandFold(t)},this)},this.unfold=function(t,e){var n,r;if(null==t?(n=new i(0,0,this.getLength(),0),null==e&&(e=!0)):n="number"==typeof t?new i(t,0,t,this.getLine(t).length):"row"in t?i.fromPoints(t,t):t,r=this.getFoldsInRangeList(n),0!=e?this.removeFolds(r):this.expandFolds(r),r.length)return r},this.isRowFolded=function(t,e){return!!this.getFoldLine(t,e)},this.getRowFoldEnd=function(t,e){var n=this.getFoldLine(t,e);return n?n.end.row:t},this.getRowFoldStart=function(t,e){var n=this.getFoldLine(t,e);return n?n.start.row:t},this.getFoldDisplayLine=function(t,e,n,i,r){null==i&&(i=t.start.row),null==r&&(r=0),null==e&&(e=t.end.row),null==n&&(n=this.getLine(e).length);var s=this.doc,o="";return t.walk(function(t,e,n,a){if(!(eh)break}while(s&&l.test(s.type));s=r.stepBackward()}else s=r.getCurrentToken();return c.end.row=r.getCurrentTokenRow(),c.end.column=r.getCurrentTokenColumn()+s.value.length-2,c}},this.foldAll=function(t,e,n,i){null==n&&(n=1e5);var r=this.foldWidgets;if(r){e=e||this.getLength();for(var s=t=t||0;s=t&&(s=o.end.row,o.collapseChildren=n,this.addFold("...",o))}}},this.foldToLevel=function(t){for(this.foldAll();t-- >0;)this.unfold(null,!1)},this.foldAllComments=function(){var t=this;this.foldAll(null,null,null,function(e){for(var n=t.getTokens(e),i=0;i=0;){var s=n[r];if(null==s&&(s=n[r]=this.getFoldWidget(r)),"start"==s){var o=this.getFoldWidgetRange(r);if(i||(i=o),o&&o.end.row>=t)break}r--}return{range:-1!==r&&o,firstRange:i}},this.onFoldWidgetClick=function(t,e){if(!this.$toggleFoldWidget(t,{children:(e=e.domEvent).shiftKey,all:e.ctrlKey||e.metaKey,siblings:e.altKey})){var n=e.target||e.srcElement;n&&/ace_fold-widget/.test(n.className)&&(n.className+=" ace_invalid")}},this.$toggleFoldWidget=function(t,e){if(this.getFoldWidget){var n=this.getFoldWidget(t),i=this.getLine(t),r="end"===n?-1:1,s=this.getFoldAt(t,-1===r?0:i.length,r);if(s)return e.children||e.all?this.removeFold(s):this.expandFold(s),s;var o=this.getFoldWidgetRange(t,!0);if(o&&!o.isMultiLine()&&(s=this.getFoldAt(o.start.row,o.start.column,1))&&o.isEqual(s.range))return this.removeFold(s),s;if(e.siblings){var a=this.getParentFoldRangeData(t);if(a.range)var l=a.range.start.row+1,c=a.range.end.row;this.foldAll(l,c,e.all?1e4:0)}else e.children?(c=o?o.end.row:this.getLength(),this.foldAll(t+1,c,e.all?1e4:0)):o&&(e.all&&(o.collapseChildren=1e4),this.addFold("...",o));return o}},this.toggleFoldWidget=function(t){var e=this.selection.getCursor().row;e=this.getRowFoldStart(e);var n=this.$toggleFoldWidget(e,{});if(!n){var i=this.getParentFoldRangeData(e,!0);if(n=i.range||i.firstRange){var r=this.getFoldAt(e=n.start.row,this.getLine(e).length,1);r?this.removeFold(r):this.addFold("...",n)}}},this.updateFoldWidgets=function(t){var e=t.start.row,n=t.end.row-e;if(0===n)this.foldWidgets[e]=null;else if("remove"==t.action)this.foldWidgets.splice(e,n+1,null);else{var i=Array(n+1);i.unshift(e,1),this.foldWidgets.splice.apply(this.foldWidgets,i)}},this.tokenizerUpdateFoldWidgets=function(t){var e=t.data;e.first!=e.last&&this.foldWidgets.length>e.first&&this.foldWidgets.splice(e.first,this.foldWidgets.length)}}}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(t,e,n){"use strict";var i=t("../token_iterator").TokenIterator,r=t("../range").Range;e.BracketMatch=function(){this.findMatchingBracket=function(t,e){if(0==t.column)return null;var n=e||this.getLine(t.row).charAt(t.column-1);if(""==n)return null;var i=n.match(/([\(\[\{])|([\)\]\}])/);return i?i[1]?this.$findClosingBracket(i[1],t):this.$findOpeningBracket(i[2],t):null},this.getBracketRange=function(t){var e,n=this.getLine(t.row),i=!0,s=n.charAt(t.column-1),o=s&&s.match(/([\(\[\{])|([\)\]\}])/);if(o||(s=n.charAt(t.column),t={row:t.row,column:t.column+1},o=s&&s.match(/([\(\[\{])|([\)\]\}])/),i=!1),!o)return null;if(o[1]){if(!(a=this.$findClosingBracket(o[1],t)))return null;e=r.fromPoints(t,a),i||(e.end.column++,e.start.column--),e.cursor=e.end}else{var a;if(!(a=this.$findOpeningBracket(o[2],t)))return null;e=r.fromPoints(a,t),i||(e.start.column++,e.end.column--),e.cursor=e.start}return e},this.getMatchingBracketRanges=function(t){var e=this.getLine(t.row),n=e.charAt(t.column-1),i=n&&n.match(/([\(\[\{])|([\)\]\}])/);if(i||(n=e.charAt(t.column),t={row:t.row,column:t.column+1},i=n&&n.match(/([\(\[\{])|([\)\]\}])/)),!i)return null;var s=new r(t.row,t.column-1,t.row,t.column),o=i[1]?this.$findClosingBracket(i[1],t):this.$findOpeningBracket(i[2],t);return o?[s,new r(o.row,o.column,o.row,o.column+1)]:[s]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(t,e,n){var r=this.$brackets[t],s=1,o=new i(this,e.row,e.column),a=o.getCurrentToken();if(a||(a=o.stepForward()),a){n||(n=new RegExp("(\\.?"+a.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)")+")+"));for(var l=e.column-o.getCurrentTokenColumn()-2,c=a.value;;){for(;l>=0;){var h=c.charAt(l);if(h==r){if(0==(s-=1))return{row:o.getCurrentTokenRow(),column:l+o.getCurrentTokenColumn()}}else h==t&&(s+=1);l-=1}do{a=o.stepBackward()}while(a&&!n.test(a.type));if(null==a)break;l=(c=a.value).length-1}return null}},this.$findClosingBracket=function(t,e,n){var r=this.$brackets[t],s=1,o=new i(this,e.row,e.column),a=o.getCurrentToken();if(a||(a=o.stepForward()),a){n||(n=new RegExp("(\\.?"+a.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)")+")+"));for(var l=e.column-o.getCurrentTokenColumn();;){for(var c=a.value,h=c.length;ln&&(this.$docRowCache.splice(n,e),this.$screenRowCache.splice(n,e))},this.$getRowCacheIndex=function(t,e){for(var n=0,i=t.length-1;n<=i;){var r=n+i>>1,s=t[r];if(e>s)n=r+1;else{if(!(e=e);s++);return(n=i[s])?(n.index=s,n.start=r-n.value.length,n):null},this.setUndoManager=function(t){if(this.$undoManager=t,this.$informUndoManager&&this.$informUndoManager.cancel(),t){var e=this;t.addSession(this),this.$syncInformUndoManager=function(){e.$informUndoManager.cancel(),e.mergeUndoDeltas=!1},this.$informUndoManager=r.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},this.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},this.getTabString=function(){return this.getUseSoftTabs()?r.stringRepeat(" ",this.getTabSize()):"\t"},this.setUseSoftTabs=function(t){this.setOption("useSoftTabs",t)},this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},this.setTabSize=function(t){this.setOption("tabSize",t)},this.getTabSize=function(){return this.$tabSize},this.isTabStop=function(t){return this.$useSoftTabs&&t.column%this.$tabSize==0},this.setNavigateWithinSoftTabs=function(t){this.setOption("navigateWithinSoftTabs",t)},this.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},this.$overwrite=!1,this.setOverwrite=function(t){this.setOption("overwrite",t)},this.getOverwrite=function(){return this.$overwrite},this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},this.addGutterDecoration=function(t,e){this.$decorations[t]||(this.$decorations[t]=""),this.$decorations[t]+=" "+e,this._signal("changeBreakpoint",{})},this.removeGutterDecoration=function(t,e){this.$decorations[t]=(this.$decorations[t]||"").replace(" "+e,""),this._signal("changeBreakpoint",{})},this.getBreakpoints=function(){return this.$breakpoints},this.setBreakpoints=function(t){this.$breakpoints=[];for(var e=0;e0&&(i=!!n.charAt(e-1).match(this.tokenRe)),i||(i=!!n.charAt(e).match(this.tokenRe)),i)var r=this.tokenRe;else r=/^\s+$/.test(n.slice(e-1,e+1))?/\s/:this.nonTokenRe;var s=e;if(s>0){do{s--}while(s>=0&&n.charAt(s).match(r));s++}for(var o=e;ot&&(t=e.screenWidth)}),this.lineWidgetWidth=t},this.$computeWidth=function(t){if(this.$modified||t){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var e=this.doc.getAllLines(),n=this.$rowLengthCache,i=0,r=0,s=this.$foldData[r],o=s?s.start.row:1/0,a=e.length,l=0;lo){if((l=s.end.row+1)>=a)break;o=(s=this.$foldData[r++])?s.start.row:1/0}null==n[l]&&(n[l]=this.$getStringScreenWidth(e[l])[0]),n[l]>i&&(i=n[l])}this.screenWidth=i}},this.getLine=function(t){return this.doc.getLine(t)},this.getLines=function(t,e){return this.doc.getLines(t,e)},this.getLength=function(){return this.doc.getLength()},this.getTextRange=function(t){return this.doc.getTextRange(t||this.selection.getRange())},this.insert=function(t,e){return this.doc.insert(t,e)},this.remove=function(t){return this.doc.remove(t)},this.removeFullLines=function(t,e){return this.doc.removeFullLines(t,e)},this.undoChanges=function(t,e){if(t.length){this.$fromUndo=!0;for(var n=t.length-1;-1!=n;n--){var i=t[n];"insert"==i.action||"remove"==i.action?this.doc.revertDelta(i):i.folds&&this.addFolds(i.folds)}!e&&this.$undoSelect&&(t.selectionBefore?this.selection.fromJSON(t.selectionBefore):this.selection.setRange(this.$getUndoSelection(t,!0))),this.$fromUndo=!1}},this.redoChanges=function(t,e){if(t.length){this.$fromUndo=!0;for(var n=0;nt.end.column&&(s.start.column+=c),s.end.row==t.end.row&&s.end.column>t.end.column&&(s.end.column+=c)),l&&s.start.row>=t.end.row&&(s.start.row+=l,s.end.row+=l)),s.end=this.insert(s.start,i),r.length){var o=t.start,a=s.start,l=a.row-o.row,c=a.column-o.column;this.addFolds(r.map(function(t){return(t=t.clone()).start.row==o.row&&(t.start.column+=c),t.end.row==o.row&&(t.end.column+=c),t.start.row+=l,t.end.row+=l,t}))}return s},this.indentRows=function(t,e,n){n=n.replace(/\t/g,this.getTabString());for(var i=t;i<=e;i++)this.doc.insertInLine({row:i,column:0},n)},this.outdentRows=function(t){for(var e=t.collapseRows(),n=new h(0,0,0,0),i=this.getTabSize(),r=e.start.row;r<=e.end.row;++r){var s=this.getLine(r);n.start.row=r,n.end.row=r;for(var o=0;o0){var r;if((r=this.getRowFoldEnd(e+n))>this.doc.getLength()-1)return 0;i=r-e}else t=this.$clipRowToDocument(t),i=(e=this.$clipRowToDocument(e))-t+1;var s=new h(t,0,e,Number.MAX_VALUE),o=this.getFoldsInRange(s).map(function(t){return(t=t.clone()).start.row+=i,t.end.row+=i,t}),a=0==n?this.doc.getLines(t,e):this.doc.removeFullLines(t,e);return this.doc.insertFullLines(t+i,a),o.length&&this.addFolds(o),i},this.moveLinesUp=function(t,e){return this.$moveLines(t,e,-1)},this.moveLinesDown=function(t,e){return this.$moveLines(t,e,1)},this.duplicateLines=function(t,e){return this.$moveLines(t,e,0)},this.$clipRowToDocument=function(t){return Math.max(0,Math.min(t,this.doc.getLength()-1))},this.$clipColumnToRow=function(t,e){return e<0?0:Math.min(this.doc.getLine(t).length,e)},this.$clipPositionToDocument=function(t,e){if(e=Math.max(0,e),t<0)t=0,e=0;else{var n=this.doc.getLength();t>=n?(t=n-1,e=this.doc.getLine(n-1).length):e=Math.min(this.doc.getLine(t).length,e)}return{row:t,column:e}},this.$clipRangeToDocument=function(t){t.start.row<0?(t.start.row=0,t.start.column=0):t.start.column=this.$clipColumnToRow(t.start.row,t.start.column);var e=this.doc.getLength()-1;return t.end.row>e?(t.end.row=e,t.end.column=this.doc.getLine(e).length):t.end.column=this.$clipColumnToRow(t.end.row,t.end.column),t},this.$wrapLimit=80,this.$useWrapMode=!1,this.$wrapLimitRange={min:null,max:null},this.setUseWrapMode=function(t){if(t!=this.$useWrapMode){if(this.$useWrapMode=t,this.$modified=!0,this.$resetRowCache(0),t){var e=this.getLength();this.$wrapData=Array(e),this.$updateWrapData(0,e-1)}this._signal("changeWrapMode")}},this.getUseWrapMode=function(){return this.$useWrapMode},this.setWrapLimitRange=function(t,e){this.$wrapLimitRange.min===t&&this.$wrapLimitRange.max===e||(this.$wrapLimitRange={min:t,max:e},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode"))},this.adjustWrapLimit=function(t,e){var n=this.$wrapLimitRange;n.max<0&&(n={min:e,max:e});var i=this.$constrainWrapLimit(t,n.min,n.max);return i!=this.$wrapLimit&&i>1&&(this.$wrapLimit=i,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0)},this.$constrainWrapLimit=function(t,e,n){return e&&(t=Math.max(e,t)),n&&(t=Math.min(n,t)),t},this.getWrapLimit=function(){return this.$wrapLimit},this.setWrapLimit=function(t){this.setWrapLimitRange(t,t)},this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},this.$updateInternalDataOnChange=function(t){var e=this.$useWrapMode,n=t.action,i=t.start,r=t.end,s=i.row,o=r.row,a=o-s,l=null;if(this.$updating=!0,0!=a)if("remove"===n){this[e?"$wrapData":"$rowLengthCache"].splice(s,a);var c=this.$foldData;l=this.getFoldsInRange(t),this.removeFolds(l);var h=0;if(g=this.getFoldLine(r.row)){g.addRemoveChars(r.row,r.column,i.column-r.column),g.shiftRow(-a);var u=this.getFoldLine(s);u&&u!==g&&(u.merge(g),g=u),h=c.indexOf(g)+1}for(;h=r.row&&g.shiftRow(-a);o=s}else{var d=Array(a);d.unshift(s,0);var f=e?this.$wrapData:this.$rowLengthCache;if(f.splice.apply(f,d),c=this.$foldData,h=0,g=this.getFoldLine(s)){var p=g.range.compareInside(i.row,i.column);0==p?(g=g.split(i.row,i.column))&&(g.shiftRow(a),g.addRemoveChars(o,0,r.column-i.column)):-1==p&&(g.addRemoveChars(s,0,r.column-i.column),g.shiftRow(a)),h=c.indexOf(g)+1}for(;h=s&&g.shiftRow(a)}}else a=Math.abs(t.start.column-t.end.column),"remove"===n&&(l=this.getFoldsInRange(t),this.removeFolds(l),a=-a),(g=this.getFoldLine(s))&&g.addRemoveChars(s,i.column,a);return e&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,e?this.$updateWrapData(s,o):this.$updateRowLengthCache(s,o),l},this.$updateRowLengthCache=function(t,e,n){this.$rowLengthCache[t]=null,this.$rowLengthCache[e]=null},this.$updateWrapData=function(n,i){var r,s,o=this.doc.getAllLines(),a=this.getTabSize(),l=this.$wrapData,c=this.$wrapLimit,h=n;for(i=Math.min(i,o.length-1);h<=i;)(s=this.getFoldLine(h,s))?(r=[],s.walk((function(n,i,s,a){var l;if(null!=n){(l=this.$getDisplayTokens(n,r.length))[0]=t;for(var c=1;c=4352&&t<=4447||t>=4515&&t<=4519||t>=4602&&t<=4607||t>=9001&&t<=9002||t>=11904&&t<=11929||t>=11931&&t<=12019||t>=12032&&t<=12245||t>=12272&&t<=12283||t>=12288&&t<=12350||t>=12353&&t<=12438||t>=12441&&t<=12543||t>=12549&&t<=12589||t>=12593&&t<=12686||t>=12688&&t<=12730||t>=12736&&t<=12771||t>=12784&&t<=12830||t>=12832&&t<=12871||t>=12880&&t<=13054||t>=13056&&t<=19903||t>=19968&&t<=42124||t>=42128&&t<=42182||t>=43360&&t<=43388||t>=44032&&t<=55203||t>=55216&&t<=55238||t>=55243&&t<=55291||t>=63744&&t<=64255||t>=65040&&t<=65049||t>=65072&&t<=65106||t>=65108&&t<=65126||t>=65128&&t<=65131||t>=65281&&t<=65376||t>=65504&&t<=65510)}this.$computeWrapSplits=function(n,i,r){if(0==n.length)return[];var s=[],o=n.length,a=0,l=0,c=this.$wrapAsCode,h=this.$indentedSoftWrap,u=i<=Math.max(2*r,8)||!1===h?0:Math.floor(i/2);function d(t){for(var e=t-a,i=a;ii-f;){var p=a+i-f;if(n[p-1]>=10&&n[p]>=10)d(p);else if(n[p]!=t&&n[p]!=e){for(var g=Math.max(p-(i-(i>>2)),a-1);p>g&&n[p]g&&n[p]g&&9==n[p];)p--}else for(;p>g&&n[p]<10;)p--;p>g?d(++p):(2==n[p=a+i]&&p--,d(p-f))}else{for(;p!=a-1&&n[p]!=t;p--);if(p>a){d(p);continue}for(p=a+i;p39&&o<48||o>57&&o<64?r.push(9):o>=4352&&n(o)?r.push(1,2):r.push(1)}return r},this.$getStringScreenWidth=function(t,e,i){if(0==e)return[0,0];var r,s;for(null==e&&(e=1/0),i=i||0,s=0;s=4352&&n(r)?i+=2:i+=1,!(i>e));s++);return[i,s]},this.lineWidgets=null,this.getRowLength=function(t){var e=1;return this.lineWidgets&&(e+=this.lineWidgets[t]&&this.lineWidgets[t].rowCount||0),this.$useWrapMode&&this.$wrapData[t]?this.$wrapData[t].length+e:e},this.getRowLineCount=function(t){return this.$useWrapMode&&this.$wrapData[t]?this.$wrapData[t].length+1:1},this.getRowWrapIndent=function(t){if(this.$useWrapMode){var e=this.screenToDocumentPosition(t,Number.MAX_VALUE),n=this.$wrapData[e.row];return n.length&&n[0]=0){a=c[h],s=this.$docRowCache[h];var d=t>c[u-1]}else d=!u;for(var f=this.getLength()-1,p=this.getNextFoldLine(s),g=p?p.start.row:1/0;a<=t&&!(a+(l=this.getRowLength(s))>t||s>=f);)a+=l,++s>g&&(g=(p=this.getNextFoldLine(s=p.end.row+1,p))?p.start.row:1/0),d&&(this.$docRowCache.push(s),this.$screenRowCache.push(a));if(p&&p.start.row<=s)i=this.getFoldDisplayLine(p),s=p.start.row;else{if(a+l<=t||s>f)return{row:f,column:this.getLine(f).length};i=this.getLine(s),p=null}var m=0,v=Math.floor(t-a);if(this.$useWrapMode){var y=this.$wrapData[s];y&&(r=y[v],v>0&&y.length&&(m=y.indent,i=i.substring(o=y[v-1]||y[y.length-1])))}return void 0!==n&&this.$bidiHandler.isBidiRow(a+v,s,v)&&(e=this.$bidiHandler.offsetToCol(n)),o+=this.$getStringScreenWidth(i,e-m)[1],this.$useWrapMode&&o>=r&&(o=r-1),p?p.idxToPosition(o):{row:s,column:o}},this.documentToScreenPosition=function(t,e){if(void 0===e)var n=this.$clipPositionToDocument(t.row,t.column);else n=this.$clipPositionToDocument(t,e);var i,r=0,s=null;(i=this.getFoldAt(t=n.row,e=n.column,1))&&(t=i.start.row,e=i.start.column);var o,a=0,l=this.$docRowCache,c=this.$getRowCacheIndex(l,t),h=l.length;if(h&&c>=0){a=l[c],r=this.$screenRowCache[c];var u=t>l[h-1]}else u=!h;for(var d=this.getNextFoldLine(a),f=d?d.start.row:1/0;a=f){if((o=d.end.row+1)>t)break;f=(d=this.getNextFoldLine(o,d))?d.start.row:1/0}else o=a+1;r+=this.getRowLength(a),a=o,u&&(this.$docRowCache.push(a),this.$screenRowCache.push(r))}var p="";d&&a>=f?(p=this.getFoldDisplayLine(d,t,e),s=d.start.row):(p=this.getLine(t).substring(0,e),s=t);var g=0;if(this.$useWrapMode){var m=this.$wrapData[s];if(m){for(var v=0;p.length>=m[v];)r++,v++;p=p.substring(m[v-1]||0,p.length),g=v>0?m.indent:0}}return this.lineWidgets&&this.lineWidgets[a]&&this.lineWidgets[a].rowsAbove&&(r+=this.lineWidgets[a].rowsAbove),{row:r,column:g+this.$getStringScreenWidth(p)[0]}},this.documentToScreenColumn=function(t,e){return this.documentToScreenPosition(t,e).column},this.documentToScreenRow=function(t,e){return this.documentToScreenPosition(t,e).row},this.getScreenLength=function(){var t=0,e=null;if(this.$useWrapMode)for(var n=this.$wrapData.length,i=0,r=(a=0,(e=this.$foldData[a++])?e.start.row:1/0);ir&&(i=e.end.row+1,r=(e=this.$foldData[a++])?e.start.row:1/0)}else{t=this.getLength();for(var o=this.$foldData,a=0;an);s++);return[i,s]})},this.destroy=function(){this.bgTokenizer&&(this.bgTokenizer.setDocument(null),this.bgTokenizer=null),this.$stopWorker(),this.removeAllListeners(),this.selection.detach()},this.isFullWidth=n}).call(p.prototype),t("./edit_session/folding").Folding.call(p.prototype),t("./edit_session/bracket_match").BracketMatch.call(p.prototype),o.defineOptions(p.prototype,"session",{wrap:{set:function(t){if(t&&"off"!=t?"free"==t?t=!0:"printMargin"==t?t=-1:"string"==typeof t&&(t=parseInt(t,10)||!1):t=!1,this.$wrap!=t)if(this.$wrap=t,t){var e="number"==typeof t?t:null;this.setWrapLimitRange(e,e),this.setUseWrapMode(!0)}else this.setUseWrapMode(!1)},get:function(){return this.getUseWrapMode()?-1==this.$wrap?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(t){(t="auto"==t?"text"!=this.$mode.type:"text"!=t)!=this.$wrapAsCode&&(this.$wrapAsCode=t,this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0)))},initialValue:"auto"},indentedSoftWrap:{set:function(){this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0))},initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(t){this.$useWorker=t,this.$stopWorker(),t&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(t){(t=parseInt(t))>0&&this.$tabSize!==t&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=t,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(t){this.setFoldStyle(t)},handlesSet:!0},overwrite:{set:function(t){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(t){this.doc.setNewLineMode(t)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(t){this.setMode(t)},get:function(){return this.$modeId},handlesSet:!0}}),e.EditSession=p}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(t,e,n){"use strict";var i=t("./lib/lang"),r=t("./lib/oop"),s=t("./range").Range,o=function(){this.$options={}};(function(){this.set=function(t){return r.mixin(this.$options,t),this},this.getOptions=function(){return i.copyObject(this.$options)},this.setOptions=function(t){this.$options=t},this.find=function(t){var e=this.$options,n=this.$matchIterator(t,e);if(!n)return!1;var i=null;return n.forEach(function(t,n,r,o){return i=new s(t,n,r,o),!(n==o&&e.start&&e.start.start&&0!=e.skipCurrent&&i.isEqual(e.start)&&(i=null,1))}),i},this.findAll=function(t){var e=this.$options;if(!e.needle)return[];this.$assembleRegExp(e);var n=e.range,r=n?t.getLines(n.start.row,n.end.row):t.doc.getAllLines(),o=[],a=e.re;if(e.$isMultiLine){var l,c=a.length,h=r.length-c;t:for(var u=a.offset||0;u<=h;u++){for(var d=0;dg||(o.push(l=new s(u,g,u+c-1,m)),c>2&&(u=u+c-2))}}else for(var v=0;vx&&o[d].end.row==n.end.row;)d--;for(o=o.slice(v,d+1),v=0,d=o.length;v=a;n--)if(u(n,Number.MAX_VALUE,t))return;if(0!=e.wrap)for(n=l,a=o.row;n>=a;n--)if(u(n,Number.MAX_VALUE,t))return}};else c=function(t){var n=o.row;if(!u(n,o.column,t)){for(n+=1;n<=l;n++)if(u(n,0,t))return;if(0!=e.wrap)for(n=a,l=o.row;n<=l;n++)if(u(n,0,t))return}};if(e.$isMultiLine)var h=n.length,u=function(e,r,s){var o=i?e-h+1:e;if(!(o<0)){var a=t.getLine(o),l=a.search(n[0]);if(!(!i&&lr))return!!s(o,l,o+h-1,u)||void 0}}};else u=i?function(e,i,r){var s,o=t.getLine(e),a=[],l=0;for(n.lastIndex=0;s=n.exec(o);){if(l=s.index,!(h=s[0].length)){if(l>=o.length)break;n.lastIndex=l+=1}if(s.index+h>i)break;a.push(s.index,h)}for(var c=a.length-1;c>=0;c-=2){var h,u=a[c-1];if(r(e,u,e,u+(h=a[c])))return!0}}:function(e,i,r){var s,o,a=t.getLine(e);for(n.lastIndex=i;o=n.exec(a);){var l=o[0].length;if(r(e,s=o.index,e,s+l))return!0;if(!l&&(n.lastIndex=s+=1,s>=a.length))return!1}};return{forEach:c}}}).call(o.prototype),e.Search=o}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(t,e,n){"use strict";var i=t("../lib/keys"),r=t("../lib/useragent"),s=i.KEY_MODS;function o(t,e){this.platform=e||(r.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(t),this.$singleCommand=!0}function a(t,e){o.call(this,t,e),this.$singleCommand=!1}a.prototype=o.prototype,(function(){function t(t){return"object"==typeof t&&t.bindKey&&t.bindKey.position||(t.isDefault?-100:0)}this.addCommand=function(t){this.commands[t.name]&&this.removeCommand(t),this.commands[t.name]=t,t.bindKey&&this._buildKeyHash(t)},this.removeCommand=function(t,e){var n=t&&("string"==typeof t?t:t.name);t=this.commands[n],e||delete this.commands[n];var i=this.commandKeyBinding;for(var r in i){var s=i[r];if(s==t)delete i[r];else if(Array.isArray(s)){var o=s.indexOf(t);-1!=o&&(s.splice(o,1),1==s.length&&(i[r]=s[0]))}}},this.bindKey=function(t,e,n){if("object"==typeof t&&t&&(null==n&&(n=t.position),t=t[this.platform]),t)return"function"==typeof e?this.addCommand({exec:e,bindKey:t,name:e.name||t}):void t.split("|").forEach(function(t){var i="";if(-1!=t.indexOf(" ")){var r=t.split(/\s+/);t=r.pop(),r.forEach(function(t){var e=this.parseKeys(t);this._addCommandToBinding(i+=(i?" ":"")+(s[e.hashId]+e.key),"chainKeys")},this),i+=" "}var o=this.parseKeys(t);this._addCommandToBinding(i+(s[o.hashId]+o.key),e,n)},this)},this._addCommandToBinding=function(e,n,i){var r,s=this.commandKeyBinding;if(n)if(!s[e]||this.$singleCommand)s[e]=n;else{Array.isArray(s[e])?-1!=(r=s[e].indexOf(n))&&s[e].splice(r,1):s[e]=[s[e]],"number"!=typeof i&&(i=t(n));var o=s[e];for(r=0;ri);r++);o.splice(r,0,n)}else delete s[e]},this.addCommands=function(t){t&&Object.keys(t).forEach(function(e){var n=t[e];if(n){if("string"==typeof n)return this.bindKey(n,e);"function"==typeof n&&(n={exec:n}),"object"==typeof n&&(n.name||(n.name=e),this.addCommand(n))}},this)},this.removeCommands=function(t){Object.keys(t).forEach(function(e){this.removeCommand(t[e])},this)},this.bindKeys=function(t){Object.keys(t).forEach(function(e){this.bindKey(e,t[e])},this)},this._buildKeyHash=function(t){this.bindKey(t.bindKey,t)},this.parseKeys=function(t){var e=t.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(t){return t}),n=e.pop(),r=i[n];if(i.FUNCTION_KEYS[r])n=i.FUNCTION_KEYS[r].toLowerCase();else{if(!e.length)return{key:n,hashId:-1};if(1==e.length&&"shift"==e[0])return{key:n.toUpperCase(),hashId:-1}}for(var s=0,o=e.length;o--;){var a=i.KEY_MODS[e[o]];if(null==a)return"undefined"!=typeof console&&console.error("invalid modifier "+e[o]+" in "+t),!1;s|=a}return{key:n,hashId:s}},this.findKeyCommand=function(t,e){return this.commandKeyBinding[s[t]+e]},this.handleKeyboard=function(t,e,n,i){if(!(i<0)){var r=s[e]+n,o=this.commandKeyBinding[r];return t.$keyChain&&(t.$keyChain+=" "+r,o=this.commandKeyBinding[t.$keyChain]||o),!o||"chainKeys"!=o&&"chainKeys"!=o[o.length-1]?(t.$keyChain&&(e&&4!=e||1!=n.length?(-1==e||i>0)&&(t.$keyChain=""):t.$keyChain=t.$keyChain.slice(0,-r.length-1)),{command:o}):(t.$keyChain=t.$keyChain||r,{command:"null"})}},this.getStatusText=function(t,e){return e.$keyChain||""}}).call(o.prototype),e.HashHandler=o,e.MultiHashHandler=a}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(t,e,n){"use strict";var i=t("../lib/oop"),r=t("../keyboard/hash_handler").MultiHashHandler,s=t("../lib/event_emitter").EventEmitter,o=function(t,e){r.call(this,e,t),this.byName=this.commands,this.setDefaultHandler("exec",function(t){return t.command.exec(t.editor,t.args||{})})};i.inherits(o,r),(function(){i.implement(this,s),this.exec=function(t,e,n){if(Array.isArray(t)){for(var i=t.length;i--;)if(this.exec(t[i],e,n))return!0;return!1}if("string"==typeof t&&(t=this.commands[t]),!t)return!1;if(e&&e.$readOnly&&!t.readOnly)return!1;if(0!=this.$checkCommandState&&t.isAvailable&&!t.isAvailable(e))return!1;var r={editor:e,command:t,args:n};return r.returnValue=this._emit("exec",r),this._signal("afterExec",r),!1!==r.returnValue},this.toggleRecording=function(t){if(!this.$inReplay)return t&&t._emit("changeStatus"),this.recording?(this.macro.pop(),this.off("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=(function(t){this.macro.push([t.command,t.args])}).bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},this.replay=function(t){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(t);try{this.$inReplay=!0,this.macro.forEach(function(e){"string"==typeof e?this.exec(e,t):this.exec(e[0],t,e[1])},this)}finally{this.$inReplay=!1}}},this.trimMacro=function(t){return t.map(function(t){return"string"!=typeof t[0]&&(t[0]=t[0].name),t[1]||(t=t[0]),t})}}).call(o.prototype),e.CommandManager=o}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(t,e,n){"use strict";var i=t("../lib/lang"),r=t("../config"),s=t("../range").Range;function o(t,e){return{win:t,mac:e}}e.commands=[{name:"showSettingsMenu",bindKey:o("Ctrl-,","Command-,"),exec:function(t){r.loadModule("ace/ext/settings_menu",function(e){e.init(t),t.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",bindKey:o("Alt-E","F4"),exec:function(t){r.loadModule("./ext/error_marker",function(e){e.showErrorMarker(t,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",bindKey:o("Alt-Shift-E","Shift-F4"),exec:function(t){r.loadModule("./ext/error_marker",function(e){e.showErrorMarker(t,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:o("Ctrl-A","Command-A"),exec:function(t){t.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:o(null,"Ctrl-L"),exec:function(t){t.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:o("Ctrl-L","Command-L"),exec:function(t,e){"number"!=typeof e||isNaN(e)||t.gotoLine(e),t.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:o("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(t){t.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:o("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(t){t.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",bindKey:o("F2","F2"),exec:function(t){t.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",bindKey:o("Alt-F2","Alt-F2"),exec:function(t){t.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:o(null,"Ctrl-Command-Option-0"),exec:function(t){t.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:o(null,"Ctrl-Command-Option-0"),exec:function(t){t.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:o("Alt-0","Command-Option-0"),exec:function(t){t.session.foldAll(),t.session.unfold(t.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:o("Alt-Shift-0","Command-Option-Shift-0"),exec:function(t){t.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:o("Ctrl-K","Command-G"),exec:function(t){t.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:o("Ctrl-Shift-K","Command-Shift-G"),exec:function(t){t.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:o("Alt-K","Ctrl-G"),exec:function(t){t.selection.isEmpty()?t.selection.selectWord():t.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:o("Alt-Shift-K","Ctrl-Shift-G"),exec:function(t){t.selection.isEmpty()?t.selection.selectWord():t.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:o("Ctrl-F","Command-F"),exec:function(t){r.loadModule("ace/ext/searchbox",function(e){e.Search(t)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(t){t.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:o("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(t){t.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:o("Ctrl-Home","Command-Home|Command-Up"),exec:function(t){t.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:o("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(t){t.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:o("Up","Up|Ctrl-P"),exec:function(t,e){t.navigateUp(e.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:o("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(t){t.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:o("Ctrl-End","Command-End|Command-Down"),exec:function(t){t.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:o("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(t){t.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:o("Down","Down|Ctrl-N"),exec:function(t,e){t.navigateDown(e.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:o("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(t){t.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:o("Ctrl-Left","Option-Left"),exec:function(t){t.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:o("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(t){t.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:o("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(t){t.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:o("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(t){t.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:o("Left","Left|Ctrl-B"),exec:function(t,e){t.navigateLeft(e.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:o("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(t){t.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:o("Ctrl-Right","Option-Right"),exec:function(t){t.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:o("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(t){t.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:o("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(t){t.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:o("Shift-Right","Shift-Right"),exec:function(t){t.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:o("Right","Right|Ctrl-F"),exec:function(t,e){t.navigateRight(e.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(t){t.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:o(null,"Option-PageDown"),exec:function(t){t.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:o("PageDown","PageDown|Ctrl-V"),exec:function(t){t.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(t){t.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:o(null,"Option-PageUp"),exec:function(t){t.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(t){t.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:o("Ctrl-Up",null),exec:function(t){t.renderer.scrollBy(0,-2*t.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:o("Ctrl-Down",null),exec:function(t){t.renderer.scrollBy(0,2*t.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(t){t.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(t){t.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:o("Ctrl-Alt-E","Command-Option-E"),exec:function(t){t.commands.toggleRecording(t)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:o("Ctrl-Shift-E","Command-Shift-E"),exec:function(t){t.commands.replay(t)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:o("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(t){t.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:o("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(t){t.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:o("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(t){t.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:o(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(t){},readOnly:!0},{name:"cut",description:"Cut",exec:function(t){var e=t.$copyWithEmptySelection&&t.selection.isEmpty()?t.selection.getLineRange():t.selection.getRange();t._emit("cut",e),e.isEmpty()||t.session.remove(e),t.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(t,e){t.$handlePaste(e)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:o("Ctrl-D","Command-D"),exec:function(t){t.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:o("Ctrl-Shift-D","Command-Shift-D"),exec:function(t){t.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:o("Ctrl-Alt-S","Command-Alt-S"),exec:function(t){t.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:o("Ctrl-/","Command-/"),exec:function(t){t.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:o("Ctrl-Shift-/","Command-Shift-/"),exec:function(t){t.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:o("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(t){t.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:o("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(t){t.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:o("Ctrl-H","Command-Option-F"),exec:function(t){r.loadModule("ace/ext/searchbox",function(e){e.Search(t,!0)})}},{name:"undo",description:"Undo",bindKey:o("Ctrl-Z","Command-Z"),exec:function(t){t.undo()}},{name:"redo",description:"Redo",bindKey:o("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(t){t.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:o("Alt-Shift-Up","Command-Option-Up"),exec:function(t){t.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:o("Alt-Up","Option-Up"),exec:function(t){t.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:o("Alt-Shift-Down","Command-Option-Down"),exec:function(t){t.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:o("Alt-Down","Option-Down"),exec:function(t){t.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:o("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(t){t.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:o("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(t){t.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:o("Shift-Delete",null),exec:function(t){if(!t.selection.isEmpty())return!1;t.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:o("Alt-Backspace","Command-Backspace"),exec:function(t){t.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:o("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(t){t.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:o("Ctrl-Shift-Backspace",null),exec:function(t){var e=t.selection.getRange();e.start.column=0,t.session.remove(e)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:o("Ctrl-Shift-Delete",null),exec:function(t){var e=t.selection.getRange();e.end.column=Number.MAX_VALUE,t.session.remove(e)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:o("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(t){t.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:o("Ctrl-Delete","Alt-Delete"),exec:function(t){t.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:o("Shift-Tab","Shift-Tab"),exec:function(t){t.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:o("Tab","Tab"),exec:function(t){t.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:o("Ctrl-[","Ctrl-["),exec:function(t){t.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:o("Ctrl-]","Ctrl-]"),exec:function(t){t.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(t,e){t.insert(e)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(t,e){t.insert(i.stringRepeat(e.text||"",e.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:o(null,"Ctrl-O"),exec:function(t){t.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:o("Alt-Shift-X","Ctrl-T"),exec:function(t){t.transposeLetters()},multiSelectAction:function(t){t.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:o("Ctrl-U","Ctrl-U"),exec:function(t){t.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:o("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(t){t.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:o(null,null),exec:function(t){t.autoIndent()},multiSelectAction:"forEachLine",scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:o("Ctrl-Shift-L","Command-Shift-L"),exec:function(t){var e=t.selection.getRange();e.start.column=e.end.column=0,e.end.row++,t.selection.setRange(e,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"joinlines",description:"Join lines",bindKey:o(null,null),exec:function(t){for(var e=t.selection.isBackwards(),n=e?t.selection.getSelectionLead():t.selection.getSelectionAnchor(),r=e?t.selection.getSelectionAnchor():t.selection.getSelectionLead(),o=t.session.doc.getLine(n.row).length,a=t.session.doc.getTextRange(t.selection.getRange()).replace(/\n\s*/," ").length,l=t.session.doc.getLine(n.row),c=n.row+1;c<=r.row+1;c++){var h=i.stringTrimLeft(i.stringTrimRight(t.session.doc.getLine(c)));0!==h.length&&(h=" "+h),l+=h}r.row+10?(t.selection.moveCursorTo(n.row,n.column),t.selection.selectTo(n.row,n.column+a)):(o=t.session.doc.getLine(n.row).length>o?o+1:o,t.selection.moveCursorTo(n.row,o))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:o(null,null),exec:function(t){var e=t.session.doc.getLength()-1,n=t.session.doc.getLine(e).length,i=t.selection.rangeList.ranges,r=[];i.length<1&&(i=[t.selection.getRange()]);for(var o=0;o=r.lastRow||i.end.row<=r.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}"animate"==n&&this.renderer.animateScrolling(this.curOp.scrollTop)}var s=this.selection.toJSON();this.curOp.selectionAfter=s,this.$lastSel=this.selection.toJSON(),this.session.getUndoManager().addSelection(s),this.prevOp=this.curOp,this.curOp=null}},this.$mergeableCommands=["backspace","del","insertstring"],this.$historyTracker=function(t){if(this.$mergeUndoDeltas){var e=this.prevOp,n=this.$mergeableCommands,i=e.command&&t.command.name==e.command.name;if("insertstring"==t.command.name){var r=t.args;void 0===this.mergeNextCommand&&(this.mergeNextCommand=!0),i=i&&this.mergeNextCommand&&(!/\s/.test(r)||/\s/.test(e.args)),this.mergeNextCommand=!0}else i=i&&-1!==n.indexOf(t.command.name);"always"!=this.$mergeUndoDeltas&&Date.now()-this.sequenceStartTime>2e3&&(i=!1),i?this.session.mergeUndoDeltas=!0:-1!==n.indexOf(t.command.name)&&(this.sequenceStartTime=Date.now())}},this.setKeyboardHandler=function(t,e){if(t&&"string"==typeof t&&"ace"!=t){this.$keybindingId=t;var n=this;v.loadModule(["keybinding",t],function(i){n.$keybindingId==t&&n.keyBinding.setKeyboardHandler(i&&i.handler),e&&e()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(t),e&&e()},this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},this.setSession=function(t){if(this.session!=t){this.curOp&&this.endOperation(),this.curOp={};var e=this.session;if(e){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange);var n=this.session.getSelection();n.off("changeCursor",this.$onCursorChange),n.off("changeSelection",this.$onSelectionChange)}this.session=t,t?(this.$onDocumentChange=this.onDocumentChange.bind(this),t.on("change",this.$onDocumentChange),this.renderer.setSession(t),this.$onChangeMode=this.onChangeMode.bind(this),t.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),t.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),t.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),t.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),t.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),t.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=t.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.onCursorChange(),this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(t)),this._signal("changeSession",{session:t,oldSession:e}),this.curOp=null,e&&e._signal("changeEditor",{oldEditor:this}),t&&t._signal("changeEditor",{editor:this}),t&&t.bgTokenizer&&t.bgTokenizer.scheduleStart()}},this.getSession=function(){return this.session},this.setValue=function(t,e){return this.session.doc.setValue(t),e?1==e?this.navigateFileEnd():-1==e&&this.navigateFileStart():this.selectAll(),t},this.getValue=function(){return this.session.getValue()},this.getSelection=function(){return this.selection},this.resize=function(t){this.renderer.onResize(t)},this.setTheme=function(t,e){this.renderer.setTheme(t,e)},this.getTheme=function(){return this.renderer.getTheme()},this.setStyle=function(t){this.renderer.setStyle(t)},this.unsetStyle=function(t){this.renderer.unsetStyle(t)},this.getFontSize=function(){return this.getOption("fontSize")||r.computedStyle(this.container).fontSize},this.setFontSize=function(t){this.setOption("fontSize",t)},this.$highlightBrackets=function(){if(!this.$highlightPending){var t=this;this.$highlightPending=!0,setTimeout(function(){t.$highlightPending=!1;var e=t.session;if(e&&e.bgTokenizer){e.$bracketHighlight&&(e.$bracketHighlight.markerIds.forEach(function(t){e.removeMarker(t)}),e.$bracketHighlight=null);var n=e.getMatchingBracketRanges(t.getCursorPosition());if(!n&&e.$mode.getMatching&&(n=e.$mode.getMatching(t.session)),n){var i="ace_bracket";Array.isArray(n)?1==n.length&&(i="ace_error_bracket"):n=[n],2==n.length&&(0==f.comparePoints(n[0].end,n[1].start)?n=[f.fromPoints(n[0].start,n[1].end)]:0==f.comparePoints(n[0].start,n[1].end)&&(n=[f.fromPoints(n[1].start,n[0].end)])),e.$bracketHighlight={ranges:n,markerIds:n.map(function(t){return e.addMarker(t,i,"text")})}}}},50)}},this.$highlightTags=function(){if(!this.$highlightTagPending){var t=this;this.$highlightTagPending=!0,setTimeout(function(){t.$highlightTagPending=!1;var e=t.session;if(e&&e.bgTokenizer){var n=t.getCursorPosition(),i=new y(t.session,n.row,n.column),r=i.getCurrentToken();if(!r||!/\b(?:tag-open|tag-name)/.test(r.type))return e.removeMarker(e.$tagHighlight),void(e.$tagHighlight=null);if(-1===r.type.indexOf("tag-open")||(r=i.stepForward())){var s=r.value,o=r.value,a=0,l=i.stepBackward();if("<"===l.value)do{l=r,(r=i.stepForward())&&(-1!==r.type.indexOf("tag-name")?s===(o=r.value)&&("<"===l.value?a++:""===r.value&&a--)}while(r&&a>=0);else{do{if(r=l,l=i.stepBackward(),r)if(-1!==r.type.indexOf("tag-name"))s===r.value&&("<"===l.value?a++:""===r.value){for(var c=0,h=l;h;){if(-1!==h.type.indexOf("tag-name")&&h.value===s){a--;break}if("<"===h.value)break;h=i.stepBackward(),c++}for(var u=0;u1||(t=!1)),e.$highlightLineMarker&&!t)e.removeMarker(e.$highlightLineMarker.id),e.$highlightLineMarker=null;else if(!e.$highlightLineMarker&&t){var n=new f(t.row,t.column,t.row,1/0);n.id=e.addMarker(n,"ace_active-line","screenLine"),e.$highlightLineMarker=n}else t&&(e.$highlightLineMarker.start.row=t.row,e.$highlightLineMarker.end.row=t.row,e.$highlightLineMarker.start.column=t.column,e._signal("changeBackMarker"))},this.onSelectionChange=function(t){var e=this.session;if(e.$selectionMarker&&e.removeMarker(e.$selectionMarker),e.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var n=this.selection.getRange(),i=this.getSelectionStyle();e.$selectionMarker=e.addMarker(n,"ace_selection",i)}var r=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(r),this._signal("changeSelection")},this.$getSelectionHighLightRegexp=function(){var t=this.session,e=this.getSelectionRange();if(!e.isEmpty()&&!e.isMultiLine()){var n=e.start.column,i=e.end.column,r=t.getLine(e.start.row),s=r.substring(n,i);if(!(s.length>5e3)&&/[\w\d]/.test(s)){var o=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:s}),a=r.substring(n-1,i+1);if(o.test(a))return o}}},this.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},this.onChangeMode=function(t){this.renderer.updateText(),this._emit("changeMode",t)},this.onChangeWrapLimit=function(){this.renderer.updateFull()},this.onChangeWrapMode=function(){this.renderer.onResize(!0)},this.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},this.getCopyText=function(){var t=this.getSelectedText(),e=this.session.doc.getNewLineCharacter(),n=!1;if(!t&&this.$copyWithEmptySelection){n=!0;for(var i=this.selection.getAllRanges(),r=0;ra.search(/\S|$/)){var l=a.substr(r.column).search(/\S|$/);n.doc.removeInLine(r.row,r.column,r.column+l)}}this.clearSelection();var c=r.column,h=n.getState(r.row),u=(a=n.getLine(r.row),i.checkOutdent(h,a,t));if(n.insert(r,t),s&&s.selection&&this.selection.setSelectionRange(2==s.selection.length?new f(r.row,c+s.selection[0],r.row,c+s.selection[1]):new f(r.row+s.selection[0],s.selection[1],r.row+s.selection[2],s.selection[3])),this.$enableAutoIndent){if(n.getDocument().isNewLine(t)){var d=i.getNextLineIndent(h,a.slice(0,r.column),n.getTabString());n.insert({row:r.row+1,column:0},d)}u&&i.autoOutdent(h,n,r.row)}},this.autoIndent=function(){var t,e,n=this.session,i=n.getMode();if(this.selection.isEmpty())t=0,e=n.doc.getLength()-1;else{var r=this.getSelectionRange();t=r.start.row,e=r.end.row}for(var s,o,a,l="",c="",h="",u=n.getTabString(),d=t;d<=e;d++)d>0&&(l=n.getState(d-1),c=n.getLine(d-1),h=i.getNextLineIndent(l,c,u)),s=n.getLine(d),h!==(o=i.$getIndent(s))&&(o.length>0&&(a=new f(d,0,d,o.length),n.remove(a)),h.length>0&&n.insert({row:d,column:0},h)),i.autoOutdent(l,n,d)},this.onTextInput=function(t,e){if(!e)return this.keyBinding.onTextInput(t);this.startOperation({command:{name:"insertstring"}});var n=this.applyComposition.bind(this,t,e);this.selection.rangeCount?this.forEachSelection(n):n(),this.endOperation()},this.applyComposition=function(t,e){var n;(e.extendLeft||e.extendRight)&&((n=this.selection.getRange()).start.column-=e.extendLeft,n.end.column+=e.extendRight,n.start.column<0&&(n.start.row--,n.start.column+=this.session.getLine(n.start.row).length+1),this.selection.setRange(n),t||n.isEmpty()||this.remove()),!t&&this.selection.isEmpty()||this.insert(t,!0),(e.restoreStart||e.restoreEnd)&&((n=this.selection.getRange()).start.column-=e.restoreStart,n.end.column-=e.restoreEnd,this.selection.setRange(n))},this.onCommandKey=function(t,e,n){return this.keyBinding.onCommandKey(t,e,n)},this.setOverwrite=function(t){this.session.setOverwrite(t)},this.getOverwrite=function(){return this.session.getOverwrite()},this.toggleOverwrite=function(){this.session.toggleOverwrite()},this.setScrollSpeed=function(t){this.setOption("scrollSpeed",t)},this.getScrollSpeed=function(){return this.getOption("scrollSpeed")},this.setDragDelay=function(t){this.setOption("dragDelay",t)},this.getDragDelay=function(){return this.getOption("dragDelay")},this.setSelectionStyle=function(t){this.setOption("selectionStyle",t)},this.getSelectionStyle=function(){return this.getOption("selectionStyle")},this.setHighlightActiveLine=function(t){this.setOption("highlightActiveLine",t)},this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},this.setHighlightGutterLine=function(t){this.setOption("highlightGutterLine",t)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.setHighlightSelectedWord=function(t){this.setOption("highlightSelectedWord",t)},this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},this.setAnimatedScroll=function(t){this.renderer.setAnimatedScroll(t)},this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},this.setShowInvisibles=function(t){this.renderer.setShowInvisibles(t)},this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},this.setDisplayIndentGuides=function(t){this.renderer.setDisplayIndentGuides(t)},this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},this.setShowPrintMargin=function(t){this.renderer.setShowPrintMargin(t)},this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},this.setPrintMarginColumn=function(t){this.renderer.setPrintMarginColumn(t)},this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},this.setReadOnly=function(t){this.setOption("readOnly",t)},this.getReadOnly=function(){return this.getOption("readOnly")},this.setBehavioursEnabled=function(t){this.setOption("behavioursEnabled",t)},this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},this.setWrapBehavioursEnabled=function(t){this.setOption("wrapBehavioursEnabled",t)},this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},this.setShowFoldWidgets=function(t){this.setOption("showFoldWidgets",t)},this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},this.setFadeFoldWidgets=function(t){this.setOption("fadeFoldWidgets",t)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.remove=function(t){this.selection.isEmpty()&&("left"==t?this.selection.selectLeft():this.selection.selectRight());var e=this.getSelectionRange();if(this.getBehavioursEnabled()){var n=this.session,i=n.getState(e.start.row),r=n.getMode().transformAction(i,"deletion",this,n,e);if(0===e.end.column){var s=n.getTextRange(e);if("\n"==s[s.length-1]){var o=n.getLine(e.end.row);/^\s+$/.test(o)&&(e.end.column=o.length)}}r&&(e=r)}this.session.remove(e),this.clearSelection()},this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var t=this.getSelectionRange();t.start.column==t.end.column&&t.start.row==t.end.row&&(t.end.column=0,t.end.row++),this.session.remove(t),this.clearSelection()},this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var t=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(t)},this.transposeLetters=function(){if(this.selection.isEmpty()){var t=this.getCursorPosition(),e=t.column;if(0!==e){var n,i,r=this.session.getLine(t.row);ee.toLowerCase()?1:0});var r=new f(0,0,0,0);for(i=t.first;i<=t.last;i++){var s=e.getLine(i);r.start.row=i,r.end.row=i,r.end.column=s.length,e.replace(r,n[i-t.first])}},this.toggleCommentLines=function(){var t=this.session.getState(this.getCursorPosition().row),e=this.$getSelectedRows();this.session.getMode().toggleCommentLines(t,this.session,e.first,e.last)},this.toggleBlockComment=function(){var t=this.getCursorPosition(),e=this.session.getState(t.row),n=this.getSelectionRange();this.session.getMode().toggleBlockComment(e,this.session,n,t)},this.getNumberAt=function(t,e){var n=/[\-]?[0-9]+(?:\.[0-9]+)?/g;n.lastIndex=0;for(var i=this.session.getLine(t);n.lastIndex=e)return{value:r[0],start:r.index,end:r.index+r[0].length}}return null},this.modifyNumber=function(t){var e=this.selection.getCursor().row,n=this.selection.getCursor().column,i=new f(e,n-1,e,n),r=this.session.getTextRange(i);if(!isNaN(parseFloat(r))&&isFinite(r)){var s=this.getNumberAt(e,n);if(s){var o=s.value.indexOf(".")>=0?s.start+s.value.indexOf(".")+1:s.end,a=s.start+s.value.length-o,l=parseFloat(s.value);l*=Math.pow(10,a),l+=t*=o!==s.end&&n=a&&o<=l&&(n=e,c.selection.clearSelection(),c.moveCursorTo(t,a+i),c.selection.selectTo(t,l+i)),a=l});for(var h,u=this.$toggleWordPairs,d=0;df+1)break;f=p.last}for(h--,a=this.session.$moveLines(d,f,e?0:t),e&&-1==t&&(u=h+1);u<=h;)o[u].moveBy(a,0),u++;e||(a=0),l+=a}r.fromOrientedRange(r.ranges[0]),r.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},this.$getSelectedRows=function(t){return t=(t||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(t.start.row),last:this.session.getRowFoldEnd(t.end.row)}},this.onCompositionStart=function(t){this.renderer.showComposition(t)},this.onCompositionUpdate=function(t){this.renderer.setCompositionText(t)},this.onCompositionEnd=function(){this.renderer.hideComposition()},this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},this.isRowVisible=function(t){return t>=this.getFirstVisibleRow()&&t<=this.getLastVisibleRow()},this.isRowFullyVisible=function(t){return t>=this.renderer.getFirstFullyVisibleRow()&&t<=this.renderer.getLastFullyVisibleRow()},this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},this.$moveByPage=function(t,e){var n=this.renderer,i=this.renderer.layerConfig,r=t*Math.floor(i.height/i.lineHeight);!0===e?this.selection.$moveSelection(function(){this.moveCursorBy(r,0)}):!1===e&&(this.selection.moveCursorBy(r,0),this.selection.clearSelection());var s=n.scrollTop;n.scrollBy(0,r*i.lineHeight),null!=e&&n.scrollCursorIntoView(null,.5),n.animateScrolling(s)},this.selectPageDown=function(){this.$moveByPage(1,!0)},this.selectPageUp=function(){this.$moveByPage(-1,!0)},this.gotoPageDown=function(){this.$moveByPage(1,!1)},this.gotoPageUp=function(){this.$moveByPage(-1,!1)},this.scrollPageDown=function(){this.$moveByPage(1)},this.scrollPageUp=function(){this.$moveByPage(-1)},this.scrollToRow=function(t){this.renderer.scrollToRow(t)},this.scrollToLine=function(t,e,n,i){this.renderer.scrollToLine(t,e,n,i)},this.centerSelection=function(){var t=this.getSelectionRange(),e={row:Math.floor(t.start.row+(t.end.row-t.start.row)/2),column:Math.floor(t.start.column+(t.end.column-t.start.column)/2)};this.renderer.alignCursor(e,.5)},this.getCursorPosition=function(){return this.selection.getCursor()},this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},this.getSelectionRange=function(){return this.selection.getRange()},this.selectAll=function(){this.selection.selectAll()},this.clearSelection=function(){this.selection.clearSelection()},this.moveCursorTo=function(t,e){this.selection.moveCursorTo(t,e)},this.moveCursorToPosition=function(t){this.selection.moveCursorToPosition(t)},this.jumpToMatching=function(t,e){var n=this.getCursorPosition(),i=new y(this.session,n.row,n.column),r=i.getCurrentToken(),s=r||i.stepForward();if(s){var o,a,l=!1,c={},h=n.column-s.start,u={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(s.value.match(/[{}()\[\]]/g)){for(;h=0;--s)this.$tryReplace(n[s],t)&&i++;return this.selection.setSelectionRange(r),i},this.$tryReplace=function(t,e){var n=this.session.getTextRange(t);return null!==(e=this.$search.replace(n,e))?(t.end=this.session.replace(t,e),t):null},this.getLastSearchOptions=function(){return this.$search.getOptions()},this.find=function(t,e,n){e||(e={}),"string"==typeof t||t instanceof RegExp?e.needle=t:"object"==typeof t&&i.mixin(e,t);var r=this.selection.getRange();null==e.needle&&((t=this.session.getTextRange(r)||this.$search.$options.needle)||(r=this.session.getWordRange(r.start.row,r.start.column),t=this.session.getTextRange(r)),this.$search.set({needle:t})),this.$search.set(e),e.start||this.$search.set({start:r});var s=this.$search.find(this.session);return e.preventScroll?s:s?(this.revealRange(s,n),s):(e.backwards?r.start=r.end:r.end=r.start,void this.selection.setRange(r))},this.findNext=function(t,e){this.find({skipCurrent:!0,backwards:!1},t,e)},this.findPrevious=function(t,e){this.find(t,{skipCurrent:!0,backwards:!0},e)},this.revealRange=function(t,e){this.session.unfold(t),this.selection.setSelectionRange(t);var n=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(t.start,t.end,.5),!1!==e&&this.renderer.animateScrolling(n)},this.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},this.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},this.destroy=function(){this.$toDestroy&&(this.$toDestroy.forEach(function(t){t.destroy()}),this.$toDestroy=null),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},this.setAutoScrollEditorIntoView=function(t){if(t){var e,n=this,i=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var r=this.$scrollAnchor;r.style.cssText="position:absolute",this.container.insertBefore(r,this.container.firstChild);var s=this.on("changeSelection",function(){i=!0}),o=this.renderer.on("beforeRender",function(){i&&(e=n.renderer.container.getBoundingClientRect())}),a=this.renderer.on("afterRender",function(){if(i&&e&&(n.isFocused()||n.searchBox&&n.searchBox.isFocused())){var t=n.renderer,s=t.$cursorLayer.$pixelPos,o=t.layerConfig,a=s.top-o.offset;null!=(i=s.top>=0&&a+e.top<0||!(s.topwindow.innerHeight)&&null)&&(r.style.top=a+"px",r.style.left=s.left+"px",r.style.height=o.lineHeight+"px",r.scrollIntoView(i)),i=e=null}});this.setAutoScrollEditorIntoView=function(t){t||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",s),this.renderer.off("afterRender",a),this.renderer.off("beforeRender",o))}}},this.$resetCursorStyle=function(){var t=this.$cursorStyle||"ace",e=this.renderer.$cursorLayer;e&&(e.setSmoothBlinking(/smooth/.test(t)),e.isBlinking=!this.$readOnly&&"wide"!=t,r.setCssClass(e.element,"ace_slim-cursors",/slim/.test(t)))},this.prompt=function(t,e,n){var i=this;v.loadModule("./ext/prompt",function(r){r.prompt(i,t,e,n)})}}).call(b.prototype),v.defineOptions(b.prototype,"editor",{selectionStyle:{set:function(t){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:t})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(t){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(t){this.textInput.setReadOnly(t),this.$resetCursorStyle()},initialValue:!1},copyWithEmptySelection:{set:function(t){this.textInput.setCopyWithEmptySelection(t)},initialValue:!1},cursorStyle:{set:function(t){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(t){this.setAutoScrollEditorIntoView(t)}},keyboardHandler:{set:function(t){this.setKeyboardHandler(t)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(t){this.session.setValue(t)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(t){this.setSession(t)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(t){this.renderer.$gutterLayer.setShowLineNumbers(t),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),t&&this.$relativeLineNumbers?x.attach(this):x.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(t){this.$showLineNumbers&&t?x.attach(this):x.detach(this)}},placeholder:{set:function(t){this.$updatePlaceholder||(this.$updatePlaceholder=(function(){var t=this.session&&(this.renderer.$composition||this.getValue());if(t&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),r.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(t||this.renderer.placeholderNode)!t&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"");else{this.renderer.on("afterRender",this.$updatePlaceholder),r.addCssClass(this.container,"ace_hasPlaceholder");var e=r.createElement("div");e.className="ace_placeholder",e.textContent=this.$placeholder||"",this.renderer.placeholderNode=e,this.renderer.content.appendChild(this.renderer.placeholderNode)}}).bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",displayIndentGuides:"renderer",showGutter:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",hasCssTransforms:"renderer",maxPixelHeight:"renderer",useTextareaForIME:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimeout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",navigateWithinSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});var x={getText:function(t,e){return(Math.abs(t.selection.lead.row-e)||e+1+(e<9?"\xb7":""))+""},getWidth:function(t,e,n){return Math.max(e.toString().length,(n.lastRow+1).toString().length,2)*n.characterWidth},update:function(t,e){e.renderer.$loop.schedule(e.renderer.CHANGE_GUTTER)},attach:function(t){t.renderer.$gutterLayer.$renderer=this,t.on("changeSelection",this.update),this.update(null,t)},detach:function(t){t.renderer.$gutterLayer.$renderer==this&&(t.renderer.$gutterLayer.$renderer=null),t.off("changeSelection",this.update),this.update(null,t)}};e.Editor=b}),ace.define("ace/undomanager",["require","exports","module","ace/range"],function(t,e,n){"use strict";var i=function(){this.$maxRev=0,this.$fromUndo=!1,this.reset()};(function(){this.addSession=function(t){this.$session=t},this.add=function(t,e,n){this.$fromUndo||t!=this.$lastDelta&&(this.$keepRedoStack||(this.$redoStack.length=0),!1!==e&&this.lastDeltas||(this.lastDeltas=[],this.$undoStack.push(this.lastDeltas),t.id=this.$rev=++this.$maxRev),"remove"!=t.action&&"insert"!=t.action||(this.$lastDelta=t),this.lastDeltas.push(t))},this.addSelection=function(t,e){this.selections.push({value:t,rev:e||this.$rev})},this.startNewGroup=function(){return this.lastDeltas=null,this.$rev},this.markIgnored=function(t,e){null==e&&(e=this.$rev+1);for(var n=this.$undoStack,i=n.length;i--;){var r=n[i][0];if(r.id<=t)break;r.id0},this.canRedo=function(){return this.$redoStack.length>0},this.bookmark=function(t){null==t&&(t=this.$rev),this.mark=t},this.isAtBookmark=function(){return this.$rev===this.mark},this.toJSON=function(){},this.fromJSON=function(){},this.hasUndo=this.canUndo,this.hasRedo=this.canRedo,this.isClean=this.isAtBookmark,this.markClean=this.bookmark,this.$prettyPrint=function(t){return t?a(t):a(this.$undoStack)+"\n---\n"+a(this.$redoStack)}}).call(i.prototype);var r=t("./range").Range,s=r.comparePoints;function o(t){return{row:t.row,column:t.column}}function a(t){if(t=t||this,Array.isArray(t))return t.map(a).join("\n");var e="";return t.action?(e="insert"==t.action?"+":"-",e+="["+t.lines+"]"):t.value&&(e=Array.isArray(t.value)?t.value.map(l).join("\n"):l(t.value)),t.start&&(e+=l(t)),(t.id||t.rev)&&(e+="\t("+(t.id||t.rev)+")"),e}function l(t){return t.start.row+":"+t.start.column+"=>"+t.end.row+":"+t.end.column}function c(t,e){var n="insert"==t.action,i="insert"==e.action;if(n&&i)if(s(e.start,t.end)>=0)d(e,t,-1);else{if(!(s(e.start,t.start)<=0))return null;d(t,e,1)}else if(n&&!i)if(s(e.start,t.end)>=0)d(e,t,-1);else{if(!(s(e.end,t.start)<=0))return null;d(t,e,-1)}else if(!n&&i)if(s(e.start,t.start)>=0)d(e,t,1);else{if(!(s(e.start,t.start)<=0))return null;d(t,e,1)}else if(!n&&!i)if(s(e.start,t.start)>=0)d(e,t,1);else{if(!(s(e.end,t.start)<=0))return null;d(t,e,-1)}return[e,t]}function h(t,e){for(var n=t.length;n--;)for(var i=0;i=0?d(t,e,-1):(s(t.start,e.start)<=0||d(t,r.fromPoints(e.start,t.start),-1),d(e,t,1));else if(!n&&i)s(e.start,t.end)>=0?d(e,t,-1):(s(e.start,t.start)<=0||d(e,r.fromPoints(t.start,e.start),-1),d(t,e,1));else if(!n&&!i)if(s(e.start,t.end)>=0)d(e,t,-1);else{var o,a;if(!(s(e.end,t.start)<=0))return s(t.start,e.start)<0&&(o=t,t=p(t,e.start)),s(t.end,e.end)>0&&(a=p(t,e.end)),f(e.end,t.start,t.end,-1),a&&!o&&(t.lines=a.lines,t.start=a.start,t.end=a.end,a=t),[e,o,a].filter(Boolean);d(t,e,-1)}return[e,t]}function d(t,e,n){f(t.start,e.start,e.end,n),f(t.end,e.start,e.end,n)}function f(t,e,n,i){t.row==(1==i?e:n).row&&(t.column+=i*(n.column-e.column)),t.row+=i*(n.row-e.row)}function p(t,e){var n=t.lines,i=t.end;t.end=o(e);var r=t.end.row-t.start.row,s=n.splice(r,n.length),a=r?e.column:e.column-t.start.column;return n.push(s[0].substring(0,a)),s[0]=s[0].substr(a),{start:o(e),end:i,lines:s,action:t.action}}function g(t,e){e=function(t){return{start:o(t.start),end:o(t.end),action:t.action,lines:t.lines.slice()}}(e);for(var n=t.length;n--;){for(var i=t[n],r=0;rs&&(s=(r=e.getNextFoldLine(l=r.end.row+1,r))?r.start.row:1/0),l>i){for(;this.$lines.getLength()>a+1;)this.$lines.pop();break}(o=this.$lines.get(++a))?o.row=l:(o=this.$lines.createCell(l,t,this.session,c),this.$lines.push(o)),this.$renderCell(o,t,r,l),l++}this._signal("afterRender"),this.$updateGutterWidth(t)},this.$updateGutterWidth=function(t){var e=this.session,n=e.gutterRenderer||this.$renderer,i=e.$firstLineNumber,r=this.$lines.last()?this.$lines.last().text:"";(this.$fixedWidth||e.$useWrapMode)&&(r=e.getLength()+i-1);var s=n?n.getWidth(e,r,t):r.toString().length*t.characterWidth,o=this.$padding||this.$computePadding();(s+=o.left+o.right)===this.gutterWidth||isNaN(s)||(this.gutterWidth=s,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",s))},this.$updateCursorRow=function(){if(this.$highlightGutterLine){var t=this.session.selection.getCursor();this.$cursorRow!==t.row&&(this.$cursorRow=t.row)}},this.updateLineHighlight=function(){if(this.$highlightGutterLine){var t=this.session.selection.cursor.row;if(this.$cursorRow=t,!this.$cursorCell||this.$cursorCell.row!=t){this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var e=this.$lines.cells;this.$cursorCell=null;for(var n=0;n=this.$cursorRow){if(i.row>this.$cursorRow){var r=this.session.getFoldLine(this.$cursorRow);if(!(n>0&&r&&r.start.row==e[n-1].row))break;i=e[n-1]}i.element.className="ace_gutter-active-line "+i.element.className,this.$cursorCell=i;break}}}}},this.scrollLines=function(t){var e=this.config;if(this.config=t,this.$updateCursorRow(),this.$lines.pageChanged(e,t))return this.update(t);this.$lines.moveContainer(t);var n=Math.min(t.lastRow+t.gutterOffset,this.session.getLength()-1),i=this.oldLastRow;if(this.oldLastRow=n,!e||i0;r--)this.$lines.shift();if(i>n)for(r=this.session.getFoldedRowCount(n+1,i);r>0;r--)this.$lines.pop();t.firstRowi&&this.$lines.push(this.$renderLines(t,i+1,n)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(t)},this.$renderLines=function(t,e,n){for(var i=[],r=e,s=this.session.getNextFoldLine(r),o=s?s.start.row:1/0;r>o&&(o=(s=this.session.getNextFoldLine(r=s.end.row+1,s))?s.start.row:1/0),!(r>n);){var a=this.$lines.createCell(r,t,this.session,c);this.$renderCell(a,t,s,r),i.push(a),r++}return i},this.$renderCell=function(t,e,n,r){var s=t.element,o=this.session,a=s.childNodes[0],l=s.childNodes[1],c=o.$firstLineNumber,h=o.$breakpoints,u=o.$decorations,d=o.gutterRenderer||this.$renderer,f=this.$showFoldWidgets&&o.foldWidgets,p=n?n.start.row:Number.MAX_VALUE,g="ace_gutter-cell ";if(this.$highlightGutterLine&&(r==this.$cursorRow||n&&r=p&&this.$cursorRow<=n.end.row)&&(g+="ace_gutter-active-line ",this.$cursorCell!=t&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=t)),h[r]&&(g+=h[r]),u[r]&&(g+=u[r]),this.$annotations[r]&&(g+=this.$annotations[r].className),s.className!=g&&(s.className=g),f){var m=f[r];null==m&&(m=f[r]=o.getFoldWidget(r))}m?(g="ace_fold-widget ace_"+m,l.className!=(g+="start"==m&&r==p&&rn.right-e.right?"foldWidgets":void 0}}).call(l.prototype),e.Gutter=l}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(t,e,n){"use strict";var i=t("../range").Range,r=t("../lib/dom"),s=function(t){this.element=r.createElement("div"),this.element.className="ace_layer ace_marker-layer",t.appendChild(this.element)};(function(){this.$padding=0,this.setPadding=function(t){this.$padding=t},this.setSession=function(t){this.session=t},this.setMarkers=function(t){this.markers=t},this.elt=function(t,e){var n=-1!=this.i&&this.element.childNodes[this.i];n?this.i++:(n=document.createElement("div"),this.element.appendChild(n),this.i=-1),n.style.cssText=e,n.className=t},this.update=function(t){if(t){var e;for(var n in this.config=t,this.i=0,this.markers){var i=this.markers[n];if(i.range){var r=i.range.clipRows(t.firstRow,t.lastRow);if(!r.isEmpty())if(r=r.toScreenRange(this.session),i.renderer){var s=this.$getTop(r.start.row,t);i.renderer(e,r,this.$padding+r.start.column*t.characterWidth,s,t)}else"fullLine"==i.type?this.drawFullLineMarker(e,r,i.clazz,t):"screenLine"==i.type?this.drawScreenLineMarker(e,r,i.clazz,t):r.isMultiLine()?"text"==i.type?this.drawTextMarker(e,r,i.clazz,t):this.drawMultiLineMarker(e,r,i.clazz,t):this.drawSingleLineMarker(e,r,i.clazz+" ace_start ace_br15",t)}else i.update(e,this,this.session,t)}if(-1!=this.i)for(;this.id?4:0)|(c==l?8:0)),r,c==l?0:1,s)},this.drawMultiLineMarker=function(t,e,n,i,r){var s,o=this.$padding,a=i.lineHeight,l=this.$getTop(e.start.row,i),c=o+e.start.column*i.characterWidth;if(r=r||"",this.session.$bidiHandler.isBidiRow(e.start.row)?((s=e.clone()).end.row=s.start.row,s.end.column=this.session.getLine(s.start.row).length,this.drawBidiSingleLineMarker(t,s,n+" ace_br1 ace_start",i,null,r)):this.elt(n+" ace_br1 ace_start","height:"+a+"px;right:0;top:"+l+"px;left:"+c+"px;"+(r||"")),this.session.$bidiHandler.isBidiRow(e.end.row)?((s=e.clone()).start.row=s.end.row,s.start.column=0,this.drawBidiSingleLineMarker(t,s,n+" ace_br12",i,null,r)):(l=this.$getTop(e.end.row,i),this.elt(n+" ace_br12","height:"+a+"px;width:"+e.end.column*i.characterWidth+"px;top:"+l+"px;left:"+o+"px;"+(r||""))),!((a=(e.end.row-e.start.row-1)*i.lineHeight)<=0)){l=this.$getTop(e.start.row+1,i);var h=(e.start.column?1:0)|(e.end.column?0:8);this.elt(n+(h?" ace_br"+h:""),"height:"+a+"px;right:0;top:"+l+"px;left:"+o+"px;"+(r||""))}},this.drawSingleLineMarker=function(t,e,n,i,r,s){if(this.session.$bidiHandler.isBidiRow(e.start.row))return this.drawBidiSingleLineMarker(t,e,n,i,r,s);var o=i.lineHeight,a=(e.end.column+(r||0)-e.start.column)*i.characterWidth,l=this.$getTop(e.start.row,i);this.elt(n,"height:"+o+"px;width:"+a+"px;top:"+l+"px;left:"+(this.$padding+e.start.column*i.characterWidth)+"px;"+(s||""))},this.drawBidiSingleLineMarker=function(t,e,n,i,r,s){var o=i.lineHeight,a=this.$getTop(e.start.row,i),l=this.$padding;this.session.$bidiHandler.getSelections(e.start.column,e.end.column).forEach(function(t){this.elt(n,"height:"+o+"px;width:"+t.width+(r||0)+"px;top:"+a+"px;left:"+(l+t.left)+"px;"+(s||""))},this)},this.drawFullLineMarker=function(t,e,n,i,r){var s=this.$getTop(e.start.row,i),o=i.lineHeight;e.start.row!=e.end.row&&(o+=this.$getTop(e.end.row,i)-s),this.elt(n,"height:"+o+"px;top:"+s+"px;left:0;right:0;"+(r||""))},this.drawScreenLineMarker=function(t,e,n,i,r){var s=this.$getTop(e.start.row,i);this.elt(n,"height:"+i.lineHeight+"px;top:"+s+"px;left:0;right:0;"+(r||""))}}).call(s.prototype),e.Marker=s}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter"],function(t,e,n){"use strict";var i=t("../lib/oop"),r=t("../lib/dom"),s=t("../lib/lang"),o=t("./lines").Lines,a=t("../lib/event_emitter").EventEmitter,l=function(t){this.dom=r,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",t.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new o(this.element)};(function(){i.implement(this,a),this.EOF_CHAR="\xb6",this.EOL_CHAR_LF="\xac",this.EOL_CHAR_CRLF="\xa4",this.EOL_CHAR=this.EOL_CHAR_LF,this.TAB_CHAR="\u2014",this.SPACE_CHAR="\xb7",this.$padding=0,this.MAX_LINE_LENGTH=1e4,this.$updateEolChar=function(){var t=this.session.doc,e="\n"==t.getNewLineCharacter()&&"windows"!=t.getNewLineMode()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=e)return this.EOL_CHAR=e,!0},this.setPadding=function(t){this.$padding=t,this.element.style.margin="0 "+t+"px"},this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},this.$setFontMetrics=function(t){this.$fontMetrics=t,this.$fontMetrics.on("changeCharacterSize",(function(t){this._signal("changeCharacterSize",t)}).bind(this)),this.$pollSizeChanges()},this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},this.setSession=function(t){this.session=t,t&&this.$computeTabString()},this.showInvisibles=!1,this.showSpaces=!1,this.showTabs=!1,this.showEOL=!1,this.setShowInvisibles=function(t){return this.showInvisibles!=t&&(this.showInvisibles=t,"string"==typeof t?(this.showSpaces=/tab/i.test(t),this.showTabs=/space/i.test(t),this.showEOL=/eol/i.test(t)):this.showSpaces=this.showTabs=this.showEOL=t,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(t){return this.displayIndentGuides!=t&&(this.displayIndentGuides=t,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var t=this.session.getTabSize();this.tabSize=t;for(var e=this.$tabStrings=[0],n=1;nh&&(h=(l=this.session.getNextFoldLine(a=l.end.row+1,l))?l.start.row:1/0),!(a>r);){var u=s[o++];if(u){this.dom.removeChildren(u),this.$renderLine(u,a,a==h&&l),c&&(u.style.top=this.$lines.computeLineTop(a,t,this.session)+"px");var d=t.lineHeight*this.session.getRowLength(a)+"px";u.style.height!=d&&(c=!0,u.style.height=d)}a++}if(c)for(;o0;i--)this.$lines.shift();if(e.lastRow>t.lastRow)for(i=this.session.getFoldedRowCount(t.lastRow+1,e.lastRow);i>0;i--)this.$lines.pop();t.firstRowe.lastRow&&this.$lines.push(this.$renderLinesFragment(t,e.lastRow+1,t.lastRow))},this.$renderLinesFragment=function(t,e,n){for(var i=[],s=e,o=this.session.getNextFoldLine(s),a=o?o.start.row:1/0;s>a&&(a=(o=this.session.getNextFoldLine(s=o.end.row+1,o))?o.start.row:1/0),!(s>n);){var l=this.$lines.createCell(s,t,this.session),c=l.element;this.dom.removeChildren(c),r.setStyle(c.style,"height",this.$lines.computeLineHeight(s,t,this.session)+"px"),r.setStyle(c.style,"top",this.$lines.computeLineTop(s,t,this.session)+"px"),this.$renderLine(c,s,s==a&&o),c.className=this.$useLineGroups()?"ace_line_group":"ace_line",i.push(l),s++}return i},this.update=function(t){this.$lines.moveContainer(t),this.config=t;for(var e=t.firstRow,n=t.lastRow,i=this.$lines;i.getLength();)i.pop();i.push(this.$renderLinesFragment(t,e,n))},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(t,e,n,i){for(var r,o=this,a=/(\t)|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\uFEFF\uFFF9-\uFFFC]+)|(\u3000)|([\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3001-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]|[\uD800-\uDBFF][\uDC00-\uDFFF])/g,l=this.dom.createFragment(this.element),c=0;r=a.exec(i);){var h=r[1],u=r[2],d=r[3],f=r[4],p=r[5];if(o.showSpaces||!u){var g=c!=r.index?i.slice(c,r.index):"";if(c=r.index+r[0].length,g&&l.appendChild(this.dom.createTextNode(g,this.element)),h){var m=o.session.getScreenTabSize(e+r.index);l.appendChild(o.$tabStrings[m].cloneNode(!0)),e+=m-1}else u?o.showSpaces?((y=this.dom.createElement("span")).className="ace_invisible ace_invisible_space",y.textContent=s.stringRepeat(o.SPACE_CHAR,u.length),l.appendChild(y)):l.appendChild(this.com.createTextNode(u,this.element)):d?((y=this.dom.createElement("span")).className="ace_invisible ace_invisible_space ace_invalid",y.textContent=s.stringRepeat(o.SPACE_CHAR,d.length),l.appendChild(y)):f?(e+=1,(y=this.dom.createElement("span")).style.width=2*o.config.characterWidth+"px",y.className=o.showSpaces?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",y.textContent=o.showSpaces?o.SPACE_CHAR:f,l.appendChild(y)):p&&(e+=1,(y=this.dom.createElement("span")).style.width=2*o.config.characterWidth+"px",y.className="ace_cjk",y.textContent=p,l.appendChild(y))}}if(l.appendChild(this.dom.createTextNode(c?i.slice(c):i,this.element)),this.$textToken[n.type])t.appendChild(l);else{var v="ace_"+n.type.replace(/\./g," ace_"),y=this.dom.createElement("span");"fold"==n.type&&(y.style.width=n.value.length*this.config.characterWidth+"px"),y.className=v,y.appendChild(l),t.appendChild(y)}return e+i.length},this.renderIndentGuide=function(t,e,n){var i=e.search(this.$indentGuideRe);if(i<=0||i>=n)return e;if(" "==e[0]){for(var r=(i-=i%this.tabSize)/this.tabSize,s=0;s=o;)a=this.$renderToken(l,a,h,u.substring(0,o-i)),u=u.substring(o-i),i=o,l=this.$createLineElement(),t.appendChild(l),l.appendChild(this.dom.createTextNode(s.stringRepeat("\xa0",n.indent),this.element)),a=0,o=n[++r]||Number.MAX_VALUE;0!=u.length&&(i+=u.length,a=this.$renderToken(l,a,h,u))}}n[n.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(l,a,null,"",!0)},this.$renderSimpleLine=function(t,e){var n=0,i=e[0],r=i.value;this.displayIndentGuides&&(r=this.renderIndentGuide(t,r)),r&&(n=this.$renderToken(t,n,i,r));for(var s=1;sthis.MAX_LINE_LENGTH)return this.$renderOverflowMessage(t,n,i,r);n=this.$renderToken(t,n,i,r)}},this.$renderOverflowMessage=function(t,e,n,i,r){n&&this.$renderToken(t,e,n,i.slice(0,this.MAX_LINE_LENGTH-e));var s=this.dom.createElement("span");s.className="ace_inline_button ace_keyword ace_toggle_wrap",s.textContent=r?"":"",t.appendChild(s)},this.$renderLine=function(t,e,n){if(n||0==n||(n=this.session.getFoldLine(e)),n)var i=this.$getFoldLineTokens(e,n);else i=this.session.getTokens(e);var r=t;if(i.length){var s=this.session.getRowSplitData(e);s&&s.length?(this.$renderWrappedLine(t,i,s),r=t.lastChild):(r=t,this.$useLineGroups()&&(r=this.$createLineElement(),t.appendChild(r)),this.$renderSimpleLine(r,i))}else this.$useLineGroups()&&(r=this.$createLineElement(),t.appendChild(r));if(this.showEOL&&r){n&&(e=n.end.row);var o=this.dom.createElement("span");o.className="ace_invisible ace_invisible_eol",o.textContent=e==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,r.appendChild(o)}},this.$getFoldLineTokens=function(t,e){var n=this.session,i=[],r=n.getTokens(t);return e.walk(function(t,e,s,o,a){null!=t?i.push({type:"fold",value:t}):(a&&(r=n.getTokens(e)),r.length&&function(t,e,n){for(var r=0,s=0;s+t[r].value.lengthn-e&&(o=o.substring(0,n-e)),i.push({type:t[r].type,value:o}),s=e+o.length,r+=1);sn?{type:t[r].type,value:o.substring(0,n-s)}:t[r]),s+=o.length,r+=1}}(r,o,s))},e.end.row,this.session.getLine(e.end.row).length),i},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){}}).call(l.prototype),e.Text=l}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(t,e,n){"use strict";var i=t("../lib/dom"),r=function(t){this.element=i.createElement("div"),this.element.className="ace_layer ace_cursor-layer",t.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),i.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)};(function(){this.$updateOpacity=function(t){for(var e=this.cursors,n=e.length;n--;)i.setStyle(e[n].style,"opacity",t?"":"0")},this.$startCssAnimation=function(){for(var t=this.cursors,e=t.length;e--;)t[e].style.animationDuration=this.blinkInterval+"ms";setTimeout((function(){i.addCssClass(this.element,"ace_animate-blinking")}).bind(this))},this.$stopCssAnimation=function(){i.removeCssClass(this.element,"ace_animate-blinking")},this.$padding=0,this.setPadding=function(t){this.$padding=t},this.setSession=function(t){this.session=t},this.setBlinking=function(t){t!=this.isBlinking&&(this.isBlinking=t,this.restartTimer())},this.setBlinkInterval=function(t){t!=this.blinkInterval&&(this.blinkInterval=t,this.restartTimer())},this.setSmoothBlinking=function(t){t!=this.smoothBlinking&&(this.smoothBlinking=t,i.setCssClass(this.element,"ace_smooth-blinking",t),this.$updateCursors(!0),this.restartTimer())},this.addCursor=function(){var t=i.createElement("div");return t.className="ace_cursor",this.element.appendChild(t),this.cursors.push(t),t},this.removeCursor=function(){if(this.cursors.length>1){var t=this.cursors.pop();return t.parentNode.removeChild(t),t}},this.hideCursor=function(){this.isVisible=!1,i.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,i.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){var t=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&i.removeCssClass(this.element,"ace_smooth-blinking"),t(!0),this.isBlinking&&this.blinkInterval&&this.isVisible)if(this.smoothBlinking&&setTimeout((function(){i.addCssClass(this.element,"ace_smooth-blinking")}).bind(this)),i.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var e=(function(){this.timeoutId=setTimeout(function(){t(!1)},.6*this.blinkInterval)}).bind(this);this.intervalId=setInterval(function(){t(!0),e()},this.blinkInterval),e()}else this.$stopCssAnimation()},this.getPixelPosition=function(t,e){if(!this.config||!this.session)return{left:0,top:0};t||(t=this.session.selection.getCursor());var n=this.session.documentToScreenPosition(t);return{left:this.$padding+(this.session.$bidiHandler.isBidiRow(n.row,t.row)?this.session.$bidiHandler.getPosLeft(n.column):n.column*this.config.characterWidth),top:(n.row-(e?this.config.firstRowScreen:0))*this.config.lineHeight}},this.isCursorInView=function(t,e){return t.top>=0&&t.topt.height+t.offset||o.top<0)&&n>1)){var a=this.cursors[r++]||this.addCursor(),l=a.style;this.drawCursor?this.drawCursor(a,o,t,e[n],this.session):this.isCursorInView(o,t)?(i.setStyle(l,"display","block"),i.translate(a,o.left,o.top),i.setStyle(l,"width",Math.round(t.characterWidth)+"px"),i.setStyle(l,"height",t.lineHeight+"px")):i.setStyle(l,"display","none")}}for(;this.cursors.length>r;)this.removeCursor();var c=this.session.getOverwrite();this.$setOverwrite(c),this.$pixelPos=o,this.restartTimer()},this.drawCursor=null,this.$setOverwrite=function(t){t!=this.overwrite&&(this.overwrite=t,t?i.addCssClass(this.element,"ace_overwrite-cursors"):i.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(r.prototype),e.Cursor=r}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(t,e,n){"use strict";var i=t("./lib/oop"),r=t("./lib/dom"),s=t("./lib/event"),o=t("./lib/event_emitter").EventEmitter,a=32768,l=function(t){this.element=r.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=r.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent="\xa0",this.element.appendChild(this.inner),t.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,s.addListener(this.element,"scroll",this.onScroll.bind(this)),s.addListener(this.element,"mousedown",s.preventDefault)};(function(){i.implement(this,o),this.setVisible=function(t){this.element.style.display=t?"":"none",this.isVisible=t,this.coeff=1}}).call(l.prototype);var c=function(t,e){l.call(this,t),this.scrollTop=0,this.scrollHeight=0,e.$scrollbarWidth=this.width=r.scrollbarWidth(t.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px",this.$minWidth=0};i.inherits(c,l),(function(){this.classSuffix="-v",this.onScroll=function(){if(!this.skipEvent){if(this.scrollTop=this.element.scrollTop,1!=this.coeff){var t=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-t)/(this.coeff-t)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},this.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},this.setHeight=function(t){this.element.style.height=t+"px"},this.setInnerHeight=this.setScrollHeight=function(t){this.scrollHeight=t,t>a?(this.coeff=a/t,t=a):1!=this.coeff&&(this.coeff=1),this.inner.style.height=t+"px"},this.setScrollTop=function(t){this.scrollTop!=t&&(this.skipEvent=!0,this.scrollTop=t,this.element.scrollTop=t*this.coeff)}}).call(c.prototype);var h=function(t,e){l.call(this,t),this.scrollLeft=0,this.height=e.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};i.inherits(h,l),(function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(t){this.element.style.width=t+"px"},this.setInnerWidth=function(t){this.inner.style.width=t+"px"},this.setScrollWidth=function(t){this.inner.style.width=t+"px"},this.setScrollLeft=function(t){this.scrollLeft!=t&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=t)}}).call(h.prototype),e.ScrollBar=c,e.ScrollBarV=c,e.ScrollBarH=h,e.VScrollBar=c,e.HScrollBar=h}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(t,e,n){"use strict";var i=t("./lib/event"),r=function(t,e){this.onRender=t,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=e||window;var n=this;this._flush=function(t){n.pending=!1;var e=n.changes;if(e&&(i.blockIdle(100),n.changes=0,n.onRender(e)),n.changes){if(n.$recursionLimit--<0)return;n.schedule()}else n.$recursionLimit=2}};(function(){this.schedule=function(t){this.changes=this.changes|t,this.changes&&!this.pending&&(i.nextFrame(this._flush),this.pending=!0)},this.clear=function(t){var e=this.changes;return this.changes=0,e}}).call(r.prototype),e.RenderLoop=r}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/useragent","ace/lib/event_emitter"],function(t,e,n){var i=t("../lib/oop"),r=t("../lib/dom"),s=t("../lib/lang"),o=t("../lib/event"),a=t("../lib/useragent"),l=t("../lib/event_emitter").EventEmitter,c=256,h="function"==typeof ResizeObserver,u=200,d=e.FontMetrics=function(t){this.el=r.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=r.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=r.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),t.appendChild(this.el),this.$measureNode.textContent=s.stringRepeat("X",c),this.$characterSize={width:0,height:0},h?this.$addObserver():this.checkForSizeChanges()};(function(){i.implement(this,l),this.$characterSize={width:0,height:0},this.$setMeasureNodeStyles=function(t,e){t.width=t.height="auto",t.left=t.top="0px",t.visibility="hidden",t.position="absolute",t.whiteSpace="pre",a.isIE<8?t["font-family"]="inherit":t.font="inherit",t.overflow=e?"hidden":"visible"},this.checkForSizeChanges=function(t){if(void 0===t&&(t=this.$measureSizes()),t&&(this.$characterSize.width!==t.width||this.$characterSize.height!==t.height)){this.$measureNode.style.fontWeight="bold";var e=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=t,this.charSizes=Object.create(null),this.allowBoldFonts=e&&e.width===t.width&&e.height===t.height,this._emit("changeCharacterSize",{data:t})}},this.$addObserver=function(){var t=this;this.$observer=new window.ResizeObserver(function(e){t.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var t=this;return this.$pollSizeChangesTimer=o.onIdle(function e(){t.checkForSizeChanges(),o.onIdle(e,500)},500)},this.setPolling=function(t){t?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},this.$measureSizes=function(t){var e={height:(t||this.$measureNode).clientHeight,width:(t||this.$measureNode).clientWidth/c};return 0===e.width||0===e.height?null:e},this.$measureCharWidth=function(t){return this.$main.textContent=s.stringRepeat(t,c),this.$main.getBoundingClientRect().width/c},this.getCharacterWidth=function(t){var e=this.charSizes[t];return void 0===e&&(e=this.charSizes[t]=this.$measureCharWidth(t)/this.$characterSize.width),e},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},this.$getZoom=function t(e){return e&&e.parentElement?(window.getComputedStyle(e).zoom||1)*t(e.parentElement):1},this.$initTransformMeasureNodes=function(){var t=function(t,e){return["div",{style:"position: absolute;top:"+t+"px;left:"+e+"px;"}]};this.els=r.buildDom([t(0,0),t(u,0),t(0,u),t(u,u)],this.el)},this.transformCoordinates=function(t,e){function n(t,e,n){var i=t[1]*e[0]-t[0]*e[1];return[(-e[1]*n[0]+e[0]*n[1])/i,(+t[1]*n[0]-t[0]*n[1])/i]}function i(t,e){return[t[0]-e[0],t[1]-e[1]]}function r(t,e){return[t[0]+e[0],t[1]+e[1]]}function s(t,e){return[t*e[0],t*e[1]]}function o(t){var e=t.getBoundingClientRect();return[e.left,e.top]}t&&(t=s(1/this.$getZoom(this.el),t)),this.els||this.$initTransformMeasureNodes();var a=o(this.els[0]),l=o(this.els[1]),c=o(this.els[2]),h=o(this.els[3]),d=n(i(h,l),i(h,c),i(r(l,c),r(h,a))),f=s(1+d[0],i(l,a)),p=s(1+d[1],i(c,a));if(e){var g=e,m=d[0]*g[0]/u+d[1]*g[1]/u+1,v=r(s(g[0],f),s(g[1],p));return r(s(1/m/u,v),a)}var y=i(t,a),w=n(i(f,s(d[0],y)),i(p,s(d[1],y)),y);return s(u,w)}}).call(d.prototype)}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/config","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter","ace/lib/useragent"],function(t,e,n){"use strict";var i=t("./lib/oop"),r=t("./lib/dom"),s=t("./config"),o=t("./layer/gutter").Gutter,a=t("./layer/marker").Marker,l=t("./layer/text").Text,c=t("./layer/cursor").Cursor,h=t("./scrollbar").HScrollBar,u=t("./scrollbar").VScrollBar,d=t("./renderloop").RenderLoop,f=t("./layer/font_metrics").FontMetrics,p=t("./lib/event_emitter").EventEmitter,g='.ace_br1 {border-top-left-radius : 3px;}.ace_br2 {border-top-right-radius : 3px;}.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}.ace_br4 {border-bottom-right-radius: 3px;}.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}.ace_br8 {border-bottom-left-radius : 3px;}.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_editor {position: relative;overflow: hidden;padding: 0;font: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'source-code-pro\', monospace;direction: ltr;text-align: left;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}.ace_scroller {position: absolute;overflow: hidden;top: 0;bottom: 0;background-color: inherit;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;cursor: text;}.ace_content {position: absolute;box-sizing: border-box;min-width: 100%;contain: style size layout;font-variant-ligatures: no-common-ligatures;}.ace_dragging .ace_scroller:before{position: absolute;top: 0;left: 0;right: 0;bottom: 0;content: \'\';background: rgba(250, 250, 250, 0.01);z-index: 1000;}.ace_dragging.ace_dark .ace_scroller:before{background: rgba(0, 0, 0, 0.01);}.ace_selecting, .ace_selecting * {cursor: text !important;}.ace_gutter {position: absolute;overflow : hidden;width: auto;top: 0;bottom: 0;left: 0;cursor: default;z-index: 4;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;contain: style size layout;}.ace_gutter-active-line {position: absolute;left: 0;right: 0;}.ace_scroller.ace_scroll-left {box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;}.ace_gutter-cell {position: absolute;top: 0;left: 0;right: 0;padding-left: 19px;padding-right: 6px;background-repeat: no-repeat;}.ace_gutter-cell.ace_error {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: 2px center;}.ace_gutter-cell.ace_warning {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");background-position: 2px center;}.ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");background-position: 2px center;}.ace_dark .ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");}.ace_scrollbar {contain: strict;position: absolute;right: 0;bottom: 0;z-index: 6;}.ace_scrollbar-inner {position: absolute;cursor: text;left: 0;top: 0;}.ace_scrollbar-v{overflow-x: hidden;overflow-y: scroll;top: 0;}.ace_scrollbar-h {overflow-x: scroll;overflow-y: hidden;left: 0;}.ace_print-margin {position: absolute;height: 100%;}.ace_text-input {position: absolute;z-index: 0;width: 0.5em;height: 1em;opacity: 0;background: transparent;-moz-appearance: none;appearance: none;border: none;resize: none;outline: none;overflow: hidden;font: inherit;padding: 0 1px;margin: 0 -1px;contain: strict;-ms-user-select: text;-moz-user-select: text;-webkit-user-select: text;user-select: text;white-space: pre!important;}.ace_text-input.ace_composition {background: transparent;color: inherit;z-index: 1000;opacity: 1;}.ace_composition_placeholder { color: transparent }.ace_composition_marker { border-bottom: 1px solid;position: absolute;border-radius: 0;margin-top: 1px;}[ace_nocontext=true] {transform: none!important;filter: none!important;clip-path: none!important;mask : none!important;contain: none!important;perspective: none!important;mix-blend-mode: initial!important;z-index: auto;}.ace_layer {z-index: 1;position: absolute;overflow: hidden;word-wrap: normal;white-space: pre;height: 100%;width: 100%;box-sizing: border-box;pointer-events: none;}.ace_gutter-layer {position: relative;width: auto;text-align: right;pointer-events: auto;height: 1000000px;contain: style size layout;}.ace_text-layer {font: inherit !important;position: absolute;height: 1000000px;width: 1000000px;contain: style size layout;}.ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group {contain: style size layout;position: absolute;top: 0;left: 0;right: 0;}.ace_hidpi .ace_text-layer,.ace_hidpi .ace_gutter-layer,.ace_hidpi .ace_content,.ace_hidpi .ace_gutter {contain: strict;will-change: transform;}.ace_hidpi .ace_text-layer > .ace_line, .ace_hidpi .ace_text-layer > .ace_line_group {contain: strict;}.ace_cjk {display: inline-block;text-align: center;}.ace_cursor-layer {z-index: 4;}.ace_cursor {z-index: 4;position: absolute;box-sizing: border-box;border-left: 2px solid;transform: translatez(0);}.ace_multiselect .ace_cursor {border-left-width: 1px;}.ace_slim-cursors .ace_cursor {border-left-width: 1px;}.ace_overwrite-cursors .ace_cursor {border-left-width: 0;border-bottom: 1px solid;}.ace_hidden-cursors .ace_cursor {opacity: 0.2;}.ace_hasPlaceholder .ace_hidden-cursors .ace_cursor {opacity: 0;}.ace_smooth-blinking .ace_cursor {transition: opacity 0.18s;}.ace_animate-blinking .ace_cursor {animation-duration: 1000ms;animation-timing-function: step-end;animation-name: blink-ace-animate;animation-iteration-count: infinite;}.ace_animate-blinking.ace_smooth-blinking .ace_cursor {animation-duration: 1000ms;animation-timing-function: ease-in-out;animation-name: blink-ace-animate-smooth;}@keyframes blink-ace-animate {from, to { opacity: 1; }60% { opacity: 0; }}@keyframes blink-ace-animate-smooth {from, to { opacity: 1; }45% { opacity: 1; }60% { opacity: 0; }85% { opacity: 0; }}.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {position: absolute;z-index: 3;}.ace_marker-layer .ace_selection {position: absolute;z-index: 5;}.ace_marker-layer .ace_bracket {position: absolute;z-index: 6;}.ace_marker-layer .ace_error_bracket {position: absolute;border-bottom: 1px solid #DE5555;border-radius: 0;}.ace_marker-layer .ace_active-line {position: absolute;z-index: 2;}.ace_marker-layer .ace_selected-word {position: absolute;z-index: 4;box-sizing: border-box;}.ace_line .ace_fold {box-sizing: border-box;display: inline-block;height: 11px;margin-top: -2px;vertical-align: middle;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");background-repeat: no-repeat, repeat-x;background-position: center center, top left;color: transparent;border: 1px solid black;border-radius: 2px;cursor: pointer;pointer-events: auto;}.ace_dark .ace_fold {}.ace_fold:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");}.ace_tooltip {background-color: #FFF;background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));border: 1px solid gray;border-radius: 1px;box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);color: black;max-width: 100%;padding: 3px 4px;position: fixed;z-index: 999999;box-sizing: border-box;cursor: default;white-space: pre;word-wrap: break-word;line-height: normal;font-style: normal;font-weight: normal;letter-spacing: normal;pointer-events: none;}.ace_folding-enabled > .ace_gutter-cell {padding-right: 13px;}.ace_fold-widget {box-sizing: border-box;margin: 0 -12px 0 1px;display: none;width: 11px;vertical-align: top;background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: center;border-radius: 3px;border: 1px solid transparent;cursor: pointer;}.ace_folding-enabled .ace_fold-widget {display: inline-block; }.ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");}.ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");}.ace_fold-widget:hover {border: 1px solid rgba(0, 0, 0, 0.3);background-color: rgba(255, 255, 255, 0.2);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);}.ace_fold-widget:active {border: 1px solid rgba(0, 0, 0, 0.4);background-color: rgba(0, 0, 0, 0.05);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);}.ace_dark .ace_fold-widget {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");}.ace_dark .ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget:hover {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);background-color: rgba(255, 255, 255, 0.1);}.ace_dark .ace_fold-widget:active {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);}.ace_inline_button {border: 1px solid lightgray;display: inline-block;margin: -1px 8px;padding: 0 5px;pointer-events: auto;cursor: pointer;}.ace_inline_button:hover {border-color: gray;background: rgba(200,200,200,0.2);display: inline-block;pointer-events: auto;}.ace_fold-widget.ace_invalid {background-color: #FFB4B4;border-color: #DE5555;}.ace_fade-fold-widgets .ace_fold-widget {transition: opacity 0.4s ease 0.05s;opacity: 0;}.ace_fade-fold-widgets:hover .ace_fold-widget {transition: opacity 0.05s ease 0.05s;opacity:1;}.ace_underline {text-decoration: underline;}.ace_bold {font-weight: bold;}.ace_nobold .ace_bold {font-weight: normal;}.ace_italic {font-style: italic;}.ace_error-marker {background-color: rgba(255, 0, 0,0.2);position: absolute;z-index: 9;}.ace_highlight-marker {background-color: rgba(255, 255, 0,0.2);position: absolute;z-index: 8;}.ace_mobile-menu {position: absolute;line-height: 1.5;border-radius: 4px;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;background: white;box-shadow: 1px 3px 2px grey;border: 1px solid #dcdcdc;color: black;}.ace_dark > .ace_mobile-menu {background: #333;color: #ccc;box-shadow: 1px 3px 2px grey;border: 1px solid #444;}.ace_mobile-button {padding: 2px;cursor: pointer;overflow: hidden;}.ace_mobile-button:hover {background-color: #eee;opacity:1;}.ace_mobile-button:active {background-color: #ddd;}.ace_placeholder {font-family: arial;transform: scale(0.9);transform-origin: left;white-space: pre;opacity: 0.7;margin: 0 10px;}',m=t("./lib/useragent"),v=m.isIE;r.importCssString(g,"ace_editor.css");var y=function(t,e){var n=this;this.container=t||r.createElement("div"),r.addCssClass(this.container,"ace_editor"),r.HI_DPI&&r.addCssClass(this.container,"ace_hidpi"),this.setTheme(e),this.$gutter=r.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden",!0),this.scroller=r.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=r.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new o(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new a(this.content);var i=this.$textLayer=new l(this.content);this.canvas=i.element,this.$markerFront=new a(this.content),this.$cursorLayer=new c(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new u(this.container,this),this.scrollBarH=new h(this.container,this),this.scrollBarV.on("scroll",function(t){n.$scrollAnimation||n.session.setScrollTop(t.data-n.scrollMargin.top)}),this.scrollBarH.on("scroll",function(t){n.$scrollAnimation||n.session.setScrollLeft(t.data-n.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new f(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.on("changeCharacterSize",function(t){n.updateCharacterSize(),n.onResize(!0,n.gutterWidth,n.$size.width,n.$size.height),n._signal("changeCharacterSize",t)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.margin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$keepTextAreaAtCursor=!m.isIOS,this.$loop=new d(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),s.resetOptions(this),s._signal("renderer",this)};(function(){this.CHANGE_CURSOR=1,this.CHANGE_MARKER=2,this.CHANGE_GUTTER=4,this.CHANGE_SCROLL=8,this.CHANGE_LINES=16,this.CHANGE_TEXT=32,this.CHANGE_SIZE=64,this.CHANGE_MARKER_BACK=128,this.CHANGE_MARKER_FRONT=256,this.CHANGE_FULL=512,this.CHANGE_H_SCROLL=1024,i.implement(this,p),this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin(),r.setStyle(this.scroller.style,"line-height",this.lineHeight+"px")},this.setSession=function(t){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=t,t&&this.scrollMargin.top&&t.getScrollTop()<=0&&t.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(t),this.$markerBack.setSession(t),this.$markerFront.setSession(t),this.$gutterLayer.setSession(t),this.$textLayer.setSession(t),t&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},this.updateLines=function(t,e,n){if(void 0===e&&(e=1/0),this.$changedLines?(this.$changedLines.firstRow>t&&(this.$changedLines.firstRow=t),this.$changedLines.lastRowthis.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},this.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},this.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},this.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},this.updateFull=function(t){t?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},this.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},this.$changes=0,this.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},this.onResize=function(t,e,n,i){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=t?1:0;var r=this.container;i||(i=r.clientHeight||r.scrollHeight),n||(n=r.clientWidth||r.scrollWidth);var s=this.$updateCachedSize(t,e,n,i);if(!this.$size.scrollerHeight||!n&&!i)return this.resizing=0;t&&(this.$gutterLayer.$padding=null),t?this.$renderChanges(s|this.$changes,!0):this.$loop.schedule(s|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarV.scrollLeft=this.scrollBarV.scrollTop=null}},this.$updateCachedSize=function(t,e,n,i){var s=0,o=this.$size,a={width:o.width,height:o.height,scrollerHeight:o.scrollerHeight,scrollerWidth:o.scrollerWidth};if((i-=this.$extraHeight||0)&&(t||o.height!=i)&&(o.height=i,s|=this.CHANGE_SIZE,o.scrollerHeight=o.height,this.$horizScroll&&(o.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",s|=this.CHANGE_SCROLL),n&&(t||o.width!=n)){s|=this.CHANGE_SIZE,o.width=n,null==e&&(e=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=e,r.setStyle(this.scrollBarH.element.style,"left",e+"px"),r.setStyle(this.scroller.style,"left",e+this.margin.left+"px"),o.scrollerWidth=Math.max(0,n-e-this.scrollBarV.getWidth()-this.margin.h),r.setStyle(this.$gutter.style,"left",this.margin.left+"px");var l=this.scrollBarV.getWidth()+"px";r.setStyle(this.scrollBarH.element.style,"right",l),r.setStyle(this.scroller.style,"right",l),r.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||t)&&(s|=this.CHANGE_FULL)}return o.$dirty=!n||!i,s&&this._signal("resize",a),s},this.onGutterResize=function(t){var e=this.$showGutter?t:0;e!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,e,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()||this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):this.$computeLayerConfig()},this.adjustWrapLimit=function(){var t=Math.floor((this.$size.scrollerWidth-2*this.$padding)/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)},this.setAnimatedScroll=function(t){this.setOption("animatedScroll",t)},this.getAnimatedScroll=function(){return this.$animatedScroll},this.setShowInvisibles=function(t){this.setOption("showInvisibles",t),this.session.$bidiHandler.setShowInvisibles(t)},this.getShowInvisibles=function(){return this.getOption("showInvisibles")},this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},this.setDisplayIndentGuides=function(t){this.setOption("displayIndentGuides",t)},this.setShowPrintMargin=function(t){this.setOption("showPrintMargin",t)},this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},this.setPrintMarginColumn=function(t){this.setOption("printMarginColumn",t)},this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},this.getShowGutter=function(){return this.getOption("showGutter")},this.setShowGutter=function(t){return this.setOption("showGutter",t)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.setFadeFoldWidgets=function(t){this.setOption("fadeFoldWidgets",t)},this.setHighlightGutterLine=function(t){this.setOption("highlightGutterLine",t)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.$updatePrintMargin=function(){if(this.$showPrintMargin||this.$printMarginEl){if(!this.$printMarginEl){var t=r.createElement("div");t.className="ace_layer ace_print-margin-layer",this.$printMarginEl=r.createElement("div"),this.$printMarginEl.className="ace_print-margin",t.appendChild(this.$printMarginEl),this.content.insertBefore(t,this.content.firstChild)}var e=this.$printMarginEl.style;e.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",e.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&-1==this.session.$wrap&&this.adjustWrapLimit()}},this.getContainerElement=function(){return this.container},this.getMouseEventTarget=function(){return this.scroller},this.getTextAreaContainer=function(){return this.container},this.$moveTextAreaToCursor=function(){if(!this.$isMousePressed){var t=this.textarea.style,e=this.$composition;if(this.$keepTextAreaAtCursor||e){var n=this.$cursorLayer.$pixelPos;if(n){e&&e.markerRange&&(n=this.$cursorLayer.getPixelPosition(e.markerRange.start,!0));var i=this.layerConfig,s=n.top,o=n.left,a=e&&e.useTextareaForIME?this.lineHeight:v?0:1;if((s-=i.offset)<0||s>i.height-a)r.translate(this.textarea,0,0);else{var l=1,c=this.$size.height-a;e?e.useTextareaForIME?l=this.characterWidth*this.session.$getStringScreenWidth(this.textarea.value)[0]:s+=this.lineHeight+2:s+=this.lineHeight,(o-=this.scrollLeft)>this.$size.scrollerWidth-l&&(o=this.$size.scrollerWidth-l),o+=this.gutterWidth+this.margin.left,r.setStyle(t,"height",a+"px"),r.setStyle(t,"width",l+"px"),r.translate(this.textarea,Math.min(o,this.$size.scrollerWidth-l),Math.min(s,c))}}}else r.translate(this.textarea,-100,0)}},this.getFirstVisibleRow=function(){return this.layerConfig.firstRow},this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(0===this.layerConfig.offset?0:1)},this.getLastFullyVisibleRow=function(){var t=this.layerConfig,e=t.lastRow;return this.session.documentToScreenRow(e,0)*t.lineHeight-this.session.getScrollTop()>t.height-t.lineHeight?e-1:e},this.getLastVisibleRow=function(){return this.layerConfig.lastRow},this.$padding=null,this.setPadding=function(t){this.$padding=t,this.$textLayer.setPadding(t),this.$cursorLayer.setPadding(t),this.$markerFront.setPadding(t),this.$markerBack.setPadding(t),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},this.setScrollMargin=function(t,e,n,i){var r=this.scrollMargin;r.top=0|t,r.bottom=0|e,r.right=0|i,r.left=0|n,r.v=r.top+r.bottom,r.h=r.left+r.right,r.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-r.top),this.updateFull()},this.setMargin=function(t,e,n,i){var r=this.margin;r.top=0|t,r.bottom=0|e,r.right=0|i,r.left=0|n,r.v=r.top+r.bottom,r.h=r.left+r.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setHScrollBarAlwaysVisible=function(t){this.setOption("hScrollBarAlwaysVisible",t)},this.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},this.setVScrollBarAlwaysVisible=function(t){this.setOption("vScrollBarAlwaysVisible",t)},this.$updateScrollBarV=function(){var t=this.layerConfig.maxHeight,e=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&this.scrollTop>(t-=(e-this.lineHeight)*this.$scrollPastEnd)-e&&(t=this.scrollTop+e,this.scrollBarV.scrollTop=null),this.scrollBarV.setScrollHeight(t+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},this.$frozen=!1,this.freeze=function(){this.$frozen=!0},this.unfreeze=function(){this.$frozen=!1},this.$renderChanges=function(t,e){if(this.$changes&&(t|=this.$changes,this.$changes=0),this.session&&this.container.offsetWidth&&!this.$frozen&&(t||e)){if(this.$size.$dirty)return this.$changes|=t,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",t),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var n=this.layerConfig;if(t&this.CHANGE_FULL||t&this.CHANGE_SIZE||t&this.CHANGE_TEXT||t&this.CHANGE_LINES||t&this.CHANGE_SCROLL||t&this.CHANGE_H_SCROLL){if(t|=this.$computeLayerConfig()|this.$loop.clear(),n.firstRow!=this.layerConfig.firstRow&&n.firstRowScreen==this.layerConfig.firstRowScreen){var i=this.scrollTop+(n.firstRow-this.layerConfig.firstRow)*this.lineHeight;i>0&&(this.scrollTop=i,t|=this.CHANGE_SCROLL,t|=this.$computeLayerConfig()|this.$loop.clear())}n=this.layerConfig,this.$updateScrollBarV(),t&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),r.translate(this.content,-this.scrollLeft,-n.offset);var s=n.minHeight+"px";r.setStyle(this.content.style,"width",n.width+2*this.$padding+"px"),r.setStyle(this.content.style,"height",s)}if(t&this.CHANGE_H_SCROLL&&(r.translate(this.content,-this.scrollLeft,-n.offset),this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left"),t&this.CHANGE_FULL)return this.$changedLines=null,this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$moveTextAreaToCursor(),void this._signal("afterRender",t);if(t&this.CHANGE_SCROLL)return this.$changedLines=null,t&this.CHANGE_TEXT||t&this.CHANGE_LINES?this.$textLayer.update(n):this.$textLayer.scrollLines(n),this.$showGutter&&(t&this.CHANGE_GUTTER||t&this.CHANGE_LINES?this.$gutterLayer.update(n):this.$gutterLayer.scrollLines(n)),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$moveTextAreaToCursor(),void this._signal("afterRender",t);t&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n)):t&this.CHANGE_LINES?(this.$updateLines()||t&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(n):t&this.CHANGE_TEXT||t&this.CHANGE_GUTTER?this.$showGutter&&this.$gutterLayer.update(n):t&this.CHANGE_CURSOR&&this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(n),t&this.CHANGE_CURSOR&&(this.$cursorLayer.update(n),this.$moveTextAreaToCursor()),t&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(n),t&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(n),this._signal("afterRender",t)}else this.$changes|=t},this.$autosize=function(){var t=this.session.getScreenLength()*this.lineHeight,e=this.$maxLines*this.lineHeight,n=Math.min(e,Math.max((this.$minLines||1)*this.lineHeight,t))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(n+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&n>this.$maxPixelHeight&&(n=this.$maxPixelHeight);var i=!(n<=2*this.lineHeight)&&t>e;if(n!=this.desiredHeight||this.$size.height!=this.desiredHeight||i!=this.$vScroll){i!=this.$vScroll&&(this.$vScroll=i,this.scrollBarV.setVisible(i));var r=this.container.clientWidth;this.container.style.height=n+"px",this.$updateCachedSize(!0,this.$gutterWidth,r,n),this.desiredHeight=n,this._signal("autosize")}},this.$computeLayerConfig=function(){var t=this.session,e=this.$size,n=e.height<=2*this.lineHeight,i=this.session.getScreenLength()*this.lineHeight,r=this.$getLongestLine(),s=!n&&(this.$hScrollBarAlwaysVisible||e.scrollerWidth-r-2*this.$padding<0),o=this.$horizScroll!==s;o&&(this.$horizScroll=s,this.scrollBarH.setVisible(s));var a=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var l=e.scrollerHeight+this.lineHeight,c=!this.$maxLines&&this.$scrollPastEnd?(e.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;i+=c;var h=this.scrollMargin;this.session.setScrollTop(Math.max(-h.top,Math.min(this.scrollTop,i-e.scrollerHeight+h.bottom))),this.session.setScrollLeft(Math.max(-h.left,Math.min(this.scrollLeft,r+2*this.$padding-e.scrollerWidth+h.right)));var u=!n&&(this.$vScrollBarAlwaysVisible||e.scrollerHeight-i+c<0||this.scrollTop>h.top),d=a!==u;d&&(this.$vScroll=u,this.scrollBarV.setVisible(u));var f,p,g=this.scrollTop%this.lineHeight,m=Math.ceil(l/this.lineHeight)-1,v=Math.max(0,Math.round((this.scrollTop-g)/this.lineHeight)),y=v+m,w=this.lineHeight;v=t.screenToDocumentRow(v,0);var b=t.getFoldLine(v);b&&(v=b.start.row),f=t.documentToScreenRow(v,0),p=t.getRowLength(v)*w,y=Math.min(t.screenToDocumentRow(y,0),t.getLength()-1),l=e.scrollerHeight+t.getRowLength(y)*w+p,g=this.scrollTop-f*w;var x=0;return(this.layerConfig.width!=r||o)&&(x=this.CHANGE_H_SCROLL),(o||d)&&(x|=this.$updateCachedSize(!0,this.gutterWidth,e.width,e.height),this._signal("scrollbarVisibilityChanged"),d&&(r=this.$getLongestLine())),this.layerConfig={width:r,padding:this.$padding,firstRow:v,firstRowScreen:f,lastRow:y,lineHeight:w,characterWidth:this.characterWidth,minHeight:l,maxHeight:i,offset:g,gutterOffset:w?Math.max(0,Math.ceil((g+e.height-e.scrollerHeight)/w)):0,height:this.$size.scrollerHeight},this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(r-this.$padding),x},this.$updateLines=function(){if(this.$changedLines){var t=this.$changedLines.firstRow,e=this.$changedLines.lastRow;this.$changedLines=null;var n=this.layerConfig;if(!(t>n.lastRow+1||ethis.$textLayer.MAX_LINE_LENGTH&&(t=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(t*this.characterWidth))},this.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},this.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},this.addGutterDecoration=function(t,e){this.$gutterLayer.addGutterDecoration(t,e)},this.removeGutterDecoration=function(t,e){this.$gutterLayer.removeGutterDecoration(t,e)},this.updateBreakpoints=function(t){this.$loop.schedule(this.CHANGE_GUTTER)},this.setAnnotations=function(t){this.$gutterLayer.setAnnotations(t),this.$loop.schedule(this.CHANGE_GUTTER)},this.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},this.hideCursor=function(){this.$cursorLayer.hideCursor()},this.showCursor=function(){this.$cursorLayer.showCursor()},this.scrollSelectionIntoView=function(t,e,n){this.scrollCursorIntoView(t,n),this.scrollCursorIntoView(e,n)},this.scrollCursorIntoView=function(t,e,n){if(0!==this.$size.scrollerHeight){var i=this.$cursorLayer.getPixelPosition(t),r=i.left,s=i.top,o=n&&n.top||0,a=n&&n.bottom||0,l=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;l+o>s?(e&&l+o>s+this.lineHeight&&(s-=e*this.$size.scrollerHeight),0===s&&(s=-this.scrollMargin.top),this.session.setScrollTop(s)):l+this.$size.scrollerHeight-ar?(r=1-this.scrollMargin.top||e>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom||t<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left||t>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right||void 0},this.pixelToScreenCoordinates=function(t,e){var n;if(this.$hasCssTransforms){n={top:0,left:0};var i=this.$fontMetrics.transformCoordinates([t,e]);t=i[1]-this.gutterWidth-this.margin.left,e=i[0]}else n=this.scroller.getBoundingClientRect();var r=t+this.scrollLeft-n.left-this.$padding,s=r/this.characterWidth,o=Math.floor((e+this.scrollTop-n.top)/this.lineHeight),a=this.$blockCursor?Math.floor(s):Math.round(s);return{row:o,column:a,side:s-a>0?1:-1,offsetX:r}},this.screenToTextCoordinates=function(t,e){var n;if(this.$hasCssTransforms){n={top:0,left:0};var i=this.$fontMetrics.transformCoordinates([t,e]);t=i[1]-this.gutterWidth-this.margin.left,e=i[0]}else n=this.scroller.getBoundingClientRect();var r=t+this.scrollLeft-n.left-this.$padding,s=r/this.characterWidth,o=this.$blockCursor?Math.floor(s):Math.round(s),a=Math.floor((e+this.scrollTop-n.top)/this.lineHeight);return this.session.screenToDocumentPosition(a,Math.max(o,0),r)},this.textToScreenCoordinates=function(t,e){var n=this.scroller.getBoundingClientRect(),i=this.session.documentToScreenPosition(t,e),r=this.$padding+(this.session.$bidiHandler.isBidiRow(i.row,t)?this.session.$bidiHandler.getPosLeft(i.column):Math.round(i.column*this.characterWidth));return{pageX:n.left+r-this.scrollLeft,pageY:n.top+i.row*this.lineHeight-this.scrollTop}},this.visualizeFocus=function(){r.addCssClass(this.container,"ace_focus")},this.visualizeBlur=function(){r.removeCssClass(this.container,"ace_focus")},this.showComposition=function(t){this.$composition=t,t.cssText||(t.cssText=this.textarea.style.cssText),null==t.useTextareaForIME&&(t.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(r.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):t.markerId=this.session.addMarker(t.markerRange,"ace_composition_marker","text")},this.setCompositionText=function(t){var e=this.session.selection.cursor;this.addToken(t,"composition_placeholder",e.row,e.column),this.$moveTextAreaToCursor()},this.hideComposition=function(){if(this.$composition){this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),r.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var t=this.session.selection.cursor;this.removeExtraToken(t.row,t.column),this.$composition=null,this.$cursorLayer.element.style.display=""}},this.addToken=function(t,e,n,i){var r=this.session;r.bgTokenizer.lines[n]=null;var s={type:e,value:t},o=r.getTokens(n);if(null==i)o.push(s);else for(var a=0,l=0;l50&&t.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:t}))}}).call(l.prototype),e.UIWorkerClient=function(t,e,n){var i=null,r=!1,a=Object.create(s),c=[],h=new l({messageBuffer:c,terminate:function(){},postMessage:function(t){c.push(t),i&&(r?setTimeout(u):u())}});h.setEmitSync=function(t){r=t};var u=function(){var t=c.shift();t.command?i[t.command].apply(i,t.args):t.event&&a._signal(t.event,t.data)};return a.postMessage=function(t){h.onMessage({data:t})},a.callback=function(t,e){this.postMessage({type:"call",id:e,data:t})},a.emit=function(t,e){this.postMessage({type:"event",name:t,data:e})},o.loadModule(["worker",e],function(t){for(i=new t[n](a);c.length;)u()}),h},e.WorkerClient=l,e.createWorker=a}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(t,e,n){"use strict";var i=t("./range").Range,r=t("./lib/event_emitter").EventEmitter,s=t("./lib/oop"),o=function(t,e,n,i,r,s){var o=this;this.length=e,this.session=t,this.doc=t.getDocument(),this.mainClass=r,this.othersClass=s,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=i,this.$onCursorChange=function(){setTimeout(function(){o.onCursorChange()})},this.$pos=n;var a=t.getUndoManager().$undoStack||t.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=a.length,this.setup(),t.selection.on("changeCursor",this.$onCursorChange)};(function(){s.implement(this,r),this.setup=function(){var t=this,e=this.doc,n=this.session;this.selectionBefore=n.selection.toJSON(),n.selection.inMultiSelectMode&&n.selection.toSingleRange(),this.pos=e.createAnchor(this.$pos.row,this.$pos.column);var r=this.pos;r.$insertRight=!0,r.detach(),r.markerId=n.addMarker(new i(r.row,r.column,r.row,r.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(n){var i=e.createAnchor(n.row,n.column);i.$insertRight=!0,i.detach(),t.others.push(i)}),n.setUndoSelect(!1)},this.showOtherMarkers=function(){if(!this.othersActive){var t=this.session,e=this;this.othersActive=!0,this.others.forEach(function(n){n.markerId=t.addMarker(new i(n.row,n.column,n.row,n.column+e.length),e.othersClass,null,!1)})}},this.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var t=0;t=this.pos.column&&e.start.column<=this.pos.column+this.length+1,s=e.start.column-this.pos.column;if(this.updateAnchors(t),r&&(this.length+=n),r&&!this.session.$fromUndo)if("insert"===t.action)for(var o=this.others.length-1;o>=0;o--)this.doc.insertMergedLines(l={row:(a=this.others[o]).row,column:a.column+s},t.lines);else if("remove"===t.action)for(o=this.others.length-1;o>=0;o--){var a,l;this.doc.remove(new i((l={row:(a=this.others[o]).row,column:a.column+s}).row,l.column,l.row,l.column-n))}this.$updating=!1,this.updateMarkers()}},this.updateAnchors=function(t){this.pos.onChange(t);for(var e=this.others.length;e--;)this.others[e].onChange(t);this.updateMarkers()},this.updateMarkers=function(){if(!this.$updating){var t=this,e=this.session,n=function(n,r){e.removeMarker(n.markerId),n.markerId=e.addMarker(new i(n.row,n.column,n.row,n.column+t.length),r,null,!1)};n(this.pos,this.mainClass);for(var r=this.others.length;r--;)n(this.others[r],this.othersClass)}},this.onCursorChange=function(t){if(!this.$updating&&this.session){var e=this.session.selection.getCursor();e.row===this.pos.row&&e.column>=this.pos.column&&e.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",t)):(this.hideOtherMarkers(),this._emit("cursorLeave",t))}},this.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.off("change",this.$onUpdate),this.session.selection.off("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},this.cancel=function(){if(-1!==this.$undoStackDepth){for(var t=this.session.getUndoManager(),e=(t.$undoStack||t.$undostack).length-this.$undoStackDepth,n=0;n1?t.multiSelect.joinSelections():t.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(t){t.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(t){t.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(t){t.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],e.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(t){t.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(t){return t&&t.inMultiSelectMode}}];var i=t("../keyboard/hash_handler").HashHandler;e.keyboardHandler=new i(e.multiSelectCommands)}),ace.define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(t,e,n){var i=t("./range_list").RangeList,r=t("./range").Range,s=t("./selection").Selection,o=t("./mouse/multi_select_handler").onMouseDown,a=t("./lib/event"),l=t("./lib/lang"),c=t("./commands/multi_select_commands");e.commands=c.defaultCommands.concat(c.multiSelectCommands);var h=new(0,t("./search").Search),u=t("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(u.prototype),(function(){this.ranges=null,this.rangeList=null,this.addRange=function(t,e){if(t){if(!this.inMultiSelectMode&&0===this.rangeCount){var n=this.toOrientedRange();if(this.rangeList.add(n),this.rangeList.add(t),2!=this.rangeList.ranges.length)return this.rangeList.removeAll(),e||this.fromOrientedRange(t);this.rangeList.removeAll(),this.rangeList.add(n),this.$onAddRange(n)}t.cursor||(t.cursor=t.end);var i=this.rangeList.add(t);return this.$onAddRange(t),i.length&&this.$onRemoveRange(i),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),e||this.fromOrientedRange(t)}},this.toSingleRange=function(t){t=t||this.ranges[0];var e=this.rangeList.removeAll();e.length&&this.$onRemoveRange(e),t&&this.fromOrientedRange(t)},this.substractPoint=function(t){var e=this.rangeList.substractPoint(t);if(e)return this.$onRemoveRange(e),e[0]},this.mergeOverlappingRanges=function(){var t=this.rangeList.merge();t.length&&this.$onRemoveRange(t)},this.$onAddRange=function(t){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(t),this._signal("addRange",{range:t})},this.$onRemoveRange=function(t){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var e=this.rangeList.ranges.pop();t.push(e),this.rangeCount=0}for(var n=t.length;n--;){var i=this.ranges.indexOf(t[n]);this.ranges.splice(i,1)}this._signal("removeRange",{ranges:t}),0===this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),(e=e||this.ranges[0])&&!e.isEqual(this.getRange())&&this.fromOrientedRange(e)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new i,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){for(var t=this.ranges.length?this.ranges:[this.getRange()],e=[],n=0;n1){var t=this.rangeList.ranges,e=t[t.length-1],n=r.fromPoints(t[0].start,e.end);this.toSingleRange(),this.setSelectionRange(n,e.cursor==e.start)}else{var i=this.session.documentToScreenPosition(this.cursor),s=this.session.documentToScreenPosition(this.anchor);this.rectangularRangeBlock(i,s).forEach(this.addRange,this)}},this.rectangularRangeBlock=function(t,e,n){var i=[],s=t.column0;)y--;if(y>0)for(var w=0;i[w].isEmpty();)w++;for(var b=y;b>=w;b--)i[b].isEmpty()&&i.splice(b,1)}return i}}).call(s.prototype);var d=t("./editor").Editor;function f(t){t.$multiselectOnSessionChange||(t.$onAddRange=t.$onAddRange.bind(t),t.$onRemoveRange=t.$onRemoveRange.bind(t),t.$onMultiSelect=t.$onMultiSelect.bind(t),t.$onSingleSelect=t.$onSingleSelect.bind(t),t.$multiselectOnSessionChange=e.onSessionChange.bind(t),t.$checkMultiselectChange=t.$checkMultiselectChange.bind(t),t.$multiselectOnSessionChange(t),t.on("changeSession",t.$multiselectOnSessionChange),t.on("mousedown",o),t.commands.addCommands(c.defaultCommands),function(t){if(t.textInput){var e=t.textInput.getElement(),n=!1;a.addListener(e,"keydown",function(e){t.$blockSelectEnabled&&18==e.keyCode&&!(e.ctrlKey||e.shiftKey||e.metaKey)?n||(t.renderer.setMouseCursor("crosshair"),n=!0):n&&i()},t),a.addListener(e,"keyup",i,t),a.addListener(e,"blur",i,t)}function i(e){n&&(t.renderer.setMouseCursor(""),n=!1)}}(t))}(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(t){t.cursor||(t.cursor=t.end);var e=this.getSelectionStyle();return t.marker=this.session.addMarker(t,"ace_selection",e),this.session.$selectionMarkers.push(t),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,t},this.removeSelectionMarker=function(t){if(t.marker){this.session.removeMarker(t.marker);var e=this.session.$selectionMarkers.indexOf(t);-1!=e&&this.session.$selectionMarkers.splice(e,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(t){for(var e=this.session.$selectionMarkers,n=t.length;n--;){var i=t[n];if(i.marker){this.session.removeMarker(i.marker);var r=e.indexOf(i);-1!=r&&e.splice(r,1)}}this.session.selectionMarkerCount=e.length},this.$onAddRange=function(t){this.addSelectionMarker(t.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(t){this.removeSelectionMarkers(t.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(t){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(c.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(t){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(c.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(t){var e=t.command,n=t.editor;if(n.multiSelect){if(e.multiSelectAction)"forEach"==e.multiSelectAction?i=n.forEachSelection(e,t.args):"forEachLine"==e.multiSelectAction?i=n.forEachSelection(e,t.args,!0):"single"==e.multiSelectAction?(n.exitMultiSelectMode(),i=e.exec(n,t.args||{})):i=e.multiSelectAction(n,t.args||{});else{var i=e.exec(n,t.args||{});n.multiSelect.addRange(n.multiSelect.toOrientedRange()),n.multiSelect.mergeOverlappingRanges()}return i}},this.forEachSelection=function(t,e,n){if(!this.inVirtualSelectionMode){var i,r=1==n||n&&n.$byLines,o=this.session,a=this.selection,l=(n&&n.keepOrder?a:a.rangeList).ranges;if(!l.length)return t.exec?t.exec(this,e||{}):t(this,e||{});var c=a._eventRegistry;a._eventRegistry={};var h=new s(o);this.inVirtualSelectionMode=!0;for(var u=l.length;u--;){if(r)for(;u>0&&l[u].start.row==l[u-1].end.row;)u--;h.fromOrientedRange(l[u]),h.index=u,this.selection=o.selection=h;var d=t.exec?t.exec(this,e||{}):t(this,e||{});i||void 0===d||(i=d),h.toOrientedRange(l[u])}h.detach(),this.selection=o.selection=a,this.inVirtualSelectionMode=!1,a._eventRegistry=c,a.mergeOverlappingRanges(),a.ranges[0]&&a.fromOrientedRange(a.ranges[0]);var f=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),f&&f.from==f.to&&this.renderer.animateScrolling(f.from),i}},this.exitMultiSelectMode=function(){this.inMultiSelectMode&&!this.inVirtualSelectionMode&&this.multiSelect.toSingleRange()},this.getSelectedText=function(){var t="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var e=this.multiSelect.rangeList.ranges,n=[],i=0;io&&(o=n.column),ih?t.insert(i,l.stringRepeat(" ",s-h)):t.remove(new r(i.row,i.column,i.row,i.column-s+h)),e.start.column=e.end.column=o,e.start.row=e.end.row=i.row,e.cursor=e.end}),e.fromOrientedRange(n[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var h=this.selection.getRange(),u=h.start.row,d=h.end.row,f=u==d;if(f){var p,g=this.session.getLength();do{p=this.session.getLine(d)}while(/[=:]/.test(p)&&++d0);u<0&&(u=0),d>=g&&(d=g-1)}var m=this.session.removeFullLines(u,d);m=this.$reAlignText(m,f),this.session.insert({row:u,column:0},m.join("\n")+"\n"),f||(h.start.column=0,h.end.column=m[m.length-1].length),this.selection.setRange(h)}},this.$reAlignText=function(t,e){var n,i,r,s=!0,o=!0;return t.map(function(t){var e=t.match(/(\s*)(.*?)(\s*)([=:].*)/);return e?null==n?(n=e[1].length,i=e[2].length,r=e[3].length,e):(n+i+r!=e[1].length+e[2].length+e[3].length&&(o=!1),n!=e[1].length&&(s=!1),n>e[1].length&&(n=e[1].length),ie[3].length&&(r=e[3].length),e):[t]}).map(e?c:s?o?function(t){return t[2]?a(n+i-t[2].length)+t[2]+a(r)+t[4].replace(/^([=:])\s+/,"$1 "):t[0]}:c:function(t){return t[2]?a(n)+t[2]+a(r)+t[4].replace(/^([=:])\s+/,"$1 "):t[0]});function a(t){return l.stringRepeat(" ",t)}function c(t){return t[2]?a(n)+t[2]+a(i-t[2].length+r)+t[4].replace(/^([=:])\s+/,"$1 "):t[0]}}}).call(d.prototype),e.onSessionChange=function(t){var e=t.session;e&&!e.multiSelect&&(e.$selectionMarkers=[],e.selection.$initRangeList(),e.multiSelect=e.selection),this.multiSelect=e&&e.multiSelect;var n=t.oldSession;n&&(n.multiSelect.off("addRange",this.$onAddRange),n.multiSelect.off("removeRange",this.$onRemoveRange),n.multiSelect.off("multiSelect",this.$onMultiSelect),n.multiSelect.off("singleSelect",this.$onSingleSelect),n.multiSelect.lead.off("change",this.$checkMultiselectChange),n.multiSelect.anchor.off("change",this.$checkMultiselectChange)),e&&(e.multiSelect.on("addRange",this.$onAddRange),e.multiSelect.on("removeRange",this.$onRemoveRange),e.multiSelect.on("multiSelect",this.$onMultiSelect),e.multiSelect.on("singleSelect",this.$onSingleSelect),e.multiSelect.lead.on("change",this.$checkMultiselectChange),e.multiSelect.anchor.on("change",this.$checkMultiselectChange)),e&&this.inMultiSelectMode!=e.selection.inMultiSelectMode&&(e.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},e.MultiSelect=f,t("./config").defineOptions(d.prototype,"editor",{enableMultiselect:{set:function(t){f(this),t?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",o)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",o))},value:!0},enableBlockSelect:{set:function(t){this.$blockSelectEnabled=t},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(t,e,n){"use strict";var i=t("../../range").Range,r=e.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(t,e,n){var i=t.getLine(n);return this.foldingStartMarker.test(i)?"start":"markbeginend"==e&&this.foldingStopMarker&&this.foldingStopMarker.test(i)?"end":""},this.getFoldWidgetRange=function(t,e,n){return null},this.indentationBlock=function(t,e,n){var r=/\S/,s=t.getLine(e),o=s.search(r);if(-1!=o){for(var a=n||s.length,l=t.getLength(),c=e,h=e;++ec){var f=t.getLine(h).length;return new i(c,a,h,f)}}},this.openingBracketBlock=function(t,e,n,r,s){var o={row:n,column:r+1},a=t.$findClosingBracket(e,o,s);if(a){var l=t.foldWidgets[a.row];return null==l&&(l=t.getFoldWidget(a.row)),"start"==l&&a.row>o.row&&(a.row--,a.column=t.getLine(a.row).length),i.fromPoints(o,a)}},this.closingBracketBlock=function(t,e,n,r,s){var o={row:n,column:r},a=t.$findOpeningBracket(e,o);if(a)return a.column++,o.column--,i.fromPoints(a,o)}}).call(r.prototype)}),ace.define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(t,e,n){"use strict";e.isDark=!1,e.cssClass="ace-tm",e.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm {background-color: #FFFFFF;color: black;}.ace-tm .ace_cursor {color: black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}',e.$id="ace/theme/textmate",t("../lib/dom").importCssString(e.cssText,e.cssClass)}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/dom"],function(t,e,n){"use strict";var i=t("./lib/dom");function r(t){this.session=t,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.$onChangeEditor=this.$onChangeEditor.bind(this),this.session.on("change",this.updateOnChange),this.session.on("changeFold",this.updateOnFold),this.session.on("changeEditor",this.$onChangeEditor)}(function(){this.getRowLength=function(t){var e;return e=this.lineWidgets&&this.lineWidgets[t]&&this.lineWidgets[t].rowCount||0,this.$useWrapMode&&this.$wrapData[t]?this.$wrapData[t].length+1+e:1+e},this.$getWidgetScreenLength=function(){var t=0;return this.lineWidgets.forEach(function(e){e&&e.rowCount&&!e.hidden&&(t+=e.rowCount)}),t},this.$onChangeEditor=function(t){this.attach(t.editor)},this.attach=function(t){t&&t.widgetManager&&t.widgetManager!=this&&t.widgetManager.detach(),this.editor!=t&&(this.detach(),this.editor=t,t&&(t.widgetManager=this,t.renderer.on("beforeRender",this.measureWidgets),t.renderer.on("afterRender",this.renderWidgets)))},this.detach=function(t){var e=this.editor;if(e){this.editor=null,e.widgetManager=null,e.renderer.off("beforeRender",this.measureWidgets),e.renderer.off("afterRender",this.renderWidgets);var n=this.session.lineWidgets;n&&n.forEach(function(t){t&&t.el&&t.el.parentNode&&(t._inDocument=!1,t.el.parentNode.removeChild(t.el))})}},this.updateOnFold=function(t,e){var n=e.lineWidgets;if(n&&t.action){for(var i=t.data,r=i.start.row,s=i.end.row,o="add"==t.action,a=r+1;ae[n].column&&n++,s.unshift(n,0),e.splice.apply(e,s),this.$updateRows()}}},this.$updateRows=function(){var t=this.session.lineWidgets;if(t){var e=!0;t.forEach(function(t,n){if(t)for(e=!1,t.row=n;t.$oldWidget;)t.$oldWidget.row=n,t=t.$oldWidget}),e&&(this.session.lineWidgets=null)}},this.$registerLineWidget=function(t){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var e=this.session.lineWidgets[t.row];return e&&(t.$oldWidget=e,e.el&&e.el.parentNode&&(e.el.parentNode.removeChild(e.el),e._inDocument=!1)),this.session.lineWidgets[t.row]=t,t},this.addLineWidget=function(t){if(this.$registerLineWidget(t),t.session=this.session,!this.editor)return t;var e=this.editor.renderer;t.html&&!t.el&&(t.el=i.createElement("div"),t.el.innerHTML=t.html),t.el&&(i.addCssClass(t.el,"ace_lineWidgetContainer"),t.el.style.position="absolute",t.el.style.zIndex=5,e.container.appendChild(t.el),t._inDocument=!0,t.coverGutter||(t.el.style.zIndex=3),null==t.pixelHeight&&(t.pixelHeight=t.el.offsetHeight)),null==t.rowCount&&(t.rowCount=t.pixelHeight/e.layerConfig.lineHeight);var n=this.session.getFoldAt(t.row,0);if(t.$fold=n,n){var r=this.session.lineWidgets;t.row!=n.end.row||r[n.start.row]?t.hidden=!0:r[n.start.row]=t}return this.session._emit("changeFold",{data:{start:{row:t.row}}}),this.$updateRows(),this.renderWidgets(null,e),this.onWidgetChanged(t),t},this.removeLineWidget=function(t){if(t._inDocument=!1,t.session=null,t.el&&t.el.parentNode&&t.el.parentNode.removeChild(t.el),t.editor&&t.editor.destroy)try{t.editor.destroy()}catch(n){}if(this.session.lineWidgets){var e=this.session.lineWidgets[t.row];if(e==t)this.session.lineWidgets[t.row]=t.$oldWidget,t.$oldWidget&&this.onWidgetChanged(t.$oldWidget);else for(;e;){if(e.$oldWidget==t){e.$oldWidget=t.$oldWidget;break}e=e.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:t.row}}}),this.$updateRows()},this.getWidgetsAtRow=function(t){for(var e=this.session.lineWidgets,n=e&&e[t],i=[];n;)i.push(n),n=n.$oldWidget;return i},this.onWidgetChanged=function(t){this.session._changedWidgets.push(t),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(t,e){var n=this.session._changedWidgets,i=e.layerConfig;if(n&&n.length){for(var r=1/0,s=0;s0&&!i[r];)r--;this.firstRow=n.firstRow,this.lastRow=n.lastRow,e.$cursorLayer.config=n;for(var o=r;o<=s;o++){var a=i[o];if(a&&a.el)if(a.hidden)a.el.style.top=-100-(a.pixelHeight||0)+"px";else{a._inDocument||(a._inDocument=!0,e.container.appendChild(a.el));var l=e.$cursorLayer.getPixelPosition({row:o,column:0},!0).top;a.coverLine||(l+=n.lineHeight*this.session.getRowLineCount(a.row)),a.el.style.top=l-n.offset+"px";var c=a.coverGutter?0:e.gutterWidth;a.fixedWidth||(c-=e.scrollLeft),a.el.style.left=c+"px",a.fullWidth&&a.screenWidth&&(a.el.style.minWidth=n.width+2*n.padding+"px"),a.el.style.right=a.fixedWidth?e.scrollBar.getWidth()+"px":""}}}}}).call(r.prototype),e.LineWidgets=r}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(t,e,n){"use strict";var i=t("../line_widgets").LineWidgets,r=t("../lib/dom"),s=t("../range").Range;e.showErrorMarker=function(t,e){var n=t.session;n.widgetManager||(n.widgetManager=new i(n),n.widgetManager.attach(t));var o=t.getCursorPosition(),a=o.row,l=n.widgetManager.getWidgetsAtRow(a).filter(function(t){return"errorMarker"==t.type})[0];l?l.destroy():a-=e;var c,h=function(t,e,n){var i=t.getAnnotations().sort(s.comparePoints);if(i.length){var r=function(t,e,n){for(var i=0,r=t.length-1;i<=r;){var s=i+r>>1,o=n(e,t[s]);if(o>0)i=s+1;else{if(!(o<0))return s;r=s-1}}return-(i+1)}(i,{row:e,column:-1},s.comparePoints);r<0&&(r=-r-1),r>=i.length?r=n>0?0:i.length-1:0===r&&n<0&&(r=i.length-1);var o=i[r];if(o&&n){if(o.row===e){do{o=i[r+=n]}while(o&&o.row===e);if(!o)return i.slice()}var a=[];e=o.row;do{a[n<0?"unshift":"push"](o),o=i[r+=n]}while(o&&o.row==e);return a.length&&a}}}(n,a,e);if(h){var u=h[0];o.column=(u.pos&&"number"!=typeof u.column?u.pos.sc:u.column)||0,o.row=u.row,c=t.renderer.$gutterLayer.$annotations[o.row]}else{if(l)return;c={text:["Looks good!"],className:"ace_ok"}}t.session.unfold(o.row),t.selection.moveToPosition(o);var d={row:o.row,fixedWidth:!0,coverGutter:!0,el:r.createElement("div"),type:"errorMarker"},f=d.el.appendChild(r.createElement("div")),p=d.el.appendChild(r.createElement("div"));p.className="error_widget_arrow "+c.className;var g=t.renderer.$cursorLayer.getPixelPosition(o).left;p.style.left=g+t.renderer.gutterWidth-5+"px",d.el.className="error_widget_wrapper",f.className="error_widget "+c.className,f.innerHTML=c.text.join("
"),f.appendChild(r.createElement("div"));var m=function(t,e,n){if(0===e&&("esc"===n||"return"===n))return d.destroy(),{command:"null"}};d.destroy=function(){t.$mouseHandler.isMousePressed||(t.keyBinding.removeKeyboardHandler(m),n.widgetManager.removeLineWidget(d),t.off("changeSelection",d.destroy),t.off("changeSession",d.destroy),t.off("mouseup",d.destroy),t.off("change",d.destroy))},t.keyBinding.addKeyboardHandler(m),t.on("changeSelection",d.destroy),t.on("changeSession",d.destroy),t.on("mouseup",d.destroy),t.on("change",d.destroy),t.session.widgetManager.addLineWidget(d),d.el.onmousedown=t.focus.bind(t),t.renderer.scrollCursorIntoView(null,.5,{bottom:d.el.offsetHeight})},r.importCssString(" .error_widget_wrapper { background: inherit; color: inherit; border:none } .error_widget { border-top: solid 2px; border-bottom: solid 2px; margin: 5px 0; padding: 10px 40px; white-space: pre-wrap; } .error_widget.ace_error, .error_widget_arrow.ace_error{ border-color: #ff5a5a } .error_widget.ace_warning, .error_widget_arrow.ace_warning{ border-color: #F1D817 } .error_widget.ace_info, .error_widget_arrow.ace_info{ border-color: #5a5a5a } .error_widget.ace_ok, .error_widget_arrow.ace_ok{ border-color: #5aaa5a } .error_widget_arrow { position: absolute; border: solid 5px; border-top-color: transparent!important; border-right-color: transparent!important; border-left-color: transparent!important; top: -5px; }","")}),ace.define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/range","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(t,e,i){"use strict";t("./lib/fixoldbrowsers");var r=t("./lib/dom"),s=t("./lib/event"),o=t("./range").Range,a=t("./editor").Editor,l=t("./edit_session").EditSession,c=t("./undomanager").UndoManager,h=t("./virtual_renderer").VirtualRenderer;t("./worker/worker_client"),t("./keyboard/hash_handler"),t("./placeholder"),t("./multi_select"),t("./mode/folding/fold_mode"),t("./theme/textmate"),t("./ext/error_marker"),e.config=t("./config"),e.require=t,e.define=n("B9Yq"),e.edit=function(t,n){if("string"==typeof t){var i=t;if(!(t=document.getElementById(i)))throw new Error("ace.edit can't find div #"+i)}if(t&&t.env&&t.env.editor instanceof a)return t.env.editor;var o="";if(t&&/input|textarea/i.test(t.tagName)){var l=t;o=l.value,t=r.createElement("pre"),l.parentNode.replaceChild(t,l)}else t&&(o=t.textContent,t.innerHTML="");var c=e.createEditSession(o),u=new a(new h(t),c,n),d={document:c,editor:u,onResize:u.resize.bind(u,null)};return l&&(d.textarea=l),s.addListener(window,"resize",d.onResize),u.on("destroy",function(){s.removeListener(window,"resize",d.onResize),d.editor.container.env=null}),u.container.env=u.env=d,u},e.createEditSession=function(t,e){var n=new l(t,e);return n.setUndoManager(new c),n},e.Range=o,e.Editor=a,e.EditSession=l,e.UndoManager=c,e.VirtualRenderer=h,e.version=e.config.version}),ace.require(["ace/ace"],function(e){for(var n in e&&(e.config.init(!0),e.define=ace.define),window.ace||(window.ace=e),e)e.hasOwnProperty(n)&&(window.ace[n]=e[n]);window.ace.default=window.ace,t&&(t.exports=window.ace)})}).call(this,n("YuTi")(t))},hyoZ:function(t,e,n){"use strict";var i=n("w+qe"),r=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],s=["scalar","sequence","mapping"];t.exports=function(t,e){var n,o;if(e=e||{},Object.keys(e).forEach(function(e){if(-1===r.indexOf(e))throw new i('Unknown option "'+e+'" is met in definition of "'+t+'" YAML type.')}),this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.defaultStyle=e.defaultStyle||null,this.styleAliases=(o={},null!==(n=e.styleAliases||null)&&Object.keys(n).forEach(function(t){n[t].forEach(function(e){o[String(e)]=t})}),o),-1===s.indexOf(this.kind))throw new i('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}},jO2K:function(t,e,n){"use strict";var i;try{i=n("tjlA").Buffer}catch(o){}var r=n("hyoZ"),s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r";t.exports=new r("tag:yaml.org,2002:binary",{kind:"scalar",resolve:function(t){if(null===t)return!1;var e,n,i=0,r=t.length,o=s;for(n=0;n64)){if(e<0)return!1;i+=6}return i%8==0},construct:function(t){var e,n,r=t.replace(/[\r\n=]/g,""),o=r.length,a=s,l=0,c=[];for(e=0;e>16&255),c.push(l>>8&255),c.push(255&l)),l=l<<6|a.indexOf(r.charAt(e));return 0==(n=o%4*6)?(c.push(l>>16&255),c.push(l>>8&255),c.push(255&l)):18===n?(c.push(l>>10&255),c.push(l>>2&255)):12===n&&c.push(l>>4&255),i?i.from?i.from(c):new i(c):c},predicate:function(t){return i&&i.isBuffer(t)},represent:function(t){var e,n,i="",r=0,o=t.length,a=s;for(e=0;e>18&63],i+=a[r>>12&63],i+=a[r>>6&63],i+=a[63&r]),r=(r<<8)+t[e];return 0==(n=o%3)?(i+=a[r>>18&63],i+=a[r>>12&63],i+=a[r>>6&63],i+=a[63&r]):2===n?(i+=a[r>>10&63],i+=a[r>>4&63],i+=a[r<<2&63],i+=a[64]):1===n&&(i+=a[r>>2&63],i+=a[r<<4&63],i+=a[64],i+=a[64]),i}})},"kVK+":function(t,e){e.read=function(t,e,n,i,r){var s,o,a=8*r-i-1,l=(1<>1,h=-7,u=n?r-1:0,d=n?-1:1,f=t[e+u];for(u+=d,s=f&(1<<-h)-1,f>>=-h,h+=a;h>0;s=256*s+t[e+u],u+=d,h-=8);for(o=s&(1<<-h)-1,s>>=-h,h+=i;h>0;o=256*o+t[e+u],u+=d,h-=8);if(0===s)s=1-c;else{if(s===l)return o?NaN:1/0*(f?-1:1);o+=Math.pow(2,i),s-=c}return(f?-1:1)*o*Math.pow(2,s-i)},e.write=function(t,e,n,i,r,s){var o,a,l,c=8*s-r-1,h=(1<>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,f=i?0:s-1,p=i?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,o=h):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+u>=1?d/l:d*Math.pow(2,1-u))*l>=2&&(o++,l/=2),o+u>=h?(a=0,o=h):o+u>=1?(a=(e*l-1)*Math.pow(2,r),o+=u):(a=e*Math.pow(2,u-1)*Math.pow(2,r),o=0));r>=8;t[n+f]=255&a,f+=p,a/=256,r-=8);for(o=o<0;t[n+f]=255&o,f+=p,o/=256,c-=8);t[n+f-p]|=128*g}},peYA:function(t,e,n){"use strict";var i=n("hyoZ");t.exports=new i("tag:yaml.org,2002:null",{kind:"scalar",resolve:function(t){if(null===t)return!0;var e=t.length;return 1===e&&"~"===t||4===e&&("null"===t||"Null"===t||"NULL"===t)},construct:function(){return null},predicate:function(t){return null===t},represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})},pzZA:function(t,e,n){"use strict";var i=n("hyoZ"),r=Object.prototype.hasOwnProperty;t.exports=new i("tag:yaml.org,2002:set",{kind:"mapping",resolve:function(t){if(null===t)return!0;var e,n=t;for(e in n)if(r.call(n,e)&&null!==n[e])return!1;return!0},construct:function(t){return null!==t?t:{}}})},spQ0:function(t,e,n){"use strict";var i=n("hyoZ");t.exports=new i("tag:yaml.org,2002:merge",{kind:"scalar",resolve:function(t){return"<<"===t||null===t}})},tN50:function(t,e,n){"use strict";var i=n("Y2Yi");function r(t,e,n,i,r){this.name=t,this.buffer=e,this.position=n,this.line=i,this.column=r}r.prototype.getSnippet=function(t,e){var n,r,s,o,a;if(!this.buffer)return null;for(t=t||4,e=e||75,n="",r=this.position;r>0&&-1==="\0\r\n\x85\u2028\u2029".indexOf(this.buffer.charAt(r-1));)if(this.position-(r-=1)>e/2-1){n=" ... ",r+=5;break}for(s="",o=this.position;oe/2-1){s=" ... ",o-=5;break}return a=this.buffer.slice(r,o),i.repeat(" ",t)+n+a+s+"\n"+i.repeat(" ",t+this.position-r+n.length)+"^"},r.prototype.toString=function(t){var e,n="";return this.name&&(n+='in "'+this.name+'" '),n+="at line "+(this.line+1)+", column "+(this.column+1),t||(e=this.getSnippet())&&(n+=":\n"+e),n},t.exports=r},tjlA:function(t,e,n){"use strict";var i=n("H7XF"),r=n("kVK+"),s=n("49sm");function o(){return l.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function a(t,e){if(o()=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|t}function p(t,e){if(l.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var n=t.length;if(0===n)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return U(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return V(t).length;default:if(i)return U(t).length;e=(""+e).toLowerCase(),i=!0}}function g(t,e,n){var i=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return R(this,e,n);case"utf8":case"utf-8":return k(this,e,n);case"ascii":return D(this,e,n);case"latin1":case"binary":return T(this,e,n);case"base64":return E(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return F(this,e,n);default:if(i)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),i=!0}}function m(t,e,n){var i=t[e];t[e]=t[n],t[n]=i}function v(t,e,n,i,r){if(0===t.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=r?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(r)return-1;n=t.length-1}else if(n<0){if(!r)return-1;n=0}if("string"==typeof e&&(e=l.from(e,i)),l.isBuffer(e))return 0===e.length?-1:y(t,e,n,i,r);if("number"==typeof e)return e&=255,l.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):y(t,[e],n,i,r);throw new TypeError("val must be string, number or Buffer")}function y(t,e,n,i,r){var s,o=1,a=t.length,l=e.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(t.length<2||e.length<2)return-1;o=2,a/=2,l/=2,n/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(r){var h=-1;for(s=n;sa&&(n=a-l),s=n;s>=0;s--){for(var u=!0,d=0;dr&&(i=r):i=r;var s=e.length;if(s%2!=0)throw new TypeError("Invalid hex string");i>s/2&&(i=s/2);for(var o=0;o>8,r.push(n%256),r.push(i);return r}(e,t.length-n),t,n,i)}function E(t,e,n){return i.fromByteArray(0===e&&n===t.length?t:t.slice(e,n))}function k(t,e,n){n=Math.min(t.length,n);for(var i=[],r=e;r239?4:c>223?3:c>191?2:1;if(r+u<=n)switch(u){case 1:c<128&&(h=c);break;case 2:128==(192&(s=t[r+1]))&&(l=(31&c)<<6|63&s)>127&&(h=l);break;case 3:o=t[r+2],128==(192&(s=t[r+1]))&&128==(192&o)&&(l=(15&c)<<12|(63&s)<<6|63&o)>2047&&(l<55296||l>57343)&&(h=l);break;case 4:o=t[r+2],a=t[r+3],128==(192&(s=t[r+1]))&&128==(192&o)&&128==(192&a)&&(l=(15&c)<<18|(63&s)<<12|(63&o)<<6|63&a)>65535&&l<1114112&&(h=l)}null===h?(h=65533,u=1):h>65535&&(i.push((h-=65536)>>>10&1023|55296),h=56320|1023&h),i.push(h),r+=u}return function(t){var e=t.length;if(e<=A)return String.fromCharCode.apply(String,t);for(var n="",i=0;i0&&(t=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(t+=" ... ")),""},l.prototype.compare=function(t,e,n,i,r){if(!l.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),e<0||n>t.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&e>=n)return 0;if(i>=r)return-1;if(e>=n)return 1;if(this===t)return 0;for(var s=(r>>>=0)-(i>>>=0),o=(n>>>=0)-(e>>>=0),a=Math.min(s,o),c=this.slice(i,r),h=t.slice(e,n),u=0;ur)&&(n=r),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var s=!1;;)switch(i){case"hex":return w(this,t,e,n);case"utf8":case"utf-8":return b(this,t,e,n);case"ascii":return x(this,t,e,n);case"latin1":case"binary":return _(this,t,e,n);case"base64":return C(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,t,e,n);default:if(s)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),s=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var A=4096;function D(t,e,n){var i="";n=Math.min(t.length,n);for(var r=e;rr)&&(n=r);for(var s="",o=e;on)throw new RangeError("Trying to access beyond buffer length")}function M(t,e,n,i,r,s){if(!l.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>r||et.length)throw new RangeError("Index out of range")}function $(t,e,n,i){e<0&&(e=65535+e+1);for(var r=0,s=Math.min(t.length-n,2);r>>8*(i?r:1-r)}function O(t,e,n,i){e<0&&(e=4294967295+e+1);for(var r=0,s=Math.min(t.length-n,4);r>>8*(i?r:3-r)&255}function I(t,e,n,i,r,s){if(n+i>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function P(t,e,n,i,s){return s||I(t,0,n,4),r.write(t,e,n,i,23,4),n+4}function N(t,e,n,i,s){return s||I(t,0,n,8),r.write(t,e,n,i,52,8),n+8}l.prototype.slice=function(t,e){var n,i=this.length;if((t=~~t)<0?(t+=i)<0&&(t=0):t>i&&(t=i),(e=void 0===e?i:~~e)<0?(e+=i)<0&&(e=0):e>i&&(e=i),e0&&(r*=256);)i+=this[t+--e]*r;return i},l.prototype.readUInt8=function(t,e){return e||L(t,1,this.length),this[t]},l.prototype.readUInt16LE=function(t,e){return e||L(t,2,this.length),this[t]|this[t+1]<<8},l.prototype.readUInt16BE=function(t,e){return e||L(t,2,this.length),this[t]<<8|this[t+1]},l.prototype.readUInt32LE=function(t,e){return e||L(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},l.prototype.readUInt32BE=function(t,e){return e||L(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},l.prototype.readIntLE=function(t,e,n){t|=0,e|=0,n||L(t,e,this.length);for(var i=this[t],r=1,s=0;++s=(r*=128)&&(i-=Math.pow(2,8*e)),i},l.prototype.readIntBE=function(t,e,n){t|=0,e|=0,n||L(t,e,this.length);for(var i=e,r=1,s=this[t+--i];i>0&&(r*=256);)s+=this[t+--i]*r;return s>=(r*=128)&&(s-=Math.pow(2,8*e)),s},l.prototype.readInt8=function(t,e){return e||L(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},l.prototype.readInt16LE=function(t,e){e||L(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},l.prototype.readInt16BE=function(t,e){e||L(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},l.prototype.readInt32LE=function(t,e){return e||L(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},l.prototype.readInt32BE=function(t,e){return e||L(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},l.prototype.readFloatLE=function(t,e){return e||L(t,4,this.length),r.read(this,t,!0,23,4)},l.prototype.readFloatBE=function(t,e){return e||L(t,4,this.length),r.read(this,t,!1,23,4)},l.prototype.readDoubleLE=function(t,e){return e||L(t,8,this.length),r.read(this,t,!0,52,8)},l.prototype.readDoubleBE=function(t,e){return e||L(t,8,this.length),r.read(this,t,!1,52,8)},l.prototype.writeUIntLE=function(t,e,n,i){t=+t,e|=0,n|=0,i||M(this,t,e,n,Math.pow(2,8*n)-1,0);var r=1,s=0;for(this[e]=255&t;++s=0&&(s*=256);)this[e+r]=t/s&255;return e+n},l.prototype.writeUInt8=function(t,e,n){return t=+t,e|=0,n||M(this,t,e,1,255,0),l.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},l.prototype.writeUInt16LE=function(t,e,n){return t=+t,e|=0,n||M(this,t,e,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):$(this,t,e,!0),e+2},l.prototype.writeUInt16BE=function(t,e,n){return t=+t,e|=0,n||M(this,t,e,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):$(this,t,e,!1),e+2},l.prototype.writeUInt32LE=function(t,e,n){return t=+t,e|=0,n||M(this,t,e,4,4294967295,0),l.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):O(this,t,e,!0),e+4},l.prototype.writeUInt32BE=function(t,e,n){return t=+t,e|=0,n||M(this,t,e,4,4294967295,0),l.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):O(this,t,e,!1),e+4},l.prototype.writeIntLE=function(t,e,n,i){if(t=+t,e|=0,!i){var r=Math.pow(2,8*n-1);M(this,t,e,n,r-1,-r)}var s=0,o=1,a=0;for(this[e]=255&t;++s>0)-a&255;return e+n},l.prototype.writeIntBE=function(t,e,n,i){if(t=+t,e|=0,!i){var r=Math.pow(2,8*n-1);M(this,t,e,n,r-1,-r)}var s=n-1,o=1,a=0;for(this[e+s]=255&t;--s>=0&&(o*=256);)t<0&&0===a&&0!==this[e+s+1]&&(a=1),this[e+s]=(t/o>>0)-a&255;return e+n},l.prototype.writeInt8=function(t,e,n){return t=+t,e|=0,n||M(this,t,e,1,127,-128),l.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},l.prototype.writeInt16LE=function(t,e,n){return t=+t,e|=0,n||M(this,t,e,2,32767,-32768),l.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):$(this,t,e,!0),e+2},l.prototype.writeInt16BE=function(t,e,n){return t=+t,e|=0,n||M(this,t,e,2,32767,-32768),l.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):$(this,t,e,!1),e+2},l.prototype.writeInt32LE=function(t,e,n){return t=+t,e|=0,n||M(this,t,e,4,2147483647,-2147483648),l.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):O(this,t,e,!0),e+4},l.prototype.writeInt32BE=function(t,e,n){return t=+t,e|=0,n||M(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),l.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):O(this,t,e,!1),e+4},l.prototype.writeFloatLE=function(t,e,n){return P(this,t,e,!0,n)},l.prototype.writeFloatBE=function(t,e,n){return P(this,t,e,!1,n)},l.prototype.writeDoubleLE=function(t,e,n){return N(this,t,e,!0,n)},l.prototype.writeDoubleBE=function(t,e,n){return N(this,t,e,!1,n)},l.prototype.copy=function(t,e,n,i){if(n||(n=0),i||0===i||(i=this.length),e>=t.length&&(e=t.length),e||(e=0),i>0&&i=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-e=0;--r)t[r+e]=this[r+n];else if(s<1e3||!l.TYPED_ARRAY_SUPPORT)for(r=0;r>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(s=e;s55295&&n<57344){if(!r){if(n>56319){(e-=3)>-1&&s.push(239,191,189);continue}if(o+1===i){(e-=3)>-1&&s.push(239,191,189);continue}r=n;continue}if(n<56320){(e-=3)>-1&&s.push(239,191,189),r=n;continue}n=65536+(r-55296<<10|n-56320)}else r&&(e-=3)>-1&&s.push(239,191,189);if(r=null,n<128){if((e-=1)<0)break;s.push(n)}else if(n<2048){if((e-=2)<0)break;s.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;s.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;s.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return s}function V(t){return i.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(B,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function H(t,e,n,i){for(var r=0;r=e.length||r>=t.length);++r)e[r+n]=t[r];return r}},vQl5:function(t,e,n){"use strict";var i=n("hyoZ");t.exports=new i("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return null!==t?t:[]}})},"w+qe":function(t,e,n){"use strict";function i(t,e){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=e,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack||""}(i.prototype=Object.create(Error.prototype)).constructor=i,i.prototype.toString=function(t){var e=this.name+": ";return e+=this.reason||"(unknown reason)",!t&&this.mark&&(e+=" "+this.mark.toString()),e},t.exports=i},ydHo:function(t,e,n){"use strict";var i=n("Y2Yi"),r=n("hyoZ");function s(t){return 48<=t&&t<=55}function o(t){return 48<=t&&t<=57}t.exports=new r("tag:yaml.org,2002:int",{kind:"scalar",resolve:function(t){if(null===t)return!1;var e,n,i=t.length,r=0,a=!1;if(!i)return!1;if("-"!==(e=t[r])&&"+"!==e||(e=t[++r]),"0"===e){if(r+1===i)return!0;if("b"===(e=t[++r])){for(r++;r=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0"+t.toString(8):"-0"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})},zUnb:function(t,e,n){"use strict";function i(t){return"function"==typeof t}n.r(e);let r=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else r&&console.log("RxJS: Back to a better error behavior. Thank you. <3");r=t},get useDeprecatedSynchronousErrorHandling(){return r}};function o(t){setTimeout(()=>{throw t},0)}const a={closed:!0,next(t){},error(t){if(s.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},l=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const h=(()=>{function t(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}return t.prototype=Object.create(Error.prototype),t})();let u=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_ctorUnsubscribe:r,_unsubscribe:s,_subscriptions:o}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof h?e.errors:e),[])}const f=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class p extends u{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=a;break;case 1:if(!t){this.destination=a;break}if("object"==typeof t){t instanceof p?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new g(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new g(this,t,e,n)}}[f](){return this}static create(t,e,n){const i=new p(t,e,n);return i.syncErrorThrowable=!1,i}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{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class g extends p{constructor(t,e,n,r){let s;super(),this._parentSubscriber=t;let o=this;i(e)?s=e:e&&(s=e.next,n=e.error,r=e.complete,e!==a&&(o=Object.create(e),i(o.unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=s,this._error=n,this._complete=r}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;s.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}=s;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);s.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(),s.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(i){return s.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=i,t.syncErrorThrown=!0,!0):(o(i),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function v(t){return t}let y=(()=>{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:i}=this,r=function(t,e,n){if(t){if(t instanceof p)return t;if(t[f])return t[f]()}return t||e||n?new p(t,e,n):new p(a)}(t,e,n);if(r.add(i?i.call(r,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!r.syncErrorThrowable?this._subscribe(r):this._trySubscribe(r)),s.useDeprecatedSynchronousErrorHandling&&r.syncErrorThrowable&&(r.syncErrorThrowable=!1,r.syncErrorThrown))throw r.syncErrorValue;return r}_trySubscribe(t){try{return this._subscribe(t)}catch(e){s.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:i}=t;if(e||i)return!1;t=n&&n instanceof p?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=w(e))((e,n)=>{let i;i=this.subscribe(e=>{try{t(e)}catch(r){n(r),i&&i.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[m](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?v:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=w(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function w(t){if(t||(t=s.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const b=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class x extends u{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 _ extends p{constructor(t){super(t),this.destination=t}}let C=(()=>{class t extends y{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new _(this)}lift(t){const e=new S(this,this);return e.operator=t,e}next(t){if(this.closed)throw new b;if(!this.isStopped){const{observers:e}=this,n=e.length,i=e.slice();for(let r=0;rnew S(t,e),t})();class S extends C{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):u.EMPTY}}function E(t){return t&&"function"==typeof t.schedule}function k(t,e){return function(n){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new A(t,e))}}class A{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new D(t,this.project,this.thisArg))}}class D extends p{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)}}const T=t=>e=>{for(let n=0,i=t.length;nt&&"number"==typeof t.length&&"function"!=typeof t;function M(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const $=t=>{if(t&&"function"==typeof t[m])return i=t,t=>{const e=i[m]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if(L(t))return T(t);if(M(t))return n=t,t=>(n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,o),t);if(t&&"function"==typeof t[F])return e=t,t=>{const n=e[F]();for(;;){let e;try{e=n.next()}catch(i){return t.error(i),t}if(e.done){t.complete();break}if(t.next(e.value),t.closed)break}return"function"==typeof n.return&&t.add(()=>{n.return&&n.return()}),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.`)}var e,n,i};function O(t,e){return new y(n=>{const i=new u;let r=0;return i.add(e.schedule(function(){r!==t.length?(n.next(t[r++]),n.closed||i.add(this.schedule())):n.complete()})),i})}function I(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[m]}(t))return function(t,e){return new y(n=>{const i=new u;return i.add(e.schedule(()=>{const r=t[m]();i.add(r.subscribe({next(t){i.add(e.schedule(()=>n.next(t)))},error(t){i.add(e.schedule(()=>n.error(t)))},complete(){i.add(e.schedule(()=>n.complete()))}}))})),i})}(t,e);if(M(t))return function(t,e){return new y(n=>{const i=new u;return i.add(e.schedule(()=>t.then(t=>{i.add(e.schedule(()=>{n.next(t),i.add(e.schedule(()=>n.complete()))}))},t=>{i.add(e.schedule(()=>n.error(t)))}))),i})}(t,e);if(L(t))return O(t,e);if(function(t){return t&&"function"==typeof t[F]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new y(n=>{const i=new u;let r;return i.add(()=>{r&&"function"==typeof r.return&&r.return()}),i.add(e.schedule(()=>{r=t[F](),i.add(e.schedule(function(){if(n.closed)return;let t,e;try{const n=r.next();t=n.value,e=n.done}catch(i){return void n.error(i)}e?n.complete():(n.next(t),this.schedule())}))})),i})}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}(t,e):t instanceof y?t:new y($(t))}class P extends p{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class N extends p{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function B(t,e){if(!e.closed)return t instanceof y?t.subscribe(e):$(t)(e)}function U(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?i=>i.pipe(U((n,i)=>I(t(n,i)).pipe(k((t,r)=>e(n,t,i,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new V(t,n)))}class V{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new H(t,this.project,this.concurrent))}}class H extends N{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(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function j(t=Number.POSITIVE_INFINITY){return U(v,t)}function z(t,e){return e?O(t,e):new y(T(t))}function W(){return function(t){return t.lift(new G(t))}}class G{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const i=new K(t,n),r=e.subscribe(i);return i.closed||(i.connection=n.connect()),r}}class K extends p{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,i=t._connection;this.connection=null,!i||n&&i!==n||i.unsubscribe()}}class q extends y{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 u,t.add(this.source.subscribe(new Y(this.getSubject(),this))),t.closed&&(this._connection=null,t=u.EMPTY)),t}refCount(){return W()(this)}}const X=(()=>{const t=q.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class Y extends _{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 J(){return new C}function Q(t){for(let e in t)if(t[e]===Q)return e;throw Error("Could not find renamed property on target object.")}function Z(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function tt(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(tt).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)}function et(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}const nt=Q({__forward_ref__:Q});function it(t){return t.__forward_ref__=it,t.toString=function(){return tt(this())},t}function rt(t){return st(t)?t():t}function st(t){return"function"==typeof t&&t.hasOwnProperty(nt)&&t.__forward_ref__===it}function ot(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function at(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function lt(t){return ct(t,ut)||ct(t,ft)}function ct(t,e){return t.hasOwnProperty(e)?t[e]:null}function ht(t){return t&&(t.hasOwnProperty(dt)||t.hasOwnProperty(pt))?t[dt]:null}const ut=Q({"\u0275prov":Q}),dt=Q({"\u0275inj":Q}),ft=Q({ngInjectableDef:Q}),pt=Q({ngInjectorDef:Q});var gt=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}({});let mt;function vt(t){const e=mt;return mt=t,e}function yt(t,e,n){const i=lt(t);if(i&&"root"==i.providedIn)return void 0===i.value?i.value=i.factory():i.value;if(n>.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${tt(t)}]`)}function wt(t){return{toString:t}.toString()}var bt=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({}),xt=function(t){return t[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const _t="undefined"!=typeof globalThis&&globalThis,Ct="undefined"!=typeof window&&window,St="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,Et="undefined"!=typeof global&&global,kt=_t||Et||Ct||St,At={},Dt=[],Tt=Q({"\u0275cmp":Q}),Rt=Q({"\u0275dir":Q}),Ft=Q({"\u0275pipe":Q}),Lt=Q({"\u0275mod":Q}),Mt=Q({"\u0275loc":Q}),$t=Q({"\u0275fac":Q}),Ot=Q({__NG_ELEMENT_ID__:Q});let It=0;function Pt(t){return wt(()=>{const e={},n={type:t.type,providersResolver:null,decls:t.decls,vars:t.vars,factory:null,template:t.template||null,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:e,inputs:null,outputs:null,exportAs:t.exportAs||null,onPush:t.changeDetection===bt.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||Dt,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||xt.Emulated,id:"c",styles:t.styles||Dt,_:null,setInput:null,schemas:t.schemas||null,tView:null},i=t.directives,r=t.features,s=t.pipes;return n.id+=It++,n.inputs=Ht(t.inputs,e),n.outputs=Ht(t.outputs),r&&r.forEach(t=>t(n)),n.directiveDefs=i?()=>("function"==typeof i?i():i).map(Nt):null,n.pipeDefs=s?()=>("function"==typeof s?s():s).map(Bt):null,n})}function Nt(t){return zt(t)||function(t){return t[Rt]||null}(t)}function Bt(t){return function(t){return t[Ft]||null}(t)}const Ut={};function Vt(t){const e={type:t.type,bootstrap:t.bootstrap||Dt,declarations:t.declarations||Dt,imports:t.imports||Dt,exports:t.exports||Dt,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&wt(()=>{Ut[t.id]=t.type}),e}function Ht(t,e){if(null==t)return At;const n={};for(const i in t)if(t.hasOwnProperty(i)){let r=t[i],s=r;Array.isArray(r)&&(s=r[1],r=r[0]),n[r]=i,e&&(e[r]=s)}return n}const jt=Pt;function zt(t){return t[Tt]||null}function Wt(t,e){const n=t[Lt]||null;if(!n&&!0===e)throw new Error(`Type ${tt(t)} does not have '\u0275mod' property.`);return n}const Gt=20,Kt=10;function qt(t){return Array.isArray(t)&&"object"==typeof t[1]}function Xt(t){return Array.isArray(t)&&!0===t[1]}function Yt(t){return 0!=(8&t.flags)}function Jt(t){return 2==(2&t.flags)}function Qt(t){return 1==(1&t.flags)}function Zt(t){return null!==t.template}function te(t,e){return t.hasOwnProperty($t)?t[$t]:null}class ee extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function ne(t){return"string"==typeof t?t:null==t?"":String(t)}function ie(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():ne(t)}function re(t,e){const n=e?" in "+e:"";throw new ee("201",`No provider for ${ie(t)} found${n}`)}class se{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function oe(){return ae}function ae(t){return t.type.prototype.ngOnChanges&&(t.setInput=ce),le}function le(){const t=he(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===At)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function ce(t,e,n,i){const r=he(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:At,current:null}),s=r.current||(r.current={}),o=r.previous,a=this.declaredInputs[n],l=o[a];s[a]=new se(l&&l.currentValue,e,o===At),t[i]=e}function he(t){return t.__ngSimpleChanges__||null}oe.ngInherit=!0;const ue="http://www.w3.org/2000/svg";let de=void 0;function fe(){return void 0!==de?de:"undefined"!=typeof document?document:void 0}function pe(t){return!!t.listen}const ge={createRenderer:(t,e)=>fe()};function me(t){for(;Array.isArray(t);)t=t[0];return t}function ve(t,e){return me(e[t])}function ye(t,e){return me(e[t.index])}function we(t,e){return t.data[e]}function be(t,e){return t[e]}function xe(t,e){const n=e[t];return qt(n)?n:n[0]}function _e(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function Ce(t){return 4==(4&t[2])}function Se(t){return 128==(128&t[2])}function Ee(t,e){return null==e?null:t[e]}function ke(t){t[18]=0}function Ae(t,e){t[5]+=e;let n=t,i=t[3];for(;null!==i&&(1===e&&1===n[5]||-1===e&&0===n[5]);)i[5]+=e,n=i,i=i[3]}const De={lFrame:Qe(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function Te(){return De.bindingsEnabled}function Re(){return De.lFrame.lView}function Fe(){return De.lFrame.tView}function Le(t){De.lFrame.contextLView=t}function Me(){let t=$e();for(;null!==t&&64===t.type;)t=t.parent;return t}function $e(){return De.lFrame.currentTNode}function Oe(t,e){const n=De.lFrame;n.currentTNode=t,n.isParent=e}function Ie(){return De.lFrame.isParent}function Pe(){De.lFrame.isParent=!1}function Ne(){return De.isInCheckNoChangesMode}function Be(t){De.isInCheckNoChangesMode=t}function Ue(){const t=De.lFrame;let e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}function Ve(){return De.lFrame.bindingIndex}function He(){return De.lFrame.bindingIndex++}function je(t){const e=De.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function ze(t,e){const n=De.lFrame;n.bindingIndex=n.bindingRootIndex=t,We(e)}function We(t){De.lFrame.currentDirectiveIndex=t}function Ge(){return De.lFrame.currentQueryIndex}function Ke(t){De.lFrame.currentQueryIndex=t}function qe(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function Xe(t,e,n){if(n>.SkipSelf){let i=e,r=t;for(;i=i.parent,!(null!==i||n>.Host||(i=qe(r),null===i)||(r=r[15],10&i.type)););if(null===i)return!1;e=i,t=r}const i=De.lFrame=Je();return i.currentTNode=e,i.lView=t,!0}function Ye(t){const e=Je(),n=t[1];De.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function Je(){const t=De.lFrame,e=null===t?null:t.child;return null===e?Qe(t):e}function Qe(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function Ze(){const t=De.lFrame;return De.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const tn=Ze;function en(){const t=Ze();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function nn(){return De.lFrame.selectedIndex}function rn(t){De.lFrame.selectedIndex=t}function sn(){const t=De.lFrame;return we(t.tView,t.selectedIndex)}function on(){De.lFrame.currentNamespace=ue}function an(){De.lFrame.currentNamespace=null}function ln(t,e){for(let n=e.directiveStart,i=e.directiveEnd;n=i)break}else e[o]<0&&(t[18]+=65536),(s>11>16&&(3&t[2])===e&&(t[2]+=2048,s.call(o)):s.call(o)}const pn=-1;class gn{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function mn(t,e,n){const i=pe(t);let r=0;for(;re){o=s-1;break}}}for(;s>16,i=e;for(;n>0;)i=i[15],n--;return i}let Sn=!0;function En(t){const e=Sn;return Sn=t,e}let kn=0;function An(t,e){const n=Tn(t,e);if(-1!==n)return n;const i=e[1];i.firstCreatePass&&(t.injectorIndex=e.length,Dn(i.data,t),Dn(e,null),Dn(i.blueprint,null));const r=Rn(t,e),s=t.injectorIndex;if(xn(r)){const t=_n(r),n=Cn(r,e),i=n[1].data;for(let r=0;r<8;r++)e[s+r]=n[t+r]|i[t+r]}return e[s+8]=r,s}function Dn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function Tn(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===e[t.injectorIndex+8]?-1:t.injectorIndex}function Rn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=0,i=null,r=e;for(;null!==r;){const t=r[1],e=t.type;if(i=2===e?t.declTNode:1===e?r[6]:null,null===i)return pn;if(n++,r=r[15],-1!==i.injectorIndex)return i.injectorIndex|n<<16}return pn}function Fn(t,e,n){!function(t,e,n){let i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(Ot)&&(i=n[Ot]),null==i&&(i=n[Ot]=kn++);const r=255&i,s=1<=0?255&e:In:e}(n);if("function"==typeof s){if(!Xe(e,t,i))return i>.Host?Ln(r,n,i):Mn(e,n,i,r);try{const t=s();if(null!=t||i>.Optional)return t;re(n)}finally{tn()}}else if("number"==typeof s){let r=null,o=Tn(t,e),a=pn,l=i>.Host?e[16][6]:null;for((-1===o||i>.SkipSelf)&&(a=-1===o?Rn(t,e):e[o+8],a!==pn&&Vn(i,!1)?(r=e[1],o=_n(a),e=Cn(a,e)):o=-1);-1!==o;){const t=e[1];if(Un(s,o,t.data)){const t=Pn(o,e,n,r,i,l);if(t!==On)return t}a=e[o+8],a!==pn&&Vn(i,e[1].data[o+8]===l)&&Un(s,o,e)?(r=t,o=_n(a),e=Cn(a,e)):o=-1}}}return Mn(e,n,i,r)}const On={};function In(){return new Hn(Me(),Re())}function Pn(t,e,n,i,r,s){const o=e[1],a=o.data[t+8],l=Nn(a,o,n,null==i?Jt(a)&&Sn:i!=o&&0!=(3&a.type),r>.Host&&s===a);return null!==l?Bn(e,o,l,a):On}function Nn(t,e,n,i,r){const s=t.providerIndexes,o=e.data,a=1048575&s,l=t.directiveStart,c=s>>20,h=r?a+c:t.directiveEnd;for(let u=i?a:a+c;u=l&&t.type===n)return u}if(r){const t=o[l];if(t&&Zt(t)&&t.type===n)return l}return null}function Bn(t,e,n,i){let r=t[n];const s=e.data;if(r instanceof gn){const o=r;o.resolving&&function(t,e){throw new ee("200","Circular dependency in DI detected for "+t)}(ie(s[n]));const a=En(o.canSeeViewProviders);o.resolving=!0;const l=o.injectImpl?vt(o.injectImpl):null;Xe(t,i,gt.Default);try{r=t[n]=o.factory(void 0,s,t,i),e.firstCreatePass&&n>=i.directiveStart&&function(t,e,n){const{ngOnChanges:i,ngOnInit:r,ngDoCheck:s}=e.type.prototype;if(i){const i=ae(e);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i)}r&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,r),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,s))}(n,s[n],e)}finally{null!==l&&vt(l),En(a),o.resolving=!1,tn()}}return r}function Un(t,e,n){const i=64&t,r=32&t;let s;return s=128&t?i?r?n[e+7]:n[e+6]:r?n[e+5]:n[e+4]:i?r?n[e+3]:n[e+2]:r?n[e+1]:n[e],!!(s&1<{const t=jn(rt(e));return t?t():null};let n=te(e);if(null===n){const t=ht(e);n=t&&t.factory}return n||null}function zn(t){return wt(()=>{const e=t.prototype.constructor,n=e[$t]||jn(e),i=Object.prototype;let r=Object.getPrototypeOf(t.prototype).constructor;for(;r&&r!==i;){const t=r[$t]||jn(r);if(t&&t!==n)return t;r=Object.getPrototypeOf(r)}return t=>new t})}function Wn(t){return function(t,e){if("class"===e)return t.classes;if("style"===e)return t.styles;const n=t.attrs;if(n){const t=n.length;let i=0;for(;i{const i=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 i.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,i){const r=t.hasOwnProperty(Gn)?t[Gn]:Object.defineProperty(t,Gn,{value:[]})[Gn];for(;r.length<=i;)r.push(null);return(r[i]=r[i]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r})}class qn{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=ot({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}const Xn=new qn("AnalyzeForEntryComponents"),Yn=Function;function Jn(t,e){void 0===e&&(e=t);for(let n=0;nArray.isArray(t)?Qn(t,e):e(t))}function Zn(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function ti(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function ei(t,e){const n=[];for(let i=0;i=0?t[1|i]=n:(i=~i,function(t,e,n,i){let r=t.length;if(r==e)t.push(n,i);else if(1===r)t.push(i,t[0]),t[0]=n;else{for(r--,t.push(t[r-1],t[r]);r>e;)t[r]=t[r-2],r--;t[e]=n,t[e+1]=i}}(t,i,e,n)),i}function ii(t,e){const n=ri(t,e);if(n>=0)return t[1|n]}function ri(t,e){return function(t,e,n){let i=0,r=t.length>>1;for(;r!==i;){const n=i+(r-i>>1),s=t[n<<1];if(e===s)return n<<1;s>e?r=n:i=n+1}return~(r<<1)}(t,e)}const si=Kn("Inject",t=>({token:t})),oi=Kn("Optional"),ai=Kn("Self"),li=Kn("SkipSelf"),ci={},hi=/\n/gm,ui="__source",di=Q({provide:String,useValue:Q});let fi,pi=void 0;function gi(t){const e=pi;return pi=t,e}function mi(t,e=gt.Default){if(void 0===pi)throw new Error("inject() must be called from an injection context");return null===pi?yt(t,void 0,e):pi.get(t,e>.Optional?null:void 0,e)}function vi(t,e=gt.Default){return(mt||mi)(rt(t),e)}function yi(t){const e=[];for(let n=0;nt,createScript:t=>t,createScriptURL:t=>t})}catch(e){}return fi}())||void 0===e?void 0:e.createHTML(t))||t}class bi{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return"SafeValue must use [property]=binding: "+this.changingThisBreaksApplicationSecurity+" (see https://g.co/ng/security#xss)"}}class xi extends bi{getTypeName(){return"HTML"}}class _i extends bi{getTypeName(){return"Style"}}class Ci extends bi{getTypeName(){return"Script"}}class Si extends bi{getTypeName(){return"URL"}}class Ei extends bi{getTypeName(){return"ResourceURL"}}function ki(t){return t instanceof bi?t.changingThisBreaksApplicationSecurity:t}function Ai(t,e){const n=Di(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error(`Required a safe ${e}, got a ${n} (see https://g.co/ng/security#xss)`)}return n===e}function Di(t){return t instanceof bi&&t.getTypeName()||null}class Ti{getInertBodyElement(t){t=""+t;try{const e=(new window.DOMParser).parseFromString(wi(t),"text/html").body;return e.removeChild(e.firstChild),e}catch(e){return null}}}class Ri{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t);const e=this.inertDocument.createElement("body");t.appendChild(e)}}getInertBodyElement(t){const e=this.inertDocument.createElement("template");if("content"in e)return e.innerHTML=wi(t),e;const n=this.inertDocument.createElement("body");return n.innerHTML=wi(t),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}stripCustomNsAttrs(t){const e=t.attributes;for(let i=e.length-1;0Mi(t.trim())).join(", ")),this.buf.push(" ",e,'="',qi(o),'"')}var i;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();Ui.hasOwnProperty(e)&&!Ii.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(qi(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 Gi=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ki=/([^\#-~ |!])/g;function qi(t){return t.replace(/&/g,"&").replace(Gi,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Ki,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let Xi;function Yi(t,e){let n=null;try{Xi=Xi||function(t){return function(){try{return!!(new window.DOMParser).parseFromString(wi(""),"text/html")}catch(t){return!1}}()?new Ti:new Ri(t)}(t);let i=e?String(e):"";n=Xi.getInertBodyElement(i);let r=5,s=i;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,i=s,s=n.innerHTML,n=Xi.getInertBodyElement(i)}while(i!==s);return(new Wi).sanitizeChildren(Ji(n)||n)}finally{if(n){const t=Ji(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}function Ji(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Qi=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}({});function Zi(t){const e=er();return e?e.sanitize(Qi.HTML,t)||"":Ai(t,"HTML")?ki(t):Yi(fe(),ne(t))}function tr(t){const e=er();return e?e.sanitize(Qi.URL,t)||"":Ai(t,"URL")?ki(t):Mi(ne(t))}function er(){const t=Re();return t&&t[12]}function nr(t){return t.ngDebugContext}function ir(t){return t.ngOriginalError}function rr(t,...e){t.error(...e)}class sr{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),i=function(t){return t.ngErrorLogger||rr}(t);i(this._console,"ERROR",t),e&&i(this._console,"ORIGINAL ERROR",e),n&&i(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?nr(t)?nr(t):this._findContext(ir(t)):null}_findOriginalError(t){let e=ir(t);for(;e&&ir(e);)e=ir(e);return e}}function or(t,e){t.__ngContext__=e}const ar=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(kt))();function lr(t){return{name:"window",target:t.ownerDocument.defaultView}}function cr(t){return t instanceof Function?t():t}var hr=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});function ur(t,e){return(void 0)(t,e)}function dr(t){const e=t[3];return Xt(e)?e[3]:e}function fr(t){return gr(t[13])}function pr(t){return gr(t[4])}function gr(t){for(;null!==t&&!Xt(t);)t=t[4];return t}function mr(t,e,n,i,r){if(null!=i){let s,o=!1;Xt(i)?s=i:qt(i)&&(o=!0,i=i[0]);const a=me(i);0===t&&null!==n?null==r?Sr(e,n,a):Cr(e,n,a,r||null,!0):1===t&&null!==n?Cr(e,n,a,r||null,!0):2===t?function(t,e,n){const i=kr(t,e);i&&function(t,e,n,i){pe(t)?t.removeChild(e,n,i):e.removeChild(n)}(t,i,e,n)}(e,a,o):3===t&&e.destroyNode(a),null!=s&&function(t,e,n,i,r){const s=n[7];s!==me(n)&&mr(e,t,i,s,r);for(let o=Kt;o0&&(t[n-1][4]=i[4]);const o=ti(t,Kt+e);Mr(i[1],r=i,r[11],2,null,null),r[0]=null,r[6]=null;const a=o[19];null!==a&&a.detachView(o[1]),i[3]=null,i[4]=null,i[2]&=-129}var r;return i}function br(t,e){if(!(256&e[2])){const n=e[11];pe(n)&&n.destroyNode&&Mr(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return xr(t[1],t);for(;e;){let n=null;if(qt(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)qt(e)&&xr(e[1],e),e=e[3];null===e&&(e=t),qt(e)&&xr(e[1],e),n=e&&e[4]}e=n}}(e)}}function xr(t,e){if(!(256&e[2])){e[2]&=-129,e[2]|=256,function(t,e){let n;if(null!=t&&null!=(n=t.destroyHooks))for(let i=0;i=0?i[r=l]():i[r=-l].unsubscribe(),t+=2}else{const e=i[r=n[t+1]];n[t].call(e)}if(null!==i)for(let t=r+1;ts?"":r[h+1].toLowerCase();const e=8&i?t:null;if(e&&-1!==Pr(e,c,0)||2&i&&c!==t){if(jr(i))return!1;o=!0}}}}else{if(!o&&!jr(i)&&!jr(l))return!1;if(o&&jr(l))continue;o=!1,i=l|1&i}}return jr(i)||o}function jr(t){return 0==(1&t)}function zr(t,e,n,i){if(null===e)return-1;let r=0;if(i||!n){let n=!1;for(;r-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&i?r+="."+o:4&i&&(r+=" "+o);else""===r||jr(o)||(e+=Kr(s,r),r=""),i=o,s=s||!jr(i);n++}return""!==r&&(e+=Kr(s,r)),e}const Xr={};function Yr(t){Jr(Fe(),Re(),nn()+t,Ne())}function Jr(t,e,n,i){if(!i)if(3==(3&e[2])){const i=t.preOrderCheckHooks;null!==i&&cn(e,i,n)}else{const i=t.preOrderHooks;null!==i&&hn(e,i,0,n)}rn(n)}function Qr(t,e){return t<<17|e<<2}function Zr(t){return t>>17&32767}function ts(t){return 2|t}function es(t){return(131068&t)>>2}function ns(t,e){return-131069&t|e<<2}function is(t){return 1|t}function rs(t,e){const n=t.contentQueries;if(null!==n)for(let i=0;iGt&&Jr(t,e,Gt,Ne()),n(i,r)}finally{rn(s)}}function ds(t,e,n){if(Yt(e)){const i=e.directiveEnd;for(let r=e.directiveStart;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=s&&n.push(s),n.push(i,r,o)}}function _s(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function Cs(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function Ss(t,e,n){if(n){if(e.exportAs)for(let i=0;i0&&Ls(n)}}function Ls(t){for(let n=fr(t);null!==n;n=pr(n))for(let t=Kt;t0&&Ls(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&Ls(i)}}function Ms(t,e){const n=xe(e,t),i=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function Us(t){return t[7]||(t[7]=[])}function Vs(t){return t.cleanup||(t.cleanup=[])}function Hs(t,e){const n=t[9],i=n?n.get(sr,null):null;i&&i.handleError(e)}function js(t,e,n,i,r){for(let s=0;sthis.processProvider(n,t,e)),Qn([t],t=>this.processInjectorType(t,[],r)),this.records.set(Gs,ro(void 0,this));const s=this.records.get(qs);this.scope=null!=s?s.value:null,this.source=i||("object"==typeof t?null:tt(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=ci,n=gt.Default){this.assertNotDestroyed();const i=gi(this);try{if(!(n>.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(r=t)||"object"==typeof r&&r instanceof qn)&<(t);e=n&&this.injectableDefInScope(n)?ro(no(t),Xs):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n>.Self?Zs():this.parent).get(t,e=n>.Optional&&e===ci?null:e)}catch(s){if("NullInjectorError"===s.name){if((s.ngTempTokenPath=s.ngTempTokenPath||[]).unshift(tt(t)),i)throw s;return function(t,e,n,i){const r=t.ngTempTokenPath;throw e[ui]&&r.unshift(e[ui]),t.message=function(t,e,n,i=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let r=tt(e);if(Array.isArray(e))r=e.map(tt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let i=e[n];t.push(n+":"+("string"==typeof i?JSON.stringify(i):tt(i)))}r=`{${t.join(", ")}}`}return`${n}${i?"("+i+")":""}[${r}]: ${t.replace(hi,"\n ")}`}("\n"+t.message,r,n,i),t.ngTokenPath=r,t.ngTempTokenPath=null,t}(s,t,"R3InjectorError",this.source)}throw s}finally{gi(i)}var r}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(tt(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=rt(t)))return!1;let i=ht(t);const r=null==i&&t.ngModule||void 0,s=void 0===r?t:r,o=-1!==n.indexOf(s);if(void 0!==r&&(i=ht(r)),null==i)return!1;if(null!=i.imports&&!o){let t;n.push(s);try{Qn(i.imports,i=>{this.processInjectorType(i,e,n)&&(void 0===t&&(t=[]),t.push(i))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,i||Js))}}this.injectorDefTypes.add(s),this.records.set(s,ro(i.factory,Xs));const a=i.providers;if(null!=a&&!o){const e=t;Qn(a,t=>this.processProvider(t,e,a))}return void 0!==r&&void 0!==t.providers}processProvider(t,e,n){let i=oo(t=rt(t))?t:rt(t&&t.provide);const r=function(t,e,n){return so(t)?ro(void 0,t.useValue):ro(io(t),Xs)}(t);if(oo(t)||!0!==t.multi)this.records.get(i);else{let e=this.records.get(i);e||(e=ro(void 0,Xs,!0),e.factory=()=>yi(e.multi),this.records.set(i,e)),i=t,e.multi.push(t)}this.records.set(i,r)}hydrate(t,e){var n;return e.value===Xs&&(e.value=Ys,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function no(t){const e=lt(t),n=null!==e?e.factory:te(t);if(null!==n)return n;const i=ht(t);if(null!==i)return i.factory;if(t instanceof qn)throw new Error(`Token ${tt(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=ei(e,"?");throw new Error(`Can't resolve all parameters for ${tt(t)}: (${n.join(", ")}).`)}const n=function(t){const e=t&&(t[ut]||t[ft]);if(e){const n=function(t){if(t.hasOwnProperty("name"))return t.name;const e=(""+t).match(/^function\s*([^\s(]+)/);return null===e?"":e[1]}(t);return console.warn(`DEPRECATED: DI is instantiating a token "${n}" that inherits its @Injectable decorator but does not provide one itself.\nThis will become an error in a future version of Angular. Please add @Injectable() to the "${n}" class.`),e}return null}(t);return null!==n?()=>n.factory(t):()=>new t}(t);throw new Error("unreachable")}function io(t,e,n){let i=void 0;if(oo(t)){const e=rt(t);return te(e)||no(e)}if(so(t))i=()=>rt(t.useValue);else if((r=t)&&r.useFactory)i=()=>t.useFactory(...yi(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))i=()=>vi(rt(t.useExisting));else{const e=rt(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return te(e)||no(e);i=()=>new e(...yi(t.deps))}var r;return i}function ro(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function so(t){return null!==t&&"object"==typeof t&&di in t}function oo(t){return"function"==typeof t}const ao=function(t,e,n){return function(t,e=null,n=null,i){const r=to(t,e,n,i);return r._resolveInjectorDefTypes(),r}({name:n},e,t,n)};let lo=(()=>{class t{static create(t,e){return Array.isArray(t)?ao(t,e,""):ao(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=ci,t.NULL=new Ks,t.\u0275prov=ot({token:t,providedIn:"any",factory:()=>vi(Gs)}),t.__NG_ELEMENT_ID__=-1,t})();function co(t,e){ln(_e(t)[1],Me())}function ho(t){let e=Object.getPrototypeOf(t.type.prototype).constructor,n=!0;const i=[t];for(;e;){let r=void 0;if(Zt(t))r=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new Error("Directives cannot inherit Components");r=e.\u0275dir}if(r){if(n){i.push(r);const e=t;e.inputs=uo(t.inputs),e.declaredInputs=uo(t.declaredInputs),e.outputs=uo(t.outputs);const n=r.hostBindings;n&&go(t,n);const s=r.viewQuery,o=r.contentQueries;if(s&&fo(t,s),o&&po(t,o),Z(t.inputs,r.inputs),Z(t.declaredInputs,r.declaredInputs),Z(t.outputs,r.outputs),Zt(r)&&r.data.animation){const e=t.data;e.animation=(e.animation||[]).concat(r.data.animation)}}const e=r.features;if(e)for(let i=0;i=0;i--){const r=t[i];r.hostVars=e+=r.hostVars,r.hostAttrs=wn(r.hostAttrs,n=wn(n,r.hostAttrs))}}(i)}function uo(t){return t===At?{}:t===Dt?[]:t}function fo(t,e){const n=t.viewQuery;t.viewQuery=n?(t,i)=>{e(t,i),n(t,i)}:e}function po(t,e){const n=t.contentQueries;t.contentQueries=n?(t,i,r)=>{e(t,i,r),n(t,i,r)}:e}function go(t,e){const n=t.hostBindings;t.hostBindings=n?(t,i)=>{e(t,i),n(t,i)}:e}let mo=null;function vo(){if(!mo){const t=kt.Symbol;if(t&&t.iterator)mo=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;ea(me(t[i.index])).target:i.index;if(pe(n)){let o=null;if(!a&&l&&(o=function(t,e,n,i){const r=t.cleanup;if(null!=r)for(let s=0;sn?t[n]:null}"string"==typeof t&&(s+=2)}return null}(t,e,r,i.index)),null!==o)(o.__ngLastListenerFn__||o).__ngNextListenerFn__=s,o.__ngLastListenerFn__=s,u=!1;else{s=Vo(i,e,s,!1);const t=n.listen(f.name||p,r,s);h.push(s,t),c&&c.push(r,m,g,g+1)}}else s=Vo(i,e,s,!0),p.addEventListener(r,s,o),h.push(s),c&&c.push(r,m,g,o)}else s=Vo(i,e,s,!1);const d=i.outputs;let f;if(u&&null!==d&&(f=d[r])){const t=f.length;if(t)for(let n=0;n0;)e=e[15],t--;return e}(t,De.lFrame.contextLView))[8]}(t)}function jo(t,e){let n=null;const i=function(t){const e=t.attrs;if(null!=e){const t=e.indexOf(5);if(0==(1&t))return e[t+1]}return null}(t);for(let r=0;r=0}const Jo={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Qo(t){return t.substring(Jo.key,Jo.keyEnd)}function Zo(t,e){const n=Jo.textEnd;return n===e?-1:(e=Jo.keyEnd=function(t,e,n){for(;e32;)e++;return e}(t,Jo.key=e,n),ta(t,e,n))}function ta(t,e,n){for(;e=0;n=Zo(e,n))ni(t,Qo(e),!0)}function sa(t,e,n,i){const r=Re(),s=Fe(),o=je(2);s.firstUpdatePass&&la(s,t,o,i),e!==Xr&&_o(r,o,e)&&ua(s,s.data[nn()],r,r[11],t,r[o+1]=function(t,e){return null==t||("string"==typeof e?t+=e:"object"==typeof t&&(t=tt(ki(t)))),t}(e,n),i,o)}function oa(t,e,n,i){const r=Fe(),s=je(2);r.firstUpdatePass&&la(r,null,s,i);const o=Re();if(n!==Xr&&_o(o,s,n)){const a=r.data[nn()];if(pa(a,i)&&!aa(r,s)){let t=i?a.classesWithoutHost:a.stylesWithoutHost;null!==t&&(n=et(t,n||"")),Ro(r,a,o,n,i)}else!function(t,e,n,i,r,s,o,a){r===Xr&&(r=qo);let l=0,c=0,h=0=t.expandoStartIndex}function la(t,e,n,i){const r=t.data;if(null===r[n+1]){const s=r[nn()],o=aa(t,n);pa(s,i)&&null===e&&!o&&(e=!1),e=function(t,e,n,i){const r=function(t){const e=De.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}(t);let s=i?e.residualClasses:e.residualStyles;if(null===r)0===(i?e.classBindings:e.styleBindings)&&(n=ha(n=ca(null,t,e,n,i),e.attrs,i),s=null);else{const o=e.directiveStylingLast;if(-1===o||t[o]!==r)if(n=ca(r,t,e,n,i),null===s){let n=function(t,e,n){const i=n?e.classBindings:e.styleBindings;if(0!==es(i))return t[Zr(i)]}(t,e,i);void 0!==n&&Array.isArray(n)&&(n=ca(null,t,e,n[1],i),n=ha(n,e.attrs,i),function(t,e,n,i){t[Zr(n?e.classBindings:e.styleBindings)]=i}(t,e,i,n))}else s=function(t,e,n){let i=void 0;const r=e.directiveEnd;for(let s=1+e.directiveStylingLast;s0)&&(h=!0)}else c=n;if(r)if(0!==l){const e=Zr(t[a+1]);t[i+1]=Qr(e,a),0!==e&&(t[e+1]=ns(t[e+1],i)),t[a+1]=131071&t[a+1]|i<<17}else t[i+1]=Qr(a,0),0!==a&&(t[a+1]=ns(t[a+1],i)),a=i;else t[i+1]=Qr(l,0),0===a?a=i:t[l+1]=ns(t[l+1],i),l=i;h&&(t[i+1]=ts(t[i+1])),Xo(t,c,i,!0),Xo(t,c,i,!1),function(t,e,n,i,r){const s=r?t.residualClasses:t.residualStyles;null!=s&&"string"==typeof e&&ri(s,e)>=0&&(n[i+1]=is(n[i+1]))}(e,c,t,i,s),o=Qr(a,l),s?e.classBindings=o:e.styleBindings=o}(r,s,e,n,o,i)}}function ca(t,e,n,i,r){let s=null;const o=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const e=t[r],s=Array.isArray(e),l=s?e[1]:e,c=null===l;let h=n[r+1];h===Xr&&(h=c?qo:void 0);let u=c?ii(h,i):l===i?h:void 0;if(s&&!fa(u)&&(u=ii(e,i)),fa(u)&&(a=u,o))return a;const d=t[r+1];r=o?Zr(d):es(d)}if(null!==e){let t=s?e.residualClasses:e.residualStyles;null!=t&&(a=ii(t,i))}return a}function fa(t){return void 0!==t}function pa(t,e){return 0!=(t.flags&(e?16:32))}function ga(t,e=""){const n=Re(),i=Fe(),r=t+Gt,s=i.firstCreatePass?os(i,r,1,e,null):i.data[r],o=n[r]=function(t,e){return pe(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Tr(i,n,o,s),Oe(s,!1)}function ma(t){return va("",t,""),ma}function va(t,e,n){const i=Re(),r=Eo(i,t,e,n);return r!==Xr&&zs(i,nn(),r),va}function ya(t,e,n,i,r){const s=Re(),o=function(t,e,n,i,r,s){const o=Co(t,Ve(),n,r);return je(2),o?e+ne(n)+i+ne(r)+s:Xr}(s,t,e,n,i,r);return o!==Xr&&zs(s,nn(),o),ya}function wa(t,e,n){const i=Re();return _o(i,He(),e)&&ws(Fe(),sn(),i,t,e,i[11],n,!0),wa}const ba=void 0;var xa=["en",[["a","p"],["AM","PM"],ba],[["AM","PM"],ba,ba],[["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"]],ba,[["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"]],ba,[["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}",ba,"{1} 'at' {0}",ba],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];let _a={};function Ca(t){return t in _a||(_a[t]=kt.ng&&kt.ng.common&&kt.ng.common.locales&&kt.ng.common.locales[t]),_a[t]}var Sa=function(t){return t[t.LocaleId=0]="LocaleId",t[t.DayPeriodsFormat=1]="DayPeriodsFormat",t[t.DayPeriodsStandalone=2]="DayPeriodsStandalone",t[t.DaysFormat=3]="DaysFormat",t[t.DaysStandalone=4]="DaysStandalone",t[t.MonthsFormat=5]="MonthsFormat",t[t.MonthsStandalone=6]="MonthsStandalone",t[t.Eras=7]="Eras",t[t.FirstDayOfWeek=8]="FirstDayOfWeek",t[t.WeekendRange=9]="WeekendRange",t[t.DateFormat=10]="DateFormat",t[t.TimeFormat=11]="TimeFormat",t[t.DateTimeFormat=12]="DateTimeFormat",t[t.NumberSymbols=13]="NumberSymbols",t[t.NumberFormats=14]="NumberFormats",t[t.CurrencyCode=15]="CurrencyCode",t[t.CurrencySymbol=16]="CurrencySymbol",t[t.CurrencyName=17]="CurrencyName",t[t.Currencies=18]="Currencies",t[t.Directionality=19]="Directionality",t[t.PluralCase=20]="PluralCase",t[t.ExtraData=21]="ExtraData",t}({});const Ea="en-US";let ka=Ea;function Aa(t){var e,n;n="Expected localeId to be defined",null==(e=t)&&function(t,e,n,i){throw new Error("ASSERTION ERROR: "+t+` [Expected=> null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(ka=t.toLowerCase().replace(/_/g,"-"))}function Da(t,e,n,i,r){if(t=rt(t),Array.isArray(t))for(let s=0;s>20;if(oo(t)||!t.multi){const i=new gn(l,r,Do),f=Fa(a,e,r?h:h+d,u);-1===f?(Fn(An(c,o),s,a),Ta(s,t,e.length),e.push(a),c.directiveStart++,c.directiveEnd++,r&&(c.providerIndexes+=1048576),n.push(i),o.push(i)):(n[f]=i,o[f]=i)}else{const f=Fa(a,e,h+d,u),p=Fa(a,e,h,h+d),g=f>=0&&n[f],m=p>=0&&n[p];if(r&&!m||!r&&!g){Fn(An(c,o),s,a);const h=function(t,e,n,i,r){const s=new gn(t,n,Do);return s.multi=[],s.index=e,s.componentProviders=0,Ra(s,r,i&&!n),s}(r?Ma:La,n.length,r,i,l);!r&&m&&(n[p].providerFactory=h),Ta(s,t,e.length,0),e.push(a),c.directiveStart++,c.directiveEnd++,r&&(c.providerIndexes+=1048576),n.push(h),o.push(h)}else Ta(s,t,f>-1?f:p,Ra(n[r?p:f],l,!r&&i));!r&&i&&m&&n[p].componentProviders++}}}function Ta(t,e,n,i){const r=oo(e);if(r||e.useClass){const s=(e.useClass||e).prototype.ngOnDestroy;if(s){const o=t.destroyHooks||(t.destroyHooks=[]);if(!r&&e.multi){const t=o.indexOf(n);-1===t?o.push(n,[i,s]):o[t+1].push(i,s)}else o.push(n,s)}}}function Ra(t,e,n){return n&&t.componentProviders++,t.multi.push(e)-1}function Fa(t,e,n,i){for(let r=n;r{n.providersResolver=(n,i)=>function(t,e,n){const i=Fe();if(i.firstCreatePass){const r=Zt(t);Da(n,i.data,i.blueprint,r,!0),Da(e,i.data,i.blueprint,r,!1)}}(n,i?i(t):t,e)}}class Ia{}class Pa{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${tt(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let Na=(()=>{class t{}return t.NULL=new Pa,t})();function Ba(...t){}function Ua(t,e){return new Ha(ye(t,e))}const Va=function(){return Ua(Me(),Re())};let Ha=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=Va,t})();class ja{}let za=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Wa(),t})();const Wa=function(){const t=Re(),e=xe(Me().index,t);return function(t){return t[11]}(qt(e)?e:t)};let Ga=(()=>{class t{}return t.\u0275prov=ot({token:t,providedIn:"root",factory:()=>null}),t})();class Ka{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const qa=new Ka("11.0.5");class Xa{constructor(){}supports(t){return wo(t)}create(t){return new Ja(t)}}const Ya=(t,e)=>e;class Ja{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||Ya}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,i=0,r=null;for(;e||n;){const s=!n||e&&e.currentIndex{i=this._trackByFn(e,t),null!==r&&Object.is(r.trackById,i)?(s&&(r=this._verifyReinsertion(r,t,i,e)),Object.is(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,i,e),s=!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;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=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,i){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,i))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,i)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,i)):t=this._addAfter(new Qa(e,n),r,i),t}_verifyReinsertion(t,e,n,i){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,t._prev,i):t.currentIndex!=i&&(t.currentIndex=i,this._addToMoves(t,i)),t}_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 i=t._prevRemoved,r=t._nextRemoved;return null===i?this._removalsHead=r:i._nextRemoved=r,null===r?this._removalsTail=i:r._prevRemoved=i,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_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 i=null===e?this._itHead:e._next;return t._next=i,t._prev=e,null===i?this._itTail=t:i._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new tl),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||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new tl),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 Qa{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 Za{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)&&Object.is(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 tl{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Za,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 el(t,e,n){const i=t.previousIndex;if(null===i)return i;let r=0;return n&&i{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const i=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,i)}}),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 i=n._prev,r=n._next;return i&&(i._next=r),r&&(r._prev=i),n._next=null,n._prev=null,n}const n=new rl(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){Object.is(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 rl{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}}let sl=(()=>{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 li,new oi]]}}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.\u0275prov=ot({token:t,providedIn:"root",factory:()=>new t([new Xa])}),t})(),ol=(()=>{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 li,new oi]]}}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.\u0275prov=ot({token:t,providedIn:"root",factory:()=>new t([new nl])}),t})();function al(t,e,n,i,r=!1){for(;null!==n;){const s=e[n.index];if(null!==s&&i.push(me(s)),Xt(s))for(let t=Kt;t-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}br(this._lView[1],this._lView)}onDestroy(t){vs(this._lView[1],this._lView,null,t)}markForCheck(){Os(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Is(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Be(!0);try{Is(t,e,n)}finally{Be(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,Mr(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}class cl extends ll{constructor(t){super(t),this._view=t}detectChanges(){Ps(this._view)}checkNoChanges(){!function(t){Be(!0);try{Ps(t)}finally{Be(!1)}}(this._view)}get context(){return null}}const hl=function(t=!1){return function(t,e,n){if(!n&&Jt(t)){const n=xe(t.index,e);return new ll(n,n)}return 47&t.type?new ll(e[16],e):null}(Me(),Re(),t)};let ul=(()=>{class t{}return t.__NG_ELEMENT_ID__=hl,t.__ChangeDetectorRef__=!0,t})();const dl=[new nl],fl=new sl([new Xa]),pl=new ol(dl),gl=function(){return wl(Me(),Re())};let ml=(()=>{class t{}return t.__NG_ELEMENT_ID__=gl,t})();const vl=ml,yl=class extends vl{constructor(t,e,n){super(),this._declarationLView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=ss(this._declarationLView,e,t,16,null,e.declTNode,null,null,null,null);n[17]=this._declarationLView[this._declarationTContainer.index];const i=this._declarationLView[19];return null!==i&&(n[19]=i.createEmbeddedView(e)),ls(e,n,t),new ll(n)}};function wl(t,e){return 4&t.type?new yl(e,t,Ua(t,e)):null}class bl{}class xl{}const _l=function(){return Dl(Me(),Re())};let Cl=(()=>{class t{}return t.__NG_ELEMENT_ID__=_l,t})();const Sl=Cl,El=class extends Sl{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostLView=n}get element(){return Ua(this._hostTNode,this._hostLView)}get injector(){return new Hn(this._hostTNode,this._hostLView)}get parentInjector(){const t=Rn(this._hostTNode,this._hostLView);if(xn(t)){const e=Cn(t,this._hostLView),n=_n(t);return new Hn(e[1].data[n+8],e)}return new Hn(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const e=kl(this._lContainer);return null!==e&&e[t]||null}get length(){return this._lContainer.length-Kt}createEmbeddedView(t,e,n){const i=t.createEmbeddedView(e||{});return this.insert(i,n),i}createComponent(t,e,n,i,r){const s=n||this.parentInjector;if(!r&&null==t.ngModule&&s){const t=s.get(bl,null);t&&(r=t)}const o=t.create(s,i,void 0,r);return this.insert(o.hostView,e),o}insert(t,e){const n=t._lView,i=n[1];if(Xt(n[3])){const e=this.indexOf(t);if(-1!==e)this.detach(e);else{const e=n[3],i=new El(e,e[6],e[3]);i.detach(i.indexOf(t))}}const r=this._adjustIndex(e),s=this._lContainer;!function(t,e,n,i){const r=Kt+i,s=n.length;i>0&&(n[r-1][4]=e),iar});class Ml extends Ia{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(qr).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return Fl(this.componentDef.inputs)}get outputs(){return Fl(this.componentDef.outputs)}create(t,e,n,i){const r=(i=i||this.ngModule)?function(t,e){return{get:(n,i,r)=>{const s=t.get(n,Tl,r);return s!==Tl||i===Tl?s:e.get(n,i,r)}}}(t,i.injector):t,s=r.get(ja,ge),o=r.get(Ga,null),a=s.createRenderer(null,this.componentDef),l=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(pe(t))return t.selectRootElement(e,n===xt.ShadowDom);let i="string"==typeof e?t.querySelector(e):e;return i.textContent="",i}(a,n,this.componentDef.encapsulation):vr(s.createRenderer(null,this.componentDef),l,function(t){const e=t.toLowerCase();return"svg"===e?ue:"math"===e?"http://www.w3.org/1998/MathML/":null}(l)),h=this.componentDef.onPush?576:528,u={components:[],scheduler:ar,clean:Bs,playerHandler:null,flags:0},d=ms(0,null,null,1,0,null,null,null,null,null),f=ss(null,d,u,h,null,null,s,a,o,r);let p,g;Ye(f);try{const t=function(t,e,n,i,r,s){const o=n[1];n[20]=t;const a=os(o,20,2,"#host",null),l=a.mergedAttrs=e.hostAttrs;null!==l&&(Ws(a,l,!0),null!==t&&(mn(r,t,l),null!==a.classes&&Ir(r,t,a.classes),null!==a.styles&&Or(r,t,a.styles)));const c=i.createRenderer(t,e),h=ss(n,gs(e),null,e.onPush?64:16,n[20],a,i,c,null,null);return o.firstCreatePass&&(Fn(An(a,n),o,e.type),Cs(o,a),Es(a,n.length,1)),$s(n,h),n[20]=h}(c,this.componentDef,f,s,a);if(c)if(n)mn(a,c,["ng-version",qa.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let i=1,r=2;for(;i0&&Ir(a,c,e.join(" "))}if(g=we(d,Gt),void 0!==e){const t=g.projection=[];for(let n=0;nt(o,e)),e.contentQueries){const t=Me();e.contentQueries(1,o,t.directiveStart)}const a=Me();return!s.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(rn(a.index),xs(n[1],a,0,a.directiveStart,a.directiveEnd,e),_s(e,o)),o}(t,this.componentDef,f,u,[co]),ls(d,f,null)}finally{en()}return new $l(this.componentType,p,Ua(g,f),f,g)}}class $l extends class{}{constructor(t,e,n,i,r){super(),this.location=n,this._rootLView=i,this._tNode=r,this.instance=e,this.hostView=this.changeDetectorRef=new cl(i),this.componentType=t}get injector(){return new Hn(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(t){this.hostView.onDestroy(t)}}const Ol=new Map;class Il extends bl{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Rl(this);const n=Wt(t),i=t[Mt]||null;i&&Aa(i),this._bootstrapComponents=cr(n.bootstrap),this._r3Injector=to(t,e,[{provide:bl,useValue:this},{provide:Na,useValue:this.componentFactoryResolver}],tt(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=lo.THROW_IF_NOT_FOUND,n=gt.Default){return t===lo||t===bl||t===Gs?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Pl extends xl{constructor(t){super(),this.moduleType=t,null!==Wt(t)&&function(t){const e=new Set;!function t(n){const i=Wt(n,!0),r=i.id;null!==r&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${tt(e)} vs ${tt(e.name)}`)}(r,Ol.get(r),n),Ol.set(r,n));const s=cr(i.imports);for(const o of s)e.has(o)||(e.add(o),t(o))}(t)}(t)}create(t){return new Il(this.moduleType,t)}}function Nl(t,e,n){const i=Ue()+t,r=Re();return r[i]===Xr?xo(r,i,n?e.call(n):e()):function(t,e){return t[e]}(r,i)}function Bl(t,e,n,i){return Hl(Re(),Ue(),t,e,n,i)}function Ul(t,e,n,i,r){return function(t,e,n,i,r,s,o){const a=e+n;return Co(t,a,r,s)?xo(t,a+2,o?i.call(o,r,s):i(r,s)):Vl(t,a+2)}(Re(),Ue(),t,e,n,i,r)}function Vl(t,e){const n=t[e];return n===Xr?void 0:n}function Hl(t,e,n,i,r,s){const o=e+n;return _o(t,o,r)?xo(t,o+1,s?i.call(s,r):i(r)):Vl(t,o+1)}const jl=class extends C{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let i,r=t=>null,s=()=>null;t&&"object"==typeof t?(i=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&&(s=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(i=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(i,r,s);return t instanceof u&&t.add(o),o}};function zl(){return this._results[vo()]()}class Wl{constructor(){this.dirty=!0,this._results=[],this.changes=new jl,this.length=0;const t=vo(),e=Wl.prototype;e[t]||(e[t]=zl)}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()}toString(){return this._results.toString()}reset(t){this._results=Jn(t),this.dirty=!1,this.length=this._results.length,this.last=this._results[this.length-1],this.first=this._results[0]}notifyOnChanges(){this.changes.emit(this)}setDirty(){this.dirty=!0}destroy(){this.changes.complete(),this.changes.unsubscribe()}}class Gl{constructor(t){this.queryList=t,this.matches=null}clone(){return new Gl(this.queryList)}setDirty(){this.queryList.setDirty()}}class Kl{constructor(t=[]){this.queries=t}createEmbeddedView(t){const e=t.queries;if(null!==e){const n=null!==t.contentQueries?t.contentQueries[0]:e.length,i=[];for(let t=0;t0)i.push(o[t/2]);else{const r=s[t+1],o=e[-n];for(let t=Kt;t{class t{constructor(t){this.appInits=t,this.resolve=Ba,this.reject=Ba,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}}return t.\u0275fac=function(e){return new(e||t)(vi(uc,8))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();const fc=new qn("AppId"),pc={provide:fc,useFactory:function(){return`${gc()}${gc()}${gc()}`},deps:[]};function gc(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const mc=new qn("Platform Initializer"),vc=new qn("Platform ID"),yc=new qn("appBootstrapListener");let wc=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();const bc=new qn("LocaleId"),xc=new qn("DefaultCurrencyCode");class _c{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const Cc=function(t){return new Pl(t)},Sc=Cc,Ec=function(t){return Promise.resolve(Cc(t))},kc=function(t){const e=Cc(t),n=cr(Wt(t).declarations).reduce((t,e)=>{const n=zt(e);return n&&t.push(new Ml(n)),t},[]);return new _c(e,n)},Ac=kc,Dc=function(t){return Promise.resolve(kc(t))};let Tc=(()=>{class t{constructor(){this.compileModuleSync=Sc,this.compileModuleAsync=Ec,this.compileModuleAndAllComponentsSync=Ac,this.compileModuleAndAllComponentsAsync=Dc}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();const Rc=(()=>Promise.resolve(0))();function Fc(t){"undefined"==typeof Zone?Rc.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Lc{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new jl(!1),this.onMicrotaskEmpty=new jl(!1),this.onStable=new jl(!1),this.onError=new jl(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=e,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let t=kt.requestAnimationFrame,e=kt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const i=e[Zone.__symbol__("OriginalDelegate")];i&&(e=i)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(kt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Oc(t),$c(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Oc(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,i,r,s,o,a)=>{try{return Ic(t),n.invokeTask(r,s,o,a)}finally{e&&"eventTask"===s.type&&e(),Pc(t)}},onInvoke:(e,n,i,r,s,o,a)=>{try{return Ic(t),e.invoke(i,r,s,o,a)}finally{Pc(t)}},onHasTask:(e,n,i,r)=>{e.hasTask(i,r),n===i&&("microTask"==r.change?(t._hasPendingMicrotasks=r.microTask,Oc(t),$c(t)):"macroTask"==r.change&&(t.hasPendingMacrotasks=r.macroTask))},onHandleError:(e,n,i,r)=>(e.handleError(i,r),t.runOutsideAngular(()=>t.onError.emit(r)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Lc.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Lc.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,i){const r=this._inner,s=r.scheduleEventTask("NgZoneEvent: "+i,t,Mc,Ba,Ba);try{return r.runTask(s,e,n)}finally{r.cancelTask(s)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}const Mc={};function $c(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 Oc(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function Ic(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function Pc(t){t._nesting--,$c(t)}class Nc{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new jl,this.onMicrotaskEmpty=new jl,this.onStable=new jl,this.onError=new jl}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,i){return t.apply(e,n)}}let Bc=(()=>{class t{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:()=>{Lc.assertNotInAngularZone(),Fc(()=>{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())Fc(()=>{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 i=-1;e&&e>0&&(i=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==i),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:i,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[]}}return t.\u0275fac=function(e){return new(e||t)(vi(Lc))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),Uc=(()=>{class t{constructor(){this._applications=new Map,jc.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 jc.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();class Vc{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Hc,jc=new Vc,zc=!0,Wc=!1;function Gc(){return Wc=!0,zc}const Kc=new qn("AllowMultipleToken");class qc{constructor(t,e){this.name=t,this.token=e}}function Xc(t,e,n=[]){const i="Platform: "+e,r=new qn(i);return(e=[])=>{let s=Yc();if(!s||s.injector.get(Kc,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0},{provide:qs,useValue:"platform"});!function(t){if(Hc&&!Hc.destroyed&&!Hc.injector.get(Kc,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Hc=t.get(Jc);const e=t.get(mc,null);e&&e.forEach(t=>t())}(lo.create({providers:t,name:i}))}return function(t){const e=Yc();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 Yc(){return Hc&&!Hc.destroyed?Hc:null}let Jc=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new Nc:("zone.js"===t?void 0:t)||new Lc({enableLongStackTrace:Gc(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),i=[{provide:Lc,useValue:n}];return n.run(()=>{const e=lo.create({providers:i,parent:this.injector,name:t.moduleType.name}),r=t.create(e),s=r.injector.get(sr,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.runOutsideAngular(()=>{const t=n.onError.subscribe({next:t=>{s.handleError(t)}});r.onDestroy(()=>{th(this._modules,r),t.unsubscribe()})}),function(t,e,n){try{const i=n();return Po(i)?i.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):i}catch(i){throw e.runOutsideAngular(()=>t.handleError(i)),i}}(s,n,()=>{const t=r.injector.get(dc);return t.runInitializers(),t.donePromise.then(()=>(Aa(r.injector.get(bc,Ea)||Ea),this._moduleDoBootstrap(r),r))})})}bootstrapModule(t,e=[]){const n=Qc({},e);return function(t,e,n){const i=new Pl(n);return Promise.resolve(i)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Zc);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>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)}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}}return t.\u0275fac=function(e){return new(e||t)(vi(lo))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();function Qc(t,e){return Array.isArray(e)?e.reduce(Qc,t):Object.assign(Object.assign({},t),e)}let Zc=(()=>{class t{constructor(t,e,n,i,r,s){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=i,this._componentFactoryResolver=r,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new y(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),a=new y(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Lc.assertNotInAngularZone(),Fc(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Lc.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=function(...t){let e=Number.POSITIVE_INFINITY,n=null,i=t[t.length-1];return E(i)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof i&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof y?t[0]:j(e)(z(t,n))}(o,a.pipe(t=>{return W()((e=J,function(t){let n;n="function"==typeof e?e:function(){return e};const i=Object.create(t,X);return i.source=t,i.subjectFactory=n,i})(t));var e}))}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 Ia?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const i=n.isBoundToModule?void 0:this._injector.get(bl),r=n.create(lo.NULL,[],e||n.selector,i),s=r.location.nativeElement,o=r.injector.get(Bc,null),a=o&&r.injector.get(Uc);return o&&a&&a.registerApplication(s,o),r.onDestroy(()=>{this.detachView(r.hostView),th(this.components,r),a&&a.unregisterApplication(s)}),this._loadComponent(r),Gc()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;th(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(yc,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy()),this._onMicrotaskEmptySubscription.unsubscribe()}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(vi(Lc),vi(wc),vi(lo),vi(sr),vi(Na),vi(dc))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();function th(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class eh{}class nh{}const ih={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"};let rh=(()=>{class t{constructor(t,e){this._compiler=t,this._config=e||ih}load(t){return this.loadAndCompile(t)}loadAndCompile(t){let[e,i]=t.split("#");return void 0===i&&(i="default"),n("zn8P")(e).then(t=>t[i]).then(t=>sh(t,e,i)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,i]=t.split("#"),r="NgFactory";return void 0===i&&(i="default",r=""),n("zn8P")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[i+r]).then(t=>sh(t,e,i))}}return t.\u0275fac=function(e){return new(e||t)(vi(Tc),vi(nh,8))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();function sh(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}const oh=Xc(null,"core",[{provide:vc,useValue:"unknown"},{provide:Jc,deps:[lo]},{provide:Uc,deps:[]},{provide:wc,deps:[]}]),ah=[{provide:Zc,useClass:Zc,deps:[Lc,wc,lo,sr,Na,dc]},{provide:Ll,deps:[Lc],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:dc,useClass:dc,deps:[[new oi,uc]]},{provide:Tc,useClass:Tc,deps:[]},pc,{provide:sl,useFactory:function(){return fl},deps:[]},{provide:ol,useFactory:function(){return pl},deps:[]},{provide:bc,useFactory:function(t){return Aa(t=t||"undefined"!=typeof $localize&&$localize.locale||Ea),t},deps:[[new si(bc),new oi,new li]]},{provide:xc,useValue:"USD"}];let lh=(()=>{class t{constructor(t){}}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)(vi(Zc))},providers:ah}),t})(),ch=null;function hh(){return ch}const uh=new qn("DocumentToken");let dh=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({factory:fh,token:t,providedIn:"platform"}),t})();function fh(){return vi(gh)}const ph=new qn("Location Initialized");let gh=(()=>{class t extends dh{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=hh().getLocation(),this._history=hh().getHistory()}getBaseHrefFromDOM(){return hh().getBaseHref(this._doc)}onPopState(t){hh().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){hh().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){mh()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){mh()?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.\u0275fac=function(e){return new(e||t)(vi(uh))},t.\u0275prov=ot({factory:vh,token:t,providedIn:"platform"}),t})();function mh(){return!!window.history.pushState}function vh(){return new gh(vi(uh))}function yh(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}function wh(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}function bh(t){return t&&"?"!==t[0]?"?"+t:t}let xh=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({factory:_h,token:t,providedIn:"root"}),t})();function _h(t){const e=vi(uh).location;return new Sh(vi(dh),e&&e.origin||"")}const Ch=new qn("appBaseHref");let Sh=(()=>{class t extends xh{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 yh(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+bh(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,i){const r=this.prepareExternalUrl(n+bh(i));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,i){const r=this.prepareExternalUrl(n+bh(i));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}return t.\u0275fac=function(e){return new(e||t)(vi(dh),vi(Ch,8))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),Eh=(()=>{class t extends xh{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=yh(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,i){let r=this.prepareExternalUrl(n+bh(i));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,i){let r=this.prepareExternalUrl(n+bh(i));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}return t.\u0275fac=function(e){return new(e||t)(vi(dh),vi(Ch,8))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),kh=(()=>{class t{constructor(t,e){this._subject=new jl,this._urlChangeListeners=[],this._platformStrategy=t;const n=this._platformStrategy.getBaseHref();this._platformLocation=e,this._baseHref=wh(Dh(n)),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(t,e=""){return this.path()==this.normalize(t+bh(e))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,Dh(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(t,e="",n=null){this._platformStrategy.pushState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+bh(e)),n)}replaceState(t,e="",n=null){this._platformStrategy.replaceState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+bh(e)),n)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=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})}}return t.\u0275fac=function(e){return new(e||t)(vi(xh),vi(dh))},t.normalizeQueryParams=bh,t.joinWithSlash=yh,t.stripTrailingSlash=wh,t.\u0275prov=ot({factory:Ah,token:t,providedIn:"root"}),t})();function Ah(){return new kh(vi(xh),vi(dh))}function Dh(t){return t.replace(/\/index.html$/,"")}var Th=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}({});class Rh{}let Fh=(()=>{class t extends Rh{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=Ca(e);if(n)return n;const i=e.split("-")[0];if(n=Ca(i),n)return n;if("en"===i)return xa;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[Sa.PluralCase]}(e||this.locale)(t)){case Th.Zero:return"zero";case Th.One:return"one";case Th.Two:return"two";case Th.Few:return"few";case Th.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(vi(bc))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();function Lh(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[i,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(i.trim()===e)return decodeURIComponent(r)}return null}let Mh=(()=>{class t{constructor(t,e,n,i){this._iterableDiffers=t,this._keyValueDiffers=e,this._ngEl=n,this._renderer=i,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}set klass(t){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof t?t.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}set ngClass(t){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof t?t.split(/\s+/):t,this._rawClass&&(wo(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}ngDoCheck(){if(this._iterableDiffer){const t=this._iterableDiffer.diff(this._rawClass);t&&this._applyIterableChanges(t)}else if(this._keyValueDiffer){const t=this._keyValueDiffer.diff(this._rawClass);t&&this._applyKeyValueChanges(t)}}_applyKeyValueChanges(t){t.forEachAddedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachChangedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachRemovedItem(t=>{t.previousValue&&this._toggleClass(t.key,!1)})}_applyIterableChanges(t){t.forEachAddedItem(t=>{if("string"!=typeof t.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got "+tt(t.item));this._toggleClass(t.item,!0)}),t.forEachRemovedItem(t=>this._toggleClass(t.item,!1))}_applyClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!0)):Object.keys(t).forEach(e=>this._toggleClass(e,!!t[e])))}_removeClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!1)):Object.keys(t).forEach(t=>this._toggleClass(t,!1)))}_toggleClass(t,e){(t=t.trim())&&t.split(/\s+/g).forEach(t=>{e?this._renderer.addClass(this._ngEl.nativeElement,t):this._renderer.removeClass(this._ngEl.nativeElement,t)})}}return t.\u0275fac=function(e){return new(e||t)(Do(sl),Do(ol),Do(Ha),Do(za))},t.\u0275dir=jt({type:t,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),t})();class $h{constructor(t,e,n,i){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=i}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}}let Oh=(()=>{class t{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){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,i)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new $h(null,this._ngForOf,-1,-1),null===i?void 0:i),r=new Ih(t,n);e.push(r)}else if(null==i)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const r=this._viewContainer.get(n);this._viewContainer.move(r,i);const s=new Ih(t,r);e.push(s)}});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}}return t.\u0275fac=function(e){return new(e||t)(Do(Cl),Do(ml),Do(sl))},t.\u0275dir=jt({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();class Ih{constructor(t,e){this.record=t,this.view=e}}let Ph=(()=>{class t{constructor(t,e){this._viewContainer=t,this._context=new Nh,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){Bh("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Bh("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 ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(Do(Cl),Do(ml))},t.\u0275dir=jt({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class Nh{constructor(){this.$implicit=null,this.ngIf=null}}function Bh(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${tt(e)}'.`)}let Uh=(()=>{class t{constructor(t,e,n){this._ngEl=t,this._differs=e,this._renderer=n,this._ngStyle=null,this._differ=null}set ngStyle(t){this._ngStyle=t,!this._differ&&t&&(this._differ=this._differs.find(t).create())}ngDoCheck(){if(this._differ){const t=this._differ.diff(this._ngStyle);t&&this._applyChanges(t)}}_setStyle(t,e){const[n,i]=t.split(".");null!=(e=null!=e&&i?`${e}${i}`:e)?this._renderer.setStyle(this._ngEl.nativeElement,n,e):this._renderer.removeStyle(this._ngEl.nativeElement,n)}_applyChanges(t){t.forEachRemovedItem(t=>this._setStyle(t.key,null)),t.forEachAddedItem(t=>this._setStyle(t.key,t.currentValue)),t.forEachChangedItem(t=>this._setStyle(t.key,t.currentValue))}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha),Do(ol),Do(za))},t.\u0275dir=jt({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t})(),Vh=(()=>{class t{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){if(this._shouldRecreateView(t)){const t=this._viewContainerRef;this._viewRef&&t.remove(t.indexOf(this._viewRef)),this._viewRef=this.ngTemplateOutlet?t.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext):null}else 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]}}return t.\u0275fac=function(e){return new(e||t)(Do(Cl))},t.\u0275dir=jt({type:t,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet"},features:[oe]}),t})(),Hh=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:[{provide:Rh,useClass:Fh}]}),t})(),jh=(()=>{class t{}return t.\u0275prov=ot({token:t,providedIn:"root",factory:()=>new zh(vi(uh),window,vi(sr))}),t})();class zh{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.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(t){this.supportsScrolling()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportsScrolling()){const e=this.document.getElementById(t)||this.document.getElementsByName(t)[0];e&&this.scrollToElement(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,i=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(n-r[0],i-r[1])}supportScrollRestoration(){try{if(!this.supportsScrolling())return!1;const t=Wh(this.window.history)||Wh(Object.getPrototypeOf(this.window.history));return!(!t||!t.writable&&!t.set)}catch(t){return!1}}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch(t){return!1}}}function Wh(t){return Object.getOwnPropertyDescriptor(t,"scrollRestoration")}class Gh extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Gh,ch||(ch=t)}getProperty(t,e){return t[e]}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()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=qh||(qh=document.querySelector("base"),qh)?qh.getAttribute("href"):null;return null==e?null:(n=e,Kh||(Kh=document.createElement("a")),Kh.setAttribute("href",n),"/"===Kh.pathname.charAt(0)?Kh.pathname:"/"+Kh.pathname);var n}resetBaseElement(){qh=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return Lh(document.cookie,t)}}let Kh,qh=null;const Xh=new qn("TRANSITION_ID"),Yh=[{provide:uc,useFactory:function(t,e,n){return()=>{n.get(dc).donePromise.then(()=>{const n=hh();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[Xh,uh,lo],multi:!0}];class Jh{static init(){var t;t=new Jh,jc=t}addToWindow(t){kt.getAngularTestability=(e,n=!0)=>{const i=t.findTestabilityInTree(e,n);if(null==i)throw new Error("Could not find testability for element.");return i},kt.getAllAngularTestabilities=()=>t.getAllTestabilities(),kt.getAllAngularRootElements=()=>t.getAllRootElements(),kt.frameworkStabilizers||(kt.frameworkStabilizers=[]),kt.frameworkStabilizers.push(t=>{const e=kt.getAllAngularTestabilities();let n=e.length,i=!1;const r=function(e){i=i||e,n--,0==n&&t(i)};e.forEach(function(t){t.whenStable(r)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const i=t.getTestability(e);return null!=i?i:n?hh().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const Qh=new qn("EventManagerPlugins");let Zh=(()=>{class t{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 i=0;i{class t{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)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),nu=(()=>{class t extends eu{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=>hh().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(vi(uh))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();const iu={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/"},ru=/%COMP%/g;function su(t,e,n){for(let i=0;i{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let au=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new lu(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case xt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new cu(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case xt.ShadowDom:return new hu(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=su(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(vi(Zh),vi(nu),vi(fc))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();class lu{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(iu[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,i){if(i){e=i+":"+e;const r=iu[i];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const i=iu[n];i?t.removeAttributeNS(i,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,i){i&(hr.DashCase|hr.Important)?t.style.setProperty(e,n,i&hr.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&hr.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,ou(n)):this.eventManager.addEventListener(t,e,ou(n))}}class cu extends lu{constructor(t,e,n,i){super(t),this.component=n;const r=su(i+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr="_ngcontent-%COMP%".replace(ru,i+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(ru,i+"-"+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 hu extends lu{constructor(t,e,n,i){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const r=su(i.id,i.styles,[]);for(let s=0;s{class t extends tu{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(vi(uh))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();const du=["alt","control","meta","shift"],fu={"\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"},pu={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"},gu={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let mu=(()=>{class t extends tu{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,i){const r=t.parseEventName(n),s=t.eventCallback(r.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>hh().onAndCancel(e,r.domEventName,s))}static parseEventName(e){const n=e.toLowerCase().split("."),i=n.shift();if(0===n.length||"keydown"!==i&&"keyup"!==i)return null;const r=t._normalizeKey(n.pop());let s="";if(du.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),s+=t+".")}),s+=r,0!=n.length||0===r.length)return null;const o={};return o.domEventName=i,o.fullKey=s,o}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&pu.hasOwnProperty(e)&&(e=pu[e]))}return fu[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),du.forEach(i=>{i!=n&&(0,gu[i])(t)&&(e+=i+".")}),e+=n,e}static eventCallback(e,n,i){return r=>{t.getEventFullKey(r)===e&&i.runGuarded(()=>n(r))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(vi(uh))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),vu=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({factory:function(){return vi(yu)},token:t,providedIn:"root"}),t})(),yu=(()=>{class t extends vu{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case Qi.NONE:return e;case Qi.HTML:return Ai(e,"HTML")?ki(e):Yi(this._doc,String(e));case Qi.STYLE:return Ai(e,"Style")?ki(e):e;case Qi.SCRIPT:if(Ai(e,"Script"))return ki(e);throw new Error("unsafe value used in a script context");case Qi.URL:return Di(e),Ai(e,"URL")?ki(e):Mi(String(e));case Qi.RESOURCE_URL:if(Ai(e,"ResourceURL"))return ki(e);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${t} (see https://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(t){return new xi(t)}bypassSecurityTrustStyle(t){return new _i(t)}bypassSecurityTrustScript(t){return new Ci(t)}bypassSecurityTrustUrl(t){return new Si(t)}bypassSecurityTrustResourceUrl(t){return new Ei(t)}}return t.\u0275fac=function(e){return new(e||t)(vi(uh))},t.\u0275prov=ot({factory:function(){return t=vi(Gs),new yu(t.get(uh));var t},token:t,providedIn:"root"}),t})();const wu=Xc(oh,"browser",[{provide:vc,useValue:"browser"},{provide:mc,useValue:function(){Gh.makeCurrent(),Jh.init()},multi:!0},{provide:uh,useFactory:function(){return function(t){de=t}(document),document},deps:[]}]),bu=[[],{provide:qs,useValue:"root"},{provide:sr,useFactory:function(){return new sr},deps:[]},{provide:Qh,useClass:uu,multi:!0,deps:[uh,Lc,vc]},{provide:Qh,useClass:mu,multi:!0,deps:[uh]},[],{provide:au,useClass:au,deps:[Zh,nu,fc]},{provide:ja,useExisting:au},{provide:eu,useExisting:nu},{provide:nu,useClass:nu,deps:[uh]},{provide:Bc,useClass:Bc,deps:[Lc]},{provide:Zh,useClass:Zh,deps:[Qh,Lc]},[]];let xu=(()=>{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:fc,useValue:e.appId},{provide:Xh,useExisting:fc},Yh]}}}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)(vi(t,12))},providers:bu,imports:[Hh,lh]}),t})();"undefined"!=typeof window&&window;class _u{}const Cu="*";function Su(t,e){return{type:7,name:t,definitions:e,options:{}}}function Eu(t,e=null){return{type:4,styles:e,timings:t}}function ku(t,e=null){return{type:2,steps:t,options:e}}function Au(t){return{type:6,styles:t,offset:null}}function Du(t,e,n=null){return{type:1,expr:t,animation:e,options:n}}function Tu(t){Promise.resolve(null).then(t)}class Ru{constructor(t=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=t+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){Tu(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){}setPosition(t){this._position=this.totalTime?t*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class Fu{constructor(t){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=t;let e=0,n=0,i=0;const r=this.players.length;0==r?Tu(()=>this._onFinish()):this.players.forEach(t=>{t.onDone(()=>{++e==r&&this._onFinish()}),t.onDestroy(()=>{++n==r&&this._onDestroy()}),t.onStart(()=>{++i==r&&this._onStart()})}),this.totalTime=this.players.reduce((t,e)=>Math.max(t,e.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this.players.forEach(t=>t.init())}onStart(t){this._onStartFns.push(t)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(t=>t()),this._onStartFns=[])}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(t=>t.play())}pause(){this.players.forEach(t=>t.pause())}restart(){this.players.forEach(t=>t.restart())}finish(){this._onFinish(),this.players.forEach(t=>t.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(t=>t.destroy()),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){this.players.forEach(t=>t.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(t){const e=t*this.totalTime;this.players.forEach(t=>{const n=t.totalTime?Math.min(1,e/t.totalTime):1;t.setPosition(n)})}getPosition(){const t=this.players.reduce((t,e)=>null===t||e.totalTime>t.totalTime?e:t,null);return null!=t?t.getPosition():0}beforeDestroy(){this.players.forEach(t=>{t.beforeDestroy&&t.beforeDestroy()})}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}function Lu(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function Mu(t){switch(t.length){case 0:return new Ru;case 1:return t[0];default:return new Fu(t)}}function $u(t,e,n,i,r={},s={}){const o=[],a=[];let l=-1,c=null;if(i.forEach(t=>{const n=t.offset,i=n==l,h=i&&c||{};Object.keys(t).forEach(n=>{let i=n,a=t[n];if("offset"!==n)switch(i=e.normalizePropertyName(i,o),a){case"!":a=r[n];break;case Cu:a=s[n];break;default:a=e.normalizeStyleValue(n,i,a,o)}h[i]=a}),i||a.push(h),c=h,l=n}),o.length){const t="\n - ";throw new Error(`Unable to animate due to the following errors:${t}${o.join(t)}`)}return a}function Ou(t,e,n,i){switch(e){case"start":t.onStart(()=>i(n&&Iu(n,"start",t)));break;case"done":t.onDone(()=>i(n&&Iu(n,"done",t)));break;case"destroy":t.onDestroy(()=>i(n&&Iu(n,"destroy",t)))}}function Iu(t,e,n){const i=n.totalTime,r=Pu(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==i?t.totalTime:i,!!n.disabled),s=t._data;return null!=s&&(r._data=s),r}function Pu(t,e,n,i,r="",s=0,o){return{element:t,triggerName:e,fromState:n,toState:i,phaseName:r,totalTime:s,disabled:!!o}}function Nu(t,e,n){let i;return t instanceof Map?(i=t.get(e),i||t.set(e,i=n)):(i=t[e],i||(i=t[e]=n)),i}function Bu(t){const e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}let Uu=(t,e)=>!1,Vu=(t,e)=>!1,Hu=(t,e,n)=>[];const ju=Lu();(ju||"undefined"!=typeof Element)&&(Uu=(t,e)=>t.contains(e),Vu=(()=>{if(ju||Element.prototype.matches)return(t,e)=>t.matches(e);{const t=Element.prototype,e=t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector;return e?(t,n)=>e.apply(t,[n]):Vu}})(),Hu=(t,e,n)=>{let i=[];if(n){const n=t.querySelectorAll(e);for(let t=0;t{const i=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[i]=t[n]}),e}let Ju=(()=>{class t{validateStyleProperty(t){return Gu(t)}matchesElement(t,e){return Ku(t,e)}containsElement(t,e){return qu(t,e)}query(t,e,n){return Xu(t,e,n)}computeStyle(t,e,n){return n||""}animate(t,e,n,i,r,s=[],o){return new Ru(n,i)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),Qu=(()=>{class t{}return t.NOOP=new Ju,t})();const Zu="ng-enter",td="ng-leave",ed="ng-trigger",nd=".ng-trigger",id="ng-animating",rd=".ng-animating";function sd(t){if("number"==typeof t)return t;const e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:od(parseFloat(e[1]),e[2])}function od(t,e){switch(e){case"s":return 1e3*t;default:return t}}function ad(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){let i,r=0,s="";if("string"==typeof t){const n=t.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===n)return e.push(`The provided timing value "${t}" is invalid.`),{duration:0,delay:0,easing:""};i=od(parseFloat(n[1]),n[2]);const o=n[3];null!=o&&(r=od(parseFloat(o),n[4]));const a=n[5];a&&(s=a)}else i=t;if(!n){let n=!1,s=e.length;i<0&&(e.push("Duration values below 0 are not allowed for this animation step."),n=!0),r<0&&(e.push("Delay values below 0 are not allowed for this animation step."),n=!0),n&&e.splice(s,0,`The provided timing value "${t}" is invalid.`)}return{duration:i,delay:r,easing:s}}(t,e,n)}function ld(t,e={}){return Object.keys(t).forEach(n=>{e[n]=t[n]}),e}function cd(t,e,n={}){if(e)for(let i in t)n[i]=t[i];else ld(t,n);return n}function hd(t,e,n){return n?e+":"+n+";":""}function ud(t){let e="";for(let n=0;n{const r=bd(i);n&&!n.hasOwnProperty(i)&&(n[i]=t.style[r]),t.style[r]=e[i]}),Lu()&&ud(t))}function fd(t,e){t.style&&(Object.keys(e).forEach(e=>{const n=bd(e);t.style[n]=""}),Lu()&&ud(t))}function pd(t){return Array.isArray(t)?1==t.length?t[0]:ku(t):t}const gd=new RegExp("{{\\s*(.+?)\\s*}}","g");function md(t){let e=[];if("string"==typeof t){let n;for(;n=gd.exec(t);)e.push(n[1]);gd.lastIndex=0}return e}function vd(t,e,n){const i=t.toString(),r=i.replace(gd,(t,i)=>{let r=e[i];return e.hasOwnProperty(i)||(n.push("Please provide a value for the animation param "+i),r=""),r.toString()});return r==i?t:r}function yd(t){const e=[];let n=t.next();for(;!n.done;)e.push(n.value),n=t.next();return e}const wd=/-+([a-z0-9])/g;function bd(t){return t.replace(wd,(...t)=>t[1].toUpperCase())}function xd(t,e){return 0===t||0===e}function _d(t,e,n){const i=Object.keys(n);if(i.length&&e.length){let s=e[0],o=[];if(i.forEach(t=>{s.hasOwnProperty(t)||o.push(t),s[t]=n[t]}),o.length)for(var r=1;rfunction(t,e,n){if(":"==t[0]){const i=function(t,e){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(t,e)=>parseFloat(e)>parseFloat(t);case":decrement":return(t,e)=>parseFloat(e) *"}}(t,n);if("function"==typeof i)return void e.push(i);t=i}const i=t.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==i||i.length<4)return n.push(`The provided transition expression "${t}" is not supported`),e;const r=i[1],s=i[2],o=i[3];e.push(Td(r,o)),"<"!=s[0]||r==Ed&&o==Ed||e.push(Td(o,r))}(t,n,e)):n.push(t),n}const Ad=new Set(["true","1"]),Dd=new Set(["false","0"]);function Td(t,e){const n=Ad.has(t)||Dd.has(t),i=Ad.has(e)||Dd.has(e);return(r,s)=>{let o=t==Ed||t==r,a=e==Ed||e==s;return!o&&n&&"boolean"==typeof r&&(o=r?Ad.has(t):Dd.has(t)),!a&&i&&"boolean"==typeof s&&(a=s?Ad.has(e):Dd.has(e)),o&&a}}const Rd=new RegExp("s*:selfs*,?","g");function Fd(t,e,n){return new Ld(t).build(e,n)}class Ld{constructor(t){this._driver=t}build(t,e){const n=new Md(e);return this._resetContextStyleTimingState(n),Cd(this,pd(t),n)}_resetContextStyleTimingState(t){t.currentQuerySelector="",t.collectedStyles={},t.collectedStyles[""]={},t.currentTime=0}visitTrigger(t,e){let n=e.queryCount=0,i=e.depCount=0;const r=[],s=[];return"@"==t.name.charAt(0)&&e.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),t.definitions.forEach(t=>{if(this._resetContextStyleTimingState(e),0==t.type){const n=t,i=n.name;i.toString().split(/\s*,\s*/).forEach(t=>{n.name=t,r.push(this.visitState(n,e))}),n.name=i}else if(1==t.type){const r=this.visitTransition(t,e);n+=r.queryCount,i+=r.depCount,s.push(r)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:r,transitions:s,queryCount:n,depCount:i,options:null}}visitState(t,e){const n=this.visitStyle(t.styles,e),i=t.options&&t.options.params||null;if(n.containsDynamicStyles){const r=new Set,s=i||{};if(n.styles.forEach(t=>{if($d(t)){const e=t;Object.keys(e).forEach(t=>{md(e[t]).forEach(t=>{s.hasOwnProperty(t)||r.add(t)})})}}),r.size){const n=yd(r.values());e.errors.push(`state("${t.name}", ...) must define default values for all the following style substitutions: ${n.join(", ")}`)}}return{type:0,name:t.name,style:n,options:i?{params:i}:null}}visitTransition(t,e){e.queryCount=0,e.depCount=0;const n=Cd(this,pd(t.animation),e);return{type:1,matchers:kd(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:Od(t.options)}}visitSequence(t,e){return{type:2,steps:t.steps.map(t=>Cd(this,t,e)),options:Od(t.options)}}visitGroup(t,e){const n=e.currentTime;let i=0;const r=t.steps.map(t=>{e.currentTime=n;const r=Cd(this,t,e);return i=Math.max(i,e.currentTime),r});return e.currentTime=i,{type:3,steps:r,options:Od(t.options)}}visitAnimate(t,e){const n=function(t,e){let n=null;if(t.hasOwnProperty("duration"))n=t;else if("number"==typeof t)return Id(ad(t,e).duration,0,"");const i=t;if(i.split(/\s+/).some(t=>"{"==t.charAt(0)&&"{"==t.charAt(1))){const t=Id(0,0,"");return t.dynamic=!0,t.strValue=i,t}return n=n||ad(i,e),Id(n.duration,n.delay,n.easing)}(t.timings,e.errors);let i;e.currentAnimateTimings=n;let r=t.styles?t.styles:Au({});if(5==r.type)i=this.visitKeyframes(r,e);else{let r=t.styles,s=!1;if(!r){s=!0;const t={};n.easing&&(t.easing=n.easing),r=Au(t)}e.currentTime+=n.duration+n.delay;const o=this.visitStyle(r,e);o.isEmptyStep=s,i=o}return e.currentAnimateTimings=null,{type:4,timings:n,style:i,options:null}}visitStyle(t,e){const n=this._makeStyleAst(t,e);return this._validateStyleAst(n,e),n}_makeStyleAst(t,e){const n=[];Array.isArray(t.styles)?t.styles.forEach(t=>{"string"==typeof t?t==Cu?n.push(t):e.errors.push(`The provided style string value ${t} is not allowed.`):n.push(t)}):n.push(t.styles);let i=!1,r=null;return n.forEach(t=>{if($d(t)){const e=t,n=e.easing;if(n&&(r=n,delete e.easing),!i)for(let t in e)if(e[t].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:r,offset:t.offset,containsDynamicStyles:i,options:null}}_validateStyleAst(t,e){const n=e.currentAnimateTimings;let i=e.currentTime,r=e.currentTime;n&&r>0&&(r-=n.duration+n.delay),t.styles.forEach(t=>{"string"!=typeof t&&Object.keys(t).forEach(n=>{if(!this._driver.validateStyleProperty(n))return void e.errors.push(`The provided animation property "${n}" is not a supported CSS property for animations`);const s=e.collectedStyles[e.currentQuerySelector],o=s[n];let a=!0;o&&(r!=i&&r>=o.startTime&&i<=o.endTime&&(e.errors.push(`The CSS property "${n}" that exists between the times of "${o.startTime}ms" and "${o.endTime}ms" is also being animated in a parallel animation between the times of "${r}ms" and "${i}ms"`),a=!1),r=o.startTime),a&&(s[n]={startTime:r,endTime:i}),e.options&&function(t,e,n){const i=e.params||{},r=md(t);r.length&&r.forEach(t=>{i.hasOwnProperty(t)||n.push(`Unable to resolve the local animation param ${t} in the given list of values`)})}(t[n],e.options,e.errors)})})}visitKeyframes(t,e){const n={type:5,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push("keyframes() must be placed inside of a call to animate()"),n;let i=0;const r=[];let s=!1,o=!1,a=0;const l=t.steps.map(t=>{const n=this._makeStyleAst(t,e);let l=null!=n.offset?n.offset:function(t){if("string"==typeof t)return null;let e=null;if(Array.isArray(t))t.forEach(t=>{if($d(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}});else if($d(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}return e}(n.styles),c=0;return null!=l&&(i++,c=n.offset=l),o=o||c<0||c>1,s=s||c0&&i{const s=h>0?i==u?1:h*i:r[i],o=s*p;e.currentTime=d+f.delay+o,f.duration=o,this._validateStyleAst(t,e),t.offset=s,n.styles.push(t)}),n}visitReference(t,e){return{type:8,animation:Cd(this,pd(t.animation),e),options:Od(t.options)}}visitAnimateChild(t,e){return e.depCount++,{type:9,options:Od(t.options)}}visitAnimateRef(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:Od(t.options)}}visitQuery(t,e){const n=e.currentQuerySelector,i=t.options||{};e.queryCount++,e.currentQuery=t;const[r,s]=function(t){const e=!!t.split(/\s*,\s*/).find(t=>":self"==t);return e&&(t=t.replace(Rd,"")),[t=t.replace(/@\*/g,nd).replace(/@\w+/g,t=>".ng-trigger-"+t.substr(1)).replace(/:animating/g,rd),e]}(t.selector);e.currentQuerySelector=n.length?n+" "+r:r,Nu(e.collectedStyles,e.currentQuerySelector,{});const o=Cd(this,pd(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:r,limit:i.limit||0,optional:!!i.optional,includeSelf:s,animation:o,originalSelector:t.selector,options:Od(t.options)}}visitStagger(t,e){e.currentQuery||e.errors.push("stagger() can only be used inside of query()");const n="full"===t.timings?{duration:0,delay:0,easing:"full"}:ad(t.timings,e.errors,!0);return{type:12,animation:Cd(this,pd(t.animation),e),timings:n,options:null}}}class Md{constructor(t){this.errors=t,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null}}function $d(t){return!Array.isArray(t)&&"object"==typeof t}function Od(t){var e;return t?(t=ld(t)).params&&(t.params=(e=t.params)?ld(e):null):t={},t}function Id(t,e,n){return{duration:t,delay:e,easing:n}}function Pd(t,e,n,i,r,s,o=null,a=!1){return{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:i,duration:r,delay:s,totalTime:r+s,easing:o,subTimeline:a}}class Nd{constructor(){this._map=new Map}consume(t){let e=this._map.get(t);return e?this._map.delete(t):e=[],e}append(t,e){let n=this._map.get(t);n||this._map.set(t,n=[]),n.push(...e)}has(t){return this._map.has(t)}clear(){this._map.clear()}}const Bd=new RegExp(":enter","g"),Ud=new RegExp(":leave","g");function Vd(t,e,n,i,r,s={},o={},a,l,c=[]){return(new Hd).buildKeyframes(t,e,n,i,r,s,o,a,l,c)}class Hd{buildKeyframes(t,e,n,i,r,s,o,a,l,c=[]){l=l||new Nd;const h=new zd(t,e,l,i,r,c,[]);h.options=a,h.currentTimeline.setStyles([s],null,h.errors,a),Cd(this,n,h);const u=h.timelines.filter(t=>t.containsAnimation());if(u.length&&Object.keys(o).length){const t=u[u.length-1];t.allowOnlyTimelineStyles()||t.setStyles([o],null,h.errors,a)}return u.length?u.map(t=>t.buildKeyframes()):[Pd(e,[],[],[],0,0,"",!1)]}visitTrigger(t,e){}visitState(t,e){}visitTransition(t,e){}visitAnimateChild(t,e){const n=e.subInstructions.consume(e.element);if(n){const i=e.createSubContext(t.options),r=e.currentTimeline.currentTime,s=this._visitSubInstructions(n,i,i.options);r!=s&&e.transformIntoNewTimeline(s)}e.previousNode=t}visitAnimateRef(t,e){const n=e.createSubContext(t.options);n.transformIntoNewTimeline(),this.visitReference(t.animation,n),e.transformIntoNewTimeline(n.currentTimeline.currentTime),e.previousNode=t}_visitSubInstructions(t,e,n){let i=e.currentTimeline.currentTime;const r=null!=n.duration?sd(n.duration):null,s=null!=n.delay?sd(n.delay):null;return 0!==r&&t.forEach(t=>{const n=e.appendInstructionToTimeline(t,r,s);i=Math.max(i,n.duration+n.delay)}),i}visitReference(t,e){e.updateOptions(t.options,!0),Cd(this,t.animation,e),e.previousNode=t}visitSequence(t,e){const n=e.subContextCount;let i=e;const r=t.options;if(r&&(r.params||r.delay)&&(i=e.createSubContext(r),i.transformIntoNewTimeline(),null!=r.delay)){6==i.previousNode.type&&(i.currentTimeline.snapshotCurrentStyles(),i.previousNode=jd);const t=sd(r.delay);i.delayNextStep(t)}t.steps.length&&(t.steps.forEach(t=>Cd(this,t,i)),i.currentTimeline.applyStylesToKeyframe(),i.subContextCount>n&&i.transformIntoNewTimeline()),e.previousNode=t}visitGroup(t,e){const n=[];let i=e.currentTimeline.currentTime;const r=t.options&&t.options.delay?sd(t.options.delay):0;t.steps.forEach(s=>{const o=e.createSubContext(t.options);r&&o.delayNextStep(r),Cd(this,s,o),i=Math.max(i,o.currentTimeline.currentTime),n.push(o.currentTimeline)}),n.forEach(t=>e.currentTimeline.mergeTimelineCollectedStyles(t)),e.transformIntoNewTimeline(i),e.previousNode=t}_visitTiming(t,e){if(t.dynamic){const n=t.strValue;return ad(e.params?vd(n,e.params,e.errors):n,e.errors)}return{duration:t.duration,delay:t.delay,easing:t.easing}}visitAnimate(t,e){const n=e.currentAnimateTimings=this._visitTiming(t.timings,e),i=e.currentTimeline;n.delay&&(e.incrementTime(n.delay),i.snapshotCurrentStyles());const r=t.style;5==r.type?this.visitKeyframes(r,e):(e.incrementTime(n.duration),this.visitStyle(r,e),i.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=t}visitStyle(t,e){const n=e.currentTimeline,i=e.currentAnimateTimings;!i&&n.getCurrentStyleProperties().length&&n.forwardFrame();const r=i&&i.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(r):n.setStyles(t.styles,r,e.errors,e.options),e.previousNode=t}visitKeyframes(t,e){const n=e.currentAnimateTimings,i=e.currentTimeline.duration,r=n.duration,s=e.createSubContext().currentTimeline;s.easing=n.easing,t.styles.forEach(t=>{s.forwardTime((t.offset||0)*r),s.setStyles(t.styles,t.easing,e.errors,e.options),s.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(s),e.transformIntoNewTimeline(i+r),e.previousNode=t}visitQuery(t,e){const n=e.currentTimeline.currentTime,i=t.options||{},r=i.delay?sd(i.delay):0;r&&(6===e.previousNode.type||0==n&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=jd);let s=n;const o=e.invokeQuery(t.selector,t.originalSelector,t.limit,t.includeSelf,!!i.optional,e.errors);e.currentQueryTotal=o.length;let a=null;o.forEach((n,i)=>{e.currentQueryIndex=i;const o=e.createSubContext(t.options,n);r&&o.delayNextStep(r),n===e.element&&(a=o.currentTimeline),Cd(this,t.animation,o),o.currentTimeline.applyStylesToKeyframe(),s=Math.max(s,o.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(s),a&&(e.currentTimeline.mergeTimelineCollectedStyles(a),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t}visitStagger(t,e){const n=e.parentContext,i=e.currentTimeline,r=t.timings,s=Math.abs(r.duration),o=s*(e.currentQueryTotal-1);let a=s*e.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":a=o-a;break;case"full":a=n.currentStaggerTime}const l=e.currentTimeline;a&&l.delayNextStep(a);const c=l.currentTime;Cd(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}const jd={};class zd{constructor(t,e,n,i,r,s,o,a){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=i,this._leaveClassName=r,this.errors=s,this.timelines=o,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=jd,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=a||new Wd(this._driver,e,0),o.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(t,e){if(!t)return;const n=t;let i=this.options;null!=n.duration&&(i.duration=sd(n.duration)),null!=n.delay&&(i.delay=sd(n.delay));const r=n.params;if(r){let t=i.params;t||(t=this.options.params={}),Object.keys(r).forEach(n=>{e&&t.hasOwnProperty(n)||(t[n]=vd(r[n],t,this.errors))})}}_copyOptions(){const t={};if(this.options){const e=this.options.params;if(e){const n=t.params={};Object.keys(e).forEach(t=>{n[t]=e[t]})}}return t}createSubContext(t=null,e,n){const i=e||this.element,r=new zd(this._driver,i,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(i,n||0));return r.previousNode=this.previousNode,r.currentAnimateTimings=this.currentAnimateTimings,r.options=this._copyOptions(),r.updateOptions(t),r.currentQueryIndex=this.currentQueryIndex,r.currentQueryTotal=this.currentQueryTotal,r.parentContext=this,this.subContextCount++,r}transformIntoNewTimeline(t){return this.previousNode=jd,this.currentTimeline=this.currentTimeline.fork(this.element,t),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(t,e,n){const i={duration:null!=e?e:t.duration,delay:this.currentTimeline.currentTime+(null!=n?n:0)+t.delay,easing:""},r=new Gd(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,i,t.stretchStartingKeyframe);return this.timelines.push(r),i}incrementTime(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)}delayNextStep(t){t>0&&this.currentTimeline.delayNextStep(t)}invokeQuery(t,e,n,i,r,s){let o=[];if(i&&o.push(this.element),t.length>0){t=(t=t.replace(Bd,"."+this._enterClassName)).replace(Ud,"."+this._leaveClassName);let e=this._driver.query(this.element,t,1!=n);0!==n&&(e=n<0?e.slice(e.length+n,e.length):e.slice(0,n)),o.push(...e)}return r||0!=o.length||s.push(`\`query("${e}")\` returned zero elements. (Use \`query("${e}", { optional: true })\` if you wish to allow this.)`),o}}class Wd{constructor(t,e,n,i){this._driver=t,this.element=e,this.startTime=n,this._elementTimelineStylesLookup=i,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}getCurrentStyleProperties(){return Object.keys(this._currentKeyframe)}get currentTime(){return this.startTime+this.duration}delayNextStep(t){const e=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||e?(this.forwardTime(this.currentTime+t),e&&this.snapshotCurrentStyles()):this.startTime+=t}fork(t,e){return this.applyStylesToKeyframe(),new Wd(this._driver,t,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=1,this._loadKeyframe()}forwardTime(t){this.applyStylesToKeyframe(),this.duration=t,this._loadKeyframe()}_updateStyle(t,e){this._localTimelineStyles[t]=e,this._globalTimelineStyles[t]=e,this._styleSummary[t]={time:this.currentTime,value:e}}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(t){t&&(this._previousKeyframe.easing=t),Object.keys(this._globalTimelineStyles).forEach(t=>{this._backFill[t]=this._globalTimelineStyles[t]||Cu,this._currentKeyframe[t]=Cu}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(t,e,n,i){e&&(this._previousKeyframe.easing=e);const r=i&&i.params||{},s=function(t,e){const n={};let i;return t.forEach(t=>{"*"===t?(i=i||Object.keys(e),i.forEach(t=>{n[t]=Cu})):cd(t,!1,n)}),n}(t,this._globalTimelineStyles);Object.keys(s).forEach(t=>{const e=vd(s[t],r,n);this._pendingStyles[t]=e,this._localTimelineStyles.hasOwnProperty(t)||(this._backFill[t]=this._globalTimelineStyles.hasOwnProperty(t)?this._globalTimelineStyles[t]:Cu),this._updateStyle(t,e)})}applyStylesToKeyframe(){const t=this._pendingStyles,e=Object.keys(t);0!=e.length&&(this._pendingStyles={},e.forEach(e=>{this._currentKeyframe[e]=t[e]}),Object.keys(this._localTimelineStyles).forEach(t=>{this._currentKeyframe.hasOwnProperty(t)||(this._currentKeyframe[t]=this._localTimelineStyles[t])}))}snapshotCurrentStyles(){Object.keys(this._localTimelineStyles).forEach(t=>{const e=this._localTimelineStyles[t];this._pendingStyles[t]=e,this._updateStyle(t,e)})}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){const t=[];for(let e in this._currentKeyframe)t.push(e);return t}mergeTimelineCollectedStyles(t){Object.keys(t._styleSummary).forEach(e=>{const n=this._styleSummary[e],i=t._styleSummary[e];(!n||i.time>n.time)&&this._updateStyle(e,i.value)})}buildKeyframes(){this.applyStylesToKeyframe();const t=new Set,e=new Set,n=1===this._keyframes.size&&0===this.duration;let i=[];this._keyframes.forEach((r,s)=>{const o=cd(r,!0);Object.keys(o).forEach(n=>{const i=o[n];"!"==i?t.add(n):i==Cu&&e.add(n)}),n||(o.offset=s/this.duration),i.push(o)});const r=t.size?yd(t.values()):[],s=e.size?yd(e.values()):[];if(n){const t=i[0],e=ld(t);t.offset=0,e.offset=1,i=[t,e]}return Pd(this.element,i,r,s,this.duration,this.startTime,this.easing,!1)}}class Gd extends Wd{constructor(t,e,n,i,r,s,o=!1){super(t,e,s.delay),this.element=e,this.keyframes=n,this.preStyleProps=i,this.postStyleProps=r,this._stretchStartingKeyframe=o,this.timings={duration:s.duration,delay:s.delay,easing:s.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let t=this.keyframes,{delay:e,duration:n,easing:i}=this.timings;if(this._stretchStartingKeyframe&&e){const r=[],s=n+e,o=e/s,a=cd(t[0],!1);a.offset=0,r.push(a);const l=cd(t[0],!1);l.offset=Kd(o),r.push(l);const c=t.length-1;for(let i=1;i<=c;i++){let o=cd(t[i],!1);o.offset=Kd((e+o.offset*n)/s),r.push(o)}n=s,e=0,i="",t=r}return Pd(this.element,t,this.preStyleProps,this.postStyleProps,n,e,i,!0)}}function Kd(t,e=3){const n=Math.pow(10,e-1);return Math.round(t*n)/n}class qd{}class Xd extends qd{normalizePropertyName(t,e){return bd(t)}normalizeStyleValue(t,e,n,i){let r="";const s=n.toString().trim();if(Yd[e]&&0!==n&&"0"!==n)if("number"==typeof n)r="px";else{const e=n.match(/^[+-]?[\d\.]+([a-z]*)$/);e&&0==e[1].length&&i.push(`Please provide a CSS unit value for ${t}:${n}`)}return s+r}}const Yd=(()=>function(t){const e={};return t.forEach(t=>e[t]=!0),e}("width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(",")))();function Jd(t,e,n,i,r,s,o,a,l,c,h,u,d){return{type:0,element:t,triggerName:e,isRemovalTransition:r,fromState:n,fromStyles:s,toState:i,toStyles:o,timelines:a,queriedElements:l,preStyleProps:c,postStyleProps:h,totalTime:u,errors:d}}const Qd={};class Zd{constructor(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}match(t,e,n,i){return function(t,e,n,i,r){return t.some(t=>t(e,n,i,r))}(this.ast.matchers,t,e,n,i)}buildStyles(t,e,n){const i=this._stateStyles["*"],r=this._stateStyles[t],s=i?i.buildStyles(e,n):{};return r?r.buildStyles(e,n):s}build(t,e,n,i,r,s,o,a,l,c){const h=[],u=this.ast.options&&this.ast.options.params||Qd,d=this.buildStyles(n,o&&o.params||Qd,h),f=a&&a.params||Qd,p=this.buildStyles(i,f,h),g=new Set,m=new Map,v=new Map,y="void"===i,w={params:Object.assign(Object.assign({},u),f)},b=c?[]:Vd(t,e,this.ast.animation,r,s,d,p,w,l,h);let x=0;if(b.forEach(t=>{x=Math.max(t.duration+t.delay,x)}),h.length)return Jd(e,this._triggerName,n,i,y,d,p,[],[],m,v,x,h);b.forEach(t=>{const n=t.element,i=Nu(m,n,{});t.preStyleProps.forEach(t=>i[t]=!0);const r=Nu(v,n,{});t.postStyleProps.forEach(t=>r[t]=!0),n!==e&&g.add(n)});const _=yd(g.values());return Jd(e,this._triggerName,n,i,y,d,p,b,_,m,v,x)}}class tf{constructor(t,e){this.styles=t,this.defaultParams=e}buildStyles(t,e){const n={},i=ld(this.defaultParams);return Object.keys(t).forEach(e=>{const n=t[e];null!=n&&(i[e]=n)}),this.styles.styles.forEach(t=>{if("string"!=typeof t){const r=t;Object.keys(r).forEach(t=>{let s=r[t];s.length>1&&(s=vd(s,i,e)),n[t]=s})}}),n}}class ef{constructor(t,e){this.name=t,this.ast=e,this.transitionFactories=[],this.states={},e.states.forEach(t=>{this.states[t.name]=new tf(t.style,t.options&&t.options.params||{})}),nf(this.states,"true","1"),nf(this.states,"false","0"),e.transitions.forEach(e=>{this.transitionFactories.push(new Zd(t,e,this.states))}),this.fallbackTransition=new Zd(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(t,e)=>!0],options:null,queryCount:0,depCount:0},this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(t,e,n,i){return this.transitionFactories.find(r=>r.match(t,e,n,i))||null}matchStyles(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)}}function nf(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}const rf=new Nd;class sf{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._animations={},this._playersById={},this.players=[]}register(t,e){const n=[],i=Fd(this._driver,e,n);if(n.length)throw new Error("Unable to build the animation due to the following errors: "+n.join("\n"));this._animations[t]=i}_buildPlayer(t,e,n){const i=t.element,r=$u(0,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(i,r,t.duration,t.delay,t.easing,[],!0)}create(t,e,n={}){const i=[],r=this._animations[t];let s;const o=new Map;if(r?(s=Vd(this._driver,e,r,Zu,td,{},{},n,rf,i),s.forEach(t=>{const e=Nu(o,t.element,{});t.postStyleProps.forEach(t=>e[t]=null)})):(i.push("The requested animation doesn't exist or has already been destroyed"),s=[]),i.length)throw new Error("Unable to create the animation due to the following errors: "+i.join("\n"));o.forEach((t,e)=>{Object.keys(t).forEach(n=>{t[n]=this._driver.computeStyle(e,n,Cu)})});const a=Mu(s.map(t=>{const e=o.get(t.element);return this._buildPlayer(t,{},e)}));return this._playersById[t]=a,a.onDestroy(()=>this.destroy(t)),this.players.push(a),a}destroy(t){const e=this._getPlayer(t);e.destroy(),delete this._playersById[t];const n=this.players.indexOf(e);n>=0&&this.players.splice(n,1)}_getPlayer(t){const e=this._playersById[t];if(!e)throw new Error("Unable to find the timeline player referenced by "+t);return e}listen(t,e,n,i){const r=Pu(e,"","","");return Ou(this._getPlayer(t),n,r,i),()=>{}}command(t,e,n,i){if("register"==n)return void this.register(t,i[0]);if("create"==n)return void this.create(t,e,i[0]||{});const r=this._getPlayer(t);switch(n){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(t)}}}const of="ng-animate-queued",af="ng-animate-disabled",lf=".ng-animate-disabled",cf=[],hf={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},uf={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0};class df{constructor(t,e=""){this.namespaceId=e;const n=t&&t.hasOwnProperty("value");if(this.value=null!=(i=n?t.value:t)?i:null,n){const e=ld(t);delete e.value,this.options=e}else this.options={};var i;this.options.params||(this.options.params={})}get params(){return this.options.params}absorbOptions(t){const e=t.params;if(e){const t=this.options.params;Object.keys(e).forEach(n=>{null==t[n]&&(t[n]=e[n])})}}}const ff="void",pf=new df(ff);class gf{constructor(t,e,n){this.id=t,this.hostElement=e,this._engine=n,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+t,_f(e,this._hostClassName)}listen(t,e,n,i){if(!this._triggers.hasOwnProperty(e))throw new Error(`Unable to listen on the animation trigger event "${n}" because the animation trigger "${e}" doesn't exist!`);if(null==n||0==n.length)throw new Error(`Unable to listen on the animation trigger "${e}" because the provided event is undefined!`);if("start"!=(r=n)&&"done"!=r)throw new Error(`The provided animation trigger event "${n}" for the animation trigger "${e}" is not supported!`);var r;const s=Nu(this._elementListeners,t,[]),o={name:e,phase:n,callback:i};s.push(o);const a=Nu(this._engine.statesByElement,t,{});return a.hasOwnProperty(e)||(_f(t,ed),_f(t,"ng-trigger-"+e),a[e]=pf),()=>{this._engine.afterFlush(()=>{const t=s.indexOf(o);t>=0&&s.splice(t,1),this._triggers[e]||delete a[e]})}}register(t,e){return!this._triggers[t]&&(this._triggers[t]=e,!0)}_getTrigger(t){const e=this._triggers[t];if(!e)throw new Error(`The provided animation trigger "${t}" has not been registered!`);return e}trigger(t,e,n,i=!0){const r=this._getTrigger(e),s=new vf(this.id,e,t);let o=this._engine.statesByElement.get(t);o||(_f(t,ed),_f(t,"ng-trigger-"+e),this._engine.statesByElement.set(t,o={}));let a=o[e];const l=new df(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&a&&l.absorbOptions(a.options),o[e]=l,a||(a=pf),l.value!==ff&&a.value===l.value){if(!function(t,e){const n=Object.keys(t),i=Object.keys(e);if(n.length!=i.length)return!1;for(let r=0;r{fd(t,n),dd(t,i)})}return}const c=Nu(this._engine.playersByElement,t,[]);c.forEach(t=>{t.namespaceId==this.id&&t.triggerName==e&&t.queued&&t.destroy()});let h=r.matchTransition(a.value,l.value,t,l.params),u=!1;if(!h){if(!i)return;h=r.fallbackTransition,u=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:h,fromState:a,toState:l,player:s,isFallbackTransition:u}),u||(_f(t,of),s.onStart(()=>{Cf(t,of)})),s.onDone(()=>{let e=this.players.indexOf(s);e>=0&&this.players.splice(e,1);const n=this._engine.playersByElement.get(t);if(n){let t=n.indexOf(s);t>=0&&n.splice(t,1)}}),this.players.push(s),c.push(s),s}deregister(t){delete this._triggers[t],this._engine.statesByElement.forEach((e,n)=>{delete e[t]}),this._elementListeners.forEach((e,n)=>{this._elementListeners.set(n,e.filter(e=>e.name!=t))})}clearElementCache(t){this._engine.statesByElement.delete(t),this._elementListeners.delete(t);const e=this._engine.playersByElement.get(t);e&&(e.forEach(t=>t.destroy()),this._engine.playersByElement.delete(t))}_signalRemovalForInnerTriggers(t,e){const n=this._engine.driver.query(t,nd,!0);n.forEach(t=>{if(t.__ng_removed)return;const n=this._engine.fetchNamespacesByElement(t);n.size?n.forEach(n=>n.triggerLeaveAnimation(t,e,!1,!0)):this.clearElementCache(t)}),this._engine.afterFlushAnimationsDone(()=>n.forEach(t=>this.clearElementCache(t)))}triggerLeaveAnimation(t,e,n,i){const r=this._engine.statesByElement.get(t);if(r){const s=[];if(Object.keys(r).forEach(e=>{if(this._triggers[e]){const n=this.trigger(t,e,ff,i);n&&s.push(n)}}),s.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&Mu(s).onDone(()=>this._engine.processLeaveNode(t)),!0}return!1}prepareLeaveAnimationListeners(t){const e=this._elementListeners.get(t);if(e){const n=new Set;e.forEach(e=>{const i=e.name;if(n.has(i))return;n.add(i);const r=this._triggers[i].fallbackTransition,s=this._engine.statesByElement.get(t)[i]||pf,o=new df(ff),a=new vf(this.id,i,t);this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:i,transition:r,fromState:s,toState:o,player:a,isFallbackTransition:!0})})}}removeNode(t,e){const n=this._engine;if(t.childElementCount&&this._signalRemovalForInnerTriggers(t,e),this.triggerLeaveAnimation(t,e,!0))return;let i=!1;if(n.totalAnimations){const e=n.players.length?n.playersByQueriedElement.get(t):[];if(e&&e.length)i=!0;else{let e=t;for(;e=e.parentNode;)if(n.statesByElement.get(e)){i=!0;break}}}if(this.prepareLeaveAnimationListeners(t),i)n.markElementAsRemoved(this.id,t,!1,e);else{const i=t.__ng_removed;i&&i!==hf||(n.afterFlush(()=>this.clearElementCache(t)),n.destroyInnerAnimations(t),n._onRemovalComplete(t,e))}}insertNode(t,e){_f(t,this._hostClassName)}drainQueuedTransitions(t){const e=[];return this._queue.forEach(n=>{const i=n.player;if(i.destroyed)return;const r=n.element,s=this._elementListeners.get(r);s&&s.forEach(e=>{if(e.name==n.triggerName){const i=Pu(r,n.triggerName,n.fromState.value,n.toState.value);i._data=t,Ou(n.player,e.phase,i,e.callback)}}),i.markedForDestroy?this._engine.afterFlush(()=>{i.destroy()}):e.push(n)}),this._queue=[],e.sort((t,e)=>{const n=t.transition.ast.depCount,i=e.transition.ast.depCount;return 0==n||0==i?n-i:this._engine.driver.containsElement(t.element,e.element)?1:-1})}destroy(t){this.players.forEach(t=>t.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,t)}elementContainsData(t){let e=!1;return this._elementListeners.has(t)&&(e=!0),e=!!this._queue.find(e=>e.element===t)||e,e}}class mf{constructor(t,e,n){this.bodyNode=t,this.driver=e,this._normalizer=n,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=(t,e)=>{}}_onRemovalComplete(t,e){this.onRemovalComplete(t,e)}get queuedPlayers(){const t=[];return this._namespaceList.forEach(e=>{e.players.forEach(e=>{e.queued&&t.push(e)})}),t}createNamespace(t,e){const n=new gf(t,e,this);return e.parentNode?this._balanceNamespaceList(n,e):(this.newHostElements.set(e,n),this.collectEnterElement(e)),this._namespaceLookup[t]=n}_balanceNamespaceList(t,e){const n=this._namespaceList.length-1;if(n>=0){let i=!1;for(let r=n;r>=0;r--)if(this.driver.containsElement(this._namespaceList[r].hostElement,e)){this._namespaceList.splice(r+1,0,t),i=!0;break}i||this._namespaceList.splice(0,0,t)}else this._namespaceList.push(t);return this.namespacesByHostElement.set(e,t),t}register(t,e){let n=this._namespaceLookup[t];return n||(n=this.createNamespace(t,e)),n}registerTrigger(t,e,n){let i=this._namespaceLookup[t];i&&i.register(e,n)&&this.totalAnimations++}destroy(t,e){if(!t)return;const n=this._fetchNamespace(t);this.afterFlush(()=>{this.namespacesByHostElement.delete(n.hostElement),delete this._namespaceLookup[t];const e=this._namespaceList.indexOf(n);e>=0&&this._namespaceList.splice(e,1)}),this.afterFlushAnimationsDone(()=>n.destroy(e))}_fetchNamespace(t){return this._namespaceLookup[t]}fetchNamespacesByElement(t){const e=new Set,n=this.statesByElement.get(t);if(n){const t=Object.keys(n);for(let i=0;i=0&&this.collectedLeaveElements.splice(t,1)}if(t){const i=this._fetchNamespace(t);i&&i.insertNode(e,n)}i&&this.collectEnterElement(e)}collectEnterElement(t){this.collectedEnterElements.push(t)}markElementAsDisabled(t,e){e?this.disabledNodes.has(t)||(this.disabledNodes.add(t),_f(t,af)):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),Cf(t,af))}removeNode(t,e,n,i){if(yf(e)){const r=t?this._fetchNamespace(t):null;if(r?r.removeNode(e,i):this.markElementAsRemoved(t,e,!1,i),n){const n=this.namespacesByHostElement.get(e);n&&n.id!==t&&n.removeNode(e,i)}}else this._onRemovalComplete(e,i)}markElementAsRemoved(t,e,n,i){this.collectedLeaveElements.push(e),e.__ng_removed={namespaceId:t,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}listen(t,e,n,i,r){return yf(e)?this._fetchNamespace(t).listen(e,n,i,r):()=>{}}_buildInstruction(t,e,n,i,r){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,i,t.fromState.options,t.toState.options,e,r)}destroyInnerAnimations(t){let e=this.driver.query(t,nd,!0);e.forEach(t=>this.destroyActiveAnimationsForElement(t)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(t,rd,!0),e.forEach(t=>this.finishActiveQueriedAnimationOnElement(t)))}destroyActiveAnimationsForElement(t){const e=this.playersByElement.get(t);e&&e.forEach(t=>{t.queued?t.markedForDestroy=!0:t.destroy()})}finishActiveQueriedAnimationOnElement(t){const e=this.playersByQueriedElement.get(t);e&&e.forEach(t=>t.finish())}whenRenderingDone(){return new Promise(t=>{if(this.players.length)return Mu(this.players).onDone(()=>t());t()})}processLeaveNode(t){const e=t.__ng_removed;if(e&&e.setForRemoval){if(t.__ng_removed=hf,e.namespaceId){this.destroyInnerAnimations(t);const n=this._fetchNamespace(e.namespaceId);n&&n.clearElementCache(t)}this._onRemovalComplete(t,e.setForRemoval)}this.driver.matchesElement(t,lf)&&this.markElementAsDisabled(t,!1),this.driver.query(t,lf,!0).forEach(t=>{this.markElementAsDisabled(t,!1)})}flush(t=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((t,e)=>this._balanceNamespaceList(t,e)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let n=0;nt()),this._flushFns=[],this._whenQuietFns.length){const t=this._whenQuietFns;this._whenQuietFns=[],e.length?Mu(e).onDone(()=>{t.forEach(t=>t())}):t.forEach(t=>t())}}reportError(t){throw new Error("Unable to process animations due to the following failed trigger transitions\n "+t.join("\n"))}_flushAnimations(t,e){const n=new Nd,i=[],r=new Map,s=[],o=new Map,a=new Map,l=new Map,c=new Set;this.disabledNodes.forEach(t=>{c.add(t);const e=this.driver.query(t,".ng-animate-queued",!0);for(let n=0;n{const n=Zu+p++;f.set(e,n),t.forEach(t=>_f(t,n))});const g=[],m=new Set,v=new Set;for(let R=0;Rm.add(t)):v.add(t))}const y=new Map,w=xf(u,Array.from(m));w.forEach((t,e)=>{const n=td+p++;y.set(e,n),t.forEach(t=>_f(t,n))}),t.push(()=>{d.forEach((t,e)=>{const n=f.get(e);t.forEach(t=>Cf(t,n))}),w.forEach((t,e)=>{const n=y.get(e);t.forEach(t=>Cf(t,n))}),g.forEach(t=>{this.processLeaveNode(t)})});const b=[],x=[];for(let R=this._namespaceList.length-1;R>=0;R--)this._namespaceList[R].drainQueuedTransitions(e).forEach(t=>{const e=t.player,r=t.element;if(b.push(e),this.collectedEnterElements.length){const t=r.__ng_removed;if(t&&t.setForMove)return void e.destroy()}const c=!h||!this.driver.containsElement(h,r),u=y.get(r),d=f.get(r),p=this._buildInstruction(t,n,d,u,c);if(p.errors&&p.errors.length)x.push(p);else{if(c)return e.onStart(()=>fd(r,p.fromStyles)),e.onDestroy(()=>dd(r,p.toStyles)),void i.push(e);if(t.isFallbackTransition)return e.onStart(()=>fd(r,p.fromStyles)),e.onDestroy(()=>dd(r,p.toStyles)),void i.push(e);p.timelines.forEach(t=>t.stretchStartingKeyframe=!0),n.append(r,p.timelines),s.push({instruction:p,player:e,element:r}),p.queriedElements.forEach(t=>Nu(o,t,[]).push(e)),p.preStyleProps.forEach((t,e)=>{const n=Object.keys(t);if(n.length){let t=a.get(e);t||a.set(e,t=new Set),n.forEach(e=>t.add(e))}}),p.postStyleProps.forEach((t,e)=>{const n=Object.keys(t);let i=l.get(e);i||l.set(e,i=new Set),n.forEach(t=>i.add(t))})}});if(x.length){const t=[];x.forEach(e=>{t.push(`@${e.triggerName} has failed due to:\n`),e.errors.forEach(e=>t.push(`- ${e}\n`))}),b.forEach(t=>t.destroy()),this.reportError(t)}const _=new Map,C=new Map;s.forEach(t=>{const e=t.element;n.has(e)&&(C.set(e,e),this._beforeAnimationBuild(t.player.namespaceId,t.instruction,_))}),i.forEach(t=>{const e=t.element;this._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(t=>{Nu(_,e,[]).push(t),t.destroy()})});const S=g.filter(t=>kf(t,a,l)),E=new Map;bf(E,this.driver,v,l,Cu).forEach(t=>{kf(t,a,l)&&S.push(t)});const k=new Map;d.forEach((t,e)=>{bf(k,this.driver,new Set(t),a,"!")}),S.forEach(t=>{const e=E.get(t),n=k.get(t);E.set(t,Object.assign(Object.assign({},e),n))});const A=[],D=[],T={};s.forEach(t=>{const{element:e,player:s,instruction:o}=t;if(n.has(e)){if(c.has(e))return s.onDestroy(()=>dd(e,o.toStyles)),s.disabled=!0,s.overrideTotalTime(o.totalTime),void i.push(s);let t=T;if(C.size>1){let n=e;const i=[];for(;n=n.parentNode;){const e=C.get(n);if(e){t=e;break}i.push(n)}i.forEach(e=>C.set(e,t))}const n=this._buildAnimation(s.namespaceId,o,_,r,k,E);if(s.setRealPlayer(n),t===T)A.push(s);else{const e=this.playersByElement.get(t);e&&e.length&&(s.parentPlayer=Mu(e)),i.push(s)}}else fd(e,o.fromStyles),s.onDestroy(()=>dd(e,o.toStyles)),D.push(s),c.has(e)&&i.push(s)}),D.forEach(t=>{const e=r.get(t.element);if(e&&e.length){const n=Mu(e);t.setRealPlayer(n)}}),i.forEach(t=>{t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(let R=0;R!t.destroyed);i.length?Sf(this,t,i):this.processLeaveNode(t)}return g.length=0,A.forEach(t=>{this.players.push(t),t.onDone(()=>{t.destroy();const e=this.players.indexOf(t);this.players.splice(e,1)}),t.play()}),A}elementContainsData(t,e){let n=!1;const i=e.__ng_removed;return i&&i.setForRemoval&&(n=!0),this.playersByElement.has(e)&&(n=!0),this.playersByQueriedElement.has(e)&&(n=!0),this.statesByElement.has(e)&&(n=!0),this._fetchNamespace(t).elementContainsData(e)||n}afterFlush(t){this._flushFns.push(t)}afterFlushAnimationsDone(t){this._whenQuietFns.push(t)}_getPreviousPlayers(t,e,n,i,r){let s=[];if(e){const e=this.playersByQueriedElement.get(t);e&&(s=e)}else{const e=this.playersByElement.get(t);if(e){const t=!r||r==ff;e.forEach(e=>{e.queued||(t||e.triggerName==i)&&s.push(e)})}}return(n||i)&&(s=s.filter(t=>!(n&&n!=t.namespaceId||i&&i!=t.triggerName))),s}_beforeAnimationBuild(t,e,n){const i=e.element,r=e.isRemovalTransition?void 0:t,s=e.isRemovalTransition?void 0:e.triggerName;for(const o of e.timelines){const t=o.element,a=t!==i,l=Nu(n,t,[]);this._getPreviousPlayers(t,a,r,s,e.toState).forEach(t=>{const e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),l.push(t)})}fd(i,e.fromStyles)}_buildAnimation(t,e,n,i,r,s){const o=e.triggerName,a=e.element,l=[],c=new Set,h=new Set,u=e.timelines.map(e=>{const u=e.element;c.add(u);const d=u.__ng_removed;if(d&&d.removedBeforeQueried)return new Ru(e.duration,e.delay);const f=u!==a,p=function(t){const e=[];return Ef(t,e),e}((n.get(u)||cf).map(t=>t.getRealPlayer())).filter(t=>!!t.element&&t.element===u),g=r.get(u),m=s.get(u),v=$u(0,this._normalizer,0,e.keyframes,g,m),y=this._buildPlayer(e,v,p);if(e.subTimeline&&i&&h.add(u),f){const e=new vf(t,o,u);e.setRealPlayer(y),l.push(e)}return y});l.forEach(t=>{Nu(this.playersByQueriedElement,t.element,[]).push(t),t.onDone(()=>function(t,e,n){let i;if(t instanceof Map){if(i=t.get(e),i){if(i.length){const t=i.indexOf(n);i.splice(t,1)}0==i.length&&t.delete(e)}}else if(i=t[e],i){if(i.length){const t=i.indexOf(n);i.splice(t,1)}0==i.length&&delete t[e]}return i}(this.playersByQueriedElement,t.element,t))}),c.forEach(t=>_f(t,id));const d=Mu(u);return d.onDestroy(()=>{c.forEach(t=>Cf(t,id)),dd(a,e.toStyles)}),h.forEach(t=>{Nu(i,t,[]).push(d)}),d}_buildPlayer(t,e,n){return e.length>0?this.driver.animate(t.element,e,t.duration,t.delay,t.easing,n):new Ru(t.duration,t.delay)}}class vf{constructor(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new Ru,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}setRealPlayer(t){this._containsRealPlayer||(this._player=t,Object.keys(this._queuedCallbacks).forEach(e=>{this._queuedCallbacks[e].forEach(n=>Ou(t,e,void 0,n))}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(t.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(t){this.totalTime=t}syncPlayerEvents(t){const e=this._player;e.triggerCallback&&t.onStart(()=>e.triggerCallback("start")),t.onDone(()=>this.finish()),t.onDestroy(()=>this.destroy())}_queueEvent(t,e){Nu(this._queuedCallbacks,t,[]).push(e)}onDone(t){this.queued&&this._queueEvent("done",t),this._player.onDone(t)}onStart(t){this.queued&&this._queueEvent("start",t),this._player.onStart(t)}onDestroy(t){this.queued&&this._queueEvent("destroy",t),this._player.onDestroy(t)}init(){this._player.init()}hasStarted(){return!this.queued&&this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(t){this.queued||this._player.setPosition(t)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(t){const e=this._player;e.triggerCallback&&e.triggerCallback(t)}}function yf(t){return t&&1===t.nodeType}function wf(t,e){const n=t.style.display;return t.style.display=null!=e?e:"none",n}function bf(t,e,n,i,r){const s=[];n.forEach(t=>s.push(wf(t)));const o=[];i.forEach((n,i)=>{const s={};n.forEach(t=>{const n=s[t]=e.computeStyle(i,t,r);n&&0!=n.length||(i.__ng_removed=uf,o.push(i))}),t.set(i,s)});let a=0;return n.forEach(t=>wf(t,s[a++])),o}function xf(t,e){const n=new Map;if(t.forEach(t=>n.set(t,[])),0==e.length)return n;const i=new Set(e),r=new Map;function s(t){if(!t)return 1;let e=r.get(t);if(e)return e;const o=t.parentNode;return e=n.has(o)?o:i.has(o)?1:s(o),r.set(t,e),e}return e.forEach(t=>{const e=s(t);1!==e&&n.get(e).push(t)}),n}function _f(t,e){if(t.classList)t.classList.add(e);else{let n=t.$$classes;n||(n=t.$$classes={}),n[e]=!0}}function Cf(t,e){if(t.classList)t.classList.remove(e);else{let n=t.$$classes;n&&delete n[e]}}function Sf(t,e,n){Mu(n).onDone(()=>t.processLeaveNode(e))}function Ef(t,e){for(let n=0;nr.add(t)):e.set(t,i),n.delete(t),!0}class Af{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._triggerCache={},this.onRemovalComplete=(t,e)=>{},this._transitionEngine=new mf(t,e,n),this._timelineEngine=new sf(t,e,n),this._transitionEngine.onRemovalComplete=(t,e)=>this.onRemovalComplete(t,e)}registerTrigger(t,e,n,i,r){const s=t+"-"+i;let o=this._triggerCache[s];if(!o){const t=[],e=Fd(this._driver,r,t);if(t.length)throw new Error(`The animation trigger "${i}" has failed to build due to the following errors:\n - ${t.join("\n - ")}`);o=function(t,e){return new ef(t,e)}(i,e),this._triggerCache[s]=o}this._transitionEngine.registerTrigger(e,i,o)}register(t,e){this._transitionEngine.register(t,e)}destroy(t,e){this._transitionEngine.destroy(t,e)}onInsert(t,e,n,i){this._transitionEngine.insertNode(t,e,n,i)}onRemove(t,e,n,i){this._transitionEngine.removeNode(t,e,i||!1,n)}disableAnimations(t,e){this._transitionEngine.markElementAsDisabled(t,e)}process(t,e,n,i){if("@"==n.charAt(0)){const[t,r]=Bu(n);this._timelineEngine.command(t,e,r,i)}else this._transitionEngine.trigger(t,e,n,i)}listen(t,e,n,i,r){if("@"==n.charAt(0)){const[t,i]=Bu(n);return this._timelineEngine.listen(t,e,i,r)}return this._transitionEngine.listen(t,e,n,i,r)}flush(t=-1){this._transitionEngine.flush(t)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}function Df(t,e){let n=null,i=null;return Array.isArray(e)&&e.length?(n=Rf(e[0]),e.length>1&&(i=Rf(e[e.length-1]))):e&&(n=Rf(e)),n||i?new Tf(t,n,i):null}let Tf=(()=>{class t{constructor(e,n,i){this._element=e,this._startStyles=n,this._endStyles=i,this._state=0;let r=t.initialStylesByElement.get(e);r||t.initialStylesByElement.set(e,r={}),this._initialStyles=r}start(){this._state<1&&(this._startStyles&&dd(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(dd(this._element,this._initialStyles),this._endStyles&&(dd(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(fd(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(fd(this._element,this._endStyles),this._endStyles=null),dd(this._element,this._initialStyles),this._state=3)}}return t.initialStylesByElement=new WeakMap,t})();function Rf(t){let e=null;const n=Object.keys(t);for(let i=0;ithis._handleCallback(t)}apply(){!function(t,e){const n=Uf(t,"").trim();n.length&&(function(t,e){let n=0;for(let i=0;i=this._delay&&n>=this._duration&&this.finish()}finish(){this._finished||(this._finished=!0,this._onDoneFn(),Nf(this._element,this._eventFn,!0))}destroy(){this._destroyed||(this._destroyed=!0,this.finish(),function(t,e){const n=Uf(t,"").split(","),i=Pf(n,e);i>=0&&(n.splice(i,1),Bf(t,"",n.join(",")))}(this._element,this._name))}}function Of(t,e,n){Bf(t,"PlayState",n,If(t,e))}function If(t,e){const n=Uf(t,"");return n.indexOf(",")>0?Pf(n.split(","),e):Pf([n],e)}function Pf(t,e){for(let n=0;n=0)return n;return-1}function Nf(t,e,n){n?t.removeEventListener(Mf,e):t.addEventListener(Mf,e)}function Bf(t,e,n,i){const r=Lf+e;if(null!=i){const e=t.style[r];if(e.length){const t=e.split(",");t[i]=n,n=t.join(",")}}t.style[r]=n}function Uf(t,e){return t.style[Lf+e]||""}class Vf{constructor(t,e,n,i,r,s,o,a){this.element=t,this.keyframes=e,this.animationName=n,this._duration=i,this._delay=r,this._finalStyles=o,this._specialStyles=a,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this.currentSnapshot={},this._state=0,this.easing=s||"linear",this.totalTime=i+r,this._buildStyler()}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}destroy(){this.init(),this._state>=4||(this._state=4,this._styler.destroy(),this._flushStartFns(),this._flushDoneFns(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}_flushDoneFns(){this._onDoneFns.forEach(t=>t()),this._onDoneFns=[]}_flushStartFns(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}finish(){this.init(),this._state>=3||(this._state=3,this._styler.finish(),this._flushStartFns(),this._specialStyles&&this._specialStyles.finish(),this._flushDoneFns())}setPosition(t){this._styler.setPosition(t)}getPosition(){return this._styler.getPosition()}hasStarted(){return this._state>=2}init(){this._state>=1||(this._state=1,this._styler.apply(),this._delay&&this._styler.pause())}play(){this.init(),this.hasStarted()||(this._flushStartFns(),this._state=2,this._specialStyles&&this._specialStyles.start()),this._styler.resume()}pause(){this.init(),this._styler.pause()}restart(){this.reset(),this.play()}reset(){this._styler.destroy(),this._buildStyler(),this._styler.apply()}_buildStyler(){this._styler=new $f(this.element,this.animationName,this._duration,this._delay,this.easing,"forwards",()=>this.finish())}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}beforeDestroy(){this.init();const t={};if(this.hasStarted()){const e=this._state>=3;Object.keys(this._finalStyles).forEach(n=>{"offset"!=n&&(t[n]=e?this._finalStyles[n]:Sd(this.element,n))})}this.currentSnapshot=t}}class Hf extends Ru{constructor(t,e){super(),this.element=t,this._startingStyles={},this.__initialized=!1,this._styles=Yu(e)}init(){!this.__initialized&&this._startingStyles&&(this.__initialized=!0,Object.keys(this._styles).forEach(t=>{this._startingStyles[t]=this.element.style[t]}),super.init())}play(){this._startingStyles&&(this.init(),Object.keys(this._styles).forEach(t=>this.element.style.setProperty(t,this._styles[t])),super.play())}destroy(){this._startingStyles&&(Object.keys(this._startingStyles).forEach(t=>{const e=this._startingStyles[t];e?this.element.style.setProperty(t,e):this.element.style.removeProperty(t)}),this._startingStyles=null,super.destroy())}}class jf{constructor(){this._count=0,this._head=document.querySelector("head")}validateStyleProperty(t){return Gu(t)}matchesElement(t,e){return Ku(t,e)}containsElement(t,e){return qu(t,e)}query(t,e,n){return Xu(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}buildKeyframeElement(t,e,n){n=n.map(t=>Yu(t));let i=`@keyframes ${e} {\n`,r="";n.forEach(t=>{r=" ";const e=parseFloat(t.offset);i+=`${r}${100*e}% {\n`,r+=" ",Object.keys(t).forEach(e=>{const n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(i+=`${r}animation-timing-function: ${n};\n`));default:return void(i+=`${r}${e}: ${n};\n`)}}),i+=r+"}\n"}),i+="}\n";const s=document.createElement("style");return s.textContent=i,s}animate(t,e,n,i,r,s=[],o){const a=s.filter(t=>t instanceof Vf),l={};xd(n,i)&&a.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const c=function(t){let e={};return t&&(Array.isArray(t)?t:[t]).forEach(t=>{Object.keys(t).forEach(n=>{"offset"!=n&&"easing"!=n&&(e[n]=t[n])})}),e}(e=_d(t,e,l));if(0==n)return new Hf(t,c);const h="gen_css_kf_"+this._count++,u=this.buildKeyframeElement(t,h,e);document.querySelector("head").appendChild(u);const d=Df(t,e),f=new Vf(t,e,h,n,i,r,c,d);return f.onDestroy(()=>{var t;(t=u).parentNode.removeChild(t)}),f}}class zf{constructor(t,e,n,i){this.element=t,this.keyframes=e,this.options=n,this._specialStyles=i,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._initialized=!1,this._finished=!1,this._started=!1,this._destroyed=!1,this.time=0,this.parentPlayer=null,this.currentSnapshot={},this._duration=n.duration,this._delay=n.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;const t=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,t,this.options),this._finalKeyframe=t.length?t[t.length-1]:{},this.domPlayer.addEventListener("finish",()=>this._onFinish())}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_triggerWebAnimation(t,e,n){return t.animate(e,n)}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(t=>t()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}setPosition(t){this.domPlayer.currentTime=t*this.time}getPosition(){return this.domPlayer.currentTime/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){const t={};this.hasStarted()&&Object.keys(this._finalKeyframe).forEach(e=>{"offset"!=e&&(t[e]=this._finished?this._finalKeyframe[e]:Sd(this.element,e))}),this.currentSnapshot=t}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class Wf{constructor(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(Gf().toString()),this._cssKeyframesDriver=new jf}validateStyleProperty(t){return Gu(t)}matchesElement(t,e){return Ku(t,e)}containsElement(t,e){return qu(t,e)}query(t,e,n){return Xu(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}overrideWebAnimationsSupport(t){this._isNativeImpl=t}animate(t,e,n,i,r,s=[],o){if(!o&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,i,r,s);const a={duration:n,delay:i,fill:0==i?"both":"forwards"};r&&(a.easing=r);const l={},c=s.filter(t=>t instanceof zf);xd(n,i)&&c.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const h=Df(t,e=_d(t,e=e.map(t=>cd(t,!1)),l));return new zf(t,e,a,h)}}function Gf(){return"undefined"!=typeof window&&void 0!==window.document&&Element.prototype.animate||{}}let Kf=(()=>{class t extends _u{constructor(t,e){super(),this._nextAnimationId=0,this._renderer=t.createRenderer(e.body,{id:"0",encapsulation:xt.None,styles:[],data:{animation:[]}})}build(t){const e=this._nextAnimationId.toString();this._nextAnimationId++;const n=Array.isArray(t)?ku(t):t;return Yf(this._renderer,null,e,"register",[n]),new qf(e,this._renderer)}}return t.\u0275fac=function(e){return new(e||t)(vi(ja),vi(uh))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();class qf extends class{}{constructor(t,e){super(),this._id=t,this._renderer=e}create(t,e){return new Xf(this._id,t,e||{},this._renderer)}}class Xf{constructor(t,e,n,i){this.id=t,this.element=e,this._renderer=i,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",n)}_listen(t,e){return this._renderer.listen(this.element,`@@${this.id}:${t}`,e)}_command(t,...e){return Yf(this._renderer,this.element,this.id,t,e)}onDone(t){this._listen("done",t)}onStart(t){this._listen("start",t)}onDestroy(t){this._listen("destroy",t)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset")}setPosition(t){this._command("setPosition",t)}getPosition(){var t,e;return null!==(e=null===(t=this._renderer.engine.players[+this.id])||void 0===t?void 0:t.getPosition())&&void 0!==e?e:0}}function Yf(t,e,n,i,r){return t.setProperty(e,`@@${n}:${i}`,r)}const Jf="@",Qf="@.disabled";let Zf=(()=>{class t{constructor(t,e,n){this.delegate=t,this.engine=e,this._zone=n,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,this.promise=Promise.resolve(0),e.onRemovalComplete=(t,e)=>{e&&e.parentNode(t)&&e.removeChild(t.parentNode,t)}}createRenderer(t,e){const n=this.delegate.createRenderer(t,e);if(!(t&&e&&e.data&&e.data.animation)){let t=this._rendererCache.get(n);return t||(t=new tp("",n,this.engine),this._rendererCache.set(n,t)),t}const i=e.id,r=e.id+"-"+this._currentId;this._currentId++,this.engine.register(r,t);const s=e=>{Array.isArray(e)?e.forEach(s):this.engine.registerTrigger(i,r,t,e.name,e)};return e.data.animation.forEach(s),new ep(this,r,n,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){this.promise.then(()=>{this._microtaskId++})}scheduleListenerCallback(t,e,n){t>=0&&te(n)):(0==this._animationCallbacksBuffer.length&&Promise.resolve(null).then(()=>{this._zone.run(()=>{this._animationCallbacksBuffer.forEach(t=>{const[e,n]=t;e(n)}),this._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([e,n]))}end(){this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}}return t.\u0275fac=function(e){return new(e||t)(vi(ja),vi(Af),vi(Lc))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();class tp{constructor(t,e,n){this.namespaceId=t,this.delegate=e,this.engine=n,this.destroyNode=this.delegate.destroyNode?t=>e.destroyNode(t):null}get data(){return this.delegate.data}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.delegate.destroy()}createElement(t,e){return this.delegate.createElement(t,e)}createComment(t){return this.delegate.createComment(t)}createText(t){return this.delegate.createText(t)}appendChild(t,e){this.delegate.appendChild(t,e),this.engine.onInsert(this.namespaceId,e,t,!1)}insertBefore(t,e,n,i=!0){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,i)}removeChild(t,e,n){this.engine.onRemove(this.namespaceId,e,this.delegate,n)}selectRootElement(t,e){return this.delegate.selectRootElement(t,e)}parentNode(t){return this.delegate.parentNode(t)}nextSibling(t){return this.delegate.nextSibling(t)}setAttribute(t,e,n,i){this.delegate.setAttribute(t,e,n,i)}removeAttribute(t,e,n){this.delegate.removeAttribute(t,e,n)}addClass(t,e){this.delegate.addClass(t,e)}removeClass(t,e){this.delegate.removeClass(t,e)}setStyle(t,e,n,i){this.delegate.setStyle(t,e,n,i)}removeStyle(t,e,n){this.delegate.removeStyle(t,e,n)}setProperty(t,e,n){e.charAt(0)==Jf&&e==Qf?this.disableAnimations(t,!!n):this.delegate.setProperty(t,e,n)}setValue(t,e){this.delegate.setValue(t,e)}listen(t,e,n){return this.delegate.listen(t,e,n)}disableAnimations(t,e){this.engine.disableAnimations(t,e)}}class ep extends tp{constructor(t,e,n,i){super(e,n,i),this.factory=t,this.namespaceId=e}setProperty(t,e,n){e.charAt(0)==Jf?"."==e.charAt(1)&&e==Qf?this.disableAnimations(t,n=void 0===n||!!n):this.engine.process(this.namespaceId,t,e.substr(1),n):this.delegate.setProperty(t,e,n)}listen(t,e,n){if(e.charAt(0)==Jf){const i=function(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}(t);let r=e.substr(1),s="";return r.charAt(0)!=Jf&&([r,s]=function(t){const e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}(r)),this.engine.listen(this.namespaceId,i,r,s,t=>{this.factory.scheduleListenerCallback(t._data||-1,n,t)})}return this.delegate.listen(t,e,n)}}let np=(()=>{class t extends Af{constructor(t,e,n){super(t.body,e,n)}}return t.\u0275fac=function(e){return new(e||t)(vi(uh),vi(Qu),vi(qd))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();const ip=new qn("AnimationModuleType"),rp=[{provide:_u,useClass:Kf},{provide:qd,useFactory:function(){return new Xd}},{provide:Af,useClass:np},{provide:ja,useFactory:function(t,e,n){return new Zf(t,e,n)},deps:[au,Af,Lc]}],sp=[{provide:Qu,useFactory:function(){return"function"==typeof Gf()?new Wf:new jf}},{provide:ip,useValue:"BrowserAnimations"},...rp],op=[{provide:Qu,useClass:Ju},{provide:ip,useValue:"NoopAnimations"},...rp];let ap=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:sp,imports:[xu]}),t})(),lp=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:op,imports:[xu]}),t})();function cp(...t){let e=t[t.length-1];return E(e)?(t.pop(),O(t,e)):z(t)}class hp extends C{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 b;return this._value}next(t){super.next(this._value=t)}}class up extends p{notifyNext(t,e,n,i,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}class dp extends p{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()}}function fp(t,e,n,i,r=new dp(t,n,i)){if(!r.closed)return e instanceof y?e.subscribe(r):$(e)(r)}const pp={};class gp{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new mp(t,this.resultSelector))}}class mp extends up{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(pp),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{function t(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}return t.prototype=Object.create(Error.prototype),t})(),yp=new y(t=>t.complete());function wp(t){return t?function(t){return new y(e=>t.schedule(()=>e.complete()))}(t):yp}function bp(t){return new y(e=>{let n;try{n=t()}catch(i){return void e.error(i)}return(n?I(n):wp()).subscribe(e)})}function xp(){return j(1)}function _p(t,e){return function(n){return n.lift(new Cp(t,e))}}class Cp{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new Sp(t,this.predicate,this.thisArg))}}class Sp extends p{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)}}const Ep=(()=>{function t(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return t.prototype=Object.create(Error.prototype),t})();function kp(t){return function(e){return 0===t?wp():e.lift(new Ap(t))}}class Ap{constructor(t){if(this.total=t,this.total<0)throw new Ep}call(t,e){return e.subscribe(new Dp(t,this.total))}}class Dp extends p{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,i=this.count++;e.length0){const n=this.count>=this.total?this.total:this.count,i=this.ring;for(let r=0;re.lift(new Rp(t))}class Rp{constructor(t){this.errorFactory=t}call(t,e){return e.subscribe(new Fp(t,this.errorFactory))}}class Fp extends p{constructor(t,e){super(t),this.errorFactory=e,this.hasValue=!1}_next(t){this.hasValue=!0,this.destination.next(t)}_complete(){if(this.hasValue)return this.destination.complete();{let e;try{e=this.errorFactory()}catch(t){e=t}this.destination.error(e)}}}function Lp(){return new vp}function Mp(t=null){return e=>e.lift(new $p(t))}class $p{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new Op(t,this.defaultValue))}}class Op extends p{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 Ip(t,e){return"function"==typeof e?n=>n.pipe(Ip((n,i)=>I(t(n,i)).pipe(k((t,r)=>e(n,t,i,r))))):e=>e.lift(new Pp(t))}class Pp{constructor(t){this.project=t}call(t,e){return e.subscribe(new Np(t,this.project))}}class Np extends N{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(i){return void this.destination.error(i)}this._innerSub(e)}_innerSub(t){const e=this.innerSubscription;e&&e.unsubscribe();const n=new P(this),i=this.destination;i.add(n),this.innerSubscription=B(t,n),this.innerSubscription!==n&&i.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=void 0}notifyComplete(){this.innerSubscription=void 0,this.isStopped&&super._complete()}notifyNext(t){this.destination.next(t)}}function Bp(t){return e=>0===t?wp():e.lift(new Up(t))}class Up{constructor(t){if(this.total=t,this.total<0)throw new Ep}call(t,e){return e.subscribe(new Vp(t,this.total))}}class Vp extends p{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 Hp(...t){return xp()(cp(...t))}class jp{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new zp(t,this.accumulator,this.seed,this.hasSeed))}}class zp extends p{constructor(t,e,n,i){super(t),this.accumulator=e,this._seed=n,this.hasSeed=i,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(i){this.destination.error(i)}this.seed=n,this.destination.next(n)}}function Wp(t){return function(e){const n=new Gp(t),i=e.lift(n);return n.caught=i}}class Gp{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Kp(t,this.selector,this.caught))}}class Kp extends N{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 i=new P(this);this.add(i);const r=B(n,i);r!==i&&this.add(r)}}}function qp(t,e){return U(t,e,1)}function Xp(t,e){const n=arguments.length>=2;return i=>i.pipe(t?_p((e,n)=>t(e,n,i)):v,Bp(1),n?Mp(e):Tp(()=>new vp))}function Yp(){}function Jp(t,e,n){return function(i){return i.lift(new Qp(t,e,n))}}class Qp{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new Zp(t,this.nextOrObserver,this.error,this.complete))}}class Zp extends p{constructor(t,e,n,r){super(t),this._tapNext=Yp,this._tapError=Yp,this._tapComplete=Yp,this._tapError=n||Yp,this._tapComplete=r||Yp,i(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||Yp,this._tapError=e.error||Yp,this._tapComplete=e.complete||Yp)}_next(t){try{this._tapNext.call(this._context,t)}catch(e){return void this.destination.error(e)}this.destination.next(t)}_error(t){try{this._tapError.call(this._context,t)}catch(t){return void this.destination.error(t)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}class tg{constructor(t){this.callback=t}call(t,e){return e.subscribe(new eg(t,this.callback))}}class eg extends p{constructor(t,e){super(t),this.add(new u(e))}}class ng{constructor(t,e){this.id=t,this.url=e}}class ig extends ng{constructor(t,e,n="imperative",i=null){super(t,e),this.navigationTrigger=n,this.restoredState=i}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class rg extends ng{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class sg extends ng{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class og extends ng{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class ag extends ng{constructor(t,e,n,i){super(t,e),this.urlAfterRedirects=n,this.state=i}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class lg extends ng{constructor(t,e,n,i){super(t,e),this.urlAfterRedirects=n,this.state=i}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class cg extends ng{constructor(t,e,n,i,r){super(t,e),this.urlAfterRedirects=n,this.state=i,this.shouldActivate=r}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class hg extends ng{constructor(t,e,n,i){super(t,e),this.urlAfterRedirects=n,this.state=i}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class ug extends ng{constructor(t,e,n,i){super(t,e),this.urlAfterRedirects=n,this.state=i}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class dg{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class fg{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class pg{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class gg{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class mg{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class vg{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class yg{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 wg="primary";class bg{constructor(t){this.params=t||{}}has(t){return Object.prototype.hasOwnProperty.call(this.params,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 xg(t){return new bg(t)}function _g(t){const e=Error("NavigationCancelingError: "+t);return e.ngNavigationCancelingError=!0,e}function Cg(t,e,n){const i=n.path.split("/");if(i.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||i.lengthi[e]===t)}return t===e}function kg(t){return Array.prototype.concat.apply([],t)}function Ag(t){return t.length>0?t[t.length-1]:null}function Dg(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function Tg(t){return No(t)?t:Po(t)?I(Promise.resolve(t)):cp(t)}function Rg(t,e,n){return n?function(t,e){return Sg(t,e)}(t.queryParams,e.queryParams)&&Fg(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>Eg(t[n],e[n]))}(t.queryParams,e.queryParams)&&Lg(t.root,e.root)}function Fg(t,e){if(!Pg(t.segments,e.segments))return!1;if(t.numberOfChildren!==e.numberOfChildren)return!1;for(const n in e.children){if(!t.children[n])return!1;if(!Fg(t.children[n],e.children[n]))return!1}return!0}function Lg(t,e){return Mg(t,e,e.segments)}function Mg(t,e,n){if(t.segments.length>n.length)return!!Pg(t.segments.slice(0,n.length),n)&&!e.hasChildren();if(t.segments.length===n.length){if(!Pg(t.segments,n))return!1;for(const n in e.children){if(!t.children[n])return!1;if(!Lg(t.children[n],e.children[n]))return!1}return!0}{const i=n.slice(0,t.segments.length),r=n.slice(t.segments.length);return!!Pg(t.segments,i)&&!!t.children.primary&&Mg(t.children.primary,e,r)}}class $g{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=xg(this.queryParams)),this._queryParamMap}toString(){return Vg.serialize(this)}}class Og{constructor(t,e){this.segments=t,this.children=e,this.parent=null,Dg(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Hg(this)}}class Ig{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=xg(this.parameters)),this._parameterMap}toString(){return Xg(this)}}function Pg(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Ng(t,e){let n=[];return Dg(t.children,(t,i)=>{i===wg&&(n=n.concat(e(t,i)))}),Dg(t.children,(t,i)=>{i!==wg&&(n=n.concat(e(t,i)))}),n}class Bg{}class Ug{parse(t){const e=new tm(t);return new $g(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){return`${"/"+jg(t.root,!0)}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${Wg(e)}=${Wg(t)}`).join("&"):`${Wg(e)}=${Wg(n)}`});return e.length?"?"+e.join("&"):""}(t.queryParams)}${"string"==typeof t.fragment?"#"+encodeURI(t.fragment):""}`}}const Vg=new Ug;function Hg(t){return t.segments.map(t=>Xg(t)).join("/")}function jg(t,e){if(!t.hasChildren())return Hg(t);if(e){const e=t.children.primary?jg(t.children.primary,!1):"",n=[];return Dg(t.children,(t,e)=>{e!==wg&&n.push(`${e}:${jg(t,!1)}`)}),n.length>0?`${e}(${n.join("//")})`:e}{const e=Ng(t,(e,n)=>n===wg?[jg(t.children.primary,!1)]:[`${n}:${jg(e,!1)}`]);return 1===Object.keys(t.children).length&&null!=t.children.primary?`${Hg(t)}/${e[0]}`:`${Hg(t)}/(${e.join("//")})`}}function zg(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Wg(t){return zg(t).replace(/%3B/gi,";")}function Gg(t){return zg(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Kg(t){return decodeURIComponent(t)}function qg(t){return Kg(t.replace(/\+/g,"%20"))}function Xg(t){return`${Gg(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${Gg(t)}=${Gg(e[t])}`).join("")}`;var e}const Yg=/^[^\/()?;=#]+/;function Jg(t){const e=t.match(Yg);return e?e[0]:""}const Qg=/^[^=?&#]+/,Zg=/^[^?&#]+/;class tm{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Og([],{}):new Og([],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.primary=new Og(t,e)),n}parseSegment(){const t=Jg(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Ig(Kg(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Jg(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Jg(this.remaining);t&&(n=t,this.capture(n))}t[Kg(e)]=Kg(n)}parseQueryParam(t){const e=function(t){const e=t.match(Qg);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(Zg);return e?e[0]:""}(this.remaining);t&&(n=t,this.capture(n))}const i=qg(e),r=qg(n);if(t.hasOwnProperty(i)){let e=t[i];Array.isArray(e)||(e=[e],t[i]=e),e.push(r)}else t[i]=r}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Jg(this.remaining),i=this.remaining[n.length];if("/"!==i&&")"!==i&&";"!==i)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=wg);const s=this.parseChildren();e[r]=1===Object.keys(s).length?s.primary:new Og([],s),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 em{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=nm(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=nm(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=im(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return im(t,this._root).map(t=>t.value)}}function nm(t,e){if(t===e.value)return e;for(const n of e.children){const e=nm(t,n);if(e)return e}return null}function im(t,e){if(t===e.value)return[e];for(const n of e.children){const i=im(t,n);if(i.length)return i.unshift(e),i}return[]}class rm{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function sm(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class om extends em{constructor(t,e){super(t),this.snapshot=e,dm(this,t)}toString(){return this.snapshot.toString()}}function am(t,e){const n=function(t,e){const n=new hm([],{},{},"",{},wg,e,null,t.root,-1,{});return new um("",new rm(n,[]))}(t,e),i=new hp([new Ig("",{})]),r=new hp({}),s=new hp({}),o=new hp({}),a=new hp(""),l=new lm(i,r,o,a,s,wg,e,n.root);return l.snapshot=n.root,new om(new rm(l,[]),n)}class lm{constructor(t,e,n,i,r,s,o,a){this.url=t,this.params=e,this.queryParams=n,this.fragment=i,this.data=r,this.outlet=s,this.component=o,this._futureSnapshot=a}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(k(t=>xg(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(k(t=>xg(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function cm(t,e="emptyOnly"){const n=t.pathFromRoot;let i=0;if("always"!==e)for(i=n.length-1;i>=1;){const t=n[i],e=n[i-1];if(t.routeConfig&&""===t.routeConfig.path)i--;else{if(e.component)break;i--}}return function(t){return t.reduce((t,e)=>({params:Object.assign(Object.assign({},t.params),e.params),data:Object.assign(Object.assign({},t.data),e.data),resolve:Object.assign(Object.assign({},t.resolve),e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(i))}class hm{constructor(t,e,n,i,r,s,o,a,l,c,h){this.url=t,this.params=e,this.queryParams=n,this.fragment=i,this.data=r,this.outlet=s,this.component=o,this.routeConfig=a,this._urlSegment=l,this._lastPathIndex=c,this._resolve=h}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=xg(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=xg(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class um extends em{constructor(t,e){super(e),this.url=t,dm(this,e)}toString(){return fm(this._root)}}function dm(t,e){e.value._routerState=t,e.children.forEach(e=>dm(t,e))}function fm(t){const e=t.children.length>0?` { ${t.children.map(fm).join(", ")} } `:"";return`${t.value}${e}`}function pm(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,Sg(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),Sg(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;nSg(t.parameters,i[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||gm(t.parent,e.parent))}function mm(t,e,n){if(n&&t.shouldReuseRoute(e.value,n.value.snapshot)){const i=n.value;i._futureSnapshot=e.value;const r=function(t,e,n){return e.children.map(e=>{for(const i of n.children)if(t.shouldReuseRoute(e.value,i.value.snapshot))return mm(t,e,i);return mm(t,e)})}(t,e,n);return new rm(i,r)}{const n=t.retrieve(e.value);if(n){const t=n.route;return vm(e,t),t}{const n=new lm(new hp((i=e.value).url),new hp(i.params),new hp(i.queryParams),new hp(i.fragment),new hp(i.data),i.outlet,i.component,i),r=e.children.map(e=>mm(t,e));return new rm(n,r)}}var i}function vm(t,e){if(t.value.routeConfig!==e.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(t.children.length!==e.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");e.value._futureSnapshot=t.value;for(let n=0;n{s[e]=Array.isArray(t)?t.map(t=>""+t):""+t}),new $g(n.root===t?e:xm(n.root,t,e),s,r)}function xm(t,e,n){const i={};return Dg(t.children,(t,r)=>{i[r]=t===e?n:xm(t,e,n)}),new Og(t.segments,i)}class _m{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&ym(n[0]))throw new Error("Root segment cannot have matrix parameters");const i=n.find(wm);if(i&&i!==Ag(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class Cm{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function Sm(t,e,n){if(t||(t=new Og([],{})),0===t.segments.length&&t.hasChildren())return Em(t,e,n);const i=function(t,e,n){let i=0,r=e;const s={match:!1,pathIndex:0,commandIndex:0};for(;r=n.length)return s;const e=t.segments[r],o=n[i];if(wm(o))break;const a=""+o,l=i0&&void 0===a)break;if(a&&l&&"object"==typeof l&&void 0===l.outlets){if(!Tm(a,l,e))return s;i+=2}else{if(!Tm(a,{},e))return s;i++}r++}return{match:!0,pathIndex:r,commandIndex:i}}(t,e,n),r=n.slice(i.commandIndex);if(i.match&&i.pathIndex{"string"==typeof n&&(n=[n]),null!==n&&(r[i]=Sm(t.children[i],e,n))}),Dg(t.children,(t,e)=>{void 0===i[e]&&(r[e]=t)}),new Og(t.segments,r)}}function km(t,e,n){const i=t.segments.slice(0,e);let r=0;for(;r{"string"==typeof t&&(t=[t]),null!==t&&(e[n]=km(new Og([],{}),0,t))}),e}function Dm(t){const e={};return Dg(t,(t,n)=>e[n]=""+t),e}function Tm(t,e,n){return t==n.path&&Sg(e,n.parameters)}class Rm{constructor(t,e,n,i){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=i}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),pm(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const i=sm(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,i[e],n),delete i[e]}),Dg(i,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const i=t.value,r=e?e.value:null;if(i===r)if(i.component){const r=n.getContext(i.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(),i=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:i})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const i=sm(t),r=t.value.component?n.children:e;Dg(i,(t,e)=>this.deactivateRouteAndItsChildren(t,r)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const i=sm(e);t.children.forEach(t=>{this.activateRoutes(t,i[t.value.outlet],n),this.forwardEvent(new vg(t.value.snapshot))}),t.children.length&&this.forwardEvent(new gg(t.value.snapshot))}activateRoutes(t,e,n){const i=t.value,r=e?e.value:null;if(pm(i),i===r)if(i.component){const r=n.getOrCreateContext(i.outlet);this.activateChildRoutes(t,e,r.children)}else this.activateChildRoutes(t,e,n);else if(i.component){const e=n.getOrCreateContext(i.outlet);if(this.routeReuseStrategy.shouldAttach(i.snapshot)){const t=this.routeReuseStrategy.retrieve(i.snapshot);this.routeReuseStrategy.store(i.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),Fm(t.route)}else{const n=function(t){for(let e=t.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.snapshot),r=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=i,e.resolver=r,e.outlet&&e.outlet.activateWith(i,r),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function Fm(t){pm(t.value),t.children.forEach(Fm)}class Lm{constructor(t,e){this.routes=t,this.module=e}}function Mm(t){return"function"==typeof t}function $m(t){return t instanceof $g}const Om=Symbol("INITIAL_VALUE");function Im(){return Ip(t=>function(...t){let e=void 0,n=void 0;return E(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&l(t[0])&&(t=t[0]),z(t,n).lift(new gp(e))}(...t.map(t=>t.pipe(Bp(1),function(...t){const e=t[t.length-1];return E(e)?(t.pop(),n=>Hp(t,n,e)):e=>Hp(t,e)}(Om)))).pipe(function(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new jp(t,e,n))}}((t,e)=>{let n=!1;return e.reduce((t,i,r)=>{if(t!==Om)return t;if(i===Om&&(n=!0),!n){if(!1===i)return i;if(r===e.length-1||$m(i))return i}return t},t)},Om),_p(t=>t!==Om),k(t=>$m(t)?t:!0===t),Bp(1)))}let Pm=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:1,vars:0,template:function(t,e){1&t&&Mo(0,"router-outlet")},directives:function(){return[Fv]},encapsulation:2}),t})();function Nm(t,e=""){for(let n=0;ne.error(new jm(t)))}function Gm(t){return new y(e=>e.error(new zm(t)))}function Km(t){return new y(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class qm{constructor(t,e,n,i,r){this.configLoader=e,this.urlSerializer=n,this.urlTree=i,this.config=r,this.allowRedirects=!0,this.ngModule=t.get(bl)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,wg).pipe(k(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(Wp(t=>{if(t instanceof zm)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof jm)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,wg).pipe(k(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(Wp(t=>{if(t instanceof jm)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const i=t.segments.length>0?new Og([],{[wg]:t}):t;return new $g(i,e,n)}expandSegmentGroup(t,e,n,i){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(k(t=>new Og([],t))):this.expandSegment(t,n,e,n.segments,i,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return cp({});const n=[],i=[],r={};return Dg(t,(t,s)=>{const o=e(s,t).pipe(k(t=>r[s]=t));s===wg?n.push(o):i.push(o)}),cp.apply(null,n.concat(i)).pipe(xp(),function(t,e){const n=arguments.length>=2;return i=>i.pipe(t?_p((e,n)=>t(e,n,i)):v,kp(1),n?Mp(e):Tp(()=>new vp))}(),k(()=>r))}(n.children,(n,i)=>this.expandSegmentGroup(t,e,i,n))}expandSegment(t,e,n,i,r,s){const o=function(t){return t.reduce((t,e)=>{const n=Hm(e);return t.has(n)?t.get(n).push(e):t.set(n,[e]),t},new Map)}(n);o.has(r)||o.set(r,[]);const a=n=>I(n).pipe(qp(o=>this.expandSegmentAgainstRoute(t,e,n,o,i,r,s).pipe(Wp(t=>{if(t instanceof jm)return cp(null);throw t}))),Xp(t=>null!==t),Wp(t=>{if(t instanceof vp||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,i,r))return cp(new Og([],{}));throw new jm(e)}throw t}));return I(Array.from(o.entries()).map(([t,e])=>{const n=a(e);return t===r?n:n.pipe(k(()=>null),Wp(()=>cp(null)))})).pipe(t=>t.lift(new gp(void 0)),Xp(),k(t=>t.find(t=>null!==t)))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,i,r,s,o){return Hm(i)!==s&&""!==i.path?Wm(e):void 0===i.redirectTo?this.matchSegmentAgainstRoute(t,e,i,r):o&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,i,r,s):Wm(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,i,r,s){return"**"===i.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,i,s):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,i,r,s)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,i){const r=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Gm(r):this.lineralizeSegments(n,r).pipe(U(n=>{const r=new Og(n,{});return this.expandSegment(t,r,e,n,i,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,i,r,s){const{matched:o,consumedSegments:a,lastChild:l,positionalParamSegments:c}=Xm(e,i,r);if(!o)return Wm(e);const h=this.applyRedirectCommands(a,i.redirectTo,c);return i.redirectTo.startsWith("/")?Gm(h):this.lineralizeSegments(i,h).pipe(U(i=>this.expandSegment(t,e,n,i.concat(r.slice(l)),s,!1)))}matchSegmentAgainstRoute(t,e,n,i){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(k(t=>(n._loadedConfig=t,new Og(i,{})))):cp(new Og(i,{}));const{matched:r,consumedSegments:s,lastChild:o}=Xm(e,n,i);if(!r)return Wm(e);const a=i.slice(o);return this.getChildConfig(t,n,i).pipe(U(t=>{const n=t.module,i=t.routes,{segmentGroup:r,slicedSegments:o}=function(t,e,n,i){return n.length>0&&function(t,e,n){return n.some(n=>Jm(t,e,n)&&Hm(n)!==wg)}(t,n,i)?{segmentGroup:Ym(new Og(e,function(t,e){const n={};n.primary=e;for(const i of t)""===i.path&&Hm(i)!==wg&&(n[Hm(i)]=new Og([],{}));return n}(i,new Og(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return n.some(n=>Jm(t,e,n))}(t,n,i)?{segmentGroup:Ym(new Og(t.segments,function(t,e,n,i){const r={};for(const s of n)Jm(t,e,s)&&!i[Hm(s)]&&(r[Hm(s)]=new Og([],{}));return Object.assign(Object.assign({},i),r)}(t,n,i,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,s,a,i);return 0===o.length&&r.hasChildren()?this.expandChildren(n,i,r).pipe(k(t=>new Og(s,t))):0===i.length&&0===o.length?cp(new Og(s,{})):this.expandSegment(n,r,i,o,wg,!0).pipe(k(t=>new Og(s.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?cp(new Lm(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?cp(e._loadedConfig):this.runCanLoadGuards(t.injector,e,n).pipe(U(n=>n?this.configLoader.load(t.injector,e).pipe(k(t=>(e._loadedConfig=t,t))):function(t){return new y(e=>e.error(_g(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):cp(new Lm([],t))}runCanLoadGuards(t,e,n){const i=e.canLoad;return i&&0!==i.length?cp(i.map(i=>{const r=t.get(i);let s;if(function(t){return t&&Mm(t.canLoad)}(r))s=r.canLoad(e,n);else{if(!Mm(r))throw new Error("Invalid CanLoad guard");s=r(e,n)}return Tg(s)})).pipe(Im(),Jp(t=>{if(!$m(t))return;const e=_g(`Redirecting to "${this.urlSerializer.serialize(t)}"`);throw e.url=t,e}),k(t=>!0===t)):cp(!0)}lineralizeSegments(t,e){let n=[],i=e.root;for(;;){if(n=n.concat(i.segments),0===i.numberOfChildren)return cp(n);if(i.numberOfChildren>1||!i.children.primary)return Km(t.redirectTo);i=i.children.primary}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,i){const r=this.createSegmentGroup(t,e.root,n,i);return new $g(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return Dg(t,(t,i)=>{if("string"==typeof t&&t.startsWith(":")){const r=t.substring(1);n[i]=e[r]}else n[i]=t}),n}createSegmentGroup(t,e,n,i){const r=this.createSegments(t,e.segments,n,i);let s={};return Dg(e.children,(e,r)=>{s[r]=this.createSegmentGroup(t,e,n,i)}),new Og(r,s)}createSegments(t,e,n,i){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,i):this.findOrReturn(e,n))}findPosParam(t,e,n){const i=n[e.path.substring(1)];if(!i)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return i}findOrReturn(t,e){let n=0;for(const i of e){if(i.path===t.path)return e.splice(n),i;n++}return t}}function Xm(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 i=(e.matcher||Cg)(n,t,e);return i?{matched:!0,consumedSegments:i.consumed,lastChild:i.consumed.length,positionalParamSegments:i.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function Ym(t){if(1===t.numberOfChildren&&t.children.primary){const e=t.children.primary;return new Og(t.segments.concat(e.segments),e.children)}return t}function Jm(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}class Qm{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Zm{constructor(t,e){this.component=t,this.route=e}}function tv(t,e,n){const i=t._root;return nv(i,e?e._root:null,n,[i.value])}function ev(t,e,n){const i=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(i?i.module.injector:n).get(t)}function nv(t,e,n,i,r={canDeactivateChecks:[],canActivateChecks:[]}){const s=sm(e);return t.children.forEach(t=>{!function(t,e,n,i,r={canDeactivateChecks:[],canActivateChecks:[]}){const s=t.value,o=e?e.value:null,a=n?n.getContext(t.value.outlet):null;if(o&&s.routeConfig===o.routeConfig){const l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!Pg(t.url,e.url);case"pathParamsOrQueryParamsChange":return!Pg(t.url,e.url)||!Sg(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!gm(t,e)||!Sg(t.queryParams,e.queryParams);case"paramsChange":default:return!gm(t,e)}}(o,s,s.routeConfig.runGuardsAndResolvers);l?r.canActivateChecks.push(new Qm(i)):(s.data=o.data,s._resolvedData=o._resolvedData),nv(t,e,s.component?a?a.children:null:n,i,r),l&&a&&a.outlet&&a.outlet.isActivated&&r.canDeactivateChecks.push(new Zm(a.outlet.component,o))}else o&&iv(e,a,r),r.canActivateChecks.push(new Qm(i)),nv(t,null,s.component?a?a.children:null:n,i,r)}(t,s[t.value.outlet],n,i.concat([t.value]),r),delete s[t.value.outlet]}),Dg(s,(t,e)=>iv(t,n.getContext(e),r)),r}function iv(t,e,n){const i=sm(t),r=t.value;Dg(i,(t,i)=>{iv(t,r.component?e?e.children.getContext(i):null:e,n)}),n.canDeactivateChecks.push(new Zm(r.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,r))}function rv(t,e){return null!==t&&e&&e(new mg(t)),cp(!0)}function sv(t,e){return null!==t&&e&&e(new pg(t)),cp(!0)}function ov(t,e,n){const i=e.routeConfig?e.routeConfig.canActivate:null;return i&&0!==i.length?cp(i.map(i=>bp(()=>{const r=ev(i,e,n);let s;if(function(t){return t&&Mm(t.canActivate)}(r))s=Tg(r.canActivate(e,t));else{if(!Mm(r))throw new Error("Invalid CanActivate guard");s=Tg(r(e,t))}return s.pipe(Xp())}))).pipe(Im()):cp(!0)}function av(t,e,n){const i=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=>bp(()=>cp(e.guards.map(r=>{const s=ev(r,e.node,n);let o;if(function(t){return t&&Mm(t.canActivateChild)}(s))o=Tg(s.canActivateChild(i,t));else{if(!Mm(s))throw new Error("Invalid CanActivateChild guard");o=Tg(s(i,t))}return o.pipe(Xp())})).pipe(Im())));return cp(r).pipe(Im())}class lv{}class cv{constructor(t,e,n,i,r,s){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=i,this.paramsInheritanceStrategy=r,this.relativeLinkResolution=s}recognize(){try{const t=dv(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,e=this.processSegmentGroup(this.config,t,wg),n=new hm([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},wg,this.rootComponentType,null,this.urlTree.root,-1,{}),i=new rm(n,e),r=new um(this.url,i);return this.inheritParamsAndData(r._root),cp(r)}catch(t){return new y(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=cm(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=Ng(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};t.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),i=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${i}'.`)}e[t.value.outlet]=t.value})}(n),n.sort((t,e)=>t.value.outlet===wg?-1:e.value.outlet===wg?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,i){for(const s of t)try{return this.processSegmentAgainstRoute(s,e,n,i)}catch(r){if(!(r instanceof lv))throw r}if(this.noLeftoversInUrl(e,n,i))return[];throw new lv}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,i){if(t.redirectTo)throw new lv;if((t.outlet||wg)!==i)throw new lv;let r,s=[],o=[];if("**"===t.path){const s=n.length>0?Ag(n).parameters:{};r=new hm(n,s,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,pv(t),i,t.component,t,hv(e),uv(e)+n.length,gv(t))}else{const a=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new lv;return{consumedSegments:[],lastChild:0,parameters:{}}}const i=(e.matcher||Cg)(n,t,e);if(!i)throw new lv;const r={};Dg(i.posParams,(t,e)=>{r[e]=t.path});const s=i.consumed.length>0?Object.assign(Object.assign({},r),i.consumed[i.consumed.length-1].parameters):r;return{consumedSegments:i.consumed,lastChild:i.consumed.length,parameters:s}}(e,t,n);s=a.consumedSegments,o=n.slice(a.lastChild),r=new hm(s,a.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,pv(t),i,t.component,t,hv(e),uv(e)+s.length,gv(t))}const a=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:l,slicedSegments:c}=dv(e,s,o,a,this.relativeLinkResolution);if(0===c.length&&l.hasChildren()){const t=this.processChildren(a,l);return[new rm(r,t)]}if(0===a.length&&0===c.length)return[new rm(r,[])];const h=this.processSegment(a,l,c,wg);return[new rm(r,h)]}}function hv(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function uv(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)e=e._sourceSegment,n+=e._segmentIndexShift?e._segmentIndexShift:0;return n-1}function dv(t,e,n,i,r){if(n.length>0&&function(t,e,n){return n.some(n=>fv(t,e,n)&&Hm(n)!==wg)}(t,n,i)){const r=new Og(e,function(t,e,n,i){const r={};r.primary=i,i._sourceSegment=t,i._segmentIndexShift=e.length;for(const s of n)if(""===s.path&&Hm(s)!==wg){const n=new Og([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,r[Hm(s)]=n}return r}(t,e,i,new Og(n,t.children)));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return n.some(n=>fv(t,e,n))}(t,n,i)){const s=new Og(t.segments,function(t,e,n,i,r,s){const o={};for(const a of i)if(fv(t,n,a)&&!r[Hm(a)]){const n=new Og([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===s?t.segments.length:e.length,o[Hm(a)]=n}return Object.assign(Object.assign({},r),o)}(t,e,n,i,t.children,r));return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:n}}const s=new Og(t.segments,t.children);return s._sourceSegment=t,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:n}}function fv(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function pv(t){return t.data||{}}function gv(t){return t.resolve||{}}function mv(t){return function(e){return e.pipe(Ip(e=>{const n=t(e);return n?I(n).pipe(k(()=>e)):I([e])}))}}class vv extends class{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}{}const yv=new qn("ROUTES");class wv{constructor(t,e,n,i){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=i}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(k(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const i=n.create(t);return new Lm(kg(i.injector.get(yv)).map(Vm),i)}))}loadModuleFactory(t){return"string"==typeof t?I(this.loader.load(t)):Tg(t()).pipe(U(t=>t instanceof xl?cp(t):I(this.compiler.compileModuleAsync(t))))}}class bv{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new xv,this.attachRef=null}}class xv{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 bv,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}class _v{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function Cv(t){throw t}function Sv(t,e,n){return e.parse("/")}function Ev(t,e){return cp(null)}let kv=(()=>{class t{constructor(t,e,n,i,r,s,o,a){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=i,this.config=a,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.lastLocationChangeInfo=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new C,this.errorHandler=Cv,this.malformedUriErrorHandler=Sv,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:Ev,afterPreactivation:Ev},this.urlHandlingStrategy=new _v,this.routeReuseStrategy=new vv,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="corrected",this.ngModule=r.get(bl),this.console=r.get(wc);const l=r.get(Lc);this.isNgZoneEnabled=l instanceof Lc,this.resetConfig(a),this.currentUrlTree=new $g(new Og([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new wv(s,o,t=>this.triggerEvent(new dg(t)),t=>this.triggerEvent(new fg(t))),this.routerState=am(this.currentUrlTree,this.rootComponentType),this.transitions=new hp({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(_p(t=>0!==t.id),k(t=>Object.assign(Object.assign({},t),{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Ip(t=>{let n=!1,i=!1;return cp(t).pipe(Jp(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign(Object.assign({},this.lastSuccessfulNavigation),{previousNavigation:null}):null}}),Ip(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return cp(t).pipe(Ip(t=>{const n=this.transitions.getValue();return e.next(new ig(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?yp:[t]}),Ip(t=>Promise.resolve(t)),(i=this.ngModule.injector,r=this.configLoader,s=this.urlSerializer,o=this.config,function(t){return t.pipe(Ip(t=>function(t,e,n,i,r){return new qm(t,e,n,i,r).apply()}(i,r,s,t.extractedUrl,o).pipe(k(e=>Object.assign(Object.assign({},t),{urlAfterRedirects:e})))))}),Jp(t=>{this.currentNavigation=Object.assign(Object.assign({},this.currentNavigation),{finalUrl:t.urlAfterRedirects})}),function(t,e,n,i,r){return function(s){return s.pipe(U(s=>function(t,e,n,i,r="emptyOnly",s="legacy"){return new cv(t,e,n,i,r,s).recognize()}(t,e,s.urlAfterRedirects,n(s.urlAfterRedirects),i,r).pipe(k(t=>Object.assign(Object.assign({},s),{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),Jp(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),Jp(t=>{const n=new ag(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));var i,r,s,o;if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:i,source:r,restoredState:s,extras:o}=t,a=new ig(n,this.serializeUrl(i),r,s);e.next(a);const l=am(i,this.rootComponentType).snapshot;return cp(Object.assign(Object.assign({},t),{targetSnapshot:l,urlAfterRedirects:i,extras:Object.assign(Object.assign({},o),{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),yp}),mv(t=>{const{targetSnapshot:e,id:n,extractedUrl:i,rawUrl:r,extras:{skipLocationChange:s,replaceUrl:o}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:i,rawUrlTree:r,skipLocationChange:!!s,replaceUrl:!!o})}),Jp(t=>{const e=new lg(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),k(t=>Object.assign(Object.assign({},t),{guards:tv(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(U(n=>{const{targetSnapshot:i,currentSnapshot:r,guards:{canActivateChecks:s,canDeactivateChecks:o}}=n;return 0===o.length&&0===s.length?cp(Object.assign(Object.assign({},n),{guardsResult:!0})):function(t,e,n,i){return I(t).pipe(U(t=>function(t,e,n,i,r){const s=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return s&&0!==s.length?cp(s.map(s=>{const o=ev(s,e,r);let a;if(function(t){return t&&Mm(t.canDeactivate)}(o))a=Tg(o.canDeactivate(t,e,n,i));else{if(!Mm(o))throw new Error("Invalid CanDeactivate guard");a=Tg(o(t,e,n,i))}return a.pipe(Xp())})).pipe(Im()):cp(!0)}(t.component,t.route,n,e,i)),Xp(t=>!0!==t,!0))}(o,i,r,t).pipe(U(n=>n&&"boolean"==typeof n?function(t,e,n,i){return I(e).pipe(qp(e=>I([sv(e.route.parent,i),rv(e.route,i),av(t,e.path,n),ov(t,e.route,n)]).pipe(xp(),Xp(t=>!0!==t,!0))),Xp(t=>!0!==t,!0))}(i,s,t,e):cp(n)),k(t=>Object.assign(Object.assign({},n),{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),Jp(t=>{if($m(t.guardsResult)){const e=_g(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),Jp(t=>{const e=new cg(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),_p(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new sg(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),mv(t=>{if(t.guards.canActivateChecks.length)return cp(t).pipe(Jp(t=>{const e=new hg(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),Ip(t=>{let n=!1;return cp(t).pipe((i=this.paramsInheritanceStrategy,r=this.ngModule.injector,function(t){return t.pipe(U(t=>{const{targetSnapshot:e,guards:{canActivateChecks:n}}=t;if(!n.length)return cp(t);let s=0;return I(n).pipe(qp(t=>function(t,e,n,i){return function(t,e,n,i){const r=Object.keys(t);if(0===r.length)return cp({});const s={};return I(r).pipe(U(r=>function(t,e,n,i){const r=ev(t,e,i);return Tg(r.resolve?r.resolve(e,n):r(e,n))}(t[r],e,n,i).pipe(Jp(t=>{s[r]=t}))),kp(1),U(()=>Object.keys(s).length===r.length?cp(s):yp))}(t._resolve,t,e,i).pipe(k(e=>(t._resolvedData=e,t.data=Object.assign(Object.assign({},t.data),cm(t,n).resolve),null)))}(t.route,e,i,r)),Jp(()=>s++),kp(1),U(e=>s===n.length?cp(t):yp))}))}),Jp({next:()=>n=!0,complete:()=>{if(!n){const n=new sg(t.id,this.serializeUrl(t.extractedUrl),"At least one route resolver didn't emit any value.");e.next(n),t.resolve(!1)}}}));var i,r}),Jp(t=>{const e=new ug(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}))}),mv(t=>{const{targetSnapshot:e,id:n,extractedUrl:i,rawUrl:r,extras:{skipLocationChange:s,replaceUrl:o}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:i,rawUrlTree:r,skipLocationChange:!!s,replaceUrl:!!o})}),k(t=>{const e=function(t,e,n){const i=mm(t,e._root,n?n._root:void 0);return new om(i,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign(Object.assign({},t),{targetRouterState:e})}),Jp(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)}),(s=this.rootContexts,o=this.routeReuseStrategy,a=t=>this.triggerEvent(t),k(t=>(new Rm(o,t.targetRouterState,t.currentRouterState,a).activate(s),t))),Jp({next(){n=!0},complete(){n=!0}}),(r=()=>{if(!n&&!i){this.resetUrlToCurrentUrlTree();const n=new sg(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},t=>t.lift(new tg(r))),Wp(n=>{if(i=!0,(r=n)&&r.ngNavigationCancelingError){const i=$m(n.url);i||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const r=new sg(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(r),i?setTimeout(()=>{const e=this.urlHandlingStrategy.merge(n.url,this.rawUrlTree);return this.scheduleNavigation(e,"imperative",null,{skipLocationChange:t.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy},{resolve:t.resolve,reject:t.reject,promise:t.promise})},0):t.resolve(!1)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const i=new og(t.id,this.serializeUrl(t.extractedUrl),n);e.next(i);try{t.resolve(this.errorHandler(n))}catch(s){t.reject(s)}}var r;return yp}));var r,s,o,a}))}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(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=>{const e=this.extractLocationChangeInfoFromEvent(t);this.shouldScheduleNavigation(this.lastLocationChangeInfo,e)&&setTimeout(()=>{const{source:t,state:n,urlTree:i}=e,r={replaceUrl:!0};if(n){const t=Object.assign({},n);delete t.navigationId,0!==Object.keys(t).length&&(r.state=t)}this.scheduleNavigation(i,t,n,r)},0),this.lastLocationChangeInfo=e}))}extractLocationChangeInfoFromEvent(t){var e;return{source:"popstate"===t.type?"popstate":"hashchange",urlTree:this.parseUrl(t.url),state:(null===(e=t.state)||void 0===e?void 0:e.navigationId)?t.state:null,transitionId:this.getTransition().id}}shouldScheduleNavigation(t,e){if(!t)return!0;const n=e.urlTree.toString()===t.urlTree.toString();return!(e.transitionId===t.transitionId&&n&&("hashchange"===e.source&&"popstate"===t.source||"popstate"===e.source&&"hashchange"===t.source))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){Nm(t),this.config=t.map(Vm),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:i,fragment:r,queryParamsHandling:s,preserveFragment:o}=e,a=n||this.routerState.root,l=o?this.currentUrlTree.fragment:r;let c=null;switch(s){case"merge":c=Object.assign(Object.assign({},this.currentUrlTree.queryParams),i);break;case"preserve":c=this.currentUrlTree.queryParams;break;default:c=i||null}return null!==c&&(c=this.removeEmptyProps(c)),function(t,e,n,i,r){if(0===n.length)return bm(e.root,e.root,e,i,r);const s=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new _m(!0,0,t);let e=0,n=!1;const i=t.reduce((t,i,r)=>{if("object"==typeof i&&null!=i){if(i.outlets){const e={};return Dg(i.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(i.segmentPath)return[...t,i.segmentPath]}return"string"!=typeof i?[...t,i]:0===r?(i.split("/").forEach((i,r)=>{0==r&&"."===i||(0==r&&""===i?n=!0:".."===i?e++:""!=i&&t.push(i))}),t):[...t,i]},[]);return new _m(n,e,i)}(n);if(s.toRoot())return bm(e.root,new Og([],{}),e,i,r);const o=function(t,e,n){if(t.isAbsolute)return new Cm(e.root,!0,0);if(-1===n.snapshot._lastPathIndex){const t=n.snapshot._urlSegment;return new Cm(t,t===e.root,0)}const i=ym(t.commands[0])?0:1;return function(t,e,n){let i=t,r=e,s=n;for(;s>r;){if(s-=r,i=i.parent,!i)throw new Error("Invalid number of '../'");r=i.segments.length}return new Cm(i,!1,r-s)}(n.snapshot._urlSegment,n.snapshot._lastPathIndex+i,t.numberOfDoubleDots)}(s,e,t),a=o.processChildren?Em(o.segmentGroup,o.index,s.commands):Sm(o.segmentGroup,o.index,s.commands);return bm(o.segmentGroup,a,e,i,r)}(a,this.currentUrlTree,t,c,l)}navigateByUrl(t,e={skipLocationChange:!1}){const n=$m(t)?t:this.parseUrl(t),i=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(i,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e{const i=t[n];return null!=i&&(e[n]=i),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new rg(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,i,r){const s=this.getTransition(),o="imperative"!==e&&"imperative"===(null==s?void 0:s.source),a=(this.lastSuccessfulId===s.id||this.currentNavigation?s.rawUrl:s.urlAfterRedirects).toString()===t.toString();if(o&&a)return Promise.resolve(!0);let l,c,h;r?(l=r.resolve,c=r.reject,h=r.promise):h=new Promise((t,e)=>{l=t,c=e});const u=++this.navigationId;return this.setTransition({id:u,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:i,resolve:l,reject:c,promise:h,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),h.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,i){const r=this.urlSerializer.serialize(t);i=i||{},this.location.isCurrentPathEqualTo(r)||e?this.location.replaceState(r,"",Object.assign(Object.assign({},i),{navigationId:n})):this.location.go(r,"",Object.assign(Object.assign({},i),{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})}}return t.\u0275fac=function(e){return new(e||t)(vi(Yn),vi(Bg),vi(xv),vi(kh),vi(lo),vi(eh),vi(Tc),vi(void 0))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),Av=(()=>{class t{constructor(t,e,n,i,r){this.router=t,this.route=e,this.commands=[],this.onChanges=new C,null==n&&i.setAttribute(r.nativeElement,"tabindex","0")}ngOnChanges(t){this.onChanges.next(this)}set routerLink(t){this.commands=null!=t?Array.isArray(t)?t:[t]:[]}onClick(){const t={skipLocationChange:Tv(this.skipLocationChange),replaceUrl:Tv(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,t),!0}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:Tv(this.preserveFragment)})}}return t.\u0275fac=function(e){return new(e||t)(Do(kv),Do(lm),Wn("tabindex"),Do(za),Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["","routerLink","",5,"a",5,"area"]],hostBindings:function(t,e){1&t&&Bo("click",function(){return e.onClick()})},inputs:{routerLink:"routerLink",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state"},features:[oe]}),t})(),Dv=(()=>{class t{constructor(t,e,n){this.router=t,this.route=e,this.locationStrategy=n,this.commands=[],this.onChanges=new C,this.subscription=t.events.subscribe(t=>{t instanceof rg&&this.updateTargetUrlAndHref()})}set routerLink(t){this.commands=null!=t?Array.isArray(t)?t:[t]:[]}ngOnChanges(t){this.updateTargetUrlAndHref(),this.onChanges.next(this)}ngOnDestroy(){this.subscription.unsubscribe()}onClick(t,e,n,i,r){if(0!==t||e||n||i||r)return!0;if("string"==typeof this.target&&"_self"!=this.target)return!0;const s={skipLocationChange:Tv(this.skipLocationChange),replaceUrl:Tv(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,s),!1}updateTargetUrlAndHref(){this.href=this.locationStrategy.prepareExternalUrl(this.router.serializeUrl(this.urlTree))}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:Tv(this.preserveFragment)})}}return t.\u0275fac=function(e){return new(e||t)(Do(kv),Do(lm),Do(xh))},t.\u0275dir=jt({type:t,selectors:[["a","routerLink",""],["area","routerLink",""]],hostVars:2,hostBindings:function(t,e){1&t&&Bo("click",function(t){return e.onClick(t.button,t.ctrlKey,t.shiftKey,t.altKey,t.metaKey)}),2&t&&(wa("href",e.href,tr),So("target",e.target))},inputs:{routerLink:"routerLink",target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state"},features:[oe]}),t})();function Tv(t){return""===t||!!t}let Rv=(()=>{class t{constructor(t,e,n,i,r,s){this.router=t,this.element=e,this.renderer=n,this.cdr=i,this.link=r,this.linkWithHref=s,this.classes=[],this.isActive=!1,this.routerLinkActiveOptions={exact:!1},this.routerEventsSubscription=t.events.subscribe(t=>{t instanceof rg&&this.update()})}ngAfterContentInit(){I([this.links.changes,this.linksWithHrefs.changes,cp(null)]).pipe(j()).subscribe(t=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){var t;null===(t=this.linkInputChangesSubscription)||void 0===t||t.unsubscribe();const e=[...this.links.toArray(),...this.linksWithHrefs.toArray(),this.link,this.linkWithHref].filter(t=>!!t).map(t=>t.onChanges);this.linkInputChangesSubscription=I(e).pipe(j()).subscribe(t=>{this.isActive!==this.isLinkActive(this.router)(t)&&this.update()})}set routerLinkActive(t){const e=Array.isArray(t)?t:t.split(" ");this.classes=e.filter(t=>!!t)}ngOnChanges(t){this.update()}ngOnDestroy(){var t;this.routerEventsSubscription.unsubscribe(),null===(t=this.linkInputChangesSubscription)||void 0===t||t.unsubscribe()}update(){this.links&&this.linksWithHrefs&&this.router.navigated&&Promise.resolve().then(()=>{const t=this.hasActiveLinks();this.isActive!==t&&(this.isActive=t,this.cdr.markForCheck(),this.classes.forEach(e=>{t?this.renderer.addClass(this.element.nativeElement,e):this.renderer.removeClass(this.element.nativeElement,e)}))})}isLinkActive(t){return e=>t.isActive(e.urlTree,this.routerLinkActiveOptions.exact)}hasActiveLinks(){const t=this.isLinkActive(this.router);return this.link&&t(this.link)||this.linkWithHref&&t(this.linkWithHref)||this.links.some(t)||this.linksWithHrefs.some(t)}}return t.\u0275fac=function(e){return new(e||t)(Do(kv),Do(Ha),Do(za),Do(ul),Do(Av,8),Do(Dv,8))},t.\u0275dir=jt({type:t,selectors:[["","routerLinkActive",""]],contentQueries:function(t,e,n){if(1&t&&(sc(n,Av,!0),sc(n,Dv,!0)),2&t){let t;ec(t=oc())&&(e.links=t),ec(t=oc())&&(e.linksWithHrefs=t)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",routerLinkActive:"routerLinkActive"},exportAs:["routerLinkActive"],features:[oe]}),t})(),Fv=(()=>{class t{constructor(t,e,n,i,r){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=r,this.activated=null,this._activatedRoute=null,this.activateEvents=new jl,this.deactivateEvents=new jl,this.name=i||wg,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),i=this.parentContexts.getOrCreateContext(this.name).children,r=new Lv(t,i,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,r),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}return t.\u0275fac=function(e){return new(e||t)(Do(xv),Do(Cl),Do(Na),Wn("name"),Do(ul))},t.\u0275dir=jt({type:t,selectors:[["router-outlet"]],outputs:{activateEvents:"activate",deactivateEvents:"deactivate"},exportAs:["outlet"]}),t})();class Lv{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===lm?this.route:t===xv?this.childContexts:this.parent.get(t,e)}}class Mv{}class $v{preload(t,e){return cp(null)}}let Ov=(()=>{class t{constructor(t,e,n,i,r){this.router=t,this.injector=i,this.preloadingStrategy=r,this.loader=new wv(e,n,e=>t.triggerEvent(new dg(e)),e=>t.triggerEvent(new fg(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(_p(t=>t instanceof rg),qp(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(bl);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const i of e)if(i.loadChildren&&!i.canLoad&&i._loadedConfig){const t=i._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else i.loadChildren&&!i.canLoad?n.push(this.preloadConfig(t,i)):i.children&&n.push(this.processRoutes(t,i.children));return I(n).pipe(j(),k(t=>{}))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(U(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}return t.\u0275fac=function(e){return new(e||t)(vi(kv),vi(eh),vi(Tc),vi(lo),vi(Mv))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),Iv=(()=>{class t{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 ig?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof rg&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof yg&&(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 yg(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(vi(kv),vi(jh),vi(void 0))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();const Pv=new qn("ROUTER_CONFIGURATION"),Nv=new qn("ROUTER_FORROOT_GUARD"),Bv=[kh,{provide:Bg,useClass:Ug},{provide:kv,useFactory:function(t,e,n,i,r,s,o,a={},l,c){const h=new kv(null,t,e,n,i,r,s,kg(o));if(l&&(h.urlHandlingStrategy=l),c&&(h.routeReuseStrategy=c),function(t,e){t.errorHandler&&(e.errorHandler=t.errorHandler),t.malformedUriErrorHandler&&(e.malformedUriErrorHandler=t.malformedUriErrorHandler),t.onSameUrlNavigation&&(e.onSameUrlNavigation=t.onSameUrlNavigation),t.paramsInheritanceStrategy&&(e.paramsInheritanceStrategy=t.paramsInheritanceStrategy),t.relativeLinkResolution&&(e.relativeLinkResolution=t.relativeLinkResolution),t.urlUpdateStrategy&&(e.urlUpdateStrategy=t.urlUpdateStrategy)}(a,h),a.enableTracing){const t=hh();h.events.subscribe(e=>{t.logGroup("Router Event: "+e.constructor.name),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return h},deps:[Bg,xv,kh,lo,eh,Tc,yv,Pv,[class{},new oi],[class{},new oi]]},xv,{provide:lm,useFactory:function(t){return t.routerState.root},deps:[kv]},{provide:eh,useClass:rh},Ov,$v,class{preload(t,e){return e().pipe(Wp(()=>cp(null)))}},{provide:Pv,useValue:{enableTracing:!1}}];function Uv(){return new qc("Router",kv)}let Vv=(()=>{class t{constructor(t,e){}static forRoot(e,n){return{ngModule:t,providers:[Bv,Wv(e),{provide:Nv,useFactory:zv,deps:[[kv,new oi,new li]]},{provide:Pv,useValue:n||{}},{provide:xh,useFactory:jv,deps:[dh,[new si(Ch),new oi],Pv]},{provide:Iv,useFactory:Hv,deps:[kv,jh,Pv]},{provide:Mv,useExisting:n&&n.preloadingStrategy?n.preloadingStrategy:$v},{provide:qc,multi:!0,useFactory:Uv},[Gv,{provide:uc,multi:!0,useFactory:Kv,deps:[Gv]},{provide:Xv,useFactory:qv,deps:[Gv]},{provide:yc,multi:!0,useExisting:Xv}]]}}static forChild(e){return{ngModule:t,providers:[Wv(e)]}}}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)(vi(Nv,8),vi(kv,8))}}),t})();function Hv(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new Iv(t,e,n)}function jv(t,e,n={}){return n.useHash?new Eh(t,e):new Sh(t,e)}function zv(t){return"guarded"}function Wv(t){return[{provide:Xn,multi:!0,useValue:t},{provide:yv,multi:!0,useValue:t}]}let Gv=(()=>{class t{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new C}appInitializer(){return this.injector.get(ph,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(kv),i=this.injector.get(Pv);return"disabled"===i.initialNavigation?(n.setUpLocationChangeListener(),t(!0)):"enabled"===i.initialNavigation||"enabledBlocking"===i.initialNavigation?(n.hooks.afterPreactivation=()=>this.initNavigation?cp(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone),n.initialNavigation()):t(!0),e})}bootstrapListener(t){const e=this.injector.get(Pv),n=this.injector.get(Ov),i=this.injector.get(Iv),r=this.injector.get(kv),s=this.injector.get(Zc);t===s.components[0]&&("enabledNonBlocking"!==e.initialNavigation&&void 0!==e.initialNavigation||r.initialNavigation(),n.setUpPreloading(),i.init(),r.resetRootComponentType(s.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}}return t.\u0275fac=function(e){return new(e||t)(vi(lo))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();function Kv(t){return t.appInitializer.bind(t)}function qv(t){return t.bootstrapListener.bind(t)}const Xv=new qn("Router Initializer");function Yv(t,e){return new y(n=>{const i=t.length;if(0===i)return void n.complete();const r=new Array(i);let s=0,o=0;for(let a=0;a{c||(c=!0,o++),r[a]=t},error:t=>n.error(t),complete:()=>{s++,s!==i&&c||(o===i&&n.next(e?e.reduce((t,e,n)=>(t[e]=r[n],t),{}):r),n.complete())}}))}})}const Jv=new qn("NgValueAccessor"),Qv={provide:Jv,useExisting:it(()=>Zv),multi:!0};let Zv=(()=>{class t{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)}}return t.\u0275fac=function(e){return new(e||t)(Do(za),Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(t,e){1&t&&Bo("change",function(t){return e.onChange(t.target.checked)})("blur",function(){return e.onTouched()})},features:[Oa([Qv])]}),t})();const ty={provide:Jv,useExisting:it(()=>ny),multi:!0},ey=new qn("CompositionEventMode");let ny=(()=>{class t{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=hh()?hh().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)}}return t.\u0275fac=function(e){return new(e||t)(Do(za),Do(Ha),Do(ey,8))},t.\u0275dir=jt({type:t,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(t,e){1&t&&Bo("input",function(t){return e._handleInput(t.target.value)})("blur",function(){return e.onTouched()})("compositionstart",function(){return e._compositionStart()})("compositionend",function(t){return e._compositionEnd(t.target.value)})},features:[Oa([ty])]}),t})();function iy(t){return null==t||0===t.length}function ry(t){return null!=t&&"number"==typeof t.length}const sy=new qn("NgValidators"),oy=new qn("NgAsyncValidators"),ay=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class ly{static min(t){return e=>{if(iy(e.value)||iy(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(iy(e.value)||iy(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return iy(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return iy(t.value)||ay.test(t.value)?null:{email:!0}}static minLength(t){return e=>iy(e.value)||!ry(e.value)?null:e.value.lengthry(e.value)&&e.value.length>t?{maxlength:{requiredLength:t,actualLength:e.value.length}}:null}static pattern(t){if(!t)return ly.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(iy(t.value))return null;const i=t.value;return e.test(i)?null:{pattern:{requiredPattern:n,actualValue:i}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(cy);return 0==e.length?null:function(t){return uy(dy(t,e))}}static composeAsync(t){if(!t)return null;const e=t.filter(cy);return 0==e.length?null:function(t){return function(...t){if(1===t.length){const e=t[0];if(l(e))return Yv(e,null);if(c(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return Yv(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return Yv(t=1===t.length&&l(t[0])?t[0]:t,null).pipe(k(t=>e(...t)))}return Yv(t,null)}(dy(t,e).map(hy)).pipe(k(uy))}}}function cy(t){return null!=t}function hy(t){const e=Po(t)?I(t):t;return No(e),e}function uy(t){let e={};return t.forEach(t=>{e=null!=t?Object.assign(Object.assign({},e),t):e}),0===Object.keys(e).length?null:e}function dy(t,e){return e.map(e=>e(t))}function fy(t){return t.map(t=>function(t){return!t.validate}(t)?t:e=>t.validate(e))}function py(t){return null!=t?ly.compose(fy(t)):null}function gy(t){return null!=t?ly.composeAsync(fy(t)):null}function my(t,e){return null===t?[e]:Array.isArray(t)?[...t,e]:[t,e]}function vy(t){return t._rawValidators}function yy(t){return t._rawAsyncValidators}let wy=(()=>{class t{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}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}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=py(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=gy(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}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}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=jt({type:t}),t})(),by=(()=>{class t extends wy{get formDirective(){return null}get path(){return null}}return t.\u0275fac=function(e){return xy(e||t)},t.\u0275dir=jt({type:t,features:[ho]}),t})();const xy=zn(by);class _y extends wy{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class Cy{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}}let Sy=(()=>{class t extends Cy{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(Do(_y,2))},t.\u0275dir=jt({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&na("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[ho]}),t})(),Ey=(()=>{class t extends Cy{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(Do(by,2))},t.\u0275dir=jt({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:14,hostBindings:function(t,e){2&t&&na("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[ho]}),t})();const ky={provide:Jv,useExisting:it(()=>Ay),multi:!0};let Ay=(()=>{class t{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)}}return t.\u0275fac=function(e){return new(e||t)(Do(za),Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(t,e){1&t&&Bo("input",function(t){return e.onChange(t.target.value)})("blur",function(){return e.onTouched()})},features:[Oa([ky])]}),t})();const Dy={provide:Jv,useExisting:it(()=>Ry),multi:!0};let Ty=(()=>{class t{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}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),Ry=(()=>{class t{constructor(t,e,n,i){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=i,this.onChange=()=>{},this.onTouched=()=>{}}ngOnInit(){this._control=this._injector.get(_y),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)}}return t.\u0275fac=function(e){return new(e||t)(Do(za),Do(Ha),Do(Ty),Do(lo))},t.\u0275dir=jt({type:t,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(t,e){1&t&&Bo("change",function(){return e.onChange()})("blur",function(){return e.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[Oa([Dy])]}),t})();const Fy={provide:Jv,useExisting:it(()=>Ly),multi:!0};let Ly=(()=>{class t{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)}}return t.\u0275fac=function(e){return new(e||t)(Do(za),Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(t,e){1&t&&Bo("change",function(t){return e.onChange(t.target.value)})("input",function(t){return e.onChange(t.target.value)})("blur",function(){return e.onTouched()})},features:[Oa([Fy])]}),t})();const My={provide:Jv,useExisting:it(()=>Oy),multi:!0};function $y(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}let Oy=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=Object.is}set compareWith(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=$y(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}}return t.\u0275fac=function(e){return new(e||t)(Do(za),Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(t,e){1&t&&Bo("change",function(t){return e.onChange(t.target.value)})("blur",function(){return e.onTouched()})},inputs:{compareWith:"compareWith"},features:[Oa([My])]}),t})(),Iy=(()=>{class t{constructor(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue($y(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha),Do(za),Do(Oy,9))},t.\u0275dir=jt({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();const Py={provide:Jv,useExisting:it(()=>By),multi:!0};function Ny(t,e){return null==t?""+e:("string"==typeof e&&(e=`'${e}'`),e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}let By=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=Object.is}set compareWith(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(void 0!==e.selectedOptions){const t=e.selectedOptions;for(let e=0;e{class t{constructor(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(Ny(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(Ny(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha),Do(za),Do(By,9))},t.\u0275dir=jt({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();function Vy(t,e){jy(t,e,!0),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&Wy(t,e)})}(t,e),function(t,e){const n=(t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)};t.registerOnChange(n),e._registerOnDestroy(()=>{t._unregisterOnChange(n)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&Wy(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),function(t,e){if(e.valueAccessor.setDisabledState){const n=t=>{e.valueAccessor.setDisabledState(t)};t.registerOnDisabledChange(n),e._registerOnDestroy(()=>{t._unregisterOnDisabledChange(n)})}}(t,e)}function Hy(t,e){t.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(e)})}function jy(t,e,n){const i=vy(t);null!==e.validator?t.setValidators(my(i,e.validator)):"function"==typeof i&&t.setValidators([i]);const r=yy(t);if(null!==e.asyncValidator?t.setAsyncValidators(my(r,e.asyncValidator)):"function"==typeof r&&t.setAsyncValidators([r]),n){const n=()=>t.updateValueAndValidity();Hy(e._rawValidators,n),Hy(e._rawAsyncValidators,n)}}function zy(t,e,n){if(null!==t){if(null!==e.validator){const n=vy(t);Array.isArray(n)&&n.length>0&&t.setValidators(n.filter(t=>t!==e.validator))}if(null!==e.asyncValidator){const n=yy(t);Array.isArray(n)&&n.length>0&&t.setAsyncValidators(n.filter(t=>t!==e.asyncValidator))}}if(n){const t=()=>{};Hy(e._rawValidators,t),Hy(e._rawAsyncValidators,t)}}function Wy(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Gy(t,e){jy(t,e,!1)}const Ky=[Zv,Ly,Ay,Oy,By,Ry];function qy(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const Xy="VALID",Yy="INVALID",Jy="PENDING",Qy="DISABLED";function Zy(t){return(iw(t)?t.validators:t)||null}function tw(t){return Array.isArray(t)?py(t):t||null}function ew(t,e){return(iw(e)?e.asyncValidators:t)||null}function nw(t){return Array.isArray(t)?gy(t):t||null}function iw(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class rw{constructor(t,e){this._hasOwnPendingAsyncValidator=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=t,this._rawAsyncValidators=e,this._composedValidatorFn=tw(this._rawValidators),this._composedAsyncValidatorFn=nw(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get valid(){return this.status===Xy}get invalid(){return this.status===Yy}get pending(){return this.status==Jy}get disabled(){return this.status===Qy}get enabled(){return this.status!==Qy}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._rawValidators=t,this._composedValidatorFn=tw(t)}setAsyncValidators(t){this._rawAsyncValidators=t,this._composedAsyncValidatorFn=nw(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=Jy,!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=Qy,this.errors=null,this._forEachChild(e=>{e.disable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status=Xy,this._forEachChild(e=>{e.enable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign(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!==Xy&&this.status!==Jy||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()?Qy:Xy}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=Jy,this._hasOwnPendingAsyncValidator=!0;const e=hy(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(e,{emitEvent:t})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){if(null==e)return null;if(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length)return null;let i=t;return e.forEach(t=>{i=i instanceof ow?i.controls.hasOwnProperty(t)?i.controls[t]:null:i instanceof aw&&i.at(t)||null}),i}(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 jl,this.statusChanges=new jl}_calculateStatus(){return this._allControlsDisabled()?Qy:this.errors?Yy:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Jy)?Jy:this._anyControlsHaveStatus(Yy)?Yy:Xy}_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){iw(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}class sw extends rw{constructor(t=null,e,n){super(Zy(e),ew(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!n})}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)}_unregisterOnChange(t){qy(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){qy(this._onDisabledChange,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 ow extends rw{constructor(t,e,n){super(Zy(e),ew(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!n})}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,i)=>{n.reset(t[i],{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 sw?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){for(const e of Object.keys(this.controls)){const n=this.controls[e];if(this.contains(e)&&t(n))return!0}return!1}_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,i)=>{n=e(n,t,i)}),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 aw extends rw{constructor(t,e,n){super(Zy(e),ew(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!n})}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,i)=>{n.reset(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof sw?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)}}let lw=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=jt({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})();const cw=new qn("NgModelWithFormControlWarning"),hw={provide:by,useExisting:it(()=>uw)};let uw=(()=>{class t extends by{constructor(t,e){super(),this.validators=t,this.asyncValidators=e,this.submitted=!1,this.directives=[],this.form=null,this.ngSubmit=new jl,this._setValidators(t),this._setAsyncValidators(e)}ngOnChanges(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(t){const e=this.form.get(t.path);return Vy(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e}getControl(t){return this.form.get(t.path)}removeControl(t){qy(this.directives,t)}addFormGroup(t){const e=this.form.get(t.path);Gy(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormGroup(t){}getFormGroup(t){return this.form.get(t.path)}addFormArray(t){const e=this.form.get(t.path);Gy(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormArray(t){}getFormArray(t){return this.form.get(t.path)}updateModel(t,e){this.form.get(t.path).setValue(e)}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}_updateDomValue(){this.directives.forEach(t=>{const e=this.form.get(t.path);t.control!==e&&(function(t,e){const n=()=>{};e.valueAccessor.registerOnChange(n),e.valueAccessor.registerOnTouched(n),zy(t,e,!0),t&&(e._invokeOnDestroyCallbacks(),t._registerOnCollectionChange(()=>{}))}(t.control||null,t),e&&Vy(e,t),t.control=e)}),this.form._updateTreeValidity({emitEvent:!1})}_updateRegistrations(){this.form._registerOnCollectionChange(()=>this._updateDomValue()),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){jy(this.form,this,!1),this._oldForm&&zy(this._oldForm,this,!1)}_checkFormPresent(){}}return t.\u0275fac=function(e){return new(e||t)(Do(sy,10),Do(oy,10))},t.\u0275dir=jt({type:t,selectors:[["","formGroup",""]],hostBindings:function(t,e){1&t&&Bo("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[Oa([hw]),ho,oe]}),t})();const dw={provide:_y,useExisting:it(()=>fw)};let fw=(()=>{class t extends _y{constructor(t,e,n,i,r){super(),this._ngModelWarningConfig=r,this._added=!1,this.update=new jl,this._ngModelWarningSent=!1,this._parent=t,this._setValidators(e),this._setAsyncValidators(n),this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e);let n=void 0,i=void 0,r=void 0;return e.forEach(t=>{var e;t.constructor===ny?n=t:(e=t,Ky.some(t=>e.constructor===t)?i=t:r=t)}),r||i||n||null}(0,i)}set isDisabled(t){}ngOnChanges(t){this._added||this._setUpControl(),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!Object.is(e,n.currentValue)}(t,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}get path(){return t=null==this.name?this.name:this.name.toString(),[...this._parent.path,t];var t}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}_setUpControl(){this._checkParentType(),this.control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0}}return t.\u0275fac=function(e){return new(e||t)(Do(by,13),Do(sy,10),Do(oy,10),Do(Jv,10),Do(cw,8))},t.\u0275dir=jt({type:t,selectors:[["","formControlName",""]],inputs:{isDisabled:["disabled","isDisabled"],name:["formControlName","name"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[Oa([dw]),ho,oe]}),t._ngModelWarningSentOnce=!1,t})();const pw={provide:sy,useExisting:it(()=>gw),multi:!0};let gw=(()=>{class t{constructor(){this._required=!1}get required(){return this._required}set required(t){this._required=null!=t&&!1!==t&&""+t!="false",this._onChange&&this._onChange()}validate(t){return this.required?ly.required(t):null}registerOnValidatorChange(t){this._onChange=t}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=jt({type:t,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(t,e){2&t&&So("required",e.required?"":null)},inputs:{required:"required"},features:[Oa([pw])]}),t})(),mw=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)}}),t})(),vw=(()=>{class t{group(t,e=null){const n=this._reduceControls(t);let i=null,r=null,s=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(i=null!=e.validators?e.validators:null,r=null!=e.asyncValidators?e.asyncValidators:null,s=null!=e.updateOn?e.updateOn:void 0):(i=null!=e.validator?e.validator:null,r=null!=e.asyncValidator?e.asyncValidator:null)),new ow(n,{asyncValidators:r,updateOn:s,validators:i})}control(t,e,n){return new sw(t,e,n)}array(t,e,n){const i=t.map(t=>this._createControl(t));return new aw(i,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof sw||t instanceof ow||t instanceof aw?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),yw=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:[Ty],imports:[mw]}),t})(),ww=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:cw,useValue:e.warnOnNgModelWithFormControl}]}}}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:[vw,Ty],imports:[mw]}),t})();const bw=new qn("ngx-segment-analytics.config"),xw={debug:!1,loadOnInitialization:!0,segmentHost:"cdn.segment.com",segmentUri:"/analytics.js/v1/$API_KEY$/analytics.min.js"};let _w=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),Cw=(()=>{class t{constructor(t,e,n){if(this._w=t,this._doc=e,this._config=Object.assign(Object.assign({},xw),n),!this._config.loadOnInitialization||void 0!==this._config.apiKey&&""!==this._config.apiKey){if(void 0===this._w.analytics||void 0===this._w.analytics.initialize||!1===this._w.analytics.initialize){if(void 0!==this._w.analytics&&!0===this._w.analytics.invoked)return void console.error("Segment snippet included twice.");this._config.debug&&console.log("Segment initialization..."),this._w.analytics=[],this._w.analytics.invoked=!0,this._w.analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","reset","group","track","ready","alias","debug","page","once","off","on","addSourceMiddleware"],this._w.analytics.factory=t=>(...e)=>(e.unshift(t),this._w.analytics.push(e),this._w.analytics),this._w.analytics.methods.forEach(t=>{this._w.analytics[t]=this._w.analytics.factory(t)}),this._w.analytics.load=(t,e)=>{const n=this._doc.createElement("script");n.type="text/javascript",n.async=!0,n.src="https://"+this._config.segmentHost+this._config.segmentUri.replace("$API_KEY$",t);const i=this._doc.getElementsByTagName("script")[0];i.parentNode.insertBefore(n,i),this._w.analytics._loadOptions=e},this._w.analytics.SNIPPET_VERSION="4.1.0",this._config.loadOnInitialization&&this.load(this._config.apiKey)}}else console.error("The API Key cannot be an empty string if Segment must be loaded on initialization.")}load(t,e){this._w.analytics.load(t,e),this._config.debug&&console.log("Segment initialized"),this.debug(this._config.debug)}identify(t,e,n){return new Promise(i=>{this._w.analytics.identify(t,e,n,t=>i(this))})}track(t,e,n){return new Promise(i=>{this._w.analytics.track(t,e,n,t=>i(this))})}page(t,e,n,i){return new Promise(r=>{this._w.analytics.page(t,e,n,i,t=>r(this))})}group(t,e){return new Promise(n=>{this._w.analytics.group(t,e,t=>n(this))})}alias(t,e,n){return new Promise(i=>{this._w.analytics.alias(t,e,n,t=>i(this))})}ready(){return new Promise(t=>{this._w.analytics.ready(e=>t(this))})}user(){return this._w.analytics.user()}id(){return this._w.analytics.id()}traits(){return this._w.analytics.traits()}reset(){this._w.analytics.reset()}debug(t){this._w.analytics.debug(t)}on(t,e){this._w.analytics.on(t,e)}trackLink(t,e,n){this._w.analytics.trackLink(t,e,n)}trackForm(t,e,n){this._w.analytics.trackForm(t,e,n)}timeout(t){this._w.analytics.timeout(t)}addSourceMiddleware(t){this._w.analytics.addSourceMiddleware(t)}get plugins(){return this._w.analytics.plugins}}return t.\u0275fac=function(e){return new(e||t)(vi(_w),vi(uh),vi(bw))},t.\u0275prov=ot({factory:function(){return new t(vi(_w),vi(uh),vi(bw))},token:t,providedIn:"root"}),t})();function Sw(t){return function(t){return"browser"===t}(t)?window:{}}let Ew=(()=>{class t{constructor(t){if(t)throw new Error("SegmentModule is already loaded. Import it in the AppModule only")}static forRoot(e){return{ngModule:t,providers:[{provide:bw,useValue:e},Cw]}}}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)(vi(t,12))},providers:[{provide:_w,useFactory:Sw,deps:[vc]}],imports:[[Hh]]}),t})();class kw{}class Aw{}class Dw{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),i=n.toLowerCase(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,i),this.headers.has(i)?this.headers.get(i).push(r):this.headers.set(i,[r])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const i=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(i,n),this.maybeSetNormalizedName(e,i))})}: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 Dw?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 Dw;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof Dw?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 i=("a"===t.op?this.headers.get(e):void 0)||[];i.push(...n),this.headers.set(e,i);break;case"d":const r=t.value;if(r){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===r.indexOf(t)),0===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 Tw{encodeKey(t){return Rw(t)}encodeValue(t){return Rw(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function Rw(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 Fw{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new Tw,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 i=t.indexOf("="),[r,s]=-1==i?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,i)),e.decodeValue(t.slice(i+1))],o=n.get(r)||[];o.push(s),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("&")}).filter(t=>""!==t).join("&")}clone(t){const e=new Fw({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 Lw(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function Mw(t){return"undefined"!=typeof Blob&&t instanceof Blob}function $w(t){return"undefined"!=typeof FormData&&t instanceof FormData}class Ow{constructor(t,e,n,i){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)||i?(this.body=void 0!==n?n:null,r=i):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 Dw),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]),a)),t.setParams&&(l=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),l)),new Ow(e,n,r,{params:l,headers:a,reportProgress:o,responseType:i,withCredentials:s})}}var Iw=function(t){return t[t.Sent=0]="Sent",t[t.UploadProgress=1]="UploadProgress",t[t.ResponseHeader=2]="ResponseHeader",t[t.DownloadProgress=3]="DownloadProgress",t[t.Response=4]="Response",t[t.User=5]="User",t}({});class Pw{constructor(t,e=200,n="OK"){this.headers=t.headers||new Dw,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 Nw extends Pw{constructor(t={}){super(t),this.type=Iw.ResponseHeader}clone(t={}){return new Nw({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 Bw extends Pw{constructor(t={}){super(t),this.type=Iw.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new Bw({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 Uw extends Pw{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 Vw(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let Hw=(()=>{class t{constructor(t){this.handler=t}request(t,e,n={}){let i;if(t instanceof Ow)i=t;else{let r=void 0;r=n.headers instanceof Dw?n.headers:new Dw(n.headers);let s=void 0;n.params&&(s=n.params instanceof Fw?n.params:new Fw({fromObject:n.params})),i=new Ow(t,e,void 0!==n.body?n.body:null,{headers:r,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const r=cp(i).pipe(qp(t=>this.handler.handle(t)));if(t instanceof Ow||"events"===n.observe)return r;const s=r.pipe(_p(t=>t instanceof Bw));switch(n.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return s.pipe(k(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return s.pipe(k(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return s.pipe(k(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return s.pipe(k(t=>t.body))}case"response":return s;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 Fw).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,Vw(n,e))}post(t,e,n={}){return this.request("POST",t,Vw(n,e))}put(t,e,n={}){return this.request("PUT",t,Vw(n,e))}}return t.\u0275fac=function(e){return new(e||t)(vi(kw))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();class jw{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const zw=new qn("HTTP_INTERCEPTORS");let Ww=(()=>{class t{intercept(t,e){return e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();const Gw=/^\)\]\}',?\n/;class Kw{}let qw=(()=>{class t{constructor(){}build(){return new XMLHttpRequest}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),Xw=(()=>{class t{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new y(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 i=t.serializeBody();let r=null;const s=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,i=n.statusText||"OK",s=new Dw(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 Nw({headers:s,status:e,statusText:i,url:o}),r},o=()=>{let{headers:i,status:r,statusText:o,url:a}=s(),l=null;204!==r&&(l=void 0===n.response?n.responseText:n.response),0===r&&(r=l?200:0);let c=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof l){const t=l;l=l.replace(Gw,"");try{l=""!==l?JSON.parse(l):null}catch(h){l=t,c&&(c=!1,l={error:h,text:l})}}c?(e.next(new Bw({body:l,headers:i,status:r,statusText:o,url:a||void 0})),e.complete()):e.error(new Uw({error:l,headers:i,status:r,statusText:o,url:a||void 0}))},a=t=>{const{url:i}=s(),r=new Uw({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:i||void 0});e.error(r)};let l=!1;const c=i=>{l||(e.next(s()),l=!0);let r={type:Iw.DownloadProgress,loaded:i.loaded};i.lengthComputable&&(r.total=i.total),"text"===t.responseType&&n.responseText&&(r.partialText=n.responseText),e.next(r)},h=t=>{let n={type:Iw.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",a),t.reportProgress&&(n.addEventListener("progress",c),null!==i&&n.upload&&n.upload.addEventListener("progress",h)),n.send(i),e.next({type:Iw.Sent}),()=>{n.removeEventListener("error",a),n.removeEventListener("load",o),t.reportProgress&&(n.removeEventListener("progress",c),null!==i&&n.upload&&n.upload.removeEventListener("progress",h)),n.readyState!==n.DONE&&n.abort()}})}}return t.\u0275fac=function(e){return new(e||t)(vi(Kw))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})();const Yw=new qn("XSRF_COOKIE_NAME"),Jw=new qn("XSRF_HEADER_NAME");class Qw{}let Zw=(()=>{class t{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=Lh(t,this.cookieName),this.lastCookieString=t),this.lastToken}}return t.\u0275fac=function(e){return new(e||t)(vi(uh),vi(vc),vi(Yw))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),tb=(()=>{class t{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 i=this.tokenService.getToken();return null===i||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,i)})),e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(vi(Qw),vi(Jw))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),eb=(()=>{class t{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(zw,[]);this.chain=t.reduceRight((t,e)=>new jw(t,e),this.backend)}return this.chain.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(vi(Aw),vi(lo))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),nb=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:tb,useClass:Ww}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:Yw,useValue:e.cookieName}:[],e.headerName?{provide:Jw,useValue:e.headerName}:[]]}}}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:[tb,{provide:zw,useExisting:tb,multi:!0},{provide:Qw,useClass:Zw},{provide:Yw,useValue:"XSRF-TOKEN"},{provide:Jw,useValue:"X-XSRF-TOKEN"}]}),t})(),ib=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:[Hw,{provide:kw,useClass:eb},Xw,{provide:Aw,useExisting:Xw},qw,{provide:Kw,useExisting:qw}],imports:[[nb.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),t})();class rb{}let sb=(()=>{class t{constructor(t,e){this.httpClient=t,this.config=e||{host:"http://127.0.0.1:7120",timeoutMs:5e3}}addUser(t,e){let n=new Fw;return this.httpClient.post(this.config.host+"/v2/console/user",e,{params:n,headers:this.getTokenAuthHeaders(t)})}authenticate(t){let e=new Fw;return this.httpClient.post(this.config.host+"/v2/console/authenticate",t,{params:e})}banAccount(t,e){const n=`/v2/console/account/${e}/ban`;let i=new Fw;return this.httpClient.post(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}callApiEndpoint(t,e,n){const i="/v2/console/api/endpoints/"+e;let r=new Fw;return this.httpClient.post(this.config.host+i,n,{params:r,headers:this.getTokenAuthHeaders(t)})}callRpcEndpoint(t,e,n){const i="/v2/console/api/endpoints/rpc/"+e;let r=new Fw;return this.httpClient.post(this.config.host+i,n,{params:r,headers:this.getTokenAuthHeaders(t)})}deleteAccount(t,e,n){const i="/v2/console/account/"+e;let r=new Fw;return n&&(r=r.set("record_deletion",String(n))),this.httpClient.delete(this.config.host+i,{params:r,headers:this.getTokenAuthHeaders(t)})}deleteAccounts(t){let e=new Fw;return this.httpClient.delete(this.config.host+"/v2/console/account",{params:e,headers:this.getTokenAuthHeaders(t)})}deleteFriend(t,e,n){const i=`/v2/console/account/${e}/friend/${n}`;let r=new Fw;return this.httpClient.delete(this.config.host+i,{params:r,headers:this.getTokenAuthHeaders(t)})}deleteGroupUser(t,e,n){const i=`/v2/console/account/${e}/group/${n}`;let r=new Fw;return this.httpClient.delete(this.config.host+i,{params:r,headers:this.getTokenAuthHeaders(t)})}deleteLeaderboard(t,e){const n="/v2/console/leaderboard/"+e;let i=new Fw;return this.httpClient.delete(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}deleteLeaderboardRecord(t,e,n){const i=`/v2/console/leaderboard/${e}/owner/${n}`;let r=new Fw;return this.httpClient.delete(this.config.host+i,{params:r,headers:this.getTokenAuthHeaders(t)})}deleteStorage(t){let e=new Fw;return this.httpClient.delete(this.config.host+"/v2/console/storage",{params:e,headers:this.getTokenAuthHeaders(t)})}deleteStorageObject(t,e,n,i,r){const s=`/v2/console/storage/${e}/${n}/${i}`;let o=new Fw;return r&&(o=o.set("version",r)),this.httpClient.delete(this.config.host+s,{params:o,headers:this.getTokenAuthHeaders(t)})}deleteUser(t,e){let n=new Fw;return e&&(n=n.set("username",e)),this.httpClient.delete(this.config.host+"/v2/console/user",{params:n,headers:this.getTokenAuthHeaders(t)})}deleteWalletLedger(t,e,n){const i=`/v2/console/account/${e}/wallet/${n}`;let r=new Fw;return this.httpClient.delete(this.config.host+i,{params:r,headers:this.getTokenAuthHeaders(t)})}exportAccount(t,e){const n=`/v2/console/account/${e}/export`;let i=new Fw;return this.httpClient.get(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}getAccount(t,e){const n="/v2/console/account/"+e;let i=new Fw;return this.httpClient.get(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}getConfig(t){let e=new Fw;return this.httpClient.get(this.config.host+"/v2/console/config",{params:e,headers:this.getTokenAuthHeaders(t)})}getFriends(t,e){const n=`/v2/console/account/${e}/friend`;let i=new Fw;return this.httpClient.get(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}getGroups(t,e){const n=`/v2/console/account/${e}/group`;let i=new Fw;return this.httpClient.get(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}getLeaderboard(t,e){const n="/v2/console/leaderboard/"+e;let i=new Fw;return this.httpClient.get(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}getMatchState(t,e){const n=`/v2/console/match/${e}/state`;let i=new Fw;return this.httpClient.get(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}getRuntime(t){let e=new Fw;return this.httpClient.get(this.config.host+"/v2/console/runtime",{params:e,headers:this.getTokenAuthHeaders(t)})}getStatus(t){let e=new Fw;return this.httpClient.get(this.config.host+"/v2/console/status",{params:e,headers:this.getTokenAuthHeaders(t)})}getStorage(t,e,n,i){const r=`/v2/console/storage/${e}/${n}/${i}`;let s=new Fw;return this.httpClient.get(this.config.host+r,{params:s,headers:this.getTokenAuthHeaders(t)})}getWalletLedger(t,e){const n=`/v2/console/account/${e}/wallet`;let i=new Fw;return this.httpClient.get(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}listAccounts(t,e,n,i){let r=new Fw;return e&&(r=r.set("filter",e)),n&&(r=r.set("tombstones",String(n))),i&&(r=r.set("cursor",i)),this.httpClient.get(this.config.host+"/v2/console/account",{params:r,headers:this.getTokenAuthHeaders(t)})}listApiEndpoints(t){let e=new Fw;return this.httpClient.get(this.config.host+"/v2/console/api/endpoints",{params:e,headers:this.getTokenAuthHeaders(t)})}listLeaderboardRecords(t,e,n,i,r,s){const o=`/v2/console/leaderboard/${e}/records`;let a=new Fw;return n&&n.forEach(t=>a=a.append("owner_ids",String(t))),i&&(a=a.set("limit",String(i))),r&&(a=a.set("cursor",r)),s&&(a=a.set("expiry",s)),this.httpClient.get(this.config.host+o,{params:a,headers:this.getTokenAuthHeaders(t)})}listLeaderboards(t){let e=new Fw;return this.httpClient.get(this.config.host+"/v2/console/leaderboard",{params:e,headers:this.getTokenAuthHeaders(t)})}listMatches(t,e,n,i,r,s,o){let a=new Fw;return e&&(a=a.set("limit",String(e))),n&&(a=a.set("authoritative",String(n))),i&&(a=a.set("label",i)),r&&(a=a.set("min_size",String(r))),s&&(a=a.set("max_size",String(s))),o&&(a=a.set("query",o)),this.httpClient.get(this.config.host+"/v2/console/match",{params:a,headers:this.getTokenAuthHeaders(t)})}listStorage(t,e,n,i,r){let s=new Fw;return e&&(s=s.set("user_id",e)),n&&(s=s.set("key",n)),i&&(s=s.set("collection",i)),r&&(s=s.set("cursor",r)),this.httpClient.get(this.config.host+"/v2/console/storage",{params:s,headers:this.getTokenAuthHeaders(t)})}listStorageCollections(t){let e=new Fw;return this.httpClient.get(this.config.host+"/v2/console/storage/collections",{params:e,headers:this.getTokenAuthHeaders(t)})}listUsers(t){let e=new Fw;return this.httpClient.get(this.config.host+"/v2/console/user",{params:e,headers:this.getTokenAuthHeaders(t)})}unbanAccount(t,e){const n=`/v2/console/account/${e}/unban`;let i=new Fw;return this.httpClient.post(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}unlinkApple(t,e){const n=`/v2/console/account/${e}/unlink/apple`;let i=new Fw;return this.httpClient.post(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}unlinkCustom(t,e){const n=`/v2/console/account/${e}/unlink/custom`;let i=new Fw;return this.httpClient.post(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}unlinkDevice(t,e,n){const i=`/v2/console/account/${e}/unlink/device`;let r=new Fw;return this.httpClient.post(this.config.host+i,n,{params:r,headers:this.getTokenAuthHeaders(t)})}unlinkEmail(t,e){const n=`/v2/console/account/${e}/unlink/email`;let i=new Fw;return this.httpClient.post(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}unlinkFacebook(t,e){const n=`/v2/console/account/${e}/unlink/facebook`;let i=new Fw;return this.httpClient.post(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}unlinkFacebookInstantGame(t,e){const n=`/v2/console/account/${e}/unlink/facebookinstantgame`;let i=new Fw;return this.httpClient.post(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}unlinkGameCenter(t,e){const n=`/v2/console/account/${e}/unlink/gamecenter`;let i=new Fw;return this.httpClient.post(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}unlinkGoogle(t,e){const n=`/v2/console/account/${e}/unlink/google`;let i=new Fw;return this.httpClient.post(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}unlinkSteam(t,e){const n=`/v2/console/account/${e}/unlink/steam`;let i=new Fw;return this.httpClient.post(this.config.host+n,{params:i,headers:this.getTokenAuthHeaders(t)})}updateAccount(t,e,n){const i="/v2/console/account/"+e;let r=new Fw;return this.httpClient.post(this.config.host+i,n,{params:r,headers:this.getTokenAuthHeaders(t)})}writeStorageObject(t,e,n,i,r){const s=`/v2/console/storage/${e}/${n}/${i}`;let o=new Fw;return this.httpClient.put(this.config.host+s,r,{params:o,headers:this.getTokenAuthHeaders(t)})}getTokenAuthHeaders(t){return(new Dw).set("Authorization","Bearer "+t)}getBasicAuthHeaders(t,e){return(new Dw).set("Authorization","Basic "+btoa(t+":"+e))}}return t.\u0275fac=function(e){return new(e||t)(vi(Hw),vi(rb,8))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();var ob=function(t){return t[t.USER_ROLE_UNKNOWN=0]="USER_ROLE_UNKNOWN",t[t.USER_ROLE_ADMIN=1]="USER_ROLE_ADMIN",t[t.USER_ROLE_DEVELOPER=2]="USER_ROLE_DEVELOPER",t[t.USER_ROLE_MAINTAINER=3]="USER_ROLE_MAINTAINER",t[t.USER_ROLE_READONLY=4]="USER_ROLE_READONLY",t}({});const ab=new qn("window"),lb=[{provide:ab,useFactory:()=>window}],cb="currentSession";let hb=(()=>{class t{constructor(t,e,n,i){this.window=t,this.segment=e,this.http=n,this.consoleService=i;const r=JSON.parse(localStorage.getItem(cb));r&&this.segmentIdentify(r),this.currentSessionSubject=new hp(r),this.currentSession=this.currentSessionSubject.asObservable()}get currentSessionValue(){return this.currentSessionSubject.getValue()}get username(){const t=this.currentSessionSubject.getValue().token;return JSON.parse(atob(t.split(".")[1])).usn}get sessionRole(){const t=this.currentSessionSubject.getValue().token;switch(JSON.parse(atob(t.split(".")[1])).rol){case 1:return ob.USER_ROLE_ADMIN;case 2:return ob.USER_ROLE_DEVELOPER;case 3:return ob.USER_ROLE_MAINTAINER;case 4:return ob.USER_ROLE_READONLY;default:return ob.USER_ROLE_UNKNOWN}}login(t,e){return this.consoleService.authenticate({username:t,password:e}).pipe(Jp(t=>{localStorage.setItem(cb,JSON.stringify(t)),this.currentSessionSubject.next(t),this.segmentIdentify(t)}))}logout(){localStorage.removeItem(cb),this.currentSessionSubject.next(null)}segmentIdentify(t){const e=JSON.parse(atob(t.token.split(".")[1]));this.segment.identify(null,{username:e.usn,email:e.ema,cookie:e.cki})}}return t.\u0275fac=function(e){return new(e||t)(vi(ab),vi(Cw),vi(Hw),vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function ub(t,e){if(1&t&&(Fo(0,"div",17),ga(1),Lo()),2&t){const t=Ho();Yr(1),va(" ",t.error," ")}}const db=function(t){return{"was-validated":t}},fb=function(t){return{"is-invalid":t}};let pb=(()=>{class t{constructor(t,e,n,i,r){this.segment=t,this.formBuilder=e,this.route=n,this.router=i,this.authenticationService=r,this.error=""}ngOnInit(){this.segment.page("/login"),this.loginForm=this.formBuilder.group({username:["",ly.compose([ly.required])],password:["",ly.compose([ly.required,ly.minLength(8)])]}),this.returnUrl=this.route.snapshot.queryParams.next||"/"}onSubmit(){this.submitted=!0,this.error="",this.loginForm.invalid||this.authenticationService.login(this.f.username.value,this.f.password.value).subscribe(t=>{this.loginForm.reset(),this.submitted=!1,this.router.navigate([this.returnUrl])},t=>{this.error=t,this.submitted=!1})}get f(){return this.loginForm.controls}}return t.\u0275fac=function(e){return new(e||t)(Do(Cw),Do(vw),Do(lm),Do(kv),Do(hb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:26,vars:14,consts:[[1,"bg-grad","d-flex","h-100"],[1,"align-self-center","mx-auto"],[1,"text-center","mb-4"],["src","/static/svg/logo.svg","alt","Nakama Logo","width","175"],["class","alert alert-warning","role","alert",4,"ngIf"],[1,"card"],[1,"card-body"],[1,"text-center"],[3,"formGroup","ngClass","ngSubmit"],[1,"form-group","form-row"],[1,"col-sm-12"],["for","username"],["type","text","id","username","formControlName","username","required","","autofocus","",1,"form-control",3,"ngClass"],[1,"invalid-tooltip",3,"hidden"],["for","password"],["type","password","id","password","formControlName","password","required","",1,"form-control",3,"ngClass"],[1,"btn","btn-primary","btn-lg","btn-block",3,"disabled"],["role","alert",1,"alert","alert-warning"]],template:function(t,e){1&t&&(Fo(0,"div",0),Fo(1,"div",1),Fo(2,"h1",2),Mo(3,"img",3),Lo(),ko(4,ub,2,1,"div",4),Fo(5,"div",5),Fo(6,"div",6),Fo(7,"h3",7),ga(8,"Login"),Lo(),Fo(9,"form",8),Bo("ngSubmit",function(){return e.onSubmit()}),Fo(10,"div",9),Fo(11,"div",10),Fo(12,"label",11),ga(13,"Username"),Lo(),Mo(14,"input",12),Fo(15,"div",13),ga(16,"Please enter a username."),Lo(),Lo(),Lo(),Fo(17,"div",9),Fo(18,"div",10),Fo(19,"label",14),ga(20,"Password"),Lo(),Mo(21,"input",15),Fo(22,"div",13),ga(23,"Password must be at least 8 characters."),Lo(),Lo(),Lo(),Fo(24,"button",16),ga(25,"Login"),Lo(),Lo(),Lo(),Lo(),Lo(),Lo()),2&t&&(Yr(4),To("ngIf",e.error),Yr(5),To("formGroup",e.loginForm)("ngClass",Bl(8,db,e.submitted)),Yr(5),To("ngClass",Bl(10,fb,e.f.username.dirty&&e.f.username.errors)),Yr(1),To("hidden",e.f.username.disabled||e.f.username.valid||e.f.username.pristine),Yr(6),To("ngClass",Bl(12,fb,e.f.password.dirty&&e.f.password.errors)),Yr(1),To("hidden",e.f.password.disabled||e.f.password.valid||e.f.password.pristine),Yr(2),To("disabled",!e.loginForm.valid||e.submitted))},directives:[Ph,lw,Ey,uw,Mh,ny,Sy,fw,gw],styles:["div[_ngcontent-%COMP%] .mx-auto[_ngcontent-%COMP%]{width:420px}"]}),t})(),gb=(()=>{class t{constructor(t,e){this.authService=t,this.router=e}canActivate(t,e){return!this.authService.currentSessionValue||(this.router.navigate(["/"]),!1)}}return t.\u0275fac=function(e){return new(e||t)(vi(hb),vi(kv))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),mb=(()=>{class t{constructor(t,e){this.router=t,this.authenticationService=e}canActivate(t,e){return!!this.authenticationService.currentSessionValue||(this.router.navigate(["/login"],{queryParams:{next:e.url}}),!1)}canActivateChild(t,e){return this.canActivate(t,e)}}return t.\u0275fac=function(e){return new(e||t)(vi(kv),vi(hb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();class vb extends u{constructor(t,e){super()}schedule(t,e=0){return this}}class yb extends vb{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,i=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(i,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(i,this.id,e),this}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,i=void 0;try{this.work(t)}catch(r){n=!0,i=!!r&&r||new Error(r)}if(n)return this.unsubscribe(),i}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,i=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==i&&n.splice(i,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}let wb=(()=>{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 bb extends wb{constructor(t,e=wb.now){super(t,()=>bb.delegate&&bb.delegate!==this?bb.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return bb.delegate&&bb.delegate!==this?bb.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}}}const xb=new bb(yb);class _b{constructor(t,e,n,i){this.bufferTimeSpan=t,this.bufferCreationInterval=e,this.maxBufferSize=n,this.scheduler=i}call(t,e){return e.subscribe(new Sb(t,this.bufferTimeSpan,this.bufferCreationInterval,this.maxBufferSize,this.scheduler))}}class Cb{constructor(){this.buffer=[]}}class Sb extends p{constructor(t,e,n,i,r){super(t),this.bufferTimeSpan=e,this.bufferCreationInterval=n,this.maxBufferSize=i,this.scheduler=r,this.contexts=[];const s=this.openContext();if(this.timespanOnly=null==n||n<0,this.timespanOnly)this.add(s.closeAction=r.schedule(Eb,e,{subscriber:this,context:s,bufferTimeSpan:e}));else{const t={bufferTimeSpan:e,bufferCreationInterval:n,subscriber:this,scheduler:r};this.add(s.closeAction=r.schedule(Ab,e,{subscriber:this,context:s})),this.add(r.schedule(kb,n,t))}}_next(t){const e=this.contexts,n=e.length;let i;for(let r=0;r0;){const n=t.shift();e.next(n.buffer)}super._complete()}_unsubscribe(){this.contexts=null}onBufferFull(t){this.closeContext(t);const e=t.closeAction;if(e.unsubscribe(),this.remove(e),!this.closed&&this.timespanOnly){t=this.openContext();const e=this.bufferTimeSpan;this.add(t.closeAction=this.scheduler.schedule(Eb,e,{subscriber:this,context:t,bufferTimeSpan:e}))}}openContext(){const t=new Cb;return this.contexts.push(t),t}closeContext(t){this.destination.next(t.buffer);const e=this.contexts;(e?e.indexOf(t):-1)>=0&&e.splice(e.indexOf(t),1)}}function Eb(t){const e=t.subscriber,n=t.context;n&&e.closeContext(n),e.closed||(t.context=e.openContext(),t.context.closeAction=this.schedule(t,t.bufferTimeSpan))}function kb(t){const{bufferCreationInterval:e,bufferTimeSpan:n,subscriber:i,scheduler:r}=t,s=i.openContext();i.closed||(i.add(s.closeAction=r.schedule(Ab,n,{subscriber:i,context:s})),this.schedule(t,e))}function Ab(t){const{subscriber:e,context:n}=t;e.closeContext(n)}class Db{constructor(t,e){this.compare=t,this.keySelector=e}call(t,e){return e.subscribe(new Tb(t,this.compare,this.keySelector))}}class Tb extends p{constructor(t,e,n){super(t),this.keySelector=n,this.hasKey=!1,"function"==typeof e&&(this.compare=e)}compare(t,e){return t===e}_next(t){let e;try{const{keySelector:n}=this;e=n?n(t):t}catch(i){return this.destination.error(i)}let n=!1;if(this.hasKey)try{const{compare:t}=this;n=t(this.key,e)}catch(i){return this.destination.error(i)}else this.hasKey=!0;n||(this.key=e,this.destination.next(t))}}function Rb(t,e,n,r){return i(n)&&(r=n,n=void 0),r?Rb(t,e,n).pipe(k(t=>l(t)?r(...t):r(t))):new y(i=>{Fb(t,e,function(t){i.next(arguments.length>1?Array.prototype.slice.call(arguments):t)},i,n)})}function Fb(t,e,n,i,r){let s;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(t)){const i=t;t.addEventListener(e,n,r),s=()=>i.removeEventListener(e,n,r)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(t)){const i=t;t.on(e,n),s=()=>i.off(e,n)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(t)){const i=t;t.addListener(e,n),s=()=>i.removeListener(e,n)}else{if(!t||!t.length)throw new TypeError("Invalid event target");for(let s=0,o=t.length;s=0}function Mb(t=0,e,n){let i=-1;return Lb(e)?i=Number(e)<1?1:Number(e):E(e)&&(n=e),E(n)||(n=xb),new y(e=>{const r=Lb(t)?t:+t-n.now();return n.schedule($b,r,{index:0,period:i,subscriber:e})})}function $b(t){const{index:e,period:n,subscriber:i}=t;if(i.next(e),!i.closed){if(-1===n)return i.complete();t.index=e+1,this.schedule(t,n)}}function Ob(...t){if(1===t.length){if(!l(t[0]))return t[0];t=t[0]}return z(t,void 0).lift(new Ib)}class Ib{call(t,e){return e.subscribe(new Pb(t))}}class Pb extends up{constructor(t){super(t),this.hasFirst=!1,this.observables=[],this.subscriptions=[]}_next(t){this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{for(let n=0;nthis.index}hasCompleted(){return this.array.length===this.index}}class jb extends N{constructor(t,e,n){super(t),this.parent=e,this.observable=n,this.stillUnsubscribed=!0,this.buffer=[],this.isComplete=!1}[F](){return this}next(){const t=this.buffer;return 0===t.length&&this.isComplete?{value:null,done:!0}:{value:t.shift(),done:!1}}hasValue(){return this.buffer.length>0}hasCompleted(){return 0===this.buffer.length&&this.isComplete}notifyComplete(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()}notifyNext(t){this.buffer.push(t),this.parent.checkIterators()}subscribe(){return B(this.observable,new P(this))}}function zb(t){return e=>e.lift(new Wb(t))}class Wb{constructor(t){this.notifier=t}call(t,e){const n=new Gb(t),i=B(this.notifier,new P(n));return i&&!n.seenValue?(n.add(i),e.subscribe(n)):n}}class Gb extends N{constructor(t){super(t),this.seenValue=!1}notifyNext(){this.seenValue=!0,this.complete()}notifyComplete(){}}function Kb(...t){return e=>{let n;return"function"==typeof t[t.length-1]&&(n=t.pop()),e.lift(new qb(t,n))}}class qb{constructor(t,e){this.observables=t,this.project=e}call(t,e){return e.subscribe(new Xb(t,this.observables,this.project))}}class Xb extends up{constructor(t,e,n){super(t),this.observables=e,this.project=n,this.toRespond=[];const i=e.length;this.values=new Array(i);for(let r=0;r0){const t=i.indexOf(n);-1!==t&&i.splice(t,1)}}notifyComplete(){}_next(t){if(0===this.toRespond.length){const e=[t,...this.values];this.project?this._tryProject(e):this.destination.next(e)}}_tryProject(t){let e;try{e=this.project.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function Yb(t,e){return new y(e?n=>e.schedule(Jb,0,{error:t,subscriber:n}):e=>e.error(t))}function Jb({error:t,subscriber:e}){e.error(t)}let Qb=(()=>{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 cp(this.value);case"E":return Yb(this.error);case"C":return wp()}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})();function Zb(t,e=xb){var n;const i=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new tx(i,e))}class tx{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new ex(t,this.delay,this.scheduler))}}class ex extends p{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,i=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-i.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(ex.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new nx(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Qb.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Qb.createComplete()),this.unsubscribe()}}class nx{constructor(t,e){this.time=t,this.notification=e}}function ix(t,e){if(1&t){const t=Io();Fo(0,"button",1),Bo("click",function(){return Le(t),Ho().close()}),Fo(1,"span",2),ga(2,"\xd7"),Lo(),Lo()}}const rx=["*"],sx=["dialog"];function ox(t){return null!=t}"undefined"==typeof Element||Element.prototype.closest||(Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector),Element.prototype.closest=function(t){let e=this;if(!document.documentElement.contains(e))return null;do{if(e.matches(t))return e;e=e.parentElement||e.parentNode}while(null!==e&&1===e.nodeType);return null});const ax={animation:!0,transitionTimerDelayMs:5};let lx=(()=>{class t{constructor(){this.animation=ax.animation}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({factory:function(){return new t},token:t,providedIn:"root"}),t})();const cx=()=>{},{transitionTimerDelayMs:hx}=ax,ux=new Map,dx=(t,e,n)=>{let i=n.context||{};const r=ux.get(t);if(r)switch(n.runningTransition){case"continue":return yp;case"stop":r.transition$.complete(),i=Object.assign(r.context,i),ux.delete(t)}!function(t){t||document}(t);const s=e(t,i)||cx;if(!n.animation||"none"===window.getComputedStyle(t).transitionProperty)return s(),cp(void 0);const o=new C,a=o.pipe(function(...t){return e=>Hp(e,cp(...t))}(!0));ux.set(t,{transition$:o,context:i});const l=function(t){const{transitionDelay:e,transitionDuration:n}=window.getComputedStyle(t);return 1e3*(parseFloat(e)+parseFloat(n))}(t),c=Rb(t,"transitionend").pipe(zb(a),_p(({target:e})=>e===t));return Ob(Mb(l+hx).pipe(zb(a)),c).pipe(zb(a)).subscribe(()=>{ux.delete(t),s(),o.next(),o.complete()}),o.asObservable()};let fx=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})(),px=(()=>{class t{constructor(t){this.dismissible=!0,this.type="warning",this.animation=t.animation}}return t.\u0275fac=function(e){return new(e||t)(vi(lx))},t.\u0275prov=ot({factory:function(){return new t(vi(lx))},token:t,providedIn:"root"}),t})();const gx=({classList:t})=>{t.remove("show")};let mx=(()=>{class t{constructor(t,e,n){this._renderer=e,this._element=n,this.closed=new jl,this.dismissible=t.dismissible,this.type=t.type,this.animation=t.animation}close(){const t=dx(this._element.nativeElement,gx,{animation:this.animation,runningTransition:"continue"});return t.subscribe(()=>this.closed.emit()),t}ngOnChanges(t){const e=t.type;e&&!e.firstChange&&(this._renderer.removeClass(this._element.nativeElement,"alert-"+e.previousValue),this._renderer.addClass(this._element.nativeElement,"alert-"+e.currentValue))}ngOnInit(){this._renderer.addClass(this._element.nativeElement,"alert-"+this.type)}}return t.\u0275fac=function(e){return new(e||t)(Do(px),Do(za),Do(Ha))},t.\u0275cmp=Pt({type:t,selectors:[["ngb-alert"]],hostAttrs:["role","alert",1,"alert","show"],hostVars:4,hostBindings:function(t,e){2&t&&na("fade",e.animation)("alert-dismissible",e.dismissible)},inputs:{dismissible:"dismissible",type:"type",animation:"animation"},outputs:{closed:"closed"},exportAs:["ngbAlert"],features:[oe],ngContentSelectors:rx,decls:2,vars:1,consts:function(){let t,e;return t=$localize`:@@ngb.alert.close␟f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8␟7819314041543176992:Close`,e=$localize`:@@ngb.alert.close␟f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8␟7819314041543176992:Close`,[["type","button","class","close","aria-label",t,3,"click",4,"ngIf"],["type","button","aria-label",e,1,"close",3,"click"],["aria-hidden","true"]]},template:function(t,e){1&t&&(zo(),Wo(0),ko(1,ix,3,0,"button",0)),2&t&&(Yr(1),To("ngIf",e.dismissible))},directives:[Ph],styles:["ngb-alert{display:block}"],encapsulation:2,changeDetection:0}),t})(),vx=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})(),yx=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=jt({type:t,selectors:[["","ngbButtonLabel",""]],hostVars:8,hostBindings:function(t,e){2&t&&na("btn",!0)("active",e.active)("disabled",e.disabled)("focus",e.focused)}}),t})(),wx=0,bx=(()=>{class t{constructor(){this._radios=new Set,this._value=null,this.name="ngb-radio-"+wx++,this.onChange=t=>{},this.onTouched=()=>{}}get disabled(){return this._disabled}set disabled(t){this.setDisabledState(t)}onRadioChange(t){this.writeValue(t.value),this.onChange(t.value)}onRadioValueUpdate(){this._updateRadiosValue()}register(t){this._radios.add(t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._disabled=t,this._updateRadiosDisabled()}unregister(t){this._radios.delete(t)}writeValue(t){this._value=t,this._updateRadiosValue()}_updateRadiosValue(){this._radios.forEach(t=>t.updateValue(this._value))}_updateRadiosDisabled(){this._radios.forEach(t=>t.updateDisabled())}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=jt({type:t,selectors:[["","ngbRadioGroup",""]],hostAttrs:["role","radiogroup"],inputs:{name:"name"},features:[Oa([{provide:Jv,useExisting:it(()=>t),multi:!0}])]}),t})(),xx=(()=>{class t{constructor(t,e,n,i,r){this._group=t,this._label=e,this._renderer=n,this._element=i,this._cd=r,this._value=null,this._group.register(this),this.updateDisabled()}set value(t){this._value=t;const e=t?t.toString():"";this._renderer.setProperty(this._element.nativeElement,"value",e),this._group.onRadioValueUpdate()}set disabled(t){this._disabled=!1!==t,this.updateDisabled()}set focused(t){this._label&&(this._label.focused=t),t||this._group.onTouched()}get checked(){return this._checked}get disabled(){return this._group.disabled||this._disabled}get value(){return this._value}get nameAttr(){return this.name||this._group.name}ngOnDestroy(){this._group.unregister(this)}onChange(){this._group.onRadioChange(this)}updateValue(t){this.value!==t&&this._cd.markForCheck(),this._checked=this.value===t,this._label.active=this._checked}updateDisabled(){this._label.disabled=this.disabled}}return t.\u0275fac=function(e){return new(e||t)(Do(bx),Do(yx),Do(za),Do(Ha),Do(ul))},t.\u0275dir=jt({type:t,selectors:[["","ngbButton","","type","radio"]],hostVars:3,hostBindings:function(t,e){1&t&&Bo("change",function(){return e.onChange()})("focus",function(){return e.focused=!0})("blur",function(){return e.focused=!1}),2&t&&wa("checked",e.checked)("disabled",e.disabled)("name",e.nameAttr)},inputs:{value:"value",disabled:"disabled",name:"name"}}),t})(),_x=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)}}),t})(),Cx=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})(),Sx=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)}}),t})();var Ex=function(t){return t[t.Tab=9]="Tab",t[t.Enter=13]="Enter",t[t.Escape=27]="Escape",t[t.Space=32]="Space",t[t.PageUp=33]="PageUp",t[t.PageDown=34]="PageDown",t[t.End=35]="End",t[t.Home=36]="Home",t[t.ArrowLeft=37]="ArrowLeft",t[t.ArrowUp=38]="ArrowUp",t[t.ArrowRight=39]="ArrowRight",t[t.ArrowDown=40]="ArrowDown",t}({});const kx=(t,e)=>!!e&&e.some(e=>e.contains(t)),Ax=(t,e)=>!e||null!=function(t,e){return e?void 0===t.closest?null:t.closest(e):null}(t,e),Dx="undefined"!=typeof navigator&&!!navigator.userAgent&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||/Macintosh/.test(navigator.userAgent)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>2||/Android/.test(navigator.userAgent));const Tx=["a[href]","button:not([disabled])",'input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","[contenteditable]",'[tabindex]:not([tabindex="-1"])'].join(", ");function Rx(t){const e=Array.from(t.querySelectorAll(Tx)).filter(t=>-1!==t.tabIndex);return[e[0],e[e.length-1]]}const Fx=/\s+/,Lx=new class{getAllStyles(t){return window.getComputedStyle(t)}getStyle(t,e){return this.getAllStyles(t)[e]}isStaticPositioned(t){return"static"===(this.getStyle(t,"position")||"static")}offsetParent(t){let e=t.offsetParent||document.documentElement;for(;e&&e!==document.documentElement&&this.isStaticPositioned(e);)e=e.offsetParent;return e||document.documentElement}position(t,e=!0){let n,i={width:0,height:0,top:0,bottom:0,left:0,right:0};if("fixed"===this.getStyle(t,"position"))n=t.getBoundingClientRect(),n={top:n.top,bottom:n.bottom,left:n.left,right:n.right,height:n.height,width:n.width};else{const e=this.offsetParent(t);n=this.offset(t,!1),e!==document.documentElement&&(i=this.offset(e,!1)),i.top+=e.clientTop,i.left+=e.clientLeft}return n.top-=i.top,n.bottom-=i.top,n.left-=i.left,n.right-=i.left,e&&(n.top=Math.round(n.top),n.bottom=Math.round(n.bottom),n.left=Math.round(n.left),n.right=Math.round(n.right)),n}offset(t,e=!0){const n=t.getBoundingClientRect(),i=window.pageYOffset-document.documentElement.clientTop,r=window.pageXOffset-document.documentElement.clientLeft;let s={height:n.height||t.offsetHeight,width:n.width||t.offsetWidth,top:n.top+i,bottom:n.bottom+i,left:n.left+r,right:n.right+r};return e&&(s.height=Math.round(s.height),s.width=Math.round(s.width),s.top=Math.round(s.top),s.bottom=Math.round(s.bottom),s.left=Math.round(s.left),s.right=Math.round(s.right)),s}positionElements(t,e,n,i){const[r="top",s="center"]=n.split("-"),o=i?this.offset(t,!1):this.position(t,!1),a=this.getAllStyles(e),l=parseFloat(a.marginTop),c=parseFloat(a.marginBottom),h=parseFloat(a.marginLeft),u=parseFloat(a.marginRight);let d=0,f=0;switch(r){case"top":d=o.top-(e.offsetHeight+l+c);break;case"bottom":d=o.top+o.height;break;case"left":f=o.left-(e.offsetWidth+h+u);break;case"right":f=o.left+o.width}switch(s){case"top":d=o.top;break;case"bottom":d=o.top+o.height-e.offsetHeight;break;case"left":f=o.left;break;case"right":f=o.left+o.width-e.offsetWidth;break;case"center":"top"===r||"bottom"===r?f=o.left+o.width/2-e.offsetWidth/2:d=o.top+o.height/2-e.offsetHeight/2}e.style.transform=`translate(${Math.round(f)}px, ${Math.round(d)}px)`;const p=e.getBoundingClientRect(),g=document.documentElement,m=window.innerHeight||g.clientHeight,v=window.innerWidth||g.clientWidth;return p.left>=0&&p.top>=0&&p.right<=v&&p.bottom<=m}};new Date(1882,10,12),new Date(2174,10,25);let Mx=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh,yw]]}),t})(),$x=(()=>{class t{constructor(){this.autoClose=!0,this.placement=["bottom-left","bottom-right","top-left","top-right"]}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({factory:function(){return new t},token:t,providedIn:"root"}),t})(),Ox=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=jt({type:t,selectors:[["",8,"navbar"]]}),t})(),Ix=(()=>{class t{constructor(t){this.elementRef=t,this._disabled=!1}set disabled(t){this._disabled=""===t||!0===t}get disabled(){return this._disabled}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["","ngbDropdownItem",""]],hostAttrs:[1,"dropdown-item"],hostVars:2,hostBindings:function(t,e){2&t&&na("disabled",e.disabled)},inputs:{disabled:"disabled"}}),t})(),Px=(()=>{class t{constructor(t,e){this.dropdown=t,this.placement="bottom",this.isOpen=!1,this.nativeElement=e.nativeElement}}return t.\u0275fac=function(e){return new(e||t)(Do(it(()=>Ux)),Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["","ngbDropdownMenu",""]],contentQueries:function(t,e,n){if(1&t&&sc(n,Ix,!1),2&t){let t;ec(t=oc())&&(e.menuItems=t)}},hostVars:5,hostBindings:function(t,e){1&t&&Bo("keydown.ArrowUp",function(t){return e.dropdown.onKeyDown(t)})("keydown.ArrowDown",function(t){return e.dropdown.onKeyDown(t)})("keydown.Home",function(t){return e.dropdown.onKeyDown(t)})("keydown.End",function(t){return e.dropdown.onKeyDown(t)})("keydown.Enter",function(t){return e.dropdown.onKeyDown(t)})("keydown.Space",function(t){return e.dropdown.onKeyDown(t)})("keydown.Tab",function(t){return e.dropdown.onKeyDown(t)})("keydown.Shift.Tab",function(t){return e.dropdown.onKeyDown(t)}),2&t&&(So("x-placement",e.placement),na("dropdown-menu",!0)("show",e.dropdown.isOpen()))}}),t})(),Nx=(()=>{class t{constructor(t,e){this.dropdown=t,this.nativeElement=e.nativeElement}}return t.\u0275fac=function(e){return new(e||t)(Do(it(()=>Ux)),Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["","ngbDropdownAnchor",""]],hostAttrs:[1,"dropdown-toggle"],hostVars:1,hostBindings:function(t,e){2&t&&So("aria-expanded",e.dropdown.isOpen())}}),t})(),Bx=(()=>{class t extends Nx{constructor(t,e){super(t,e)}}return t.\u0275fac=function(e){return new(e||t)(Do(it(()=>Ux)),Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["","ngbDropdownToggle",""]],hostAttrs:[1,"dropdown-toggle"],hostVars:1,hostBindings:function(t,e){1&t&&Bo("click",function(){return e.dropdown.toggle()})("keydown.ArrowUp",function(t){return e.dropdown.onKeyDown(t)})("keydown.ArrowDown",function(t){return e.dropdown.onKeyDown(t)})("keydown.Home",function(t){return e.dropdown.onKeyDown(t)})("keydown.End",function(t){return e.dropdown.onKeyDown(t)})("keydown.Tab",function(t){return e.dropdown.onKeyDown(t)})("keydown.Shift.Tab",function(t){return e.dropdown.onKeyDown(t)}),2&t&&So("aria-expanded",e.dropdown.isOpen())},features:[Oa([{provide:Nx,useExisting:it(()=>t)}]),ho]}),t})(),Ux=(()=>{class t{constructor(t,e,n,i,r,s,o){this._changeDetector=t,this._document=n,this._ngZone=i,this._elementRef=r,this._renderer=s,this._closed$=new C,this._bodyContainer=null,this._open=!1,this.openChange=new jl,this.placement=e.placement,this.container=e.container,this.autoClose=e.autoClose,this.display=o?"static":"dynamic",this._zoneSubscription=i.onStable.subscribe(()=>{this._positionMenu()})}ngAfterContentInit(){this._ngZone.onStable.pipe(Bp(1)).subscribe(()=>{this._applyPlacementClasses(),this._open&&this._setCloseHandlers()})}ngOnChanges(t){t.container&&this._open&&this._applyContainer(this.container),t.placement&&!t.placement.isFirstChange&&this._applyPlacementClasses()}isOpen(){return this._open}open(){this._open||(this._open=!0,this._applyContainer(this.container),this.openChange.emit(!0),this._setCloseHandlers(),this._anchor&&this._anchor.nativeElement.focus())}_setCloseHandlers(){!function(t,e,n,i,r,s,o,a){var l;n&&t.runOutsideAngular((l=()=>{const l=Rb(e,"keydown").pipe(zb(r),_p(t=>t.which===Ex.Escape),Jp(t=>t.preventDefault())),c=Rb(e,"mousedown").pipe(k(t=>{const e=t.target;return 2!==t.button&&!kx(e,o)&&("inside"===n?kx(e,s)&&Ax(e,a):"outside"===n?!kx(e,s):Ax(e,a)||!kx(e,s))}),zb(r)),h=Rb(e,"mouseup").pipe(Kb(c),_p(([t,e])=>e),Zb(0),zb(r));Ob([l.pipe(k(t=>0)),h.pipe(k(t=>1))]).subscribe(e=>t.run(()=>i(e)))},Dx?()=>setTimeout(()=>l(),100):l))}(this._ngZone,this._document,this.autoClose,t=>{this.close(),0===t&&this._anchor.nativeElement.focus()},this._closed$,this._menu?[this._menu.nativeElement]:[],this._anchor?[this._anchor.nativeElement]:[],".dropdown-item,.dropdown-divider")}close(){this._open&&(this._open=!1,this._resetContainer(),this._closed$.next(),this.openChange.emit(!1),this._changeDetector.markForCheck())}toggle(){this.isOpen()?this.close():this.open()}ngOnDestroy(){this._resetContainer(),this._closed$.next(),this._zoneSubscription.unsubscribe()}onKeyDown(t){const e=t.which,n=this._getMenuElements();let i=-1,r=null;const s=this._isEventFromToggle(t);if(!s&&n.length&&n.forEach((e,n)=>{e.contains(t.target)&&(r=e),e===this._document.activeElement&&(i=n)}),e!==Ex.Space&&e!==Ex.Enter){if(e!==Ex.Tab){if(s||r){if(this.open(),n.length){switch(e){case Ex.ArrowDown:i=Math.min(i+1,n.length-1);break;case Ex.ArrowUp:if(this._isDropup()&&-1===i){i=n.length-1;break}i=Math.max(i-1,0);break;case Ex.Home:i=0;break;case Ex.End:i=n.length-1}n[i].focus()}t.preventDefault()}}else if(t.target&&this.isOpen()&&this.autoClose){if(this._anchor.nativeElement===t.target)return void("body"!==this.container||t.shiftKey?t.shiftKey&&this.close():(this._renderer.setAttribute(this._menu.nativeElement,"tabindex","0"),this._menu.nativeElement.focus(),this._renderer.removeAttribute(this._menu.nativeElement,"tabindex")));if("body"===this.container){const e=this._menu.nativeElement.querySelectorAll(Tx);t.shiftKey&&t.target===e[0]?(this._anchor.nativeElement.focus(),t.preventDefault()):t.shiftKey||t.target!==e[e.length-1]||(this._anchor.nativeElement.focus(),this.close())}else Rb(t.target,"focusout").pipe(Bp(1)).subscribe(({relatedTarget:t})=>{this._elementRef.nativeElement.contains(t)||this.close()})}}else!r||!0!==this.autoClose&&"inside"!==this.autoClose||Rb(r,"click").pipe(Bp(1)).subscribe(()=>this.close())}_isDropup(){return this._elementRef.nativeElement.classList.contains("dropup")}_isEventFromToggle(t){return this._anchor.nativeElement.contains(t.target)}_getMenuElements(){const t=this._menu;return null==t?[]:t.menuItems.filter(t=>!t.disabled).map(t=>t.elementRef.nativeElement)}_positionMenu(){const t=this._menu;this.isOpen()&&t&&this._applyPlacementClasses("dynamic"===this.display?function(t,e,n,i,r){let s=Array.isArray(n)?n:n.split(Fx);const o=["top","bottom","left","right","top-left","top-right","bottom-left","bottom-right","left-top","left-bottom","right-top","right-bottom"],a=t=>{const[e,n]=t.split("-"),i=[];return i};let l=s.findIndex(t=>"auto"===t);l>=0&&o.forEach(function(t){null==s.find(e=>-1!==e.search("^"+t))&&s.splice(l++,1,t)});const c=e.style;c.position="absolute",c.top="0",c.left="0",c["will-change"]="transform";let h=null,u=!1;for(h of s){a(h);if(Lx.positionElements(t,e,h,i)){u=!0;break}}return u||(h=s[0],a(h),Lx.positionElements(t,e,h,i)),h}(this._anchor.nativeElement,this._bodyContainer||this._menu.nativeElement,this.placement,"body"===this.container):this._getFirstPlacement(this.placement))}_getFirstPlacement(t){return Array.isArray(t)?t[0]:t.split(" ")[0]}_resetContainer(){const t=this._renderer;if(this._menu){const e=this._menu.nativeElement;t.appendChild(this._elementRef.nativeElement,e),t.removeStyle(e,"position"),t.removeStyle(e,"transform")}this._bodyContainer&&(t.removeChild(this._document.body,this._bodyContainer),this._bodyContainer=null)}_applyContainer(t=null){if(this._resetContainer(),"body"===t){const t=this._renderer,e=this._menu.nativeElement,n=this._bodyContainer=this._bodyContainer||t.createElement("div");t.setStyle(n,"position","absolute"),t.setStyle(e,"position","static"),t.setStyle(n,"z-index","1050"),t.appendChild(n,e),t.appendChild(this._document.body,n)}}_applyPlacementClasses(t){const e=this._menu;if(e){t||(t=this._getFirstPlacement(this.placement));const n=this._renderer,i=this._elementRef.nativeElement;n.removeClass(i,"dropup"),n.removeClass(i,"dropdown"),e.placement="static"===this.display?null:t;const r=-1!==t.search("^top")?"dropup":"dropdown";n.addClass(i,r);const s=this._bodyContainer;s&&(n.removeClass(s,"dropup"),n.removeClass(s,"dropdown"),n.addClass(s,r))}}}return t.\u0275fac=function(e){return new(e||t)(Do(ul),Do($x),Do(uh),Do(Lc),Do(Ha),Do(za),Do(Ox,8))},t.\u0275dir=jt({type:t,selectors:[["","ngbDropdown",""]],contentQueries:function(t,e,n){if(1&t&&(sc(n,Px,!0),sc(n,Nx,!0)),2&t){let t;ec(t=oc())&&(e._menu=t.first),ec(t=oc())&&(e._anchor=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&na("show",e.isOpen())},inputs:{_open:["open","_open"],placement:"placement",container:"container",autoClose:"autoClose",display:"display"},outputs:{openChange:"openChange"},exportAs:["ngbDropdown"],features:[oe]}),t})(),Vx=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)}}),t})(),Hx=(()=>{class t{constructor(t){this.backdrop=!0,this.keyboard=!0,this.animation=t.animation}}return t.\u0275fac=function(e){return new(e||t)(vi(lx))},t.\u0275prov=ot({factory:function(){return new t(vi(lx))},token:t,providedIn:"root"}),t})();class jx{constructor(t,e,n){this.nodes=t,this.viewRef=e,this.componentRef=n}}const zx=()=>{};let Wx=(()=>{class t{constructor(t){this._document=t}compensate(){const t=this._getWidth();return this._isPresent(t)?this._adjustBody(t):zx}_adjustBody(t){const e=this._document.body,n=e.style.paddingRight,i=parseFloat(window.getComputedStyle(e)["padding-right"]);return e.style["padding-right"]=i+t+"px",()=>e.style["padding-right"]=n}_isPresent(t){const e=this._document.body.getBoundingClientRect();return window.innerWidth-(e.left+e.right)>=t-.1*t}_getWidth(){const t=this._document.createElement("div");t.className="modal-scrollbar-measure";const e=this._document.body;e.appendChild(t);const n=t.getBoundingClientRect().width-t.clientWidth;return e.removeChild(t),n}}return t.\u0275fac=function(e){return new(e||t)(vi(uh))},t.\u0275prov=ot({factory:function(){return new t(vi(uh))},token:t,providedIn:"root"}),t})(),Gx=(()=>{class t{constructor(t,e){this._el=t,this._zone=e}ngOnInit(){this._zone.onStable.asObservable().pipe(Bp(1)).subscribe(()=>{dx(this._el.nativeElement,({classList:t})=>t.add("show"),{animation:this.animation,runningTransition:"continue"})})}hide(){return dx(this._el.nativeElement,({classList:t})=>t.remove("show"),{animation:this.animation,runningTransition:"stop"})}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha),Do(Lc))},t.\u0275cmp=Pt({type:t,selectors:[["ngb-modal-backdrop"]],hostAttrs:[2,"z-index","1050"],hostVars:6,hostBindings:function(t,e){2&t&&(ia("modal-backdrop"+(e.backdropClass?" "+e.backdropClass:"")),na("show",!e.animation)("fade",e.animation))},inputs:{animation:"animation",backdropClass:"backdropClass"},decls:0,vars:0,template:function(t,e){},encapsulation:2}),t})();class Kx{close(t){}dismiss(t){}}class qx{constructor(t,e,n,i){this._windowCmptRef=t,this._contentRef=e,this._backdropCmptRef=n,this._beforeDismiss=i,this._closed=new C,this._dismissed=new C,this._hidden=new C,t.instance.dismissEvent.subscribe(t=>{this.dismiss(t)}),this.result=new Promise((t,e)=>{this._resolve=t,this._reject=e}),this.result.then(null,()=>{})}get componentInstance(){if(this._contentRef&&this._contentRef.componentRef)return this._contentRef.componentRef.instance}get closed(){return this._closed.asObservable().pipe(zb(this._hidden))}get dismissed(){return this._dismissed.asObservable().pipe(zb(this._hidden))}get hidden(){return this._hidden.asObservable()}get shown(){return this._windowCmptRef.instance.shown.asObservable()}close(t){this._windowCmptRef&&(this._closed.next(t),this._resolve(t),this._removeModalElements())}_dismiss(t){this._dismissed.next(t),this._reject(t),this._removeModalElements()}dismiss(t){if(this._windowCmptRef)if(this._beforeDismiss){const e=this._beforeDismiss();e&&e.then?e.then(e=>{!1!==e&&this._dismiss(t)},()=>{}):!1!==e&&this._dismiss(t)}else this._dismiss(t)}_removeModalElements(){const t=this._windowCmptRef.instance.hide(),e=this._backdropCmptRef?this._backdropCmptRef.instance.hide():cp(void 0);t.subscribe(()=>{const{nativeElement:t}=this._windowCmptRef.location;t.parentNode.removeChild(t),this._windowCmptRef.destroy(),this._contentRef&&this._contentRef.viewRef&&this._contentRef.viewRef.destroy(),this._windowCmptRef=null,this._contentRef=null}),e.subscribe(()=>{if(this._backdropCmptRef){const{nativeElement:t}=this._backdropCmptRef.location;t.parentNode.removeChild(t),this._backdropCmptRef.destroy(),this._backdropCmptRef=null}}),Nb(t,e).subscribe(()=>{this._hidden.next(),this._hidden.complete()})}}var Xx=function(t){return t[t.BACKDROP_CLICK=0]="BACKDROP_CLICK",t[t.ESC=1]="ESC",t}({});let Yx=(()=>{class t{constructor(t,e,n){this._document=t,this._elRef=e,this._zone=n,this._closed$=new C,this._elWithFocus=null,this.backdrop=!0,this.keyboard=!0,this.dismissEvent=new jl,this.shown=new C,this.hidden=new C}dismiss(t){this.dismissEvent.emit(t)}ngOnInit(){this._elWithFocus=this._document.activeElement}ngAfterViewInit(){this._show()}ngOnDestroy(){this._disableEventHandling()}hide(){const{nativeElement:t}=this._elRef,e={animation:this.animation,runningTransition:"stop"},n=Nb(dx(t,()=>t.classList.remove("show"),e),dx(this._dialogEl.nativeElement,()=>{},e));return n.subscribe(()=>{this.hidden.next(),this.hidden.complete()}),this._disableEventHandling(),this._restoreFocus(),n}_show(){const{nativeElement:t}=this._elRef,e={animation:this.animation,runningTransition:"continue"};Nb(dx(t,()=>t.classList.add("show"),e),dx(this._dialogEl.nativeElement,()=>{},e)).subscribe(()=>{this.shown.next(),this.shown.complete()}),this._enableEventHandling(),this._setFocus()}_enableEventHandling(){const{nativeElement:t}=this._elRef;this._zone.runOutsideAngular(()=>{Rb(t,"keydown").pipe(zb(this._closed$),_p(t=>t.which===Ex.Escape)).subscribe(t=>{this.keyboard?requestAnimationFrame(()=>{t.defaultPrevented||this._zone.run(()=>this.dismiss(Xx.ESC))}):"static"===this.backdrop&&this._bumpBackdrop()});let e=!1;Rb(this._dialogEl.nativeElement,"mousedown").pipe(zb(this._closed$),Jp(()=>e=!1),Ip(()=>Rb(t,"mouseup").pipe(zb(this._closed$),Bp(1))),_p(({target:e})=>t===e)).subscribe(()=>{e=!0}),Rb(t,"click").pipe(zb(this._closed$)).subscribe(({target:n})=>{t===n&&("static"===this.backdrop?this._bumpBackdrop():!0!==this.backdrop||e||this._zone.run(()=>this.dismiss(Xx.BACKDROP_CLICK))),e=!1})})}_disableEventHandling(){this._closed$.next()}_setFocus(){const{nativeElement:t}=this._elRef;if(!t.contains(document.activeElement)){const e=t.querySelector("[ngbAutofocus]"),n=Rx(t)[0];(e||n||t).focus()}}_restoreFocus(){const t=this._document.body,e=this._elWithFocus;let n;n=e&&e.focus&&t.contains(e)?e:t,this._zone.runOutsideAngular(()=>{setTimeout(()=>n.focus()),this._elWithFocus=null})}_bumpBackdrop(){"static"===this.backdrop&&dx(this._elRef.nativeElement,({classList:t})=>(t.add("modal-static"),()=>t.remove("modal-static")),{animation:this.animation,runningTransition:"continue"})}}return t.\u0275fac=function(e){return new(e||t)(Do(uh),Do(Ha),Do(Lc))},t.\u0275cmp=Pt({type:t,selectors:[["ngb-modal-window"]],viewQuery:function(t,e){if(1&t&&nc(sx,!0),2&t){let t;ec(t=oc())&&(e._dialogEl=t.first)}},hostAttrs:["role","dialog","tabindex","-1"],hostVars:7,hostBindings:function(t,e){2&t&&(So("aria-modal",!0)("aria-labelledby",e.ariaLabelledBy)("aria-describedby",e.ariaDescribedBy),ia("modal d-block"+(e.windowClass?" "+e.windowClass:"")),na("fade",e.animation))},inputs:{backdrop:"backdrop",keyboard:"keyboard",animation:"animation",ariaLabelledBy:"ariaLabelledBy",ariaDescribedBy:"ariaDescribedBy",centered:"centered",scrollable:"scrollable",size:"size",windowClass:"windowClass"},outputs:{dismissEvent:"dismiss"},ngContentSelectors:rx,decls:4,vars:2,consts:[["role","document"],["dialog",""],[1,"modal-content"]],template:function(t,e){1&t&&(zo(),Fo(0,"div",0,1),Fo(2,"div",2),Wo(3),Lo(),Lo()),2&t&&ia("modal-dialog"+(e.size?" modal-"+e.size:"")+(e.centered?" modal-dialog-centered":"")+(e.scrollable?" modal-dialog-scrollable":""))},styles:["ngb-modal-window .component-host-scrollable{-ms-flex-direction:column;display:-ms-flexbox;display:flex;flex-direction:column;overflow:hidden}"],encapsulation:2}),t})(),Jx=(()=>{class t{constructor(t,e,n,i,r,s){this._applicationRef=t,this._injector=e,this._document=n,this._scrollBar=i,this._rendererFactory=r,this._ngZone=s,this._activeWindowCmptHasChanged=new C,this._ariaHiddenValues=new Map,this._backdropAttributes=["animation","backdropClass"],this._modalRefs=[],this._windowAttributes=["animation","ariaLabelledBy","ariaDescribedBy","backdrop","centered","keyboard","scrollable","size","windowClass"],this._windowCmpts=[],this._activeInstances=new jl,this._activeWindowCmptHasChanged.subscribe(()=>{if(this._windowCmpts.length){const t=this._windowCmpts[this._windowCmpts.length-1];((t,e,n,i=!1)=>{this._ngZone.runOutsideAngular(()=>{const t=Rb(e,"focusin").pipe(zb(n),k(t=>t.target));Rb(e,"keydown").pipe(zb(n),_p(t=>t.which===Ex.Tab),Kb(t)).subscribe(([t,n])=>{const[i,r]=Rx(e);n!==i&&n!==e||!t.shiftKey||(r.focus(),t.preventDefault()),n!==r||t.shiftKey||(i.focus(),t.preventDefault())}),i&&Rb(e,"click").pipe(zb(n),Kb(t),k(t=>t[1])).subscribe(t=>t.focus())})})(0,t.location.nativeElement,this._activeWindowCmptHasChanged),this._revertAriaHidden(),this._setAriaHidden(t.location.nativeElement)}})}open(t,e,n,i){const r=i.container instanceof HTMLElement?i.container:ox(i.container)?this._document.querySelector(i.container):this._document.body,s=this._rendererFactory.createRenderer(null,null),o=this._scrollBar.compensate(),a=()=>{this._modalRefs.length||(s.removeClass(this._document.body,"modal-open"),this._revertAriaHidden())};if(!r)throw new Error(`The specified modal container "${i.container||"body"}" was not found in the DOM.`);const l=new Kx,c=this._getContentRef(t,i.injector||e,n,l,i);let h=!1!==i.backdrop?this._attachBackdrop(t,r):void 0,u=this._attachWindowComponent(t,r,c),d=new qx(u,c,h,i.beforeDismiss);return this._registerModalRef(d),this._registerWindowCmpt(u),d.result.then(o,o),d.result.then(a,a),l.close=t=>{d.close(t)},l.dismiss=t=>{d.dismiss(t)},this._applyWindowOptions(u.instance,i),1===this._modalRefs.length&&s.addClass(this._document.body,"modal-open"),h&&h.instance&&this._applyBackdropOptions(h.instance,i),d}get activeInstances(){return this._activeInstances}dismissAll(t){this._modalRefs.forEach(e=>e.dismiss(t))}hasOpenModals(){return this._modalRefs.length>0}_attachBackdrop(t,e){let n=t.resolveComponentFactory(Gx).create(this._injector);return this._applicationRef.attachView(n.hostView),e.appendChild(n.location.nativeElement),n}_attachWindowComponent(t,e,n){let i=t.resolveComponentFactory(Yx).create(this._injector,n.nodes);return this._applicationRef.attachView(i.hostView),e.appendChild(i.location.nativeElement),i}_applyWindowOptions(t,e){this._windowAttributes.forEach(n=>{ox(e[n])&&(t[n]=e[n])})}_applyBackdropOptions(t,e){this._backdropAttributes.forEach(n=>{ox(e[n])&&(t[n]=e[n])})}_getContentRef(t,e,n,i,r){return n?n instanceof ml?this._createFromTemplateRef(n,i):"string"==typeof n?this._createFromString(n):this._createFromComponent(t,e,n,i,r):new jx([])}_createFromTemplateRef(t,e){const n=t.createEmbeddedView({$implicit:e,close(t){e.close(t)},dismiss(t){e.dismiss(t)}});return this._applicationRef.attachView(n),new jx([n.rootNodes],n)}_createFromString(t){const e=this._document.createTextNode(""+t);return new jx([[e]])}_createFromComponent(t,e,n,i,r){const s=t.resolveComponentFactory(n),o=lo.create({providers:[{provide:Kx,useValue:i}],parent:e}),a=s.create(o),l=a.location.nativeElement;return r.scrollable&&l.classList.add("component-host-scrollable"),this._applicationRef.attachView(a.hostView),new jx([[l]],a.hostView,a)}_setAriaHidden(t){const e=t.parentElement;e&&t!==this._document.body&&(Array.from(e.children).forEach(e=>{e!==t&&"SCRIPT"!==e.nodeName&&(this._ariaHiddenValues.set(e,e.getAttribute("aria-hidden")),e.setAttribute("aria-hidden","true"))}),this._setAriaHidden(e))}_revertAriaHidden(){this._ariaHiddenValues.forEach((t,e)=>{t?e.setAttribute("aria-hidden",t):e.removeAttribute("aria-hidden")}),this._ariaHiddenValues.clear()}_registerModalRef(t){const e=()=>{const e=this._modalRefs.indexOf(t);e>-1&&(this._modalRefs.splice(e,1),this._activeInstances.emit(this._modalRefs))};this._modalRefs.push(t),this._activeInstances.emit(this._modalRefs),t.result.then(e,e)}_registerWindowCmpt(t){this._windowCmpts.push(t),this._activeWindowCmptHasChanged.next(),t.onDestroy(()=>{const e=this._windowCmpts.indexOf(t);e>-1&&(this._windowCmpts.splice(e,1),this._activeWindowCmptHasChanged.next())})}}return t.\u0275fac=function(e){return new(e||t)(vi(Zc),vi(lo),vi(uh),vi(Wx),vi(ja),vi(Lc))},t.\u0275prov=ot({factory:function(){return new t(vi(Zc),vi(Gs),vi(uh),vi(Wx),vi(ja),vi(Lc))},token:t,providedIn:"root"}),t})(),Qx=(()=>{class t{constructor(t,e,n,i){this._moduleCFR=t,this._injector=e,this._modalStack=n,this._config=i}open(t,e={}){const n=Object.assign({},this._config,e);return this._modalStack.open(this._moduleCFR,this._injector,t,n)}get activeInstances(){return this._modalStack.activeInstances}dismissAll(t){this._modalStack.dismissAll(t)}hasOpenModals(){return this._modalStack.hasOpenModals()}}return t.\u0275fac=function(e){return new(e||t)(vi(Na),vi(lo),vi(Jx),vi(Hx))},t.\u0275prov=ot({factory:function(){return new t(vi(Na),vi(Gs),vi(Jx),vi(Hx))},token:t,providedIn:"root"}),t})(),Zx=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:[Qx]}),t})(),t_=(()=>{class t{constructor(t){this.destroyOnHide=!0,this.orientation="horizontal",this.roles="tablist",this.keyboard=!1,this.animation=t.animation}}return t.\u0275fac=function(e){return new(e||t)(vi(lx))},t.\u0275prov=ot({factory:function(){return new t(vi(lx))},token:t,providedIn:"root"}),t})();const e_=t=>ox(t)&&""!==t;let n_=0,i_=(()=>{class t{constructor(t){this.templateRef=t}}return t.\u0275fac=function(e){return new(e||t)(Do(ml))},t.\u0275dir=jt({type:t,selectors:[["ng-template","ngbNavContent",""]]}),t})(),r_=(()=>{class t{constructor(t,e){this.elementRef=e,this.disabled=!1,this.shown=new jl,this.hidden=new jl,this._nav=t}ngAfterContentChecked(){this.contentTpl=this.contentTpls.first}ngOnInit(){ox(this.domId)||(this.domId="ngb-nav-"+n_++)}get active(){return this._nav.activeId===this.id}get id(){return e_(this._id)?this._id:this.domId}get panelDomId(){return this.domId+"-panel"}isPanelInDom(){return(ox(this.destroyOnHide)?!this.destroyOnHide:!this._nav.destroyOnHide)||this.active}}return t.\u0275fac=function(e){return new(e||t)(Do(it(()=>s_)),Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["","ngbNavItem",""]],contentQueries:function(t,e,n){if(1&t&&sc(n,i_,!1),2&t){let t;ec(t=oc())&&(e.contentTpls=t)}},hostVars:2,hostBindings:function(t,e){2&t&&na("nav-item",!0)},inputs:{disabled:"disabled",domId:"domId",destroyOnHide:"destroyOnHide",_id:["ngbNavItem","_id"]},outputs:{shown:"shown",hidden:"hidden"},exportAs:["ngbNavItem"]}),t})(),s_=(()=>{class t{constructor(t,e,n,i){this.role=t,this._cd=n,this._document=i,this.activeIdChange=new jl,this.shown=new jl,this.hidden=new jl,this.destroy$=new C,this.navItemChange$=new C,this.navChange=new jl,this.animation=e.animation,this.destroyOnHide=e.destroyOnHide,this.orientation=e.orientation,this.roles=e.roles,this.keyboard=e.keyboard}click(t){t.disabled||this._updateActiveId(t.id)}onKeyDown(t){if("tablist"!==this.roles||!this.keyboard)return;const e=t.which,n=this.links.filter(t=>!t.navItem.disabled),{length:i}=n;let r=-1;if(n.forEach((t,e)=>{t.elRef.nativeElement===this._document.activeElement&&(r=e)}),i){switch(e){case Ex.ArrowLeft:if("vertical"===this.orientation)return;r=(r-1+i)%i;break;case Ex.ArrowRight:if("vertical"===this.orientation)return;r=(r+1)%i;break;case Ex.ArrowDown:if("horizontal"===this.orientation)return;r=(r+1)%i;break;case Ex.ArrowUp:if("horizontal"===this.orientation)return;r=(r-1+i)%i;break;case Ex.Home:r=0;break;case Ex.End:r=i-1}"changeWithArrows"===this.keyboard&&this.select(n[r].navItem.id),n[r].elRef.nativeElement.focus(),t.preventDefault()}}select(t){this._updateActiveId(t,!1)}ngAfterContentInit(){if(!ox(this.activeId)){const t=this.items.first?this.items.first.id:null;e_(t)&&(this._updateActiveId(t,!1),this._cd.detectChanges())}this.items.changes.pipe(zb(this.destroy$)).subscribe(()=>this._notifyItemChanged(this.activeId))}ngOnChanges({activeId:t}){t&&!t.firstChange&&this._notifyItemChanged(t.currentValue)}ngOnDestroy(){this.destroy$.next()}_updateActiveId(t,e=!0){if(this.activeId!==t){let n=!1;e&&this.navChange.emit({activeId:this.activeId,nextId:t,preventDefault:()=>{n=!0}}),n||(this.activeId=t,this.activeIdChange.emit(t),this._notifyItemChanged(t))}}_notifyItemChanged(t){this.navItemChange$.next(this._getItemById(t))}_getItemById(t){return this.items&&this.items.find(e=>e.id===t)||null}}return t.\u0275fac=function(e){return new(e||t)(Wn("role"),Do(t_),Do(ul),Do(uh))},t.\u0275dir=jt({type:t,selectors:[["","ngbNav",""]],contentQueries:function(t,e,n){if(1&t&&(sc(n,r_,!1),sc(n,o_,!0)),2&t){let t;ec(t=oc())&&(e.items=t),ec(t=oc())&&(e.links=t)}},hostVars:6,hostBindings:function(t,e){1&t&&Bo("keydown.arrowLeft",function(t){return e.onKeyDown(t)})("keydown.arrowRight",function(t){return e.onKeyDown(t)})("keydown.arrowDown",function(t){return e.onKeyDown(t)})("keydown.arrowUp",function(t){return e.onKeyDown(t)})("keydown.Home",function(t){return e.onKeyDown(t)})("keydown.End",function(t){return e.onKeyDown(t)}),2&t&&(So("aria-orientation","vertical"===e.orientation&&"tablist"===e.roles?"vertical":void 0)("role",e.role?e.role:e.roles?"tablist":void 0),na("nav",!0)("flex-column","vertical"===e.orientation))},inputs:{animation:"animation",destroyOnHide:"destroyOnHide",orientation:"orientation",roles:"roles",keyboard:"keyboard",activeId:"activeId"},outputs:{activeIdChange:"activeIdChange",shown:"shown",hidden:"hidden",navChange:"navChange"},exportAs:["ngbNav"],features:[oe]}),t})(),o_=(()=>{class t{constructor(t,e,n,i){this.role=t,this.navItem=e,this.nav=n,this.elRef=i}hasNavItemClass(){return this.navItem.elementRef.nativeElement.nodeType===Node.COMMENT_NODE}}return t.\u0275fac=function(e){return new(e||t)(Wn("role"),Do(r_),Do(s_),Do(Ha))},t.\u0275dir=jt({type:t,selectors:[["a","ngbNavLink",""]],hostAttrs:["href",""],hostVars:14,hostBindings:function(t,e){1&t&&Bo("click",function(t){return e.nav.click(e.navItem),t.preventDefault()}),2&t&&(wa("id",e.navItem.domId),So("role",e.role?e.role:e.nav.roles?"tab":void 0)("tabindex",e.navItem.disabled?-1:void 0)("aria-controls",e.navItem.isPanelInDom()?e.navItem.panelDomId:null)("aria-selected",e.navItem.active)("aria-disabled",e.navItem.disabled),na("nav-link",!0)("nav-item",e.hasNavItemClass())("active",e.navItem.active)("disabled",e.navItem.disabled))}}),t})(),a_=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})(),l_=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})(),c_=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})(),h_=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})(),u_=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})(),d_=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})(),f_=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})(),p_=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)}}),t})();new qn("live announcer delay",{providedIn:"root",factory:function(){return 100}});let g_=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})();const m_=[fx,vx,_x,Cx,Sx,Mx,Vx,Zx,a_,l_,c_,h_,u_,d_,f_,p_,g_];let v_=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[m_,fx,vx,_x,Cx,Sx,Mx,Vx,Zx,a_,l_,c_,h_,u_,d_,f_,p_,g_]}),t})(),y_=(()=>{class t{constructor(){this.restrictedPages=new Map([["users",ob.USER_ROLE_ADMIN],["config",ob.USER_ROLE_DEVELOPER],["modules",ob.USER_ROLE_DEVELOPER],["apiexplorer",ob.USER_ROLE_DEVELOPER]])}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function w_(t,e){if(1&t&&($o(0,5),Fo(1,"a",27),Mo(2,"img",28),Fo(3,"span",12),ga(4),Lo(),Lo(),Oo()),2&t){const t=Ho().$implicit;To("ngbNavItem",t.navItem),Yr(1),To("routerLink",t.routerLink),Yr(1),Ko("src","/static/svg/",t.icon,".svg",tr),Yr(2),ma(t.label)}}function b_(t,e){1&t&&Mo(0,"hr")}function x_(t,e){if(1&t&&(ko(0,w_,5,4,"ng-container",26),ko(1,b_,1,0,"hr",25)),2&t){const t=e.$implicit;To("ngIf",Ho().getSessionRole()<=t.minRole),Yr(1),To("ngIf",t.separator)}}function __(t,e){if(1&t&&(Fo(0,"div",29),Fo(1,"h2",30),Mo(2,"img",31),ga(3,"An error has occurred!"),Lo(),Fo(4,"h6",32),ga(5),Lo(),Fo(6,"p"),ga(7,"Please refresh the page to try again."),Lo(),Lo()),2&t){const t=Ho();Yr(5),ma(t.error)}}function C_(t,e){1&t&&(Fo(0,"div",33),Mo(1,"img",34),Lo())}function S_(t,e){1&t&&Mo(0,"router-outlet")}const E_=function(){return["/"]},k_=function(){return["/login"]};let A_=(()=>{class t{constructor(t,e,n,i,r){var s;this.route=t,this.router=e,this.segment=n,this.consoleService=i,this.authService=r,this.loading=!0,this.error="",this.routes=[{navItem:"status",routerLink:["/status"],label:"Status",minRole:ob.USER_ROLE_READONLY,icon:"status"},{navItem:"users",routerLink:["/users"],label:"User Management",minRole:ob.USER_ROLE_ADMIN,icon:"user-management"},{navItem:"config",routerLink:["/config"],label:"Configuration",minRole:ob.USER_ROLE_DEVELOPER,icon:"configuration"},{navItem:"modules",routerLink:["/modules"],label:"Runtime Modules",minRole:ob.USER_ROLE_DEVELOPER,separator:!0,icon:"runtime-modules"},{navItem:"accounts",routerLink:["/accounts"],label:"Accounts",minRole:ob.USER_ROLE_READONLY,icon:"accounts"},{navItem:"storage",routerLink:["/storage"],label:"Storage",minRole:ob.USER_ROLE_READONLY,icon:"storage"},{navItem:"leaderboards",routerLink:["/leaderboards"],label:"Leaderboards",minRole:ob.USER_ROLE_READONLY,icon:"leaderboard"},{navItem:"matches",routerLink:["/matches"],label:"Matches",minRole:ob.USER_ROLE_READONLY,icon:"running-matches"},{navItem:"apiexplorer",routerLink:["/apiexplorer"],label:"API Explorer",minRole:ob.USER_ROLE_DEVELOPER,icon:"api-explorer"}],this.loading=!1,this.routerSub=this.router.events.pipe(function(t){let e=arguments.length,n=xb;E(arguments[arguments.length-1])&&(n=arguments[arguments.length-1],e--);let i=null;e>=2&&(i=arguments[1]);let r=Number.POSITIVE_INFINITY;return e>=3&&(r=arguments[2]),function(e){return e.lift(new _b(t,i,r,n))}}(2e3)).subscribe(t=>{if(0===t.length)return;const e=t[t.length-1];e instanceof ig&&(this.loading=!0),e instanceof rg&&(this.loading=!1),e instanceof sg&&(this.loading=!1),e instanceof og&&(this.loading=!1,this.error=e.error)}),this.segmentRouterSub=e.events.pipe((s=(t,e)=>!(e instanceof rg)||t.url===e.url,t=>t.lift(new Db(s,undefined)))).subscribe(t=>{t&&n.page(t.url)})}ngOnInit(){this.route.data.subscribe(t=>{this.error=t.error?t.error:""})}getSessionRole(){return this.authService.sessionRole}getUsername(){return this.authService.username}logout(){this.authService.logout()}ngOnDestroy(){this.segmentRouterSub.unsubscribe(),this.routerSub.unsubscribe()}onSidebarNavChange(t){}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(Cw),Do(sb),Do(hb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:40,vars:11,consts:[[1,"container-fluid"],[1,"row"],["ngbNav","",1,"col-md-2","d-none","d-md-block","sidebar","position-fixed","px-0",3,"navChange"],["sidenav","ngbNav"],[1,"flex-column","text-uppercase"],[3,"ngbNavItem"],[3,"routerLink"],["src","/static/svg/logo.svg","alt","","width","175","height","",1,"logo-full","mx-3","mt-3","mb-1"],["src","/static/svg/logo-icon.svg","alt","","width","32","height","",1,"logo-icon","mx-3","mt-3","mb-1"],["ngFor","",3,"ngForOf"],["href","https://cloud.heroiclabs.com","target","_blank",1,"nav-link"],["src","/static/svg/heroiccloud.svg","alt","","width","24","height","",1,"link-icon","mr-1"],[1,"link-text"],["href","https://heroiclabs.com/docs","target","_blank",1,"nav-link"],["src","/static/svg/docs.svg","alt","","width","24","height","",1,"link-icon","mr-1"],["href","https://forum.heroiclabs.com","target","_blank",1,"nav-link"],["src","/static/svg/forum.svg","alt","","width","24","height","",1,"link-icon","mr-1"],["href","https://heroiclabs.com/blog","target","_blank",1,"nav-link"],["src","/static/svg/blog.svg","alt","","width","24","height","",1,"link-icon","mr-1"],[1,"logged-in-as","nav-link","disabled"],["ngbNavLink","","routerLinkActive","active",3,"routerLink","click"],["src","/static/svg/log-out.svg","alt","","width","24","height","",1,"mr-1"],["role","main",1,"ml-sm-auto","col-md-10","col-lg-10","main-extended","px-4","py-4"],["class","mx-auto",4,"ngIf"],["class","loading mx-auto",4,"ngIf"],[4,"ngIf"],[3,"ngbNavItem",4,"ngIf"],["ngbNavLink","","routerLinkActive","active",3,"routerLink"],["alt","","width","24","height","",1,"link-icon","mr-1",3,"src"],[1,"mx-auto"],[1,"pb-2"],["src","/static/svg/red-triangle.svg",1,"mr-2",2,"width","1em","height","1em"],[1,"mr-2","d-inline","font-weight-bold"],[1,"loading","mx-auto"],["src","/static/spinner.svg",1,"p-1","loading"]],template:function(t,e){1&t&&(Fo(0,"div",0),Fo(1,"div",1),Fo(2,"nav",2,3),Bo("navChange",function(t){return e.onSidebarNavChange(t)}),Fo(4,"div",4),$o(5,5),Fo(6,"a",6),Mo(7,"img",7),Mo(8,"img",8),Lo(),Oo(),Mo(9,"hr"),ko(10,x_,2,2,"ng-template",9),Mo(11,"hr"),Fo(12,"a",10),Mo(13,"img",11),Fo(14,"span",12),ga(15,"Heroic Cloud"),Lo(),Lo(),Fo(16,"a",13),Mo(17,"img",14),Fo(18,"span",12),ga(19,"Documentation"),Lo(),Lo(),Fo(20,"a",15),Mo(21,"img",16),Fo(22,"span",12),ga(23,"Forum"),Lo(),Lo(),Fo(24,"a",17),Mo(25,"img",18),Fo(26,"span",12),ga(27,"Heroic Labs Blog"),Lo(),Lo(),Mo(28,"hr"),Fo(29,"div",19),ga(30),Lo(),$o(31,5),Fo(32,"a",20),Bo("click",function(){return e.logout()}),Mo(33,"img",21),Fo(34,"span",12),ga(35,"Logout"),Lo(),Lo(),Oo(),Lo(),Lo(),Fo(36,"main",22),ko(37,__,8,1,"div",23),ko(38,C_,2,0,"div",24),ko(39,S_,1,0,"router-outlet",25),Lo(),Lo(),Lo()),2&t&&(Yr(5),To("ngbNavItem","logo"),Yr(1),To("routerLink",Nl(9,E_)),Yr(4),To("ngForOf",e.routes),Yr(20),va("Logged in as: ",e.getUsername(),""),Yr(1),To("ngbNavItem","logout"),Yr(1),To("routerLink",Nl(10,k_)),Yr(5),To("ngIf",e.error),Yr(1),To("ngIf",!e.error&&e.loading),Yr(1),To("ngIf",!e.error&&!e.loading))},directives:[s_,r_,Dv,Oh,o_,Rv,Ph,Fv],styles:[".nav-link.no-active[_ngcontent-%COMP%]{background-color:initial!important}.nav-item[_ngcontent-%COMP%] hr[_ngcontent-%COMP%]{border-top-color:#708090}.sidebar[_ngcontent-%COMP%]{background-color:#333564;position:fixed;top:0;bottom:0;left:0;z-index:100;font-family:Montserrat,sans-serif;overflow-y:auto}.sidebar[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%]{color:#fff;font-size:12px;letter-spacing:.1em;opacity:.6;font-weight:500!important}.sidebar[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%]:hover{opacity:1;background-color:hsla(0,0%,88.2%,.1)}.sidebar[_ngcontent-%COMP%] hr[_ngcontent-%COMP%]{border-color:#fff;opacity:.2}.active[_ngcontent-%COMP%]{opacity:1}.nav-link.active[_ngcontent-%COMP%]{opacity:1;color:#a69bff}.navbar-collapse[_ngcontent-%COMP%]{letter-spacing:0;text-transform:capitalize}.logo-icon[_ngcontent-%COMP%]{display:none}.link-text[_ngcontent-%COMP%]{padding-left:4px}@media screen and (max-width:1200px){.main-extended[_ngcontent-%COMP%]{width:94.333333%!important;max-width:94.333333%!important;flex:0 0 94.333333%!important}.sidebar[_ngcontent-%COMP%]{min-width:65px!important;width:5.66%!important;max-width:5.66%!important}.sidebar[_ngcontent-%COMP%] .logo-full[_ngcontent-%COMP%]{display:none}.sidebar[_ngcontent-%COMP%] .logo-icon[_ngcontent-%COMP%]{display:block}.sidebar[_ngcontent-%COMP%] .link-icon[_ngcontent-%COMP%]{width:30px}.sidebar[_ngcontent-%COMP%] .link-text[_ngcontent-%COMP%], .sidebar[_ngcontent-%COMP%] .logged-in-as[_ngcontent-%COMP%]{display:none}}"]}),t})(),D_=(()=>{class t{constructor(t,e,n){this.authService=t,this.router=e,this.globals=n}canActivate(t,e){return!0}canActivateChild(t,e){const n=this.globals.restrictedPages.get(t.url[0].path);return!(null!==n&&n{const e=t.element,n=this._document.createComment("dom-portal");e.parentNode.insertBefore(n,e),this.outletElement.appendChild(e),super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(e,n)})},this._document=r}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.rootNodes.forEach(t=>this.outletElement.appendChild(t)),n.detectChanges(),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]}}{}class $_{constructor(t,e){this.dueTime=t,this.scheduler=e}call(t,e){return e.subscribe(new O_(t,this.dueTime,this.scheduler))}}class O_ extends p{constructor(t,e,n){super(t),this.dueTime=e,this.scheduler=n,this.debouncedSubscription=null,this.lastValue=null,this.hasValue=!1}_next(t){this.clearDebounce(),this.lastValue=t,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(I_,this.dueTime,this))}_complete(){this.debouncedNext(),this.destination.complete()}debouncedNext(){if(this.clearDebounce(),this.hasValue){const{lastValue:t}=this;this.lastValue=null,this.hasValue=!1,this.destination.next(t)}}clearDebounce(){const t=this.debouncedSubscription;null!==t&&(this.remove(t),t.unsubscribe(),this.debouncedSubscription=null)}}function I_(t){t.debouncedNext()}function P_(){}var N_=function(t){return null==t?P_:function(){return this.querySelector(t)}};function B_(){return[]}var U_=function(t){return null==t?B_:function(){return this.querySelectorAll(t)}},V_=function(t){return function(){return this.matches(t)}},H_=function(t){return new Array(t.length)};function j_(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function z_(t,e,n,i,r,s){for(var o,a=0,l=e.length,c=s.length;ae?1:t>=e?0:NaN}j_.prototype={constructor:j_,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var K_="http://www.w3.org/1999/xhtml",q_={svg:"http://www.w3.org/2000/svg",xhtml:K_,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},X_=function(t){var e=t+="",n=e.indexOf(":");return n>=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),q_.hasOwnProperty(e)?{space:q_[e],local:t}:t};function Y_(t){return function(){this.removeAttribute(t)}}function J_(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Q_(t,e){return function(){this.setAttribute(t,e)}}function Z_(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function tC(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}}function eC(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}var nC=function(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView};function iC(t){return function(){this.style.removeProperty(t)}}function rC(t,e,n){return function(){this.style.setProperty(t,e,n)}}function sC(t,e,n){return function(){var i=e.apply(this,arguments);null==i?this.style.removeProperty(t):this.style.setProperty(t,i,n)}}function oC(t,e){return t.style.getPropertyValue(e)||nC(t).getComputedStyle(t,null).getPropertyValue(e)}function aC(t){return function(){delete this[t]}}function lC(t,e){return function(){this[t]=e}}function cC(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}function hC(t){return t.trim().split(/^|\s+/)}function uC(t){return t.classList||new dC(t)}function dC(t){this._node=t,this._names=hC(t.getAttribute("class")||"")}function fC(t,e){for(var n=uC(t),i=-1,r=e.length;++i=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var DC=function(t){var e=X_(t);return(e.local?AC:kC)(e)};function TC(){return null}function RC(){var t=this.parentNode;t&&t.removeChild(this)}function FC(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function LC(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}var MC={},$C=null;function OC(t,e,n){return t=IC(t,e,n),function(e){var n=e.relatedTarget;n&&(n===this||8&n.compareDocumentPosition(this))||t.call(this,e)}}function IC(t,e,n){return function(i){var r=$C;$C=i;try{t.call(this,this.__data__,e,n)}finally{$C=r}}}function PC(t){return t.trim().split(/^|\s+/).map(function(t){var e="",n=t.indexOf(".");return n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),{type:t,name:e}})}function NC(t){return function(){var e=this.__on;if(e){for(var n,i=0,r=-1,s=e.length;i=x&&(x=b+1);!(w=v[x])&&++x=0;)(i=r[s])&&(o&&4^i.compareDocumentPosition(o)&&o.parentNode.insertBefore(i,o),o=i);return this},sort:function(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=G_);for(var n=this._groups,i=n.length,r=new Array(i),s=0;s1?this.each((null==e?iC:"function"==typeof e?sC:rC)(t,e,null==n?"":n)):oC(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?aC:"function"==typeof e?cC:lC)(t,e)):this.node()[t]},classed:function(t,e){var n=hC(t+"");if(arguments.length<2){for(var i=uC(this.node()),r=-1,s=n.length;++r=0&&(n=t.slice(i+1),t=t.slice(0,i)),t&&!e.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:n}})}function QC(t,e){for(var n,i=0,r=t.length;i0)for(var n,i,r=new Array(n),s=0;s>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?SS(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?SS(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=fS.exec(t))?new AS(e[1],e[2],e[3],1):(e=pS.exec(t))?new AS(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=gS.exec(t))?SS(e[1],e[2],e[3],e[4]):(e=mS.exec(t))?SS(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=vS.exec(t))?FS(e[1],e[2]/100,e[3]/100,1):(e=yS.exec(t))?FS(e[1],e[2]/100,e[3]/100,e[4]):wS.hasOwnProperty(t)?CS(wS[t]):"transparent"===t?new AS(NaN,NaN,NaN,0):null}function CS(t){return new AS(t>>16&255,t>>8&255,255&t,1)}function SS(t,e,n,i){return i<=0&&(t=e=n=NaN),new AS(t,e,n,i)}function ES(t){return t instanceof oS||(t=_S(t)),t?new AS((t=t.rgb()).r,t.g,t.b,t.opacity):new AS}function kS(t,e,n,i){return 1===arguments.length?ES(t):new AS(t,e,n,null==i?1:i)}function AS(t,e,n,i){this.r=+t,this.g=+e,this.b=+n,this.opacity=+i}function DS(){return"#"+RS(this.r)+RS(this.g)+RS(this.b)}function TS(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===t?")":", "+t+")")}function RS(t){return((t=Math.max(0,Math.min(255,Math.round(t)||0)))<16?"0":"")+t.toString(16)}function FS(t,e,n,i){return i<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new MS(t,e,n,i)}function LS(t){if(t instanceof MS)return new MS(t.h,t.s,t.l,t.opacity);if(t instanceof oS||(t=_S(t)),!t)return new MS;if(t instanceof MS)return t;var e=(t=t.rgb()).r/255,n=t.g/255,i=t.b/255,r=Math.min(e,n,i),s=Math.max(e,n,i),o=NaN,a=s-r,l=(s+r)/2;return a?(o=e===s?(n-i)/a+6*(n0&&l<1?0:o,new MS(o,a,l,t.opacity)}function MS(t,e,n,i){this.h=+t,this.s=+e,this.l=+n,this.opacity=+i}function $S(t,e,n){return 255*(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)}function OS(t,e,n,i,r){var s=t*t,o=s*t;return((1-3*t+3*s-o)*e+(4-6*s+3*o)*n+(1+3*t+3*s-3*o)*i+o*r)/6}rS(oS,_S,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:bS,formatHex:bS,formatHsl:function(){return LS(this).formatHsl()},formatRgb:xS,toString:xS}),rS(AS,kS,sS(oS,{brighter:function(t){return t=null==t?lS:Math.pow(lS,t),new AS(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?aS:Math.pow(aS,t),new AS(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:DS,formatHex:DS,formatRgb:TS,toString:TS})),rS(MS,function(t,e,n,i){return 1===arguments.length?LS(t):new MS(t,e,n,null==i?1:i)},sS(oS,{brighter:function(t){return t=null==t?lS:Math.pow(lS,t),new MS(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?aS:Math.pow(aS,t),new MS(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,i=n+(n<.5?n:1-n)*e,r=2*n-i;return new AS($S(t>=240?t-240:t+120,r,i),$S(t,r,i),$S(t<120?t+240:t-120,r,i),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(1===t?")":", "+t+")")}}));var IS=function(t){return function(){return t}};function PS(t,e){var n=e-t;return n?function(t,e){return function(n){return t+n*e}}(t,n):IS(isNaN(t)?e:t)}var NS=function t(e){var n=function(t){return 1==(t=+t)?PS:function(e,n){return n-e?function(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(i){return Math.pow(t+i*e,n)}}(e,n,t):IS(isNaN(e)?n:e)}}(e);function i(t,e){var i=n((t=kS(t)).r,(e=kS(e)).r),r=n(t.g,e.g),s=n(t.b,e.b),o=PS(t.opacity,e.opacity);return function(e){return t.r=i(e),t.g=r(e),t.b=s(e),t.opacity=o(e),t+""}}return i.gamma=t,i}(1);function BS(t){return function(e){var n,i,r=e.length,s=new Array(r),o=new Array(r),a=new Array(r);for(n=0;n=1?(n=1,e-1):Math.floor(n*e),r=t[i],s=t[i+1];return OS((n-i/e)*e,i>0?t[i-1]:2*r-s,r,s,is&&(r=e.slice(s,r),a[o]?a[o]+=r:a[++o]=r),(n=n[0])===(i=i[0])?a[o]?a[o]+=i:a[++o]=i:(a[++o]=null,l.push({i:o,x:WS(n,i)})),s=qS.lastIndex;return s=0&&e._call.call(null,t),e=e._next;--tE}()}finally{tE=0,function(){for(var t,e,n=HS,i=1/0;n;)n._call?(i>n._time&&(i=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:HS=e);jS=t,pE(i)}(),rE=0}}function fE(){var t=oE.now(),e=t-iE;e>1e3&&(sE-=e,iE=t)}function pE(t){tE||(eE&&(eE=clearTimeout(eE)),t-rE>24?(t<1/0&&(eE=setTimeout(dE,t-oE.now()-sE)),nE&&(nE=clearInterval(nE))):(nE||(iE=oE.now(),nE=setInterval(fE,1e3)),tE=1,aE(dE)))}hE.prototype=uE.prototype={constructor:hE,restart:function(t,e,n){if("function"!=typeof t)throw new TypeError("callback is not a function");n=(null==n?lE():+n)+(null==e?0:+e),this._next||jS===this||(jS?jS._next=this:HS=this,jS=this),this._call=t,this._time=n,pE()},stop:function(){this._call&&(this._call=null,this._time=1/0,pE())}};var gE=function(t,e,n){var i=new hE;return i.restart(function(n){i.stop(),t(n+e)},e=null==e?0:+e,n),i},mE=tS("start","end","cancel","interrupt"),vE=[],yE=function(t,e,n,i,r,s){var o=t.__transition;if(o){if(n in o)return}else t.__transition={};!function(t,e,n){var i,r=t.__transition;function s(l){var c,h,u,d;if(1!==n.state)return a();for(c in r)if((d=r[c]).name===n.name){if(3===d.state)return gE(s);4===d.state?(d.state=6,d.timer.stop(),d.on.call("interrupt",t,t.__data__,d.index,d.group),delete r[c]):+c0)throw new Error("too late; already scheduled");return n}function bE(t,e){var n=xE(t,e);if(n.state>3)throw new Error("too late; already running");return n}function xE(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}var _E,CE,SE,EE,kE=function(t,e){var n,i,r,s=t.__transition,o=!0;if(s){for(r in e=null==e?null:e+"",s)(n=s[r]).name===e?(i=n.state>2&&n.state<5,n.state=6,n.timer.stop(),n.on.call(i?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete s[r]):o=!1;o&&delete t.__transition}},AE=180/Math.PI,DE={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},TE=function(t,e,n,i,r,s){var o,a,l;return(o=Math.sqrt(t*t+e*e))&&(t/=o,e/=o),(l=t*n+e*i)&&(n-=t*l,i-=e*l),(a=Math.sqrt(n*n+i*i))&&(n/=a,i/=a,l/=a),t*i180?e+=360:e-t>180&&(t+=360),s.push({i:n.push(r(n)+"rotate(",null,i)-2,x:WS(t,e)})):e&&n.push(r(n)+"rotate("+e+i)}(s.rotate,o.rotate,a,l),function(t,e,n,s){t!==e?s.push({i:n.push(r(n)+"skewX(",null,i)-2,x:WS(t,e)}):e&&n.push(r(n)+"skewX("+e+i)}(s.skewX,o.skewX,a,l),function(t,e,n,i,s,o){if(t!==n||e!==i){var a=s.push(r(s)+"scale(",null,",",null,")");o.push({i:a-4,x:WS(t,n)},{i:a-2,x:WS(e,i)})}else 1===n&&1===i||s.push(r(s)+"scale("+n+","+i+")")}(s.scaleX,s.scaleY,o.scaleX,o.scaleY,a,l),s=o=null,function(t){for(var e,n=-1,i=l.length;++n=0&&(t=t.slice(0,e)),!t||"start"===t})}(e)?wE:bE;return function(){var o=s(this,t),a=o.on;a!==i&&(r=(i=a).copy()).on(e,n),o.on=r}}var ZE=GC.prototype.constructor;function tk(t){return function(){this.style.removeProperty(t)}}function ek(t,e,n){return function(i){this.style.setProperty(t,e.call(this,i),n)}}function nk(t,e,n){var i,r;function s(){var s=e.apply(this,arguments);return s!==r&&(i=(r=s)&&ek(t,s,n)),i}return s._value=e,s}function ik(t){return function(e){this.textContent=t.call(this,e)}}function rk(t){var e,n;function i(){var i=t.apply(this,arguments);return i!==n&&(e=(n=i)&&ik(i)),e}return i._value=t,i}var sk=0;function ok(t,e,n,i){this._groups=t,this._parents=e,this._name=n,this._id=i}function ak(){return++sk}var lk=GC.prototype;ok.prototype=(function(t){return GC().transition(t)}).prototype={constructor:ok,select:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=N_(t));for(var i=this._groups,r=i.length,s=new Array(r),o=0;oe?1:t>=e?0:NaN},Ik=function(t){let e=t,n=t;function i(t,e,i,r){for(null==i&&(i=0),null==r&&(r=t.length);i>>1;n(t[s],e)<0?i=s+1:r=s}return i}return 1===t.length&&(e=(e,n)=>t(e)-n,n=function(t){return(e,n)=>Ok(t(e),n)}(t)),{left:i,center:function(t,n,r,s){null==r&&(r=0),null==s&&(s=t.length);const o=i(t,n,r,s-1);return o>r&&e(t[o-1],n)>-e(t[o],n)?o-1:o},right:function(t,e,i,r){for(null==i&&(i=0),null==r&&(r=t.length);i>>1;n(t[s],e)>0?r=s:i=s+1}return i}}},Pk=Math.sqrt(50),Nk=Math.sqrt(10),Bk=Math.sqrt(2);function Uk(t,e,n){var i=(e-t)/Math.max(0,n),r=Math.floor(Math.log(i)/Math.LN10),s=i/Math.pow(10,r);return r>=0?(s>=Pk?10:s>=Nk?5:s>=Bk?2:1)*Math.pow(10,r):-Math.pow(10,-r)/(s>=Pk?10:s>=Nk?5:s>=Bk?2:1)}function Vk(t,e,n){var i=Math.abs(e-t)/Math.max(0,n),r=Math.pow(10,Math.floor(Math.log(i)/Math.LN10)),s=i/r;return s>=Pk?r*=10:s>=Nk?r*=5:s>=Bk&&(r*=2),e0))return a;do{a.push(o=new Date(+n)),e(n,s),t(n)}while(o=e)for(;t(e),!n(e);)e.setTime(e-1)},function(t,i){if(t>=t)if(i<0)for(;++i<=0;)for(;e(t,-1),!n(t););else for(;--i>=0;)for(;e(t,1),!n(t););})},n&&(r.count=function(e,i){return Hk.setTime(+e),jk.setTime(+i),t(Hk),t(jk),Math.floor(n(Hk,jk))},r.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?r.filter(i?function(e){return i(e)%t==0}:function(e){return r.count(0,e)%t==0}):r:null}),r}var Wk=zk(function(t){t.setMonth(0,1),t.setHours(0,0,0,0)},function(t,e){t.setFullYear(t.getFullYear()+e)},function(t,e){return e.getFullYear()-t.getFullYear()},function(t){return t.getFullYear()});Wk.every=function(t){return isFinite(t=Math.floor(t))&&t>0?zk(function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},function(e,n){e.setFullYear(e.getFullYear()+n*t)}):null};var Gk=Wk,Kk=zk(function(t){t.setDate(1),t.setHours(0,0,0,0)},function(t,e){t.setMonth(t.getMonth()+e)},function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())},function(t){return t.getMonth()}),qk=1e3,Xk=6e4,Yk=36e5;function Jk(t){return zk(function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},function(t,e){t.setDate(t.getDate()+7*e)},function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Xk)/6048e5})}var Qk=Jk(0),Zk=(Jk(1),Jk(2),Jk(3),Jk(4),Jk(5),Jk(6),zk(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Xk)/864e5,t=>t.getDate()-1)),tA=zk(function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*qk-t.getMinutes()*Xk)},function(t,e){t.setTime(+t+e*Yk)},function(t,e){return(e-t)/Yk},function(t){return t.getHours()}),eA=zk(function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*qk)},function(t,e){t.setTime(+t+e*Xk)},function(t,e){return(e-t)/Xk},function(t){return t.getMinutes()}),nA=zk(function(t){t.setTime(t-t.getMilliseconds())},function(t,e){t.setTime(+t+e*qk)},function(t,e){return(e-t)/qk},function(t){return t.getUTCSeconds()}),iA=zk(function(){},function(t,e){t.setTime(+t+e)},function(t,e){return e-t});iA.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?zk(function(e){e.setTime(Math.floor(e/t)*t)},function(e,n){e.setTime(+e+n*t)},function(e,n){return(n-e)/t}):iA:null};var rA=iA,sA=new Date,oA=new Date;function aA(t,e,n,i){function r(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return r.floor=function(e){return t(e=new Date(+e)),e},r.ceil=function(n){return t(n=new Date(n-1)),e(n,1),t(n),n},r.round=function(t){var e=r(t),n=r.ceil(t);return t-e0))return a;do{a.push(o=new Date(+n)),e(n,s),t(n)}while(o=e)for(;t(e),!n(e);)e.setTime(e-1)},function(t,i){if(t>=t)if(i<0)for(;++i<=0;)for(;e(t,-1),!n(t););else for(;--i>=0;)for(;e(t,1),!n(t););})},n&&(r.count=function(e,i){return sA.setTime(+e),oA.setTime(+i),t(sA),t(oA),Math.floor(n(sA,oA))},r.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?r.filter(i?function(e){return i(e)%t==0}:function(e){return r.count(0,e)%t==0}):r:null}),r}var lA=864e5,cA=6048e5;function hA(t){return aA(function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},function(t,e){t.setUTCDate(t.getUTCDate()+7*e)},function(t,e){return(e-t)/cA})}var uA=hA(0),dA=hA(1),fA=(hA(2),hA(3),hA(4)),pA=(hA(5),hA(6),aA(function(t){t.setUTCHours(0,0,0,0)},function(t,e){t.setUTCDate(t.getUTCDate()+e)},function(t,e){return(e-t)/lA},function(t){return t.getUTCDate()-1}));function gA(t){return aA(function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},function(t,e){t.setDate(t.getDate()+7*e)},function(t,e){return(e-t-6e4*(e.getTimezoneOffset()-t.getTimezoneOffset()))/cA})}var mA=gA(0),vA=gA(1),yA=(gA(2),gA(3),gA(4)),wA=(gA(5),gA(6),aA(function(t){t.setHours(0,0,0,0)},function(t,e){t.setDate(t.getDate()+e)},function(t,e){return(e-t-6e4*(e.getTimezoneOffset()-t.getTimezoneOffset()))/lA},function(t){return t.getDate()-1})),bA=aA(function(t){t.setMonth(0,1),t.setHours(0,0,0,0)},function(t,e){t.setFullYear(t.getFullYear()+e)},function(t,e){return e.getFullYear()-t.getFullYear()},function(t){return t.getFullYear()});bA.every=function(t){return isFinite(t=Math.floor(t))&&t>0?aA(function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},function(e,n){e.setFullYear(e.getFullYear()+n*t)}):null};var xA=bA,_A=aA(function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)},function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()},function(t){return t.getUTCFullYear()});_A.every=function(t){return isFinite(t=Math.floor(t))&&t>0?aA(function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},function(e,n){e.setUTCFullYear(e.getUTCFullYear()+n*t)}):null};var CA=_A;function SA(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function EA(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function kA(t,e,n){return{y:t,m:e,d:n,H:0,M:0,S:0,L:0}}var AA,DA,TA={"-":"",_:" ",0:"0"},RA=/^\s*\d+/,FA=/^%/,LA=/[\\^$*+?|[\]().{}]/g;function MA(t,e,n){var i=t<0?"-":"",r=(i?-t:t)+"",s=r.length;return i+(s68?1900:2e3),n+i[0].length):-1}function zA(t,e,n){var i=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return i?(t.Z=i[1]?0:-(i[2]+(i[3]||"00")),n+i[0].length):-1}function WA(t,e,n){var i=RA.exec(e.slice(n,n+1));return i?(t.q=3*i[0]-3,n+i[0].length):-1}function GA(t,e,n){var i=RA.exec(e.slice(n,n+2));return i?(t.m=i[0]-1,n+i[0].length):-1}function KA(t,e,n){var i=RA.exec(e.slice(n,n+2));return i?(t.d=+i[0],n+i[0].length):-1}function qA(t,e,n){var i=RA.exec(e.slice(n,n+3));return i?(t.m=0,t.d=+i[0],n+i[0].length):-1}function XA(t,e,n){var i=RA.exec(e.slice(n,n+2));return i?(t.H=+i[0],n+i[0].length):-1}function YA(t,e,n){var i=RA.exec(e.slice(n,n+2));return i?(t.M=+i[0],n+i[0].length):-1}function JA(t,e,n){var i=RA.exec(e.slice(n,n+2));return i?(t.S=+i[0],n+i[0].length):-1}function QA(t,e,n){var i=RA.exec(e.slice(n,n+3));return i?(t.L=+i[0],n+i[0].length):-1}function ZA(t,e,n){var i=RA.exec(e.slice(n,n+6));return i?(t.L=Math.floor(i[0]/1e3),n+i[0].length):-1}function tD(t,e,n){var i=FA.exec(e.slice(n,n+1));return i?n+i[0].length:-1}function eD(t,e,n){var i=RA.exec(e.slice(n));return i?(t.Q=+i[0],n+i[0].length):-1}function nD(t,e,n){var i=RA.exec(e.slice(n));return i?(t.s=+i[0],n+i[0].length):-1}function iD(t,e){return MA(t.getDate(),e,2)}function rD(t,e){return MA(t.getHours(),e,2)}function sD(t,e){return MA(t.getHours()%12||12,e,2)}function oD(t,e){return MA(1+wA.count(xA(t),t),e,3)}function aD(t,e){return MA(t.getMilliseconds(),e,3)}function lD(t,e){return aD(t,e)+"000"}function cD(t,e){return MA(t.getMonth()+1,e,2)}function hD(t,e){return MA(t.getMinutes(),e,2)}function uD(t,e){return MA(t.getSeconds(),e,2)}function dD(t){var e=t.getDay();return 0===e?7:e}function fD(t,e){return MA(mA.count(xA(t)-1,t),e,2)}function pD(t){var e=t.getDay();return e>=4||0===e?yA(t):yA.ceil(t)}function gD(t,e){return t=pD(t),MA(yA.count(xA(t),t)+(4===xA(t).getDay()),e,2)}function mD(t){return t.getDay()}function vD(t,e){return MA(vA.count(xA(t)-1,t),e,2)}function yD(t,e){return MA(t.getFullYear()%100,e,2)}function wD(t,e){return MA((t=pD(t)).getFullYear()%100,e,2)}function bD(t,e){return MA(t.getFullYear()%1e4,e,4)}function xD(t,e){var n=t.getDay();return MA((t=n>=4||0===n?yA(t):yA.ceil(t)).getFullYear()%1e4,e,4)}function _D(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+MA(e/60|0,"0",2)+MA(e%60,"0",2)}function CD(t,e){return MA(t.getUTCDate(),e,2)}function SD(t,e){return MA(t.getUTCHours(),e,2)}function ED(t,e){return MA(t.getUTCHours()%12||12,e,2)}function kD(t,e){return MA(1+pA.count(CA(t),t),e,3)}function AD(t,e){return MA(t.getUTCMilliseconds(),e,3)}function DD(t,e){return AD(t,e)+"000"}function TD(t,e){return MA(t.getUTCMonth()+1,e,2)}function RD(t,e){return MA(t.getUTCMinutes(),e,2)}function FD(t,e){return MA(t.getUTCSeconds(),e,2)}function LD(t){var e=t.getUTCDay();return 0===e?7:e}function MD(t,e){return MA(uA.count(CA(t)-1,t),e,2)}function $D(t){var e=t.getUTCDay();return e>=4||0===e?fA(t):fA.ceil(t)}function OD(t,e){return t=$D(t),MA(fA.count(CA(t),t)+(4===CA(t).getUTCDay()),e,2)}function ID(t){return t.getUTCDay()}function PD(t,e){return MA(dA.count(CA(t)-1,t),e,2)}function ND(t,e){return MA(t.getUTCFullYear()%100,e,2)}function BD(t,e){return MA((t=$D(t)).getUTCFullYear()%100,e,2)}function UD(t,e){return MA(t.getUTCFullYear()%1e4,e,4)}function VD(t,e){var n=t.getUTCDay();return MA((t=n>=4||0===n?fA(t):fA.ceil(t)).getUTCFullYear()%1e4,e,4)}function HD(){return"+0000"}function jD(){return"%"}function zD(t){return+t}function WD(t){return Math.floor(+t/1e3)}AA=function(t){var e=t.dateTime,n=t.date,i=t.time,r=t.periods,s=t.days,o=t.shortDays,a=t.months,l=t.shortMonths,c=OA(r),h=IA(r),u=OA(s),d=IA(s),f=OA(o),p=IA(o),g=OA(a),m=IA(a),v=OA(l),y=IA(l),w={a:function(t){return o[t.getDay()]},A:function(t){return s[t.getDay()]},b:function(t){return l[t.getMonth()]},B:function(t){return a[t.getMonth()]},c:null,d:iD,e:iD,f:lD,g:wD,G:xD,H:rD,I:sD,j:oD,L:aD,m:cD,M:hD,p:function(t){return r[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:zD,s:WD,S:uD,u:dD,U:fD,V:gD,w:mD,W:vD,x:null,X:null,y:yD,Y:bD,Z:_D,"%":jD},b={a:function(t){return o[t.getUTCDay()]},A:function(t){return s[t.getUTCDay()]},b:function(t){return l[t.getUTCMonth()]},B:function(t){return a[t.getUTCMonth()]},c:null,d:CD,e:CD,f:DD,g:BD,G:VD,H:SD,I:ED,j:kD,L:AD,m:TD,M:RD,p:function(t){return r[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:zD,s:WD,S:FD,u:LD,U:MD,V:OD,w:ID,W:PD,x:null,X:null,y:ND,Y:UD,Z:HD,"%":jD},x={a:function(t,e,n){var i=f.exec(e.slice(n));return i?(t.w=p[i[0].toLowerCase()],n+i[0].length):-1},A:function(t,e,n){var i=u.exec(e.slice(n));return i?(t.w=d[i[0].toLowerCase()],n+i[0].length):-1},b:function(t,e,n){var i=v.exec(e.slice(n));return i?(t.m=y[i[0].toLowerCase()],n+i[0].length):-1},B:function(t,e,n){var i=g.exec(e.slice(n));return i?(t.m=m[i[0].toLowerCase()],n+i[0].length):-1},c:function(t,n,i){return S(t,e,n,i)},d:KA,e:KA,f:ZA,g:jA,G:HA,H:XA,I:XA,j:qA,L:QA,m:GA,M:YA,p:function(t,e,n){var i=c.exec(e.slice(n));return i?(t.p=h[i[0].toLowerCase()],n+i[0].length):-1},q:WA,Q:eD,s:nD,S:JA,u:NA,U:BA,V:UA,w:PA,W:VA,x:function(t,e,i){return S(t,n,e,i)},X:function(t,e,n){return S(t,i,e,n)},y:jA,Y:HA,Z:zA,"%":tD};function _(t,e){return function(n){var i,r,s,o=[],a=-1,l=0,c=t.length;for(n instanceof Date||(n=new Date(+n));++a53)return null;"w"in s||(s.w=1),"Z"in s?(r=(i=EA(kA(s.y,0,1))).getUTCDay(),i=r>4||0===r?dA.ceil(i):dA(i),i=pA.offset(i,7*(s.V-1)),s.y=i.getUTCFullYear(),s.m=i.getUTCMonth(),s.d=i.getUTCDate()+(s.w+6)%7):(r=(i=SA(kA(s.y,0,1))).getDay(),i=r>4||0===r?vA.ceil(i):vA(i),i=wA.offset(i,7*(s.V-1)),s.y=i.getFullYear(),s.m=i.getMonth(),s.d=i.getDate()+(s.w+6)%7)}else("W"in s||"U"in s)&&("w"in s||(s.w="u"in s?s.u%7:"W"in s?1:0),r="Z"in s?EA(kA(s.y,0,1)).getUTCDay():SA(kA(s.y,0,1)).getDay(),s.m=0,s.d="W"in s?(s.w+6)%7+7*s.W-(r+5)%7:s.w+7*s.U-(r+6)%7);return"Z"in s?(s.H+=s.Z/100|0,s.M+=s.Z%100,EA(s)):SA(s)}}function S(t,e,n,i){for(var r,s,o=0,a=e.length,l=n.length;o=l)return-1;if(37===(r=e.charCodeAt(o++))){if(r=e.charAt(o++),!(s=x[r in TA?e.charAt(o++):r])||(i=s(t,n,i))<0)return-1}else if(r!=n.charCodeAt(i++))return-1}return i}return w.x=_(n,w),w.X=_(i,w),w.c=_(e,w),b.x=_(n,b),b.X=_(i,b),b.c=_(e,b),{format:function(t){var e=_(t+="",w);return e.toString=function(){return t},e},parse:function(t){var e=C(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=_(t+="",b);return e.toString=function(){return t},e},utcParse:function(t){var e=C(t+="",!0);return e.toString=function(){return t},e}}}({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}),DA=AA.format;var GD=function(t){return null===t?NaN:+t};const KD=Ik(Ok).right;Ik(GD);var qD=KD,XD=function(t,e){return t=+t,e=+e,function(n){return Math.round(t*(1-n)+e*n)}};function YD(t){return+t}var JD=[0,1];function QD(t){return t}function ZD(t,e){return(e-=t=+t)?function(n){return(n-t)/e}:(n=isNaN(e)?NaN:.5,function(){return n});var n}function tT(t,e,n){var i=t[0],r=t[1],s=e[0],o=e[1];return r(e=o[l-1])&&(n=t,t=e,e=n),c=function(n){return Math.max(t,Math.min(e,n))}),i=l>2?eT:tT,r=s=null,u}function u(e){return isNaN(e=+e)?n:(r||(r=i(o.map(t),a,l)))(t(c(e)))}return u.invert=function(n){return c(e((s||(s=i(a,o.map(t),WS)))(n)))},u.domain=function(t){return arguments.length?(o=Array.from(t,YD),h()):o.slice()},u.range=function(t){return arguments.length?(a=Array.from(t),h()):a.slice()},u.rangeRound=function(t){return a=Array.from(t),l=XD,h()},u.clamp=function(t){return arguments.length?(c=!!t||QD,h()):c!==QD},u.interpolate=function(t){return arguments.length?(l=t,h()):l},u.unknown=function(t){return arguments.length?(n=t,u):n},function(n,i){return t=n,e=i,h()}}()(QD,QD)}function rT(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t)}return this}var sT=31536e6;function oT(t){return new Date(t)}function aT(t){return t instanceof Date?+t:+new Date(+t)}function lT(t,e,n,i,r,s,o,a,l){var c=iT(),h=c.invert,u=c.domain,d=l(".%L"),f=l(":%S"),p=l("%I:%M"),g=l("%I %p"),m=l("%a %d"),v=l("%b %d"),y=l("%B"),w=l("%Y"),b=[[o,1,1e3],[o,5,5e3],[o,15,15e3],[o,30,3e4],[s,1,6e4],[s,5,3e5],[s,15,9e5],[s,30,18e5],[r,1,36e5],[r,3,108e5],[r,6,216e5],[r,12,432e5],[i,1,864e5],[i,2,1728e5],[n,1,6048e5],[e,1,2592e6],[e,3,7776e6],[t,1,sT]];function x(a){return(o(a)=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function uT(t){if(!(e=hT.exec(t)))throw new Error("invalid format: "+t);var e;return new dT({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function dT(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function fT(t,e){if((n=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var n,i=t.slice(0,n);return[i.length>1?i[0]+i.slice(2):i,+t.slice(n+1)]}uT.prototype=dT.prototype,dT.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var pT,gT,mT,vT,yT=function(t){return(t=fT(Math.abs(t)))?t[1]:NaN},wT=function(t,e){var n=fT(t,e);if(!n)return t+"";var i=n[0],r=n[1];return r<0?"0."+new Array(-r).join("0")+i:i.length>r+1?i.slice(0,r+1)+"."+i.slice(r+1):i+new Array(r-i.length+2).join("0")},bT={"%":function(t,e){return(100*t).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return wT(100*t,e)},r:wT,s:function(t,e){var n=fT(t,e);if(!n)return t+"";var i=n[0],r=n[1],s=r-(pT=3*Math.max(-8,Math.min(8,Math.floor(r/3))))+1,o=i.length;return s===o?i:s>o?i+new Array(s-o+1).join("0"):s>0?i.slice(0,s)+"."+i.slice(s):"0."+new Array(1-s).join("0")+fT(t,Math.max(0,e+s-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}},xT=function(t){return t},_T=Array.prototype.map,CT=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];function ST(t){var e=t.domain;return t.ticks=function(t){var n=e();return function(t,e,n){var i,r,s,o,a=-1;if(n=+n,(t=+t)==(e=+e)&&n>0)return[t];if((i=e0)for(t=Math.ceil(t/o),e=Math.floor(e/o),s=new Array(r=Math.ceil(e-t+1));++a0;){if((r=Uk(l,c,n))===i)return s[o]=l,s[a]=c,e(s);if(r>0)l=Math.floor(l/r)*r,c=Math.ceil(c/r)*r;else{if(!(r<0))break;l=Math.ceil(l*r)/r,c=Math.floor(c*r)/r}i=r}return t},t}function ET(){var t=iT();return t.copy=function(){return nT(t,ET())},rT.apply(t,arguments),ST(t)}gT=function(t){var e,n,i=void 0===t.grouping||void 0===t.thousands?xT:(e=_T.call(t.grouping,Number),n=t.thousands+"",function(t,i){for(var r=t.length,s=[],o=0,a=e[0],l=0;r>0&&a>0&&(l+a+1>i&&(a=Math.max(1,i-l)),s.push(t.substring(r-=a,r+a)),!((l+=a+1)>i));)a=e[o=(o+1)%e.length];return s.reverse().join(n)}),r=void 0===t.currency?"":t.currency[0]+"",s=void 0===t.currency?"":t.currency[1]+"",o=void 0===t.decimal?".":t.decimal+"",a=void 0===t.numerals?xT:function(t){return function(e){return e.replace(/[0-9]/g,function(e){return t[+e]})}}(_T.call(t.numerals,String)),l=void 0===t.percent?"%":t.percent+"",c=void 0===t.minus?"-":t.minus+"",h=void 0===t.nan?"NaN":t.nan+"";function u(t){var e=(t=uT(t)).fill,n=t.align,u=t.sign,d=t.symbol,f=t.zero,p=t.width,g=t.comma,m=t.precision,v=t.trim,y=t.type;"n"===y?(g=!0,y="g"):bT[y]||(void 0===m&&(m=12),v=!0,y="g"),(f||"0"===e&&"="===n)&&(f=!0,e="0",n="=");var w="$"===d?r:"#"===d&&/[boxX]/.test(y)?"0"+y.toLowerCase():"",b="$"===d?s:/[%p]/.test(y)?l:"",x=bT[y],_=/[defgprs%]/.test(y);function C(t){var r,s,l,d=w,C=b;if("c"===y)C=x(t)+C,t="";else{var S=(t=+t)<0||1/t<0;if(t=isNaN(t)?h:x(Math.abs(t),m),v&&(t=function(t){t:for(var e,n=t.length,i=1,r=-1;i0&&(r=0)}return r>0?t.slice(0,r)+t.slice(e+1):t}(t)),S&&0==+t&&"+"!==u&&(S=!1),d=(S?"("===u?u:c:"-"===u||"("===u?"":u)+d,C=("s"===y?CT[8+pT/3]:"")+C+(S&&"("===u?")":""),_)for(r=-1,s=t.length;++r(l=t.charCodeAt(r))||l>57){C=(46===l?o+t.slice(r+1):t.slice(r))+C,t=t.slice(0,r);break}}g&&!f&&(t=i(t,1/0));var E=d.length+t.length+C.length,k=E>1)+d+t+C+k.slice(E);break;default:t=k+d+t+C}return a(t)}return m=void 0===m?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),C.toString=function(){return t+""},C}return{format:u,formatPrefix:function(t,e){var n=u(((t=uT(t)).type="f",t)),i=3*Math.max(-8,Math.min(8,Math.floor(yT(e)/3))),r=Math.pow(10,-i),s=CT[8+i/3];return function(t){return n(r*t)+s}}}}({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"}),mT=gT.format,vT=gT.formatPrefix;var kT=function(t,e,n){t=+t,e=+e,n=(r=arguments.length)<2?(e=t,t=0,1):r<3?1:+n;for(var i=-1,r=0|Math.max(0,Math.ceil((e-t)/n)),s=new Array(r);++i=1)return+n(t[i-1],i-1,t);var i,r=(i-1)*e,s=Math.floor(r),o=+n(t[s],s,t);return o+(+n(t[s+1],s+1,t)-o)*(r-s)}}function MT(){var t,e=[],n=[],i=[];function r(){var t=0,r=Math.max(1,n.length);for(i=new Array(r-1);++t0?i[r-1]:e[0],rNT)if(Math.abs(h*a-l*c)>NT&&r){var d=n-s,f=i-o,p=a*a+l*l,g=d*d+f*f,m=Math.sqrt(p),v=Math.sqrt(u),y=r*Math.tan((IT-Math.acos((p+u-g)/(2*m*v)))/2),w=y/v,b=y/m;Math.abs(w-1)>NT&&(this._+="L"+(t+w*c)+","+(e+w*h)),this._+="A"+r+","+r+",0,0,"+ +(h*d>c*f)+","+(this._x1=t+b*a)+","+(this._y1=e+b*l)}else this._+="L"+(this._x1=t)+","+(this._y1=e)},arc:function(t,e,n,i,r,s){t=+t,e=+e,s=!!s;var o=(n=+n)*Math.cos(i),a=n*Math.sin(i),l=t+o,c=e+a,h=1^s,u=s?i-r:r-i;if(n<0)throw new Error("negative radius: "+n);null===this._x1?this._+="M"+l+","+c:(Math.abs(this._x1-l)>NT||Math.abs(this._y1-c)>NT)&&(this._+="L"+l+","+c),n&&(u<0&&(u=u%PT+PT),u>BT?this._+="A"+n+","+n+",0,1,"+h+","+(t-o)+","+(e-a)+"A"+n+","+n+",0,1,"+h+","+(this._x1=l)+","+(this._y1=c):u>NT&&(this._+="A"+n+","+n+",0,"+ +(u>=IT)+","+h+","+(this._x1=t+n*Math.cos(r))+","+(this._y1=e+n*Math.sin(r))))},rect:function(t,e,n,i){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +n+"v"+ +i+"h"+-n+"Z"},toString:function(){return this._}};var HT=VT,jT=function(t){return function(){return t}};function zT(t){return t[0]}function WT(t){return t[1]}var GT=function(){var t=zT,e=WT,n=jT(!0),i=null,r=OT,s=null;function o(o){var a,l,c,h=o.length,u=!1;for(null==i&&(s=r(c=HT())),a=0;a<=h;++a)!(a=h;--u)a.point(m[u],v[u]);a.lineEnd(),a.areaEnd()}g&&(m[c]=+t(d,c,l),v[c]=+n(d,c,l),a.point(e?+e(d,c,l):m[c],i?+i(d,c,l):v[c]))}if(f)return a=null,f+""||null}function c(){return GT().defined(r).curve(o).context(s)}return l.x=function(n){return arguments.length?(t="function"==typeof n?n:jT(+n),e=null,l):t},l.x0=function(e){return arguments.length?(t="function"==typeof e?e:jT(+e),l):t},l.x1=function(t){return arguments.length?(e=null==t?null:"function"==typeof t?t:jT(+t),l):e},l.y=function(t){return arguments.length?(n="function"==typeof t?t:jT(+t),i=null,l):n},l.y0=function(t){return arguments.length?(n="function"==typeof t?t:jT(+t),l):n},l.y1=function(t){return arguments.length?(i=null==t?null:"function"==typeof t?t:jT(+t),l):i},l.lineX0=l.lineY0=function(){return c().x(t).y(n)},l.lineY1=function(){return c().x(t).y(i)},l.lineX1=function(){return c().x(e).y(n)},l.defined=function(t){return arguments.length?(r="function"==typeof t?t:jT(!!t),l):r},l.curve=function(t){return arguments.length?(o=t,null!=s&&(a=o(s)),l):o},l.context=function(t){return arguments.length?(null==t?s=a=null:a=o(s=t),l):s},l},qT=function(){};function XT(t,e,n){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-n),t._x2,t._y2)}function YT(t,e){this._context=t,this._k=(1-e)/6}function JT(t,e){this._context=t,this._k=(1-e)/6}function QT(t){this._curve=t}YT.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:XT(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:XT(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}},function t(e){function n(t){return new YT(t,e)}return n.tension=function(e){return t(+e)},n}(0),JT.prototype={areaStart:qT,areaEnd:qT,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:XT(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}},function t(e){function n(t){return new JT(t,e)}return n.tension=function(e){return t(+e)},n}(0),QT.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),e*-Math.cos(t))}},Math,Math,Math,Math,Math,Math,Math,Math;var ZT=function(t,e,n,i,r){for(var s,o=t.children,a=-1,l=o.length,c=t.value&&(i-e)/t.value;++a=0;)e+=n[i].value;else e=1;t.value=e}function nR(t,e){var n,i,r,s,o,a=new oR(t),l=+t.value&&(a.value=t.value),c=[a];for(null==e&&(e=iR);n=c.pop();)if(l&&(n.value=+n.data.value),(r=e(n.data))&&(o=r.length))for(n.children=new Array(o),s=o-1;s>=0;--s)c.push(i=n.children[s]=new oR(r[s])),i.parent=n,i.depth=n.depth+1;return a.eachBefore(sR)}function iR(t){return t.children}function rR(t){t.data=t.data.data}function sR(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function oR(t){this.data=t,this.depth=this.height=0,this.parent=null}!function t(e){function n(t,n,i,r,s){!function(t,e,n,i,r,s){for(var o,a,l,c,h,u,d,f,p,g,m,v=[],y=e.children,w=0,b=0,x=y.length,_=e.value;wd&&(d=a),m=h*h*g,(f=Math.max(d/m,m/u))>p){h-=a;break}p=f}v.push(o={value:h,dice:l1?e:1)},n}((1+Math.sqrt(5))/2),oR.prototype=nR.prototype={constructor:oR,count:function(){return this.eachAfter(eR)},each:function(t){var e,n,i,r,s=this,o=[s];do{for(e=o.reverse(),o=[];s=e.pop();)if(t(s),n=s.children)for(i=0,r=n.length;i=0;--n)r.push(e[n]);return this},sum:function(t){return this.eachAfter(function(e){for(var n=+t(e.data)||0,i=e.children,r=i&&i.length;--r>=0;)n+=i[r].value;e.value=n})},sort:function(t){return this.eachBefore(function(e){e.children&&e.children.sort(t)})},path:function(t){for(var e=this,n=function(t,e){if(t===e)return t;var n=t.ancestors(),i=e.ancestors(),r=null;for(t=n.pop(),e=i.pop();t===e;)r=t,t=n.pop(),e=i.pop();return r}(e,t),i=[e];e!==n;)i.push(e=e.parent);for(var r=i.length;t!==n;)i.splice(r,0,t),t=t.parent;return i},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){var t=[];return this.each(function(e){t.push(e)}),t},leaves:function(){var t=[];return this.eachBefore(function(e){e.children||t.push(e)}),t},links:function(){var t=this,e=[];return t.each(function(n){n!==t&&e.push({source:n.parent,target:n})}),e},copy:function(){return nR(this).eachBefore(rR)}};const aR=["caretElm"];function lR(t,e){}const cR=function(t){return{model:t}};function hR(t,e){if(1&t&&(Fo(0,"span"),ko(1,lR,0,0,"ng-template",5),Lo()),2&t){const t=Ho();Yr(1),To("ngTemplateOutlet",t.template)("ngTemplateOutletContext",Bl(2,cR,t.context))}}function uR(t,e){1&t&&Mo(0,"span",6),2&t&&To("innerHTML",Ho().title,Zi)}function dR(t,e){if(1&t&&(on(),an(),Mo(0,"ngx-charts-scale-legend",4)),2&t){const t=Ho();To("horizontal",t.legendOptions&&"below"===t.legendOptions.position)("valueRange",t.legendOptions.domain)("colors",t.legendOptions.colors)("height",t.view[1])("width",t.legendWidth)}}function fR(t,e){if(1&t){const t=Io();on(),an(),Fo(0,"ngx-charts-legend",5),Bo("labelClick",function(e){return Le(t),Ho().legendLabelClick.emit(e)})("labelActivate",function(e){return Le(t),Ho().legendLabelActivate.emit(e)})("labelDeactivate",function(e){return Le(t),Ho().legendLabelDeactivate.emit(e)}),Lo()}if(2&t){const t=Ho();To("horizontal",t.legendOptions&&"below"===t.legendOptions.position)("data",t.legendOptions.domain)("title",t.legendOptions.title)("colors",t.legendOptions.colors)("height",t.view[1])("width",t.legendWidth)("activeEntries",t.activeEntries)}}const pR=["*"],gR=["ngx-charts-axis-label",""],mR=["ticksel"],vR=["ngx-charts-x-axis-ticks",""];function yR(t,e){if(1&t&&(on(),Fo(0,"g",3),Fo(1,"title"),ga(2),Lo(),Fo(3,"text",4),ga(4),Lo(),Lo()),2&t){const t=e.$implicit,n=Ho();So("transform",n.tickTransform(t)),Yr(2),ma(n.tickFormat(t)),Yr(1),ea("font-size","12px"),So("text-anchor",n.textAnchor)("transform",n.textTransform),Yr(1),va(" ",n.tickTrim(n.tickFormat(t))," ")}}function wR(t,e){if(1&t&&(on(),Fo(0,"g"),Mo(1,"line",6),Lo()),2&t){const t=Ho(2);So("transform",t.gridLineTransform()),Yr(1),So("y1",-t.gridLineHeight)}}function bR(t,e){if(1&t&&(on(),Fo(0,"g"),ko(1,wR,2,2,"g",5),Lo()),2&t){const t=e.$implicit,n=Ho();So("transform",n.tickTransform(t)),Yr(1),To("ngIf",n.showGridLines)}}const xR=["ngx-charts-x-axis",""];function _R(t,e){if(1&t){const t=Io();on(),Fo(0,"g",2),Bo("dimensionsChanged",function(e){return Le(t),Ho().emitTicksHeight(e)}),Lo()}if(2&t){const t=Ho();To("trimTicks",t.trimTicks)("rotateTicks",t.rotateTicks)("maxTickLength",t.maxTickLength)("tickFormatting",t.tickFormatting)("tickArguments",t.tickArguments)("tickStroke",t.tickStroke)("scale",t.xScale)("orient",t.xOrient)("showGridLines",t.showGridLines)("gridLineHeight",t.dims.height)("width",t.dims.width)("tickValues",t.ticks)}}function CR(t,e){if(1&t&&(on(),Mo(0,"g",3)),2&t){const t=Ho();To("label",t.labelText)("offset",t.labelOffset)("orient","bottom")("height",t.dims.height)("width",t.dims.width)}}const SR=["ngx-charts-y-axis-ticks",""];function ER(t,e){if(1&t&&(on(),Fo(0,"g",4),Fo(1,"title"),ga(2),Lo(),Fo(3,"text",5),ga(4),Lo(),Lo()),2&t){const t=e.$implicit,n=Ho();So("transform",n.transform(t)),Yr(2),ma(n.tickFormat(t)),Yr(1),ea("font-size","12px"),So("dy",n.dy)("x",n.x1)("y",n.y1)("text-anchor",n.textAnchor),Yr(1),va(" ",n.tickTrim(n.tickFormat(t))," ")}}function kR(t,e){if(1&t&&(on(),Mo(0,"path",6)),2&t){const t=Ho();So("d",t.referenceAreaPath)("transform",t.gridLineTransform())}}function AR(t,e){1&t&&(on(),Mo(0,"line",9)),2&t&&So("x2",Ho(3).gridLineWidth)}function DR(t,e){1&t&&(on(),Mo(0,"line",9)),2&t&&So("x2",-Ho(3).gridLineWidth)}function TR(t,e){if(1&t&&(on(),Fo(0,"g"),ko(1,AR,1,1,"line",8),ko(2,DR,1,1,"line",8),Lo()),2&t){const t=Ho(2);So("transform",t.gridLineTransform()),Yr(1),To("ngIf","left"===t.orient),Yr(1),To("ngIf","right"===t.orient)}}function RR(t,e){if(1&t&&(on(),Fo(0,"g"),ko(1,TR,3,3,"g",7),Lo()),2&t){const t=e.$implicit,n=Ho();So("transform",n.transform(t)),Yr(1),To("ngIf",n.showGridLines)}}function FR(t,e){if(1&t&&(on(),Fo(0,"g"),Fo(1,"title"),ga(2),Lo(),Fo(3,"text",11),ga(4),Lo(),Lo()),2&t){const t=Ho(2).$implicit,e=Ho();Yr(2),ma(e.tickTrim(e.tickFormat(t.value))),Yr(1),So("dy",e.dy)("y",-6)("x",e.gridLineWidth)("text-anchor",e.textAnchor),Yr(1),va(" ",t.name," ")}}function LR(t,e){if(1&t&&(on(),Fo(0,"g"),Mo(1,"line",10),ko(2,FR,5,6,"g",7),Lo()),2&t){const t=Ho().$implicit,e=Ho();So("transform",e.transform(t.value)),Yr(1),So("x2",e.gridLineWidth)("transform",e.gridLineTransform()),Yr(1),To("ngIf",e.showRefLabels)}}function MR(t,e){if(1&t&&(on(),Fo(0,"g"),ko(1,LR,3,4,"g",7),Lo()),2&t){const t=Ho();Yr(1),To("ngIf",t.showRefLines)}}const $R=["ngx-charts-y-axis",""];function OR(t,e){if(1&t){const t=Io();on(),Fo(0,"g",2),Bo("dimensionsChanged",function(e){return Le(t),Ho().emitTicksWidth(e)}),Lo()}if(2&t){const t=Ho();To("trimTicks",t.trimTicks)("maxTickLength",t.maxTickLength)("tickFormatting",t.tickFormatting)("tickArguments",t.tickArguments)("tickValues",t.ticks)("tickStroke",t.tickStroke)("scale",t.yScale)("orient",t.yOrient)("showGridLines",t.showGridLines)("gridLineWidth",t.dims.width)("referenceLines",t.referenceLines)("showRefLines",t.showRefLines)("showRefLabels",t.showRefLabels)("height",t.dims.height)}}function IR(t,e){if(1&t&&(on(),Mo(0,"g",3)),2&t){const t=Ho();To("label",t.labelText)("offset",t.labelOffset)("orient",t.yOrient)("height",t.dims.height)("width",t.dims.width)}}const PR=["ngx-charts-circle-series",""];function NR(t,e){if(1&t&&(on(),Mo(0,"rect",4)),2&t){const t=Ho(2);To("@animationState","active"),So("x",t.circle.cx-t.circle.radius)("y",t.circle.cy)("width",2*t.circle.radius)("height",t.circle.height)("fill",t.gradientFill)}}const BR=function(t){return{name:t}};function UR(t,e){if(1&t){const t=Io();on(),Fo(0,"g"),Fo(1,"defs"),Mo(2,"g",1),Lo(),ko(3,NR,1,6,"rect",2),Fo(4,"g",3),Bo("select",function(){Le(t);const e=Ho();return e.onClick(e.circle.data)})("activate",function(){return Le(t),Ho().activateCircle()})("deactivate",function(){return Le(t),Ho().deactivateCircle()}),Lo(),Lo()}if(2&t){const t=Ho();Yr(2),To("name",t.gradientId)("stops",t.circle.gradientStops),Yr(1),To("ngIf",t.barVisible&&"standard"===t.type),Yr(1),na("active",t.isActive(Bl(18,BR,t.circle.seriesName))),To("cx",t.circle.cx)("cy",t.circle.cy)("r",t.circle.radius)("fill",t.circle.color)("pointerEvents",0===t.circle.value?"none":"all")("data",t.circle.value)("classNames",t.circle.classNames)("tooltipDisabled",t.tooltipDisabled)("tooltipPlacement","top")("tooltipType","tooltip")("tooltipTitle",t.tooltipTemplate?void 0:t.getTooltipText(t.circle))("tooltipTemplate",t.tooltipTemplate)("tooltipContext",t.circle.data)}}const VR=["ngx-charts-circle",""],HR=["ngx-charts-svg-linear-gradient",""];function jR(t,e){if(1&t&&(on(),Mo(0,"stop")),2&t){const t=e.$implicit;ea("stop-color",t.color)("stop-opacity",t.opacity),So("offset",t.offset+"%")}}const zR=["ngx-charts-area",""];function WR(t,e){if(1&t&&(on(),Fo(0,"defs"),Mo(1,"g",2),Lo()),2&t){const t=Ho();Yr(1),To("name",t.gradientId)("stops",t.gradientStops)}}const GR=["tooltipAnchor"],KR=["ngx-charts-tooltip-area",""];function qR(t,e){if(1&t&&(Fo(0,"div",6),Mo(1,"span",7),ga(2),Lo()),2&t){const t=e.$implicit,n=Ho(2);Yr(1),ea("background-color",t.color),Yr(1),va(" ",n.getToolTipText(t)," ")}}function XR(t,e){if(1&t&&(on(),an(),Fo(0,"div",4),ko(1,qR,3,3,"div",5),Lo()),2&t){const t=e.model;Yr(1),To("ngForOf",t)}}const YR=["ngx-charts-timeline",""];function JR(t,e){if(1&t&&(Fo(0,"header",4),Fo(1,"span",5),ga(2),Lo(),Lo()),2&t){const t=Ho();Yr(2),ma(t.title)}}function QR(t,e){if(1&t){const t=Io();Fo(0,"li",6),Fo(1,"ngx-charts-legend-entry",7),Bo("select",function(e){return Le(t),Ho().labelClick.emit(e)})("activate",function(e){return Le(t),Ho().activate(e)})("deactivate",function(e){return Le(t),Ho().deactivate(e)}),Lo(),Lo()}if(2&t){const t=e.$implicit,n=Ho();Yr(1),To("label",t.label)("formattedLabel",t.formattedLabel)("color",t.color)("isActive",n.isActive(t))}}const ZR=["tooltipTemplate"],tF=["seriesTooltipTemplate"],eF=function(t,e){return[t,e]},nF=["ngx-charts-line",""];function iF(t,e){if(1&t){const t=Io();on(),Fo(0,"g",7),Bo("dimensionsChanged",function(e){return Le(t),Ho().updateXAxisHeight(e)}),Lo()}if(2&t){const t=Ho();To("xScale",t.xScale)("dims",t.dims)("showGridLines",t.showGridLines)("showLabel",t.showXAxisLabel)("labelText",t.xAxisLabel)("trimTicks",t.trimXAxisTicks)("rotateTicks",t.rotateXAxisTicks)("maxTickLength",t.maxXAxisTickLength)("tickFormatting",t.xAxisTickFormatting)("ticks",t.xAxisTicks)}}function rF(t,e){if(1&t){const t=Io();on(),Fo(0,"g",8),Bo("dimensionsChanged",function(e){return Le(t),Ho().updateYAxisWidth(e)}),Lo()}if(2&t){const t=Ho();To("yScale",t.yScale)("dims",t.dims)("showGridLines",t.showGridLines)("showLabel",t.showYAxisLabel)("labelText",t.yAxisLabel)("trimTicks",t.trimYAxisTicks)("maxTickLength",t.maxYAxisTickLength)("tickFormatting",t.yAxisTickFormatting)("ticks",t.yAxisTicks)("referenceLines",t.referenceLines)("showRefLines",t.showRefLines)("showRefLabels",t.showRefLabels)}}function sF(t,e){if(1&t&&(on(),Fo(0,"g"),Mo(1,"g",9),Lo()),2&t){const t=e.$implicit,n=Ho();To("@animationState","active"),Yr(1),To("xScale",n.xScale)("yScale",n.yScale)("colors",n.colors)("data",t)("activeEntries",n.activeEntries)("scaleType",n.scaleType)("curve",n.curve)("rangeFillOpacity",n.rangeFillOpacity)("hasRange",n.hasRange)("animations",n.animations)}}function oF(t,e){if(1&t){const t=Io();on(),Fo(0,"g"),Fo(1,"g",13),Bo("select",function(e){return Le(t),Ho(2).onClick(e)})("activate",function(e){return Le(t),Ho(2).onActivate(e)})("deactivate",function(e){return Le(t),Ho(2).onDeactivate(e)}),Lo(),Lo()}if(2&t){const t=e.$implicit,n=Ho(2);Yr(1),To("xScale",n.xScale)("yScale",n.yScale)("colors",n.colors)("data",t)("scaleType",n.scaleType)("visibleValue",n.hoveredVertical)("activeEntries",n.activeEntries)("tooltipDisabled",n.tooltipDisabled)("tooltipTemplate",n.tooltipTemplate)}}function aF(t,e){if(1&t){const t=Io();on(),Fo(0,"g",10),Bo("mouseleave",function(){return Le(t),Ho().hideCircles()}),Fo(1,"g",11),Bo("hover",function(e){return Le(t),Ho().updateHoveredVertical(e)}),Lo(),ko(2,oF,2,9,"g",12),Lo()}if(2&t){const t=Ho();Yr(1),To("dims",t.dims)("xSet",t.xSet)("xScale",t.xScale)("yScale",t.yScale)("results",t.results)("colors",t.colors)("tooltipDisabled",t.tooltipDisabled)("tooltipTemplate",t.seriesTooltipTemplate),Yr(1),To("ngForOf",t.results)}}function lF(t,e){if(1&t&&(on(),Fo(0,"g"),Mo(1,"g",15),Lo()),2&t){const t=e.$implicit,n=Ho(2);Yr(1),To("xScale",n.timelineXScale)("yScale",n.timelineYScale)("colors",n.colors)("data",t)("scaleType",n.scaleType)("curve",n.curve)("hasRange",n.hasRange)("animations",n.animations)}}function cF(t,e){if(1&t){const t=Io();on(),Fo(0,"g",14),Bo("onDomainChange",function(e){return Le(t),Ho().updateDomain(e)}),ko(1,lF,2,8,"g",4),Lo()}if(2&t){const t=Ho();To("results",t.results)("view",Ul(10,eF,t.timelineWidth,t.height))("height",t.timelineHeight)("scheme",t.scheme)("customColors",t.customColors)("scaleType",t.scaleType)("legend",t.legend),So("transform",t.timelineTransform),Yr(1),To("ngForOf",t.results)("ngForTrackBy",t.trackBy)}}const hF=["ngx-charts-line-series",""];function uF(t,e){if(1&t&&(on(),Mo(0,"g",4)),2&t){const t=Ho();To("name",t.gradientId)("stops",t.gradientStops)}}function dF(t,e){if(1&t&&(on(),Mo(0,"g",5)),2&t){const t=Ho();na("active",t.isActive(t.data))("inactive",t.isInactive(t.data)),To("data",t.data)("path",t.outerPath)("fill",t.hasGradient?t.gradientUrl:t.colors.getColor(t.data.name))("opacity",t.rangeFillOpacity)("animations",t.animations)}}let fF=(()=>{class t{constructor(t,e,n){this.applicationRef=t,this.componentFactoryResolver=e,this.injector=n}static setGlobalRootViewContainer(e){t.globalRootViewContainer=e}getRootViewContainer(){if(this._container)return this._container;if(t.globalRootViewContainer)return t.globalRootViewContainer;if(this.applicationRef.components.length)return this.applicationRef.components[0];throw new Error("View Container not found! ngUpgrade needs to manually set this via setRootViewContainer or setGlobalRootViewContainer.")}setRootViewContainer(t){this._container=t}getComponentRootNode(t){return t.element?t.element.nativeElement:t.hostView&&t.hostView.rootNodes.length>0?t.hostView.rootNodes[0]:t.location.nativeElement}getRootViewContainerNode(t){return this.getComponentRootNode(t)}projectComponentBindings(t,e){if(e){if(void 0!==e.inputs){const n=Object.getOwnPropertyNames(e.inputs);for(const i of n)t.instance[i]=e.inputs[i]}if(void 0!==e.outputs){const n=Object.getOwnPropertyNames(e.outputs);for(const i of n)t.instance[i]=e.outputs[i]}}return t}appendComponent(t,e={},n){n||(n=this.getRootViewContainer());const i=this.getComponentRootNode(n),r=new M_(i,this.componentFactoryResolver,this.applicationRef,this.injector),s=new R_(t),o=r.attach(s);return this.projectComponentBindings(o,e),o}}return t.\u0275fac=function(e){return new(e||t)(vi(Zc),vi(Na),vi(lo))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t.globalRootViewContainer=null,t})();function pF(t,e,n){let i,r,s;n=n||{};let o=null,a=0;function l(){a=!1===n.leading?0:+new Date,o=null,s=t.apply(i,r)}return function(){const c=+new Date;a||!1!==n.leading||(a=c);const h=e-(c-a);return i=this,r=arguments,h<=0?(clearTimeout(o),o=null,a=c,s=t.apply(i,r)):o||!1===n.trailing||(o=setTimeout(l,h)),s}}var gF=function(t){return t[t.top="top"]="top",t[t.bottom="bottom"]="bottom",t[t.left="left"]="left",t[t.right="right"]="right",t}({});function mF(t,e,n){return"top"===n?t.top-7:"bottom"===n?t.top+t.height-e.height+7:"center"===n?t.top+t.height/2-e.height/2:void 0}function vF(t,e,n){return"left"===n?t.left-7:"right"===n?t.left+t.width-e.width+7:"center"===n?t.left+t.width/2-e.width/2:void 0}class yF{static calculateVerticalAlignment(t,e,n){let i=mF(t,e,n);return i+e.height>window.innerHeight&&(i=window.innerHeight-e.height),i}static calculateVerticalCaret(t,e,n,i){let r;"top"===i&&(r=t.height/2-n.height/2+7),"bottom"===i&&(r=e.height-t.height/2-n.height/2-7),"center"===i&&(r=e.height/2-n.height/2);const s=mF(t,e,i);return s+e.height>window.innerHeight&&(r+=s+e.height-window.innerHeight),r}static calculateHorizontalAlignment(t,e,n){let i=vF(t,e,n);return i+e.width>window.innerWidth&&(i=window.innerWidth-e.width),i}static calculateHorizontalCaret(t,e,n,i){let r;"left"===i&&(r=t.width/2-n.width/2+7),"right"===i&&(r=e.width-t.width/2-n.width/2-7),"center"===i&&(r=e.width/2-n.width/2);const s=vF(t,e,i);return s+e.width>window.innerWidth&&(r+=s+e.width-window.innerWidth),r}static shouldFlip(t,e,n,i){let r=!1;return"right"===n&&t.left+t.width+e.width+i>window.innerWidth&&(r=!0),"left"===n&&t.left-e.width-i<0&&(r=!0),"top"===n&&t.top-e.height-i<0&&(r=!0),"bottom"===n&&t.top+t.height+e.height+i>window.innerHeight&&(r=!0),r}static positionCaret(t,e,n,i,r){let s=0,o=0;return t===gF.right?(o=-7,s=yF.calculateVerticalCaret(n,e,i,r)):t===gF.left?(o=e.width,s=yF.calculateVerticalCaret(n,e,i,r)):t===gF.top?(s=e.height,o=yF.calculateHorizontalCaret(n,e,i,r)):t===gF.bottom&&(s=-7,o=yF.calculateHorizontalCaret(n,e,i,r)),{top:s,left:o}}static positionContent(t,e,n,i,r){let s=0,o=0;return t===gF.right?(o=n.left+n.width+i,s=yF.calculateVerticalAlignment(n,e,r)):t===gF.left?(o=n.left-e.width-i,s=yF.calculateVerticalAlignment(n,e,r)):t===gF.top?(s=n.top-e.height-i,o=yF.calculateHorizontalAlignment(n,e,r)):t===gF.bottom&&(s=n.top+n.height+i,o=yF.calculateHorizontalAlignment(n,e,r)),{top:s,left:o}}static determinePlacement(t,e,n,i){if(yF.shouldFlip(n,e,t,i)){if(t===gF.right)return gF.left;if(t===gF.left)return gF.right;if(t===gF.top)return gF.bottom;if(t===gF.bottom)return gF.top}return t}}let wF=(()=>{class t{constructor(t,e){this.element=t,this.renderer=e}get cssClasses(){let t="ngx-charts-tooltip-content";return t+=" position-"+this.placement,t+=" type-"+this.type,t+=" "+this.cssClass,t}ngAfterViewInit(){setTimeout(this.position.bind(this))}position(){const t=this.element.nativeElement,e=this.host.nativeElement.getBoundingClientRect();if(!e.height&&!e.width)return;const n=t.getBoundingClientRect();this.checkFlip(e,n),this.positionContent(t,e,n),this.showCaret&&this.positionCaret(e,n),setTimeout(()=>this.renderer.addClass(t,"animate"),1)}positionContent(t,e,n){const{top:i,left:r}=yF.positionContent(this.placement,n,e,this.spacing,this.alignment);this.renderer.setStyle(t,"top",i+"px"),this.renderer.setStyle(t,"left",r+"px")}positionCaret(t,e){const n=this.caretElm.nativeElement,i=n.getBoundingClientRect(),{top:r,left:s}=yF.positionCaret(this.placement,e,t,i,this.alignment);this.renderer.setStyle(n,"top",r+"px"),this.renderer.setStyle(n,"left",s+"px")}checkFlip(t,e){this.placement=yF.determinePlacement(this.placement,e,t,this.spacing)}onWindowResize(){this.position()}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha),Do(za))},t.\u0275cmp=Pt({type:t,selectors:[["ngx-tooltip-content"]],viewQuery:function(t,e){if(1&t&&ic(aR,!0),2&t){let t;ec(t=oc())&&(e.caretElm=t.first)}},hostVars:2,hostBindings:function(t,e){1&t&&Bo("resize",function(){return e.onWindowResize()},!1,lr),2&t&&ia(e.cssClasses)},inputs:{placement:"placement",host:"host",showCaret:"showCaret",type:"type",alignment:"alignment",spacing:"spacing",cssClass:"cssClass",title:"title",template:"template",context:"context"},decls:6,vars:6,consts:[[3,"hidden"],["caretElm",""],[1,"tooltip-content"],[4,"ngIf"],[3,"innerHTML",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"innerHTML"]],template:function(t,e){var n;1&t&&(Fo(0,"div"),Mo(1,"span",0,1),Fo(3,"div",2),ko(4,hR,2,4,"span",3),ko(5,uR,1,1,"span",4),Lo(),Lo()),2&t&&(Yr(1),"tooltip-caret position-",n=e.placement,"",oa(ni,ra,Eo(Re(),"tooltip-caret position-",n,""),!0),To("hidden",!e.showCaret),Yr(3),To("ngIf",!e.title),Yr(1),To("ngIf",e.title))},directives:[Ph,Vh],styles:[".ngx-charts-tooltip-content{border-radius:3px;display:block;font-weight:400;opacity:0;pointer-events:none!important;position:fixed;z-index:5000}.ngx-charts-tooltip-content.type-popover{background:#fff;border:1px solid #72809b;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);color:#060709;font-size:13px;padding:4px}.ngx-charts-tooltip-content.type-popover .tooltip-caret{height:0;position:absolute;width:0;z-index:5001}.ngx-charts-tooltip-content.type-popover .tooltip-caret.position-left{border-bottom:7px solid transparent;border-left:7px solid #fff;border-top:7px solid transparent}.ngx-charts-tooltip-content.type-popover .tooltip-caret.position-top{border-left:7px solid transparent;border-right:7px solid transparent;border-top:7px solid #fff}.ngx-charts-tooltip-content.type-popover .tooltip-caret.position-right{border-bottom:7px solid transparent;border-right:7px solid #fff;border-top:7px solid transparent}.ngx-charts-tooltip-content.type-popover .tooltip-caret.position-bottom{border-bottom:7px solid #fff;border-left:7px solid transparent;border-right:7px solid transparent}.ngx-charts-tooltip-content.type-tooltip{background:rgba(0,0,0,.75);color:#fff;font-size:12px;padding:0 10px;pointer-events:auto;text-align:center}.ngx-charts-tooltip-content.type-tooltip .tooltip-caret.position-left{border-bottom:7px solid transparent;border-left:7px solid rgba(0,0,0,.75);border-top:7px solid transparent}.ngx-charts-tooltip-content.type-tooltip .tooltip-caret.position-top{border-left:7px solid transparent;border-right:7px solid transparent;border-top:7px solid rgba(0,0,0,.75)}.ngx-charts-tooltip-content.type-tooltip .tooltip-caret.position-right{border-bottom:7px solid transparent;border-right:7px solid rgba(0,0,0,.75);border-top:7px solid transparent}.ngx-charts-tooltip-content.type-tooltip .tooltip-caret.position-bottom{border-bottom:7px solid rgba(0,0,0,.75);border-left:7px solid transparent;border-right:7px solid transparent}.ngx-charts-tooltip-content .tooltip-label{display:block;font-size:1em;line-height:1em;padding:8px 5px 5px}.ngx-charts-tooltip-content .tooltip-val{display:block;font-size:1.3em;line-height:1em;padding:0 5px 8px}.ngx-charts-tooltip-content .tooltip-caret{height:0;position:absolute;width:0;z-index:5001}.ngx-charts-tooltip-content.position-right{transform:translate3d(10px,0,0)}.ngx-charts-tooltip-content.position-left{transform:translate3d(-10px,0,0)}.ngx-charts-tooltip-content.position-top{transform:translate3d(0,-10px,0)}.ngx-charts-tooltip-content.position-bottom{transform:translate3d(0,10px,0)}.ngx-charts-tooltip-content.animate{opacity:1;pointer-events:auto;transform:translateZ(0);transition:opacity .3s,transform .3s}.area-tooltip-container{padding:5px 0;pointer-events:none}.tooltip-item{line-height:1.2em;padding:5px 0;text-align:left}.tooltip-item .tooltip-item-color{border-radius:3px;color:#5b646b;display:inline-block;height:12px;margin-right:5px;width:12px}"],encapsulation:2}),function(t,e,n,i){var r,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(o=(s<3?r(o):s>3?r(e,n,o):r(e,n))||o);s>3&&o&&Object.defineProperty(e,n,o)}([function(t,e,n){return{configurable:!0,enumerable:n.enumerable,get:function(){return Object.defineProperty(this,e,{configurable:!0,enumerable:n.enumerable,value:pF(n.value,100,void 0)}),this[e]}}}],t.prototype,"onWindowResize",null),t})(),bF=(()=>{class t extends class{constructor(t){this.injectionService=t,this.defaults={},this.components=new Map}getByType(t=this.type){return this.components.get(t)}create(t){return this.createByType(this.type,t)}createByType(t,e){e=this.assignDefaults(e);const n=this.injectComponent(t,e);return this.register(t,n),n}destroy(t){const e=this.components.get(t.componentType);if(e&&e.length){const n=e.indexOf(t);n>-1&&(e[n].destroy(),e.splice(n,1))}}destroyAll(){this.destroyByType(this.type)}destroyByType(t){const e=this.components.get(t);if(e&&e.length){let t=e.length-1;for(;t>=0;)this.destroy(e[t--])}}injectComponent(t,e){return this.injectionService.appendComponent(t,e)}assignDefaults(t){const e=Object.assign({},this.defaults.inputs),n=Object.assign({},this.defaults.outputs);return t.inputs||t.outputs||(t={inputs:t}),e&&(t.inputs=Object.assign(Object.assign({},e),t.inputs)),n&&(t.outputs=Object.assign(Object.assign({},n),t.outputs)),t}register(t,e){this.components.has(t)||this.components.set(t,[]),this.components.get(t).push(e)}}{constructor(t){super(t),this.type=wF}}return t.\u0275fac=function(e){return new(e||t)(vi(fF))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),xF=(()=>{class t{constructor(){this.showLegend=!1,this.animations=!0,this.legendLabelClick=new jl,this.legendLabelActivate=new jl,this.legendLabelDeactivate=new jl}ngOnChanges(t){this.update()}update(){let t=0;this.showLegend&&(this.legendType=this.getLegendType(),this.legendOptions&&"right"!==this.legendOptions.position||(t="scaleLegend"===this.legendType?1:2)),this.chartWidth=Math.floor(this.view[0]*(12-t)/12),this.legendWidth=this.legendOptions&&"right"!==this.legendOptions.position?this.chartWidth:Math.floor(this.view[0]*t/12)}getLegendType(){return"linear"===this.legendOptions.scaleType?"scaleLegend":"legend"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["ngx-charts-chart"]],inputs:{showLegend:"showLegend",animations:"animations",legendType:"legendType",view:"view",legendOptions:"legendOptions",data:"data",legendData:"legendData",colors:"colors",activeEntries:"activeEntries"},outputs:{legendLabelClick:"legendLabelClick",legendLabelActivate:"legendLabelActivate",legendLabelDeactivate:"legendLabelDeactivate"},features:[Oa([bF]),oe],ngContentSelectors:pR,decls:5,vars:8,consts:[[1,"ngx-charts-outer"],[1,"ngx-charts"],["class","chart-legend",3,"horizontal","valueRange","colors","height","width",4,"ngIf"],["class","chart-legend",3,"horizontal","data","title","colors","height","width","activeEntries","labelClick","labelActivate","labelDeactivate",4,"ngIf"],[1,"chart-legend",3,"horizontal","valueRange","colors","height","width"],[1,"chart-legend",3,"horizontal","data","title","colors","height","width","activeEntries","labelClick","labelActivate","labelDeactivate"]],template:function(t,e){1&t&&(zo(),Fo(0,"div",0),on(),Fo(1,"svg",1),Wo(2),Lo(),ko(3,dR,1,5,"ngx-charts-scale-legend",2),ko(4,fR,1,7,"ngx-charts-legend",3),Lo()),2&t&&(ea("width",e.view[0],"px"),To("@animationState","active")("@.disabled",!e.animations),Yr(1),So("width",e.chartWidth)("height",e.view[1]),Yr(2),To("ngIf",e.showLegend&&"scaleLegend"===e.legendType),Yr(1),To("ngIf",e.showLegend&&"legend"===e.legendType))},directives:function(){return[Ph,QF,YF]},encapsulation:2,data:{animation:[Su("animationState",[Du(":enter",[Au({opacity:0}),Eu("500ms 100ms",Au({opacity:1}))])])]},changeDetection:0}),t})(),_F=(()=>{class t{constructor(t,e){this.element=t,this.zone=e,this.visible=new jl,this.isVisible=!1,this.runCheck()}destroy(){clearTimeout(this.timeout)}onVisibilityChange(){this.zone.run(()=>{this.isVisible=!0,this.visible.emit(!0)})}runCheck(){const t=()=>{if(!this.element)return;const{offsetHeight:e,offsetWidth:n}=this.element.nativeElement;e&&n?(clearTimeout(this.timeout),this.onVisibilityChange()):(clearTimeout(this.timeout),this.zone.runOutsideAngular(()=>{this.timeout=setTimeout(()=>t(),100)}))};this.zone.runOutsideAngular(()=>{this.timeout=setTimeout(()=>t())})}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha),Do(Lc))},t.\u0275dir=jt({type:t,selectors:[["visibility-observer"]],outputs:{visible:"visible"}}),t})(),CF=(()=>{class t{constructor(t,e,n){this.chartElement=t,this.zone=e,this.cd=n,this.scheme="cool",this.schemeType="ordinal",this.animations=!0,this.select=new jl}ngAfterViewInit(){this.bindWindowResizeEvent(),this.visibilityObserver=new _F(this.chartElement,this.zone),this.visibilityObserver.visible.subscribe(this.update.bind(this))}ngOnDestroy(){this.unbindEvents(),this.visibilityObserver&&(this.visibilityObserver.visible.unsubscribe(),this.visibilityObserver.destroy())}ngOnChanges(t){this.update()}update(){if(this.results=this.results?this.cloneData(this.results):[],this.view)this.width=this.view[0],this.height=this.view[1];else{const t=this.getContainerDims();t&&(this.width=t.width,this.height=t.height)}this.width||(this.width=600),this.height||(this.height=400),this.width=Math.floor(this.width),this.height=Math.floor(this.height),this.cd&&this.cd.markForCheck()}getContainerDims(){let t,e;const n=this.chartElement.nativeElement;if(null!==n.parentNode){const i=n.parentNode.getBoundingClientRect();t=i.width,e=i.height}return t&&e?{width:t,height:e}:null}formatDates(){for(let t=0;tn.lift(new $_(t,e))}(200)).subscribe(t=>{this.update(),this.cd&&this.cd.markForCheck()});this.resizeSubscription=t}cloneData(t){const e=[];for(const n of t){const t={name:n.name};if(void 0!==n.value&&(t.value=n.value),void 0!==n.series){t.series=[];for(const e of n.series){const n=Object.assign({},e);t.series.push(n)}}void 0!==n.extra&&(t.extra=JSON.parse(JSON.stringify(n.extra))),e.push(t)}return e}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha),Do(Lc),Do(ul))},t.\u0275cmp=Pt({type:t,selectors:[["base-chart"]],inputs:{scheme:"scheme",schemeType:"schemeType",animations:"animations",results:"results",view:"view",customColors:"customColors"},outputs:{select:"select"},features:[oe],decls:1,vars:0,template:function(t,e){1&t&&Mo(0,"div")},encapsulation:2}),t})(),SF=(()=>{class t{constructor(t){this.textHeight=25,this.margin=5,this.element=t.nativeElement}ngOnChanges(t){this.update()}update(){switch(this.strokeWidth="0.01",this.textAnchor="middle",this.transform="",this.orient){case"top":case"bottom":this.y=this.offset,this.x=this.width/2;break;case"left":this.y=-(this.offset+this.textHeight+this.margin),this.x=-this.height/2,this.transform="rotate(270)";break;case"right":this.y=this.offset+this.margin,this.x=-this.height/2,this.transform="rotate(270)"}}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha))},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-axis-label",""]],inputs:{orient:"orient",label:"label",offset:"offset",width:"width",height:"height"},features:[oe],attrs:gR,decls:2,vars:6,template:function(t,e){1&t&&(on(),Fo(0,"text"),ga(1),Lo()),2&t&&(So("stroke-width",e.strokeWidth)("x",e.x)("y",e.y)("text-anchor",e.textAnchor)("transform",e.transform),Yr(1),va(" ",e.label," "))},encapsulation:2,changeDetection:0}),t})();function EF(t,e=16){return"string"!=typeof t?"number"==typeof t?t+"":"":(t=t.trim()).length<=e?t:t.slice(0,e)+"..."}function kF(t,e){if(t.length>e){const n=[],i=Math.floor(t.length/e);for(let e=0;e{class t{constructor(){this.tickArguments=[5],this.tickStroke="#ccc",this.trimTicks=!0,this.maxTickLength=16,this.showGridLines=!1,this.rotateTicks=!0,this.dimensionsChanged=new jl,this.verticalSpacing=20,this.rotateLabels=!1,this.innerTickSize=6,this.outerTickSize=6,this.tickPadding=3,this.textAnchor="middle",this.maxTicksLength=0,this.maxAllowedLength=16,this.height=0}ngOnChanges(t){this.update()}ngAfterViewInit(){setTimeout(()=>this.updateDims())}updateDims(){const t=parseInt(this.ticksElement.nativeElement.getBoundingClientRect().height,10);t!==this.height&&(this.height=t,this.dimensionsChanged.emit({height:t}),setTimeout(()=>this.updateDims()))}update(){const t=this.scale;this.ticks=this.getTicks(),this.tickFormat=this.tickFormatting?this.tickFormatting:t.tickFormat?t.tickFormat.apply(t,this.tickArguments):function(t){return"Date"===t.constructor.name?t.toLocaleDateString():t.toLocaleString()};const e=this.rotateTicks?this.getRotationAngle(this.ticks):null;this.adjustedScale=this.scale.bandwidth?function(t){return this.scale(t)+.5*this.scale.bandwidth()}:this.scale,this.textTransform="",e&&0!==e?(this.textTransform=`rotate(${e})`,this.textAnchor="end",this.verticalSpacing=10):this.textAnchor="middle",setTimeout(()=>this.updateDims())}getRotationAngle(t){let e=0;this.maxTicksLength=0;for(let s=0;sthis.maxTicksLength&&(this.maxTicksLength=n)}const n=8*Math.min(this.maxTicksLength,this.maxAllowedLength);let i=n;const r=Math.floor(this.width/t.length);for(;i>r&&e>-90;)e-=30,i=Math.cos(e*(Math.PI/180))*n;return e}getTicks(){let t;const e=this.getMaxTicks(20),n=this.getMaxTicks(100);return this.tickValues?t=this.tickValues:this.scale.ticks?t=this.scale.ticks.apply(this.scale,[n]):(t=this.scale.domain(),t=kF(t,e)),t}getMaxTicks(t){return Math.floor(this.width/t)}tickTransform(t){return"translate("+this.adjustedScale(t)+","+this.verticalSpacing+")"}gridLineTransform(){return`translate(0,${-this.verticalSpacing-5})`}tickTrim(t){return this.trimTicks?EF(t,this.maxTickLength):t}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-x-axis-ticks",""]],viewQuery:function(t,e){if(1&t&&ic(mR,!0),2&t){let t;ec(t=oc())&&(e.ticksElement=t.first)}},inputs:{tickArguments:"tickArguments",tickStroke:"tickStroke",trimTicks:"trimTicks",maxTickLength:"maxTickLength",showGridLines:"showGridLines",rotateTicks:"rotateTicks",scale:"scale",orient:"orient",tickValues:"tickValues",tickFormatting:"tickFormatting",gridLineHeight:"gridLineHeight",width:"width"},outputs:{dimensionsChanged:"dimensionsChanged"},features:[oe],attrs:vR,decls:4,vars:2,consts:[["ticksel",""],["class","tick",4,"ngFor","ngForOf"],[4,"ngFor","ngForOf"],[1,"tick"],["stroke-width","0.01"],[4,"ngIf"],["y2","0",1,"gridline-path","gridline-path-vertical"]],template:function(t,e){1&t&&(on(),Fo(0,"g",null,0),ko(2,yR,5,7,"g",1),Lo(),ko(3,bR,2,2,"g",2)),2&t&&(Yr(2),To("ngForOf",e.ticks),Yr(1),To("ngForOf",e.ticks))},directives:[Oh,Ph],encapsulation:2,changeDetection:0}),t})(),DF=(()=>{class t{constructor(){this.rotateTicks=!0,this.showGridLines=!1,this.xOrient="bottom",this.xAxisOffset=0,this.dimensionsChanged=new jl,this.xAxisClassName="x axis",this.labelOffset=0,this.fill="none",this.stroke="stroke",this.tickStroke="#ccc",this.strokeWidth="none",this.padding=5}ngOnChanges(t){this.update()}update(){this.transform=`translate(0,${this.xAxisOffset+this.padding+this.dims.height})`,void 0!==this.xAxisTickCount&&(this.tickArguments=[this.xAxisTickCount])}emitTicksHeight({height:t}){const e=t+25+5;e!==this.labelOffset&&(this.labelOffset=e,setTimeout(()=>{this.dimensionsChanged.emit({height:t})},0))}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-x-axis",""]],viewQuery:function(t,e){if(1&t&&ic(AF,!0),2&t){let t;ec(t=oc())&&(e.ticksComponent=t.first)}},inputs:{rotateTicks:"rotateTicks",showGridLines:"showGridLines",xOrient:"xOrient",xAxisOffset:"xAxisOffset",xScale:"xScale",dims:"dims",trimTicks:"trimTicks",maxTickLength:"maxTickLength",tickFormatting:"tickFormatting",showLabel:"showLabel",labelText:"labelText",ticks:"ticks",xAxisTickInterval:"xAxisTickInterval",xAxisTickCount:"xAxisTickCount"},outputs:{dimensionsChanged:"dimensionsChanged"},features:[oe],attrs:xR,decls:3,vars:4,consts:[["ngx-charts-x-axis-ticks","",3,"trimTicks","rotateTicks","maxTickLength","tickFormatting","tickArguments","tickStroke","scale","orient","showGridLines","gridLineHeight","width","tickValues","dimensionsChanged",4,"ngIf"],["ngx-charts-axis-label","",3,"label","offset","orient","height","width",4,"ngIf"],["ngx-charts-x-axis-ticks","",3,"trimTicks","rotateTicks","maxTickLength","tickFormatting","tickArguments","tickStroke","scale","orient","showGridLines","gridLineHeight","width","tickValues","dimensionsChanged"],["ngx-charts-axis-label","",3,"label","offset","orient","height","width"]],template:function(t,e){1&t&&(on(),Fo(0,"g"),ko(1,_R,1,12,"g",0),ko(2,CR,1,5,"g",1),Lo()),2&t&&(So("class",e.xAxisClassName)("transform",e.transform),Yr(1),To("ngIf",e.xScale),Yr(1),To("ngIf",e.showLabel))},directives:[Ph,AF,SF],encapsulation:2,changeDetection:0}),t})(),TF=(()=>{class t{constructor(){this.tickArguments=[5],this.tickStroke="#ccc",this.trimTicks=!0,this.maxTickLength=16,this.showGridLines=!1,this.showRefLabels=!1,this.showRefLines=!1,this.dimensionsChanged=new jl,this.innerTickSize=6,this.tickPadding=3,this.verticalSpacing=20,this.textAnchor="middle",this.width=0,this.outerTickSize=6,this.rotateLabels=!1,this.referenceLineLength=0}ngOnChanges(t){this.update()}ngAfterViewInit(){setTimeout(()=>this.updateDims())}updateDims(){const t=parseInt(this.ticksElement.nativeElement.getBoundingClientRect().width,10);t!==this.width&&(this.width=t,this.dimensionsChanged.emit({width:t}),setTimeout(()=>this.updateDims()))}update(){let t;const e="top"===this.orient||"right"===this.orient?-1:1;switch(this.tickSpacing=Math.max(this.innerTickSize,0)+this.tickPadding,t=this.scale,this.ticks=this.getTicks(),this.tickFormat=this.tickFormatting?this.tickFormatting:t.tickFormat?t.tickFormat.apply(t,this.tickArguments):function(t){return"Date"===t.constructor.name?t.toLocaleDateString():t.toLocaleString()},this.adjustedScale=t.bandwidth?function(e){return t(e)+.5*t.bandwidth()}:t,this.showRefLines&&this.referenceLines&&this.setReferencelines(),this.orient){case"top":case"bottom":this.transform=function(t){return"translate("+this.adjustedScale(t)+",0)"},this.textAnchor="middle",this.y2=this.innerTickSize*e,this.y1=this.tickSpacing*e,this.dy=e<0?"0em":".71em";break;case"left":this.transform=function(t){return"translate(0,"+this.adjustedScale(t)+")"},this.textAnchor="end",this.x2=this.innerTickSize*-e,this.x1=this.tickSpacing*-e,this.dy=".32em";break;case"right":this.transform=function(t){return"translate(0,"+this.adjustedScale(t)+")"},this.textAnchor="start",this.x2=this.innerTickSize*-e,this.x1=this.tickSpacing*-e,this.dy=".32em"}setTimeout(()=>this.updateDims())}setReferencelines(){this.refMin=this.adjustedScale(Math.min.apply(null,this.referenceLines.map(t=>t.value))),this.refMax=this.adjustedScale(Math.max.apply(null,this.referenceLines.map(t=>t.value))),this.referenceLineLength=this.referenceLines.length,this.referenceAreaPath=function(t,e,n,i,r,[s,o,a,l]){let c="";return c="M"+[t+r,e],c+="h"+((n=0===(n=Math.floor(n))?1:n)-2*r),c+=o?`a${[r,r]} 0 0 1 ${[r,r]}`:`h${r}v${r}`,c+="v"+((i=0===(i=Math.floor(i))?1:i)-2*r),c+=l?`a${[r,r]} 0 0 1 ${[-r,r]}`:`v${r}h${-r}`,c+="h"+(2*r-n),c+=a?`a${[r,r]} 0 0 1 ${[-r,-r]}`:`h${-r}v${-r}`,c+="v"+(2*r-i),c+=s?`a${[r,r]} 0 0 1 ${[r,-r]}`:`v${-r}h${r}`,c+="z",c}(0,this.refMax,this.gridLineWidth,this.refMin-this.refMax,0,[!1,!1,!1,!1])}getTicks(){let t;const e=this.getMaxTicks(20),n=this.getMaxTicks(50);return this.tickValues?t=this.tickValues:this.scale.ticks?t=this.scale.ticks.apply(this.scale,[n]):(t=this.scale.domain(),t=kF(t,e)),t}getMaxTicks(t){return Math.floor(this.height/t)}tickTransform(t){return`translate(${this.adjustedScale(t)},${this.verticalSpacing})`}gridLineTransform(){return"translate(5,0)"}tickTrim(t){return this.trimTicks?EF(t,this.maxTickLength):t}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-y-axis-ticks",""]],viewQuery:function(t,e){if(1&t&&ic(mR,!0),2&t){let t;ec(t=oc())&&(e.ticksElement=t.first)}},inputs:{tickArguments:"tickArguments",tickStroke:"tickStroke",trimTicks:"trimTicks",maxTickLength:"maxTickLength",showGridLines:"showGridLines",showRefLabels:"showRefLabels",showRefLines:"showRefLines",scale:"scale",orient:"orient",tickValues:"tickValues",tickFormatting:"tickFormatting",gridLineWidth:"gridLineWidth",height:"height",referenceLines:"referenceLines"},outputs:{dimensionsChanged:"dimensionsChanged"},features:[oe],attrs:SR,decls:6,vars:4,consts:[["ticksel",""],["class","tick",4,"ngFor","ngForOf"],["class","reference-area",4,"ngIf"],[4,"ngFor","ngForOf"],[1,"tick"],["stroke-width","0.01"],[1,"reference-area"],[4,"ngIf"],["class","gridline-path gridline-path-horizontal","x1","0",4,"ngIf"],["x1","0",1,"gridline-path","gridline-path-horizontal"],["x1","0",1,"refline-path","gridline-path-horizontal"],[1,"refline-label"]],template:function(t,e){1&t&&(on(),Fo(0,"g",null,0),ko(2,ER,5,9,"g",1),Lo(),ko(3,kR,1,2,"path",2),ko(4,RR,2,2,"g",3),ko(5,MR,2,1,"g",3)),2&t&&(Yr(2),To("ngForOf",e.ticks),Yr(1),To("ngIf",e.referenceLineLength>1&&e.refMax&&e.refMin&&e.showRefLines),Yr(1),To("ngForOf",e.ticks),Yr(1),To("ngForOf",e.referenceLines))},directives:[Oh,Ph],encapsulation:2,changeDetection:0}),t})(),RF=(()=>{class t{constructor(){this.showGridLines=!1,this.yOrient="left",this.yAxisOffset=0,this.dimensionsChanged=new jl,this.yAxisClassName="y axis",this.labelOffset=15,this.fill="none",this.stroke="#CCC",this.tickStroke="#CCC",this.strokeWidth=1,this.padding=5}ngOnChanges(t){this.update()}update(){this.offset=-(this.yAxisOffset+this.padding),"right"===this.yOrient?(this.labelOffset=65,this.transform=`translate(${this.offset+this.dims.width} , 0)`):(this.offset=this.offset,this.transform=`translate(${this.offset} , 0)`),void 0!==this.yAxisTickCount&&(this.tickArguments=[this.yAxisTickCount])}emitTicksWidth({width:t}){t!==this.labelOffset&&"right"===this.yOrient?(this.labelOffset=t+this.labelOffset,setTimeout(()=>{this.dimensionsChanged.emit({width:t})},0)):t!==this.labelOffset&&(this.labelOffset=t,setTimeout(()=>{this.dimensionsChanged.emit({width:t})},0))}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-y-axis",""]],viewQuery:function(t,e){if(1&t&&ic(TF,!0),2&t){let t;ec(t=oc())&&(e.ticksComponent=t.first)}},inputs:{showGridLines:"showGridLines",yOrient:"yOrient",yAxisOffset:"yAxisOffset",yScale:"yScale",dims:"dims",trimTicks:"trimTicks",maxTickLength:"maxTickLength",tickFormatting:"tickFormatting",ticks:"ticks",showLabel:"showLabel",labelText:"labelText",yAxisTickInterval:"yAxisTickInterval",yAxisTickCount:"yAxisTickCount",referenceLines:"referenceLines",showRefLines:"showRefLines",showRefLabels:"showRefLabels"},outputs:{dimensionsChanged:"dimensionsChanged"},features:[oe],attrs:$R,decls:3,vars:4,consts:[["ngx-charts-y-axis-ticks","",3,"trimTicks","maxTickLength","tickFormatting","tickArguments","tickValues","tickStroke","scale","orient","showGridLines","gridLineWidth","referenceLines","showRefLines","showRefLabels","height","dimensionsChanged",4,"ngIf"],["ngx-charts-axis-label","",3,"label","offset","orient","height","width",4,"ngIf"],["ngx-charts-y-axis-ticks","",3,"trimTicks","maxTickLength","tickFormatting","tickArguments","tickValues","tickStroke","scale","orient","showGridLines","gridLineWidth","referenceLines","showRefLines","showRefLabels","height","dimensionsChanged"],["ngx-charts-axis-label","",3,"label","offset","orient","height","width"]],template:function(t,e){1&t&&(on(),Fo(0,"g"),ko(1,OR,1,14,"g",0),ko(2,IR,1,5,"g",1),Lo()),2&t&&(So("class",e.yAxisClassName)("transform",e.transform),Yr(1),To("ngIf",e.yScale),Yr(1),To("ngIf",e.showLabel))},directives:[Ph,TF,SF],encapsulation:2,changeDetection:0}),t})(),FF=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh]]}),t})();var LF=function(t){return t[t.popover="popover"]="popover",t[t.tooltip="tooltip"]="tooltip",t}({}),MF=function(t){return t[t.left="left"]="left",t[t.center="center"]="center",t[t.right="right"]="right",t}({}),$F=function(t){return t[t.all="all"]="all",t[t.focus="focus"]="focus",t[t.mouseover="mouseover"]="mouseover",t}({});let OF=(()=>{class t{constructor(t,e,n){this.tooltipService=t,this.viewContainerRef=e,this.renderer=n,this.tooltipCssClass="",this.tooltipTitle="",this.tooltipAppendToBody=!0,this.tooltipSpacing=10,this.tooltipDisabled=!1,this.tooltipShowCaret=!0,this.tooltipPlacement=gF.top,this.tooltipAlignment=MF.center,this.tooltipType=LF.popover,this.tooltipCloseOnClickOutside=!0,this.tooltipCloseOnMouseLeave=!0,this.tooltipHideTimeout=300,this.tooltipShowTimeout=100,this.tooltipShowEvent=$F.all,this.tooltipImmediateExit=!1,this.show=new jl,this.hide=new jl}get listensForFocus(){return this.tooltipShowEvent===$F.all||this.tooltipShowEvent===$F.focus}get listensForHover(){return this.tooltipShowEvent===$F.all||this.tooltipShowEvent===$F.mouseover}ngOnDestroy(){this.hideTooltip(!0)}onFocus(){this.listensForFocus&&this.showTooltip()}onBlur(){this.listensForFocus&&this.hideTooltip(!0)}onMouseEnter(){this.listensForHover&&this.showTooltip()}onMouseLeave(t){if(this.listensForHover&&this.tooltipCloseOnMouseLeave){if(clearTimeout(this.timeout),this.component&&this.component.instance.element.nativeElement.contains(t))return;this.hideTooltip(this.tooltipImmediateExit)}}onMouseClick(){this.listensForHover&&this.hideTooltip(!0)}showTooltip(t){if(this.component||this.tooltipDisabled)return;const e=t?0:this.tooltipShowTimeout;clearTimeout(this.timeout),this.timeout=setTimeout(()=>{this.tooltipService.destroyAll();const t=this.createBoundOptions();this.component=this.tooltipService.create(t),setTimeout(()=>{this.component&&this.addHideListeners(this.component.instance.element.nativeElement)},10),this.show.emit(!0)},e)}addHideListeners(t){this.mouseEnterContentEvent=this.renderer.listen(t,"mouseenter",()=>{clearTimeout(this.timeout)}),this.tooltipCloseOnMouseLeave&&(this.mouseLeaveContentEvent=this.renderer.listen(t,"mouseleave",()=>{this.hideTooltip(this.tooltipImmediateExit)})),this.tooltipCloseOnClickOutside&&(this.documentClickEvent=this.renderer.listen(document,"click",e=>{t.contains(e.target)||this.hideTooltip()}))}hideTooltip(t=!1){if(!this.component)return;const e=()=>{this.mouseLeaveContentEvent&&this.mouseLeaveContentEvent(),this.mouseEnterContentEvent&&this.mouseEnterContentEvent(),this.documentClickEvent&&this.documentClickEvent(),this.hide.emit(!0),this.tooltipService.destroy(this.component),this.component=void 0};clearTimeout(this.timeout),t?e():this.timeout=setTimeout(e,this.tooltipHideTimeout)}createBoundOptions(){return{title:this.tooltipTitle,template:this.tooltipTemplate,host:this.viewContainerRef.element,placement:this.tooltipPlacement,alignment:this.tooltipAlignment,type:this.tooltipType,showCaret:this.tooltipShowCaret,cssClass:this.tooltipCssClass,spacing:this.tooltipSpacing,context:this.tooltipContext}}}return t.\u0275fac=function(e){return new(e||t)(Do(bF),Do(Cl),Do(za))},t.\u0275dir=jt({type:t,selectors:[["","ngx-tooltip",""]],hostBindings:function(t,e){1&t&&Bo("focusin",function(){return e.onFocus()})("blur",function(){return e.onBlur()})("mouseenter",function(){return e.onMouseEnter()})("mouseleave",function(t){return e.onMouseLeave(t.target)})("click",function(){return e.onMouseClick()})},inputs:{tooltipCssClass:"tooltipCssClass",tooltipTitle:"tooltipTitle",tooltipAppendToBody:"tooltipAppendToBody",tooltipSpacing:"tooltipSpacing",tooltipDisabled:"tooltipDisabled",tooltipShowCaret:"tooltipShowCaret",tooltipPlacement:"tooltipPlacement",tooltipAlignment:"tooltipAlignment",tooltipType:"tooltipType",tooltipCloseOnClickOutside:"tooltipCloseOnClickOutside",tooltipCloseOnMouseLeave:"tooltipCloseOnMouseLeave",tooltipHideTimeout:"tooltipHideTimeout",tooltipShowTimeout:"tooltipShowTimeout",tooltipShowEvent:"tooltipShowEvent",tooltipImmediateExit:"tooltipImmediateExit",tooltipTemplate:"tooltipTemplate",tooltipContext:"tooltipContext"},outputs:{show:"show",hide:"hide"}}),t})(),IF=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:[fF,bF],imports:[[Hh]]}),t})();function PF(t){return t instanceof Date?t.toLocaleDateString():t.toLocaleString()}function NF(t){return t.toLocaleString().replace(/[&'`"<>]/g,t=>({"&":"&","'":"'","`":"`",'"':""","<":"<",">":">"}[t]))}const BF={};function UF(){let t=("0000"+(Math.random()*Math.pow(36,4)<<0).toString(36)).slice(-4);return t="a"+t,BF[t]?UF():(BF[t]=!0,t)}let VF,HF=(()=>{class t{constructor(){this.type="standard",this.tooltipDisabled=!1,this.select=new jl,this.activate=new jl,this.deactivate=new jl,this.barVisible=!1}ngOnInit(){this.gradientId="grad"+UF().toString(),this.gradientFill=`url(#${this.gradientId})`}ngOnChanges(t){this.update()}update(){this.circle=this.getActiveCircle()}getActiveCircle(){const t=this.data.series.findIndex(t=>{const e=t.name;return e&&this.visibleValue&&e.toString()===this.visibleValue.toString()&&void 0!==t.value});if(-1!==t)return this.mapDataPointToCircle(this.data.series[t],t)}mapDataPointToCircle(t,e){const n=this.data.name,i=t.value,r=t.name,s=PF(r);let o;o=this.xScale("time"===this.scaleType?r:"linear"===this.scaleType?Number(r):r);const a=this.yScale("standard"===this.type?i:t.d1),l=this.yScale.range()[0]-a;let c;return c=this.colors.getColor("linear"===this.colors.scaleType?"standard"===this.type?i:t.d1:n),{classNames:["circle-data-"+e],value:i,label:r,data:Object.assign({},t,{series:n,value:i,name:r}),cx:o,cy:a,radius:5,height:l,tooltipLabel:s,color:c,opacity:1,seriesName:n,gradientStops:this.getGradientStops(c),min:t.min,max:t.max}}getTooltipText({tooltipLabel:t,value:e,seriesName:n,min:i,max:r}){return`\n ${NF(n)} \u2022 ${NF(t)}\n ${e.toLocaleString()}${this.getTooltipMinMaxText(i,r)}\n `}getTooltipMinMaxText(t,e){if(void 0!==t||void 0!==e){let n=" (";return void 0!==t?(void 0===e&&(n+="\u2265"),n+=t.toLocaleString(),void 0!==e&&(n+=" - ")):void 0!==e&&(n+="\u2264"),void 0!==e&&(n+=e.toLocaleString()),n+=")",n}return""}getGradientStops(t){return[{offset:0,color:t,opacity:.2},{offset:100,color:t,opacity:1}]}onClick(t){this.select.emit(t)}isActive(t){return!!this.activeEntries&&void 0!==this.activeEntries.find(e=>t.name===e.name)}activateCircle(){this.barVisible=!0,this.activate.emit({name:this.data.name})}deactivateCircle(){this.barVisible=!1,this.circle.opacity=0,this.deactivate.emit({name:this.data.name})}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-circle-series",""]],inputs:{type:"type",tooltipDisabled:"tooltipDisabled",data:"data",xScale:"xScale",yScale:"yScale",colors:"colors",scaleType:"scaleType",visibleValue:"visibleValue",activeEntries:"activeEntries",tooltipTemplate:"tooltipTemplate"},outputs:{select:"select",activate:"activate",deactivate:"deactivate"},features:[oe],attrs:PR,decls:1,vars:1,consts:[[4,"ngIf"],["ngx-charts-svg-linear-gradient","","orientation","vertical",3,"name","stops"],["class","tooltip-bar",4,"ngIf"],["ngx-charts-circle","","ngx-tooltip","",1,"circle",3,"cx","cy","r","fill","pointerEvents","data","classNames","tooltipDisabled","tooltipPlacement","tooltipType","tooltipTitle","tooltipTemplate","tooltipContext","select","activate","deactivate"],[1,"tooltip-bar"]],template:function(t,e){1&t&&ko(0,UR,5,20,"g",0),2&t&&To("ngIf",e.circle)},directives:function(){return[Ph,zF,jF,OF]},encapsulation:2,data:{animation:[Su("animationState",[Du(":enter",[Au({opacity:0}),Eu(250,Au({opacity:1}))])])]},changeDetection:0}),t})(),jF=(()=>{class t{constructor(){this.select=new jl,this.activate=new jl,this.deactivate=new jl}onClick(){this.select.emit(this.data)}onMouseEnter(){this.activate.emit(this.data)}onMouseLeave(){this.deactivate.emit(this.data)}ngOnChanges(t){this.classNames=Array.isArray(this.classNames)?this.classNames.join(" "):"",this.classNames+="circle"}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-circle",""]],hostBindings:function(t,e){1&t&&Bo("click",function(){return e.onClick()})("mouseenter",function(){return e.onMouseEnter()})("mouseleave",function(){return e.onMouseLeave()})},inputs:{classNames:"classNames",cx:"cx",cy:"cy",r:"r",fill:"fill",stroke:"stroke",data:"data",circleOpacity:"circleOpacity",pointerEvents:"pointerEvents"},outputs:{select:"select",activate:"activate",deactivate:"deactivate"},features:[oe],attrs:VR,decls:1,vars:8,template:function(t,e){1&t&&(on(),Mo(0,"circle")),2&t&&So("cx",e.cx)("cy",e.cy)("r",e.r)("fill",e.fill)("stroke",e.stroke)("opacity",e.circleOpacity)("class",e.classNames)("pointer-events",e.pointerEvents)},encapsulation:2,changeDetection:0}),t})(),zF=(()=>{class t{constructor(){this.orientation="vertical"}ngOnChanges(t){this.x1="0%",this.x2="0%",this.y1="0%",this.y2="0%","horizontal"===this.orientation?this.x2="100%":"vertical"===this.orientation&&(this.y1="100%")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-svg-linear-gradient",""]],inputs:{orientation:"orientation",name:"name",stops:"stops"},features:[oe],attrs:HR,decls:2,vars:6,consts:[[3,"id"],[3,"stop-color","stop-opacity",4,"ngFor","ngForOf"]],template:function(t,e){1&t&&(on(),Fo(0,"linearGradient",0),ko(1,jR,1,5,"stop",1),Lo()),2&t&&(To("id",e.name),So("x1",e.x1)("y1",e.y1)("x2",e.x2)("y2",e.y2),Yr(1),To("ngForOf",e.stops))},directives:[Oh],encapsulation:2,changeDetection:0}),t})(),WF=(()=>{class t{constructor(t){this.opacity=1,this.startOpacity=.5,this.endOpacity=1,this.gradient=!1,this.animations=!0,this.select=new jl,this.initialized=!1,this.hasGradient=!1,this.element=t.nativeElement}ngOnChanges(t){this.initialized?this.update():(this.loadAnimation(),this.initialized=!0)}update(){this.gradientId="grad"+UF().toString(),this.gradientFill=`url(#${this.gradientId})`,this.gradient||this.stops?(this.gradientStops=this.getGradient(),this.hasGradient=!0):this.hasGradient=!1,this.updatePathEl()}loadAnimation(){this.areaPath=this.startingPath,setTimeout(this.update.bind(this),100)}updatePathEl(){const t=KC(this.element).select(".area");this.animations?t.transition().duration(750).attr("d",this.path):t.attr("d",this.path)}getGradient(){return this.stops?this.stops:[{offset:0,color:this.fill,opacity:this.startOpacity},{offset:100,color:this.fill,opacity:this.endOpacity}]}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha))},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-area",""]],inputs:{opacity:"opacity",startOpacity:"startOpacity",endOpacity:"endOpacity",gradient:"gradient",animations:"animations",data:"data",path:"path",startingPath:"startingPath",fill:"fill",activeLabel:"activeLabel",stops:"stops"},outputs:{select:"select"},features:[oe],attrs:zR,decls:2,vars:5,consts:[[4,"ngIf"],[1,"area"],["ngx-charts-svg-linear-gradient","","orientation","vertical",3,"name","stops"]],template:function(t,e){1&t&&(ko(0,WR,2,2,"defs",0),on(),Mo(1,"path",1)),2&t&&(To("ngIf",e.gradient),Yr(1),ea("opacity",e.opacity),So("d",e.areaPath)("fill",e.gradient?e.gradientFill:e.fill))},directives:[Ph,zF],encapsulation:2,changeDetection:0}),t})();"undefined"!=typeof window?VF=window:"undefined"!=typeof global&&(VF=global);const GF=VF.MouseEvent;function KF(t,e=!1,n=!0){if("function"==typeof GF)return new GF(t,{bubbles:e,cancelable:n});{const i=document.createEvent("MouseEvent");return i.initEvent(t,e,n),i}}let qF=(()=>{class t{constructor(){this.anchorOpacity=0,this.anchorPos=-1,this.anchorValues=[],this.showPercentage=!1,this.tooltipDisabled=!1,this.hover=new jl}getValues(t){const e=[];for(const n of this.results){const i=n.series.find(e=>e.name.toString()===t.toString());let r=n.name;if(r instanceof Date&&(r=r.toLocaleDateString()),i){const t=i.name;let s,o=i.value;if(this.showPercentage&&(o=(i.d1-i.d0).toFixed(2)+"%"),"linear"===this.colors.scaleType){let t=o;i.d1&&(t=i.d1),s=this.colors.getColor(t)}else s=this.colors.getColor(n.name);const a=Object.assign({},i,{value:o,name:t,series:r,min:i.min,max:i.max,color:s});e.push(a)}}return e}mouseMove(t){const e=t.pageX-t.target.getBoundingClientRect().left,n=this.findClosestPointIndex(e),i=this.xSet[n];if(this.anchorPos=this.xScale(i),this.anchorPos=Math.max(0,this.anchorPos),this.anchorPos=Math.min(this.dims.width,this.anchorPos),this.anchorValues=this.getValues(i),this.anchorPos!==this.lastAnchorPos){const t=KF("mouseleave");this.tooltipAnchor.nativeElement.dispatchEvent(t),this.anchorOpacity=.7,this.hover.emit({value:i}),this.showTooltip(),this.lastAnchorPos=this.anchorPos}}findClosestPointIndex(t){let e=0,n=this.xSet.length-1,i=Number.MAX_VALUE,r=0;for(;e<=n;){const s=(e+n)/2|0,o=this.xScale(this.xSet[s]),a=Math.abs(o-t);if(at)){i=0,r=s;break}n=s-1}}return r}showTooltip(){const t=KF("mouseenter");this.tooltipAnchor.nativeElement.dispatchEvent(t)}hideTooltip(){const t=KF("mouseleave");this.tooltipAnchor.nativeElement.dispatchEvent(t),this.anchorOpacity=0,this.lastAnchorPos=-1}getToolTipText(t){let e="";return e+=void 0!==t.series?t.series:"???",e+=": ",void 0!==t.value&&(e+=t.value.toLocaleString()),void 0===t.min&&void 0===t.max||(e+=" (",void 0!==t.min?(void 0===t.max&&(e+="\u2265"),e+=t.min.toLocaleString(),void 0!==t.max&&(e+=" - ")):void 0!==t.max&&(e+="\u2264"),void 0!==t.max&&(e+=t.max.toLocaleString()),e+=")"),e}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-tooltip-area",""]],viewQuery:function(t,e){if(1&t&&ic(GR,!0),2&t){let t;ec(t=oc())&&(e.tooltipAnchor=t.first)}},inputs:{showPercentage:"showPercentage",tooltipDisabled:"tooltipDisabled",dims:"dims",xSet:"xSet",xScale:"xScale",yScale:"yScale",results:"results",colors:"colors",tooltipTemplate:"tooltipTemplate"},outputs:{hover:"hover"},attrs:KR,decls:6,vars:18,consts:[["y","0",1,"tooltip-area",2,"opacity","0","cursor","auto",3,"mousemove","mouseleave"],["defaultTooltipTemplate",""],["y","0","ngx-tooltip","",1,"tooltip-anchor",3,"tooltipDisabled","tooltipPlacement","tooltipType","tooltipSpacing","tooltipTemplate","tooltipContext","tooltipImmediateExit"],["tooltipAnchor",""],[1,"area-tooltip-container"],["class","tooltip-item",4,"ngFor","ngForOf"],[1,"tooltip-item"],[1,"tooltip-item-color"]],template:function(t,e){if(1&t&&(on(),Fo(0,"g"),Fo(1,"rect",0),Bo("mousemove",function(t){return e.mouseMove(t)})("mouseleave",function(){return e.hideTooltip()}),Lo(),ko(2,XR,2,1,"ng-template",null,1,hc),Mo(4,"rect",2,3),Lo()),2&t){const t=Ao(3);Yr(1),So("x",0)("width",e.dims.width)("height",e.dims.height),Yr(3),ea("opacity",e.anchorOpacity)("pointer-events","none"),To("@animationState",0!==e.anchorOpacity?"active":"inactive")("tooltipDisabled",e.tooltipDisabled)("tooltipPlacement","right")("tooltipType","tooltip")("tooltipSpacing",15)("tooltipTemplate",e.tooltipTemplate?e.tooltipTemplate:t)("tooltipContext",e.anchorValues)("tooltipImmediateExit",!0),So("x",e.anchorPos)("width",1)("height",e.dims.height)}},directives:[OF,Oh],encapsulation:2,data:{animation:[Su("animationState",[Du("inactive => active",[Au({opacity:0}),Eu(250,Au({opacity:.7}))]),Du("active => inactive",[Au({opacity:.7}),Eu(250,Au({opacity:0}))])])]},changeDetection:0}),t})(),XF=(()=>{class t{constructor(t,e){this.cd=e,this.height=50,this.select=new jl,this.onDomainChange=new jl,this.initialized=!1,this.element=t.nativeElement}ngOnChanges(t){this.update(),this.initialized||(this.addBrush(),this.initialized=!0)}update(){this.dims=this.getDims(),this.height=this.dims.height;const t=this.view[1]-this.height;this.xDomain=this.getXDomain(),this.xScale=this.getXScale(),this.brush&&this.updateBrush(),this.transform=`translate(0 , ${t})`,this.filterId="filter"+UF().toString(),this.filter=`url(#${this.filterId})`,this.cd.markForCheck()}getXDomain(){let t=[];for(const n of this.results)for(const e of n.series)t.includes(e.name)||t.push(e.name);let e=[];return"time"===this.scaleType?e=[Math.min(...t),Math.max(...t)]:"linear"===this.scaleType?(t=t.map(t=>Number(t)),e=[Math.min(...t),Math.max(...t)]):e=t,e}getXScale(){let t;return"time"===this.scaleType?t=cT().range([0,this.dims.width]).domain(this.xDomain):"linear"===this.scaleType?t=ET().range([0,this.dims.width]).domain(this.xDomain):"ordinal"===this.scaleType&&(t=FT().range([0,this.dims.width]).padding(.1).domain(this.xDomain)),t}addBrush(){if(this.brush)return;const t=this.height,e=this.view[0];this.brush=function(t){var e,n=Fk,i=Rk,r=Lk,s=!0,o=tS("start","brush","end"),a=6;function l(e){var n=e.property("__brush",g).selectAll(".overlay").data([Tk("overlay")]);n.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Sk.overlay).merge(n).each(function(){var t=Mk(this).extent;KC(this).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1])}),e.selectAll(".selection").data([Tk("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Sk.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var i=e.selectAll(".handle").data(t.handles,function(t){return t.type});i.exit().remove(),i.enter().append("rect").attr("class",function(t){return"handle handle--"+t.type}).attr("cursor",function(t){return Sk[t.type]}),e.each(c).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",d).filter(r).on("touchstart.brush",d).on("touchmove.brush",f).on("touchend.brush touchcancel.brush",p).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function c(){var t=KC(this),e=Mk(this).selection;e?(t.selectAll(".selection").style("display",null).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1]),t.selectAll(".handle").style("display",null).attr("x",function(t){return"e"===t.type[t.type.length-1]?e[1][0]-a/2:e[0][0]-a/2}).attr("y",function(t){return"s"===t.type[0]?e[1][1]-a/2:e[0][1]-a/2}).attr("width",function(t){return"n"===t.type||"s"===t.type?e[1][0]-e[0][0]+a:a}).attr("height",function(t){return"e"===t.type||"w"===t.type?e[1][1]-e[0][1]+a:a})):t.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function h(t,e,n){var i=t.__brush.emitter;return!i||n&&i.clean?new u(t,e,n):i}function u(t,e,n){this.that=t,this.args=e,this.state=t.__brush,this.active=0,this.clean=n}function d(){if((!e||$C.touches)&&i.apply(this,arguments)){var n,r,o,a,l,u,d,f,p,g,m,v=this,y=$C.target.__data__.type,w="selection"===(s&&$C.metaKey?y="overlay":y)?gk:s&&$C.altKey?yk:vk,b=t===Ck?null:Ak[y],x=t===_k?null:Dk[y],_=Mk(v),C=_.extent,S=_.selection,E=C[0][0],k=C[0][1],A=C[1][0],D=C[1][1],T=0,R=0,F=b&&x&&s&&$C.shiftKey,L=$C.touches?xk($C.changedTouches[0].identifier):ZS,M=L(v),$=M,O=h(v,arguments,!0).beforestart();"overlay"===y?(S&&(p=!0),_.selection=S=[[n=t===Ck?E:M[0],o=t===_k?k:M[1]],[l=t===Ck?A:n,d=t===_k?D:o]]):(n=S[0][0],o=S[0][1],l=S[1][0],d=S[1][1]),r=n,a=o,u=l,f=d;var I=KC(v).attr("pointer-events","none"),P=I.selectAll(".overlay").attr("cursor",Sk[y]);if($C.touches)O.moved=B,O.ended=V;else{var N=KC($C.view).on("mousemove.brush",B,!0).on("mouseup.brush",V,!0);s&&N.on("keydown.brush",H,!0).on("keyup.brush",j,!0),nS($C.view)}fk(),kE(v),c.call(v),O.start()}function B(){var t=L(v);!F||g||m||(Math.abs(t[0]-$[0])>Math.abs(t[1]-$[1])?m=!0:g=!0),$=t,p=!0,pk(),U()}function U(){var t;switch(T=$[0]-M[0],R=$[1]-M[1],w){case mk:case gk:b&&(T=Math.max(E-n,Math.min(A-l,T)),r=n+T,u=l+T),x&&(R=Math.max(k-o,Math.min(D-d,R)),a=o+R,f=d+R);break;case vk:b<0?(T=Math.max(E-n,Math.min(A-n,T)),r=n+T,u=l):b>0&&(T=Math.max(E-l,Math.min(A-l,T)),r=n,u=l+T),x<0?(R=Math.max(k-o,Math.min(D-o,R)),a=o+R,f=d):x>0&&(R=Math.max(k-d,Math.min(D-d,R)),a=o,f=d+R);break;case yk:b&&(r=Math.max(E,Math.min(A,n-T*b)),u=Math.max(E,Math.min(A,l+T*b))),x&&(a=Math.max(k,Math.min(D,o-R*x)),f=Math.max(k,Math.min(D,d+R*x)))}u0&&(n=r-T),x<0?d=f-R:x>0&&(o=a-R),w=mk,P.attr("cursor",Sk.selection),U());break;default:return}pk()}function j(){switch($C.keyCode){case 16:F&&(g=m=F=!1,U());break;case 18:w===yk&&(b<0?l=u:b>0&&(n=r),x<0?d=f:x>0&&(o=a),w=vk,U());break;case 32:w===mk&&($C.altKey?(b&&(l=u-T*b,n=r+T*b),x&&(d=f-R*x,o=a+R*x),w=yk):(b<0?l=u:b>0&&(n=r),x<0?d=f:x>0&&(o=a),w=vk),P.attr("cursor",Sk[y]),U());break;default:return}pk()}}function f(){h(this,arguments).moved()}function p(){h(this,arguments).ended()}function g(){var e=this.__brush||{selection:null};return e.extent=bk(n.apply(this,arguments)),e.dim=t,e}return l.move=function(e,n){e.selection?e.on("start.brush",function(){h(this,arguments).beforestart().start()}).on("interrupt.brush end.brush",function(){h(this,arguments).end()}).tween("brush",function(){var e=this,i=e.__brush,r=h(e,arguments),s=i.selection,o=t.input("function"==typeof n?n.apply(this,arguments):n,i.extent),a=YS(s,o);function l(t){i.selection=1===t&&null===o?null:a(t),c.call(e),r.brush()}return null!==s&&null!==o?l:l(1)}):e.each(function(){var e=this,i=arguments,r=e.__brush,s=t.input("function"==typeof n?n.apply(e,i):n,r.extent),o=h(e,i).beforestart();kE(e),r.selection=null===s?null:s,c.call(e),o.start().brush().end()})},l.clear=function(t){l.move(t,null)},u.prototype={beforestart:function(){return 1==++this.active&&(this.state.emitter=this,this.starting=!0),this},start:function(){return this.starting?(this.starting=!1,this.emit("start")):this.emit("brush"),this},brush:function(){return this.emit("brush"),this},end:function(){return 0==--this.active&&(delete this.state.emitter,this.emit("end")),this},emit:function(e){!function(t,e,n,i){var r=$C;t.sourceEvent=$C,$C=t;try{e.apply(n,i)}finally{$C=r}}(new dk(l,e,t.output(this.state.selection)),o.apply,o,[e,this.that,this.args])}},l.extent=function(t){return arguments.length?(n="function"==typeof t?t:uk(bk(t)),l):n},l.filter=function(t){return arguments.length?(i="function"==typeof t?t:uk(!!t),l):i},l.touchable=function(t){return arguments.length?(r="function"==typeof t?t:uk(!!t),l):r},l.handleSize=function(t){return arguments.length?(a=+t,l):a},l.keyModifiers=function(t){return arguments.length?(s=!!t,l):s},l.on=function(){var t=o.on.apply(o,arguments);return t===o?l:t},l}(_k).extent([[0,0],[e,t]]).on("brush end",()=>{const t=($C.selection||this.xScale.range()).map(this.xScale.invert);this.onDomainChange.emit(t),this.cd.markForCheck()}),KC(this.element).select(".brush").call(this.brush)}updateBrush(){this.brush&&(this.brush.extent([[0,0],[this.view[0],this.height]]),KC(this.element).select(".brush").call(this.brush),KC(this.element).select(".selection").attr("fill",void 0).attr("stroke",void 0).attr("fill-opacity",void 0),this.cd.markForCheck())}getDims(){return{width:this.view[0],height:this.height}}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha),Do(ul))},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-timeline",""]],inputs:{height:"height",view:"view",state:"state",results:"results",scheme:"scheme",customColors:"customColors",legend:"legend",miniChart:"miniChart",autoScale:"autoScale",scaleType:"scaleType"},outputs:{select:"select",onDomainChange:"onDomainChange"},features:[oe],attrs:YR,ngContentSelectors:pR,decls:7,vars:4,consts:[[1,"timeline"],["in","SourceGraphic","type","matrix","values","0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0"],[1,"embedded-chart"],["x","0","y","0",1,"brush-background"],[1,"brush"]],template:function(t,e){1&t&&(zo(),on(),Fo(0,"g",0),Fo(1,"filter"),Mo(2,"feColorMatrix",1),Lo(),Fo(3,"g",2),Wo(4),Lo(),Mo(5,"rect",3),Mo(6,"g",4),Lo()),2&t&&(So("transform",e.transform),Yr(1),So("id",e.filterId),Yr(4),So("width",e.view[0])("height",e.height))},styles:[".timeline .brush-background{fill:rgba(0,0,0,.05)}.timeline .brush .selection{fill:rgba(0,0,0,.1);stroke:#888;stroke-width:1px}.timeline .brush .handle{fill-opacity:0}.timeline .embedded-chart{opacity:.6}"],encapsulation:2,changeDetection:0}),t})(),YF=(()=>{class t{constructor(t){this.cd=t,this.horizontal=!1,this.labelClick=new jl,this.labelActivate=new jl,this.labelDeactivate=new jl,this.legendEntries=[]}ngOnChanges(t){this.update()}update(){this.cd.markForCheck(),this.legendEntries=this.getLegendEntries()}getLegendEntries(){const t=[];for(const e of this.data){const n=PF(e);-1===t.findIndex(t=>t.label===n)&&t.push({label:e,formattedLabel:n,color:this.colors.getColor(e)})}return t}isActive(t){return!!this.activeEntries&&void 0!==this.activeEntries.find(e=>t.label===e.name)}activate(t){this.labelActivate.emit(t)}deactivate(t){this.labelDeactivate.emit(t)}trackBy(t,e){return e.label}}return t.\u0275fac=function(e){return new(e||t)(Do(ul))},t.\u0275cmp=Pt({type:t,selectors:[["ngx-charts-legend"]],inputs:{horizontal:"horizontal",data:"data",title:"title",colors:"colors",height:"height",width:"width",activeEntries:"activeEntries"},outputs:{labelClick:"labelClick",labelActivate:"labelActivate",labelDeactivate:"labelDeactivate"},features:[oe],decls:5,vars:9,consts:[["class","legend-title",4,"ngIf"],[1,"legend-wrap"],[1,"legend-labels"],["class","legend-label",4,"ngFor","ngForOf","ngForTrackBy"],[1,"legend-title"],[1,"legend-title-text"],[1,"legend-label"],[3,"label","formattedLabel","color","isActive","select","activate","deactivate"]],template:function(t,e){1&t&&(Fo(0,"div"),ko(1,JR,3,1,"header",0),Fo(2,"div",1),Fo(3,"ul",2),ko(4,QR,2,4,"li",3),Lo(),Lo(),Lo()),2&t&&(ea("width",e.width,"px"),Yr(1),To("ngIf",(null==e.title?null:e.title.length)>0),Yr(2),ea("max-height",e.height-45,"px"),na("horizontal-legend",e.horizontal),Yr(1),To("ngForOf",e.legendEntries)("ngForTrackBy",e.trackBy))},directives:function(){return[Ph,Oh,JF]},styles:[".chart-legend{display:inline-block;padding:0;width:auto!important}.chart-legend .legend-title{font-size:14px;font-weight:700;margin-bottom:5px;margin-left:10px;overflow:hidden;white-space:nowrap}.chart-legend li,.chart-legend ul{list-style:none;margin:0;padding:0}.chart-legend .horizontal-legend li{display:inline-block}.chart-legend .legend-wrap{width:calc(100% - 10px)}.chart-legend .legend-labels{background:rgba(0,0,0,.05);border-radius:3px;float:left;line-height:85%;list-style:none;overflow-x:hidden;overflow-y:auto;text-align:left;white-space:nowrap;width:100%}.chart-legend .legend-label{color:#afb7c8;cursor:pointer;font-size:90%;margin:8px}.chart-legend .legend-label:hover{color:#000;transition:.2s}.chart-legend .legend-label .active .legend-label-text{color:#000}.chart-legend .legend-label-color{border-radius:3px;color:#5b646b;display:inline-block;height:15px;margin-right:5px;width:15px}.chart-legend .legend-label-text{font-size:12px;line-height:15px;vertical-align:top;width:calc(100% - 20px)}.chart-legend .legend-label-text,.chart-legend .legend-title-text{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-legend .legend-title-text{line-height:16px;vertical-align:bottom}"],encapsulation:2,changeDetection:0}),t})(),JF=(()=>{class t{constructor(){this.isActive=!1,this.select=new jl,this.activate=new jl,this.deactivate=new jl,this.toggle=new jl}get trimmedLabel(){return this.formattedLabel||"(empty)"}onMouseEnter(){this.activate.emit({name:this.label})}onMouseLeave(){this.deactivate.emit({name:this.label})}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["ngx-charts-legend-entry"]],hostBindings:function(t,e){1&t&&Bo("mouseenter",function(){return e.onMouseEnter()})("mouseleave",function(){return e.onMouseLeave()})},inputs:{isActive:"isActive",color:"color",label:"label",formattedLabel:"formattedLabel"},outputs:{select:"select",activate:"activate",deactivate:"deactivate",toggle:"toggle"},decls:4,vars:6,consts:[["tabindex","-1",3,"title","click"],[1,"legend-label-color",3,"click"],[1,"legend-label-text"]],template:function(t,e){1&t&&(Fo(0,"span",0),Bo("click",function(){return e.select.emit(e.formattedLabel)}),Fo(1,"span",1),Bo("click",function(){return e.toggle.emit(e.formattedLabel)}),Lo(),Fo(2,"span",2),ga(3),Lo(),Lo()),2&t&&(na("active",e.isActive),To("title",e.formattedLabel),Yr(1),ea("background-color",e.color),Yr(2),va(" ",e.trimmedLabel," "))},encapsulation:2,changeDetection:0}),t})(),QF=(()=>{class t{constructor(t){this.sanitizer=t,this.horizontal=!1}ngOnChanges(t){const e=this.gradientString(this.colors.range(),this.colors.domain());this.gradient=this.sanitizer.bypassSecurityTrustStyle(`linear-gradient(to ${this.horizontal?"right":"bottom"}, ${e})`)}gradientString(t,e){e.push(1);const n=[];return t.reverse().forEach((t,i)=>{n.push(`${t} ${Math.round(100*e[i])}%`)}),n.join(", ")}}return t.\u0275fac=function(e){return new(e||t)(Do(vu))},t.\u0275cmp=Pt({type:t,selectors:[["ngx-charts-scale-legend"]],inputs:{horizontal:"horizontal",valueRange:"valueRange",colors:"colors",height:"height",width:"width"},features:[oe],decls:8,vars:10,consts:[[1,"scale-legend"],[1,"scale-legend-label"],[1,"scale-legend-wrap"]],template:function(t,e){1&t&&(Fo(0,"div",0),Fo(1,"div",1),Fo(2,"span"),ga(3),Lo(),Lo(),Mo(4,"div",2),Fo(5,"div",1),Fo(6,"span"),ga(7),Lo(),Lo(),Lo()),2&t&&(ea("height",e.horizontal?void 0:e.height,"px")("width",e.width,"px"),na("horizontal-legend",e.horizontal),Yr(3),ma(e.valueRange[1].toLocaleString()),Yr(1),ea("background",e.gradient),Yr(3),ma(e.valueRange[0].toLocaleString()))},styles:[".chart-legend{display:inline-block;padding:0;width:auto!important}.chart-legend .scale-legend{display:flex;flex-direction:column;text-align:center}.chart-legend .scale-legend-wrap{border-radius:5px;display:inline-block;flex:1;margin:0 auto;width:30px}.chart-legend .scale-legend-label{font-size:12px}.chart-legend .horizontal-legend.scale-legend{flex-direction:row}.chart-legend .horizontal-legend .scale-legend-wrap{height:30px;margin:0 16px;width:auto}"],encapsulation:2,changeDetection:0}),t})(),ZF=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Hh,FF,IF],Hh,FF,IF]}),t})(),tL=[{name:"vivid",selectable:!0,group:"Ordinal",domain:["#647c8a","#3f51b5","#2196f3","#00b862","#afdf0a","#a7b61a","#f3e562","#ff9800","#ff5722","#ff4514"]},{name:"natural",selectable:!0,group:"Ordinal",domain:["#bf9d76","#e99450","#d89f59","#f2dfa7","#a5d7c6","#7794b1","#afafaf","#707160","#ba9383","#d9d5c3"]},{name:"cool",selectable:!0,group:"Ordinal",domain:["#a8385d","#7aa3e5","#a27ea8","#aae3f5","#adcded","#a95963","#8796c0","#7ed3ed","#50abcc","#ad6886"]},{name:"fire",selectable:!0,group:"Ordinal",domain:["#ff3d00","#bf360c","#ff8f00","#ff6f00","#ff5722","#e65100","#ffca28","#ffab00"]},{name:"solar",selectable:!0,group:"Continuous",domain:["#fff8e1","#ffecb3","#ffe082","#ffd54f","#ffca28","#ffc107","#ffb300","#ffa000","#ff8f00","#ff6f00"]},{name:"air",selectable:!0,group:"Continuous",domain:["#e1f5fe","#b3e5fc","#81d4fa","#4fc3f7","#29b6f6","#03a9f4","#039be5","#0288d1","#0277bd","#01579b"]},{name:"aqua",selectable:!0,group:"Continuous",domain:["#e0f7fa","#b2ebf2","#80deea","#4dd0e1","#26c6da","#00bcd4","#00acc1","#0097a7","#00838f","#006064"]},{name:"flame",selectable:!1,group:"Ordinal",domain:["#A10A28","#D3342D","#EF6D49","#FAAD67","#FDDE90","#DBED91","#A9D770","#6CBA67","#2C9653","#146738"]},{name:"ocean",selectable:!1,group:"Ordinal",domain:["#1D68FB","#33C0FC","#4AFFFE","#AFFFFF","#FFFC63","#FDBD2D","#FC8A25","#FA4F1E","#FA141B","#BA38D1"]},{name:"forest",selectable:!1,group:"Ordinal",domain:["#55C22D","#C1F33D","#3CC099","#AFFFFF","#8CFC9D","#76CFFA","#BA60FB","#EE6490","#C42A1C","#FC9F32"]},{name:"horizon",selectable:!1,group:"Ordinal",domain:["#2597FB","#65EBFD","#99FDD0","#FCEE4B","#FEFCFA","#FDD6E3","#FCB1A8","#EF6F7B","#CB96E8","#EFDEE0"]},{name:"neons",selectable:!1,group:"Ordinal",domain:["#FF3333","#FF33FF","#CC33FF","#0000FF","#33CCFF","#33FFFF","#33FF66","#CCFF33","#FFCC00","#FF6600"]},{name:"picnic",selectable:!1,group:"Ordinal",domain:["#FAC51D","#66BD6D","#FAA026","#29BB9C","#E96B56","#55ACD2","#B7332F","#2C83C9","#9166B8","#92E7E8"]},{name:"night",selectable:!1,group:"Ordinal",domain:["#2B1B5A","#501356","#183356","#28203F","#391B3C","#1E2B3C","#120634","#2D0432","#051932","#453080","#75267D","#2C507D","#4B3880","#752F7D","#35547D"]},{name:"nightLights",selectable:!1,group:"Ordinal",domain:["#4e31a5","#9c25a7","#3065ab","#57468b","#904497","#46648b","#32118d","#a00fb3","#1052a2","#6e51bd","#b63cc3","#6c97cb","#8671c1","#b455be","#7496c3"]}];class eL{constructor(t,e,n,i){"string"==typeof t&&(t=tL.find(e=>e.name===t)),this.colorDomain=t.domain,this.scaleType=e,this.domain=n,this.customColors=i,this.scale=this.generateColorScheme(t,e,this.domain)}generateColorScheme(t,e,n){let i;if("string"==typeof t&&(t=tL.find(e=>e.name===t)),"quantile"===e)i=MT().range(t.domain).domain(n);else if("ordinal"===e)i=DT().range(t.domain).domain(n);else if("linear"===e){const e=[...t.domain];1===e.length&&(e.push(e[0]),this.colorDomain=e);const n=kT(0,1,1/e.length);i=ET().domain(n).range(e)}return i}getColor(t){if(null==t)throw new Error("Value can not be null");if("linear"===this.scaleType){const e=ET().domain(this.domain).range([0,1]);return this.scale(e(t))}{if("function"==typeof this.customColors)return this.customColors(t);const e=t.toString();let n;return this.customColors&&this.customColors.length>0&&(n=this.customColors.find(t=>t.name.toLowerCase()===e.toLowerCase())),n?n.value:this.scale(t)}}getLinearGradientStops(t,e){void 0===e&&(e=this.domain[0]);const n=ET().domain(this.domain).range([0,1]),i=TT().domain(this.colorDomain).range([0,1]),r=this.getColor(t),s=n(e),o=this.getColor(e),a=n(t);let l=1,c=s;const h=[];for(h.push({color:o,offset:s,originalOffset:s,opacity:1});c=(a-i.bandwidth()).toFixed(4))break;h.push({color:t,offset:e,opacity:1}),c=e,l++}}if(h[h.length-1].offset<100&&h.push({color:r,offset:a,opacity:1}),a===s)h[0].offset=0,h[1].offset=100;else if(100!==h[h.length-1].offset)for(const u of h)u.offset=(u.offset-s)/(a-s)*100;return h}}let nL=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[ZF]]}),t})(),iL=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[ZF]]}),t})(),rL=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[ZF]]}),t})(),sL=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[ZF]]}),t})(),oL=(()=>{class t{constructor(t){this.element=t,this.fill="none",this.animations=!0,this.select=new jl,this.initialized=!1}ngOnChanges(t){this.initialized?this.updatePathEl():(this.initialized=!0,this.initialPath=this.path)}updatePathEl(){const t=KC(this.element.nativeElement).select(".line");this.animations?t.transition().duration(750).attr("d",this.path):t.attr("d",this.path)}}return t.\u0275fac=function(e){return new(e||t)(Do(Ha))},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-line",""]],inputs:{fill:"fill",animations:"animations",path:"path",stroke:"stroke",data:"data"},outputs:{select:"select"},features:[oe],attrs:nF,decls:1,vars:4,consts:[["stroke-width","1.5px",1,"line"]],template:function(t,e){1&t&&(on(),Mo(0,"path",0)),2&t&&(To("@animationState","active"),So("d",e.initialPath)("fill",e.fill)("stroke",e.stroke))},encapsulation:2,data:{animation:[Su("animationState",[Du(":enter",[Au({strokeDasharray:2e3,strokeDashoffset:2e3}),Eu(1e3,Au({strokeDashoffset:0}))])])]},changeDetection:0}),t})(),aL=(()=>{class t extends CF{constructor(){super(...arguments),this.legendTitle="Legend",this.legendPosition="right",this.showGridLines=!0,this.curve=OT,this.activeEntries=[],this.trimXAxisTicks=!0,this.trimYAxisTicks=!0,this.rotateXAxisTicks=!0,this.maxXAxisTickLength=16,this.maxYAxisTickLength=16,this.roundDomains=!1,this.tooltipDisabled=!1,this.showRefLines=!1,this.showRefLabels=!0,this.activate=new jl,this.deactivate=new jl,this.margin=[10,20,10,20],this.xAxisHeight=0,this.yAxisWidth=0,this.timelineHeight=50,this.timelinePadding=10}update(){super.update(),this.dims=function({width:t,height:e,margins:n,showXAxis:i=!1,showYAxis:r=!1,xAxisHeight:s=0,yAxisWidth:o=0,showXLabel:a=!1,showYLabel:l=!1,showLegend:c=!1,legendType:h="ordinal",legendPosition:u="right",columns:d=12}){let f=n[3],p=t,g=e-n[0]-n[2];if(c&&"right"===u&&(d-="ordinal"===h?2:1),p=p*d/12,p=p-n[1]-n[3],i&&(g-=5,g-=s,a)&&(g-=30),r&&(p-=5,p-=o,f+=o,f+=10,l)){const t=30;p-=t,f+=t}return p=Math.max(0,p),g=Math.max(0,g),{width:Math.floor(p),height:Math.floor(g),xOffset:Math.floor(f)}}({width:this.width,height:this.height,margins:this.margin,showXAxis:this.xAxis,showYAxis:this.yAxis,xAxisHeight:this.xAxisHeight,yAxisWidth:this.yAxisWidth,showXLabel:this.showXAxisLabel,showYLabel:this.showYAxisLabel,showLegend:this.legend,legendType:this.schemeType,legendPosition:this.legendPosition}),this.timeline&&(this.dims.height-=this.timelineHeight+this.margin[2]+this.timelinePadding),this.xDomain=this.getXDomain(),this.filteredDomain&&(this.xDomain=this.filteredDomain),this.yDomain=this.getYDomain(),this.seriesDomain=this.getSeriesDomain(),this.xScale=this.getXScale(this.xDomain,this.dims.width),this.yScale=this.getYScale(this.yDomain,this.dims.height),this.updateTimeline(),this.setColors(),this.legendOptions=this.getLegendOptions(),this.transform=`translate(${this.dims.xOffset} , ${this.margin[0]})`,this.clipPathId="clip"+UF().toString(),this.clipPath=`url(#${this.clipPathId})`}updateTimeline(){this.timeline&&(this.timelineWidth=this.dims.width,this.timelineXDomain=this.getXDomain(),this.timelineXScale=this.getXScale(this.timelineXDomain,this.timelineWidth),this.timelineYScale=this.getYScale(this.yDomain,this.timelineHeight),this.timelineTransform=`translate(${this.dims.xOffset}, ${-this.margin[2]})`)}getXDomain(){let t=function(t){const e=new Set;for(const n of t)for(const t of n.series)e.add(t.name);return Array.from(e)}(this.results);this.scaleType=function(t,e=!0){return e&&t.every(t=>t instanceof Date)?"time":t.every(t=>"number"==typeof t)?"linear":"ordinal"}(t);let e,n,i=[];return"linear"===this.scaleType&&(t=t.map(t=>Number(t))),"time"!==this.scaleType&&"linear"!==this.scaleType||(e=this.xScaleMin?this.xScaleMin:Math.min(...t),n=this.xScaleMax?this.xScaleMax:Math.max(...t)),"time"===this.scaleType?(i=[new Date(e),new Date(n)],this.xSet=[...t].sort((t,e)=>{const n=t.getTime(),i=e.getTime();return n>i?1:i>n?-1:0})):"linear"===this.scaleType?(i=[e,n],this.xSet=[...t].sort((t,e)=>t-e)):(i=t,this.xSet=t),i}getYDomain(){const t=[];for(const n of this.results)for(const e of n.series)t.indexOf(e.value)<0&&t.push(e.value),void 0!==e.min&&(this.hasRange=!0,t.indexOf(e.min)<0&&t.push(e.min)),void 0!==e.max&&(this.hasRange=!0,t.indexOf(e.max)<0&&t.push(e.max));const e=[...t];return this.autoScale||e.push(0),[this.yScaleMin?this.yScaleMin:Math.min(...e),this.yScaleMax?this.yScaleMax:Math.max(...e)]}getSeriesDomain(){return this.results.map(t=>t.name)}getXScale(t,e){let n;return"time"===this.scaleType?n=cT().range([0,e]).domain(t):"linear"===this.scaleType?(n=ET().range([0,e]).domain(t),this.roundDomains&&(n=n.nice())):"ordinal"===this.scaleType&&(n=FT().range([0,e]).padding(.1).domain(t)),n}getYScale(t,e){const n=ET().range([e,0]).domain(t);return this.roundDomains?n.nice():n}updateDomain(t){this.filteredDomain=t,this.xDomain=this.filteredDomain,this.xScale=this.getXScale(this.xDomain,this.dims.width)}updateHoveredVertical(t){this.hoveredVertical=t.value,this.deactivateAll()}hideCircles(){this.hoveredVertical=null,this.deactivateAll()}onClick(t){this.select.emit(t)}trackBy(t,e){return e.name}setColors(){let t;t="ordinal"===this.schemeType?this.seriesDomain:this.yDomain,this.colors=new eL(this.scheme,this.schemeType,t,this.customColors)}getLegendOptions(){const t={scaleType:this.schemeType,colors:void 0,domain:[],title:void 0,position:this.legendPosition};return"ordinal"===t.scaleType?(t.domain=this.seriesDomain,t.colors=this.colors,t.title=this.legendTitle):(t.domain=this.yDomain,t.colors=this.colors.scale),t}updateYAxisWidth({width:t}){this.yAxisWidth=t,this.update()}updateXAxisHeight({height:t}){this.xAxisHeight=t,this.update()}onActivate(t){this.deactivateAll(),this.activeEntries.findIndex(e=>e.name===t.name&&e.value===t.value)>-1||(this.activeEntries=[t],this.activate.emit({value:t,entries:this.activeEntries}))}onDeactivate(t){const e=this.activeEntries.findIndex(e=>e.name===t.name&&e.value===t.value);this.activeEntries.splice(e,1),this.activeEntries=[...this.activeEntries],this.deactivate.emit({value:t,entries:this.activeEntries})}deactivateAll(){this.activeEntries=[...this.activeEntries];for(const t of this.activeEntries)this.deactivate.emit({value:t,entries:[]});this.activeEntries=[]}}return t.\u0275fac=function(e){return lL(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["ngx-charts-line-chart"]],contentQueries:function(t,e,n){if(1&t&&(sc(n,ZR,!0),sc(n,tF,!0)),2&t){let t;ec(t=oc())&&(e.tooltipTemplate=t.first),ec(t=oc())&&(e.seriesTooltipTemplate=t.first)}},hostBindings:function(t,e){1&t&&Bo("mouseleave",function(){return e.hideCircles()})},inputs:{legendTitle:"legendTitle",legendPosition:"legendPosition",showGridLines:"showGridLines",curve:"curve",activeEntries:"activeEntries",trimXAxisTicks:"trimXAxisTicks",trimYAxisTicks:"trimYAxisTicks",rotateXAxisTicks:"rotateXAxisTicks",maxXAxisTickLength:"maxXAxisTickLength",maxYAxisTickLength:"maxYAxisTickLength",roundDomains:"roundDomains",tooltipDisabled:"tooltipDisabled",showRefLines:"showRefLines",showRefLabels:"showRefLabels",legend:"legend",xAxis:"xAxis",yAxis:"yAxis",showXAxisLabel:"showXAxisLabel",showYAxisLabel:"showYAxisLabel",xAxisLabel:"xAxisLabel",yAxisLabel:"yAxisLabel",autoScale:"autoScale",timeline:"timeline",gradient:"gradient",schemeType:"schemeType",rangeFillOpacity:"rangeFillOpacity",xAxisTickFormatting:"xAxisTickFormatting",yAxisTickFormatting:"yAxisTickFormatting",xAxisTicks:"xAxisTicks",yAxisTicks:"yAxisTicks",referenceLines:"referenceLines",xScaleMin:"xScaleMin",xScaleMax:"xScaleMax",yScaleMin:"yScaleMin",yScaleMax:"yScaleMax"},outputs:{activate:"activate",deactivate:"deactivate"},features:[ho],decls:11,vars:20,consts:[[3,"view","showLegend","legendOptions","activeEntries","animations","legendLabelClick","legendLabelActivate","legendLabelDeactivate"],[1,"line-chart","chart"],["ngx-charts-x-axis","",3,"xScale","dims","showGridLines","showLabel","labelText","trimTicks","rotateTicks","maxTickLength","tickFormatting","ticks","dimensionsChanged",4,"ngIf"],["ngx-charts-y-axis","",3,"yScale","dims","showGridLines","showLabel","labelText","trimTicks","maxTickLength","tickFormatting","ticks","referenceLines","showRefLines","showRefLabels","dimensionsChanged",4,"ngIf"],[4,"ngFor","ngForOf","ngForTrackBy"],[3,"mouseleave",4,"ngIf"],["ngx-charts-timeline","",3,"results","view","height","scheme","customColors","scaleType","legend","onDomainChange",4,"ngIf"],["ngx-charts-x-axis","",3,"xScale","dims","showGridLines","showLabel","labelText","trimTicks","rotateTicks","maxTickLength","tickFormatting","ticks","dimensionsChanged"],["ngx-charts-y-axis","",3,"yScale","dims","showGridLines","showLabel","labelText","trimTicks","maxTickLength","tickFormatting","ticks","referenceLines","showRefLines","showRefLabels","dimensionsChanged"],["ngx-charts-line-series","",3,"xScale","yScale","colors","data","activeEntries","scaleType","curve","rangeFillOpacity","hasRange","animations"],[3,"mouseleave"],["ngx-charts-tooltip-area","",3,"dims","xSet","xScale","yScale","results","colors","tooltipDisabled","tooltipTemplate","hover"],[4,"ngFor","ngForOf"],["ngx-charts-circle-series","",3,"xScale","yScale","colors","data","scaleType","visibleValue","activeEntries","tooltipDisabled","tooltipTemplate","select","activate","deactivate"],["ngx-charts-timeline","",3,"results","view","height","scheme","customColors","scaleType","legend","onDomainChange"],["ngx-charts-line-series","",3,"xScale","yScale","colors","data","scaleType","curve","hasRange","animations"]],template:function(t,e){1&t&&(Fo(0,"ngx-charts-chart",0),Bo("legendLabelClick",function(t){return e.onClick(t)})("legendLabelActivate",function(t){return e.onActivate(t)})("legendLabelDeactivate",function(t){return e.onDeactivate(t)}),on(),Fo(1,"defs"),Fo(2,"clipPath"),Mo(3,"rect"),Lo(),Lo(),Fo(4,"g",1),ko(5,iF,1,10,"g",2),ko(6,rF,1,12,"g",3),Fo(7,"g"),ko(8,sF,2,11,"g",4),ko(9,aF,3,9,"g",5),Lo(),Lo(),ko(10,cF,2,13,"g",6),Lo()),2&t&&(To("view",Ul(17,eF,e.width,e.height))("showLegend",e.legend)("legendOptions",e.legendOptions)("activeEntries",e.activeEntries)("animations",e.animations),Yr(2),So("id",e.clipPathId),Yr(1),So("width",e.dims.width+10)("height",e.dims.height+10)("transform","translate(-5, -5)"),Yr(1),So("transform",e.transform),Yr(1),To("ngIf",e.xAxis),Yr(1),To("ngIf",e.yAxis),Yr(1),So("clip-path",e.clipPath),Yr(1),To("ngForOf",e.results)("ngForTrackBy",e.trackBy),Yr(1),To("ngIf",!e.tooltipDisabled),Yr(1),To("ngIf",e.timeline&&"ordinal"!=e.scaleType))},directives:function(){return[xF,Ph,Oh,DF,RF,cL,qF,HF,XF]},styles:[".ngx-charts{float:left;overflow:visible}.ngx-charts .arc,.ngx-charts .bar,.ngx-charts .circle{cursor:pointer}.ngx-charts .arc.active,.ngx-charts .arc:hover,.ngx-charts .bar.active,.ngx-charts .bar:hover,.ngx-charts .card.active,.ngx-charts .card:hover,.ngx-charts .cell.active,.ngx-charts .cell:hover{opacity:.8;transition:opacity .1s ease-in-out}.ngx-charts .arc:focus,.ngx-charts .bar:focus,.ngx-charts .card:focus,.ngx-charts .cell:focus{outline:none}.ngx-charts .arc.hidden,.ngx-charts .bar.hidden,.ngx-charts .card.hidden,.ngx-charts .cell.hidden{display:none}.ngx-charts g:focus{outline:none}.ngx-charts .area-series.inactive,.ngx-charts .line-series-range.inactive,.ngx-charts .line-series.inactive,.ngx-charts .polar-series-area.inactive,.ngx-charts .polar-series-path.inactive{opacity:.2;transition:opacity .1s ease-in-out}.ngx-charts .line-highlight{display:none}.ngx-charts .line-highlight.active{display:block}.ngx-charts .area{opacity:.6}.ngx-charts .circle:hover{cursor:pointer}.ngx-charts .label{font-size:12px;font-weight:400}.ngx-charts .tooltip-anchor{fill:#000}.ngx-charts .gridline-path{fill:none;stroke:#ddd;stroke-width:1}.ngx-charts .refline-path{stroke:#a8b2c7;stroke-dasharray:5;stroke-dashoffset:5;stroke-width:1}.ngx-charts .refline-label{font-size:9px}.ngx-charts .reference-area{fill:#000;fill-opacity:.05}.ngx-charts .gridline-path-dotted{fill:none;stroke:#ddd;stroke-dasharray:1,20;stroke-dashoffset:3;stroke-width:1}.ngx-charts .grid-panel rect{fill:none}.ngx-charts .grid-panel.odd rect{fill:rgba(0,0,0,.05)}"],encapsulation:2,data:{animation:[Su("animationState",[Du(":leave",[Au({opacity:1}),Eu(500,Au({opacity:0}))])])]},changeDetection:0}),t})();const lL=zn(aL);let cL=(()=>{class t{constructor(){this.animations=!0}ngOnChanges(t){this.update()}update(){this.updateGradients();const t=this.sortData(this.data.series),e=this.getLineGenerator();this.path=e(t)||"";const n=this.getAreaGenerator();if(this.areaPath=n(t)||"",this.hasRange){const e=this.getRangeGenerator();this.outerPath=e(t)||""}if(this.hasGradient){this.stroke=this.gradientUrl;const t=this.data.series.map(t=>t.value),e=Math.max(...t);e===Math.min(...t)&&(this.stroke=this.colors.getColor(e))}else this.stroke=this.colors.getColor(this.data.name)}getLineGenerator(){return GT().x(t=>{const e=t.name;let n;return n=this.xScale("time"===this.scaleType?e:"linear"===this.scaleType?Number(e):e),n}).y(t=>this.yScale(t.value)).curve(this.curve)}getRangeGenerator(){return KT().x(t=>{const e=t.name;let n;return n=this.xScale("time"===this.scaleType?e:"linear"===this.scaleType?Number(e):e),n}).y0(t=>this.yScale("number"==typeof t.min?t.min:t.value)).y1(t=>this.yScale("number"==typeof t.max?t.max:t.value)).curve(this.curve)}getAreaGenerator(){return KT().x(t=>this.xScale(t.name)).y0(()=>this.yScale.range()[0]).y1(t=>this.yScale(t.value)).curve(this.curve)}sortData(t){return"linear"===this.scaleType?function(t,e,n="asc"){return t.sort((t,i)=>"asc"===n?t[e]-i[e]:i[e]-t[e])}(t,"name"):"time"===this.scaleType?function(t,e,n="asc"){return t.sort((t,i)=>{const r=t[e].getTime(),s=i[e].getTime();return"asc"===n?r>s?1:s>r?-1:0:r>s?-1:s>r?1:0})}(t,"name"):function(t,e,n="asc",i){return t.sort((t,r)=>{const s=r[e],o=i.indexOf(t[e]),a=i.indexOf(s);return"asc"===n?o-a:a-o})}(t,"name","asc",this.xScale.domain())}updateGradients(){if("linear"===this.colors.scaleType){this.hasGradient=!0,this.gradientId="grad"+UF().toString(),this.gradientUrl=`url(#${this.gradientId})`;const t=this.data.series.map(t=>t.value),e=Math.max(...t),n=Math.min(...t);this.gradientStops=this.colors.getLinearGradientStops(e,n),this.areaGradientStops=this.colors.getLinearGradientStops(e)}else this.hasGradient=!1,this.gradientStops=void 0,this.areaGradientStops=void 0}isActive(t){return!!this.activeEntries&&void 0!==this.activeEntries.find(e=>t.name===e.name)}isInactive(t){return!(!this.activeEntries||0===this.activeEntries.length)&&void 0===this.activeEntries.find(e=>t.name===e.name)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["g","ngx-charts-line-series",""]],inputs:{animations:"animations",data:"data",xScale:"xScale",yScale:"yScale",colors:"colors",scaleType:"scaleType",curve:"curve",activeEntries:"activeEntries",rangeFillOpacity:"rangeFillOpacity",hasRange:"hasRange"},features:[oe],attrs:hF,decls:6,vars:22,consts:[["ngx-charts-svg-linear-gradient","","orientation","vertical",3,"name","stops",4,"ngIf"],["ngx-charts-area","",1,"line-highlight",3,"data","path","fill","opacity","startOpacity","gradient","stops","animations"],["ngx-charts-line","",1,"line-series",3,"data","path","stroke","animations"],["ngx-charts-area","","class","line-series-range",3,"data","path","fill","active","inactive","opacity","animations",4,"ngIf"],["ngx-charts-svg-linear-gradient","","orientation","vertical",3,"name","stops"],["ngx-charts-area","",1,"line-series-range",3,"data","path","fill","opacity","animations"]],template:function(t,e){1&t&&(on(),Fo(0,"g"),Fo(1,"defs"),ko(2,uF,1,2,"g",0),Lo(),Mo(3,"g",1),Mo(4,"g",2),ko(5,dF,1,9,"g",3),Lo()),2&t&&(Yr(2),To("ngIf",e.hasGradient),Yr(1),na("active",e.isActive(e.data))("inactive",e.isInactive(e.data)),To("data",e.data)("path",e.areaPath)("fill",e.hasGradient?e.gradientUrl:e.colors.getColor(e.data.name))("opacity",.25)("startOpacity",0)("gradient",!0)("stops",e.areaGradientStops)("animations",e.animations),Yr(1),na("active",e.isActive(e.data))("inactive",e.isInactive(e.data)),To("data",e.data)("path",e.path)("stroke",e.stroke)("animations",e.animations),Yr(1),To("ngIf",e.hasRange))},directives:[Ph,WF,oL,zF],encapsulation:2,changeDetection:0}),t})(),hL=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[ZF]]}),t})();Math;let uL=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[ZF]]}),t})(),dL=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[ZF,uL,hL]]}),t})(),fL=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[ZF]]}),t})(),pL=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[ZF]]}),t})(),gL=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[ZF,uL,iL]]}),t})(),mL=(()=>{class t{constructor(){"undefined"!=typeof SVGElement&&void 0===SVGElement.prototype.contains&&(SVGElement.prototype.contains=HTMLDivElement.prototype.contains)}}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[ZF,nL,iL,rL,sL,hL,dL,fL,uL,pL,gL]}),t})();function vL(t,e){if(1&t&&(Fo(0,"ngb-alert",19),Mo(1,"img",20),Fo(2,"h6",21),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}function yL(t,e){if(1&t&&(Fo(0,"tr",24),Fo(1,"td"),ga(2),Lo(),Fo(3,"td"),ga(4),Fo(5,"span",25),ga(6),Lo(),Lo(),Fo(7,"td"),ga(8),Fo(9,"span",25),ga(10),Lo(),Lo(),Fo(11,"td"),ga(12),Fo(13,"span",25),ga(14),Lo(),Lo(),Fo(15,"td"),ga(16),Fo(17,"span",25),ga(18),Lo(),Lo(),Lo()),2&t){const t=e.$implicit,n=Ho(2);Yr(2),ma(t.name),Yr(2),va("",t.session_count," "),Yr(1),To("hidden",!n.showDelta),Yr(1),va("(",n.getMaxSessionCount()-t.session_count," delta)"),Yr(2),va("",t.presence_count," "),Yr(1),To("hidden",!n.showDelta),Yr(1),va("(",n.getMaxPresenceCount()-t.presence_count," delta)"),Yr(2),va("",t.match_count," "),Yr(1),To("hidden",!n.showDelta),Yr(1),va("(",n.getMaxMatchCount()-t.match_count," delta)"),Yr(2),va("",t.goroutine_count," "),Yr(1),To("hidden",!n.showDelta),Yr(1),va("(",n.getMaxGoroutineCount()-t.goroutine_count," delta)")}}function wL(t,e){if(1&t&&(Fo(0,"tbody"),ko(1,yL,19,13,"tr",22),Fo(2,"tr",3),Mo(3,"td",23),Fo(4,"th",3),ga(5),Lo(),Fo(6,"th",3),ga(7),Lo(),Fo(8,"th",3),ga(9),Lo(),Fo(10,"th",3),ga(11),Lo(),Lo(),Lo()),2&t){const t=Ho();Yr(1),To("ngForOf",t.statusData.nodes),Yr(4),ma(t.getTotalSessionCount()),Yr(2),ma(t.getMaxPresenceCount()),Yr(2),ma(t.getTotalMatchCount()),Yr(2),ma(t.getTotalGorountineCount())}}function bL(t,e){if(1&t&&(Fo(0,"option",26),ga(1),Lo()),2&t){const t=e.$implicit,n=Ho();Go("value",t),Yr(1),ma(n.ranges[t])}}const xL=function(t){return{"background-color":t}};function _L(t,e){if(1&t&&(Fo(0,"span"),Mo(1,"br"),Mo(2,"span",32),Fo(3,"span",33),ga(4),Lo(),Lo()),2&t){const t=e.$implicit;Yr(2),To("ngStyle",Bl(3,xL,t.color)),Yr(2),ya("",t.series,": ",t.value,"")}}function CL(t,e){if(1&t&&(Fo(0,"div",30),ga(1),ko(2,_L,5,5,"span",31),Lo()),2&t){const t=e.model;Yr(1),va(" ",t[0].name.toLocaleString()," "),Yr(1),To("ngForOf",t)}}function SL(t,e){if(1&t&&(Fo(0,"div",27),Fo(1,"ngx-charts-line-chart",28),ko(2,CL,3,2,"ng-template",null,29,hc),Lo(),Lo()),2&t){const t=Ho();Yr(1),To("scheme",t.colorScheme)("legend",!1)("showXAxisLabel",!1)("showYAxisLabel",!1)("animations",!1)("timeline",!1)("autoScale",!1)("xAxis",!0)("yAxis",!0)("yScaleMin",0)("roundDomains",!0)("results",t.latencyGraphData)}}function EL(t,e){if(1&t&&(Fo(0,"span"),Mo(1,"br"),Mo(2,"span",32),Fo(3,"span",33),ga(4),Lo(),Lo()),2&t){const t=e.$implicit;Yr(2),To("ngStyle",Bl(3,xL,t.color)),Yr(2),ya("",t.series,": ",t.value,"")}}function kL(t,e){if(1&t&&(Fo(0,"div",30),ga(1),ko(2,EL,5,5,"span",31),Lo()),2&t){const t=e.model;Yr(1),va(" ",t[0].name.toLocaleString()," "),Yr(1),To("ngForOf",t)}}function AL(t,e){if(1&t&&(Fo(0,"div",27),Fo(1,"ngx-charts-line-chart",34),ko(2,kL,3,2,"ng-template",null,29,hc),Lo(),Lo()),2&t){const t=Ho();Yr(1),To("scheme",t.colorScheme)("legend",!1)("showXAxisLabel",!1)("showYAxisLabel",!1)("animations",!1)("timeline",!1)("autoScale",!1)("xAxis",!0)("yAxis",!0)("yScaleMin",0)("roundDomains",!0)("results",t.rateGraphData)}}function DL(t,e){if(1&t&&(Fo(0,"span"),Mo(1,"br"),Mo(2,"span",32),Fo(3,"span",33),ga(4),Lo(),Lo()),2&t){const t=e.$implicit;Yr(2),To("ngStyle",Bl(3,xL,t.color)),Yr(2),ya("",t.series,": ",t.value,"")}}function TL(t,e){if(1&t&&(Fo(0,"div",30),ga(1),ko(2,DL,5,5,"span",31),Lo()),2&t){const t=e.model;Yr(1),va(" ",t[0].name.toLocaleString()," "),Yr(1),To("ngForOf",t)}}function RL(t,e){if(1&t&&(Fo(0,"div",27),Fo(1,"ngx-charts-line-chart",35),ko(2,TL,3,2,"ng-template",null,29,hc),Lo(),Lo()),2&t){const t=Ho();Yr(1),To("scheme",t.colorScheme)("legend",!1)("showXAxisLabel",!1)("showYAxisLabel",!1)("animations",!1)("timeline",!1)("autoScale",!1)("xAxis",!0)("yAxis",!0)("yScaleMin",0)("roundDomains",!0)("results",t.inputGraphData)}}function FL(t,e){if(1&t&&(Fo(0,"span"),Mo(1,"br"),Mo(2,"span",32),Fo(3,"span",33),ga(4),Lo(),Lo()),2&t){const t=e.$implicit;Yr(2),To("ngStyle",Bl(3,xL,t.color)),Yr(2),ya("",t.series,": ",t.value,"")}}function LL(t,e){if(1&t&&(Fo(0,"div",30),ga(1),ko(2,FL,5,5,"span",31),Lo()),2&t){const t=e.model;Yr(1),va(" ",t[0].name.toLocaleString()," "),Yr(1),To("ngForOf",t)}}function ML(t,e){if(1&t&&(Fo(0,"div",27),Fo(1,"ngx-charts-line-chart",36),ko(2,LL,3,2,"ng-template",null,29,hc),Lo(),Lo()),2&t){const t=Ho();Yr(1),To("scheme",t.colorScheme)("legend",!1)("showXAxisLabel",!1)("showYAxisLabel",!1)("animations",!1)("timeline",!1)("autoScale",!1)("xAxis",!0)("yAxis",!0)("yScaleMin",0)("roundDomains",!0)("results",t.outputGraphData)}}let $L=(()=>{class t{constructor(t,e,n){this.route=t,this.consoleService=e,this.formBuilder=n,this.error="",this.showDelta=!1,this.rateGraphData=[],this.latencyGraphData=[],this.inputGraphData=[],this.outputGraphData=[],this.ranges={1:"last 1 minute",10:"last 10 minutes",30:"last 30 minutes",60:"last 1 hour",1440:"last 24 hours"},this.rangesKeys=Object.keys(this.ranges).map(t=>+t),this.colorScheme={domain:["#5AA454","#E44D25","#1e59cf","#7aa3e5","#a8385d","#d0bd00"]},this.samples=60}ngOnInit(){this.rangeForm=this.formBuilder.group({rangeMinutes:[10]}),this.route.data.subscribe(t=>{this.initData(t[0]),this.refresh(),this.refreshTimer=Mb(0,1e3*this.calculateRateSeconds()),this.$refreshTimer=this.refreshTimer.subscribe(t=>this.refresh())},t=>{this.error=t})}refresh(){this.consoleService.getStatus("").subscribe(t=>{this.statusData=t,this.rateGraphData=this.updateData(this.rateGraphData,"avg_rate_sec",t),this.latencyGraphData=this.updateData(this.latencyGraphData,"avg_latency_ms",t),this.inputGraphData=this.updateData(this.inputGraphData,"avg_input_kbs",t),this.outputGraphData=this.updateData(this.outputGraphData,"avg_output_kbs",t)})}generateSeries(){let t=new Date;t.setMilliseconds(0);const e=[];for(let n=0;n({name:t,value:0}))}initData(t){const e=this.generateSeries();this.latencyGraphData=t.map(t=>({name:t,series:e})),this.rateGraphData=t.map(t=>({name:t,series:e})),this.inputGraphData=t.map(t=>({name:t,series:e})),this.outputGraphData=t.map(t=>({name:t,series:e}))}updateData(t,e,n){var i;const r=n.nodes,s=[],o=n.timestamp,a=t.map(t=>t.name),l=r.map(t=>t.name),c=this.setDifference(a,l);for(const h of t)c.includes(h.name)&&s.push({name:h.name,series:this.shiftData(h.series,0,o)});for(const h of r){let n=[],r={};const a=null===(i=t.find(t=>t.name===h.name))||void 0===i?void 0:i.series;n=this.shiftData(a||this.generateSeries(),h[e],o),r={name:h.name,series:n},s.push(r)}return s}shiftData(t,e,n){const i=t.slice(1);return i.push({name:new Date(n),value:e}),i}calculateRateSeconds(){return Math.floor(60*this.f.rangeMinutes.value/this.samples)}setRange(t){this.rangeForm.reset({rangeMinutes:+t.target.value}),this.reset()}reset(){this.consoleService.getStatus("").subscribe(t=>{var e;this.initData(t.nodes.map(t=>t.name)),null===(e=this.$refreshTimer)||void 0===e||e.unsubscribe(),this.refreshTimer=Mb(0,1e3*this.calculateRateSeconds()),this.$refreshTimer=this.refreshTimer.subscribe(t=>this.refresh())},t=>{this.error=t})}setDifference(t,e){const n=new Set(t);for(const i of e)n.delete(i);return Array.from(n)}get f(){return this.rangeForm.controls}ngOnDestroy(){this.$refreshTimer.unsubscribe()}getTotalSessionCount(){let t=0;return this.statusData.nodes.forEach(e=>{t+=e.session_count}),t}getMaxSessionCount(){let t=0;return this.statusData.nodes.forEach(e=>{t{t{t{t+=e.match_count}),t}getMaxGoroutineCount(){let t=0;return this.statusData.nodes.forEach(e=>{t{t+=e.goroutine_count}),t}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(sb),Do(vw))},t.\u0275cmp=Pt({type:t,selectors:[["app-status"]],decls:62,vars:10,consts:[[1,"pb-4"],["type","danger",3,"dismissible",4,"ngIf"],[1,"status-table","table","table-sm","table-striped","mb-4",3,"mouseover","mouseout"],[1,"thead-light"],["scope","col"],[4,"ngIf"],[3,"formGroup"],[1,"row","no-gutters","justify-content-end"],[1,"col-12","text-right"],["ngbDropdown","","role","group",1,"btn-group"],["formControlName","rangeMinutes",1,"custom-select","custom-select-sm","ml-3",3,"change"],[3,"value",4,"ngFor","ngForOf"],[1,"row"],[1,"col-6","d-inline-flex","justify-content-between","align-items-center"],[1,"graph-title"],[1,"d-inline"],[1,"col-6"],["class","graph",4,"ngIf"],[1,"row","mt-4"],["type","danger",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],["class","clickable",4,"ngFor","ngForOf"],[1,"border-0"],[1,"clickable"],[1,"text-muted","small",3,"hidden"],[3,"value"],[1,"graph"],["xAxisLabel","Time","yAxisLabel","Latency (ms)",3,"scheme","legend","showXAxisLabel","showYAxisLabel","animations","timeline","autoScale","xAxis","yAxis","yScaleMin","roundDomains","results"],["seriesTooltipTemplate",""],[1,"chart-legend"],[4,"ngFor","ngForOf"],[1,"legend-label-color",3,"ngStyle"],[1,"legend-label-text"],["xAxisLabel","Time","yAxisLabel","Request Count",3,"scheme","legend","showXAxisLabel","showYAxisLabel","animations","timeline","autoScale","xAxis","yAxis","yScaleMin","roundDomains","results"],["xAxisLabel","Time","yAxisLabel","Input (kb/s)",3,"scheme","legend","showXAxisLabel","showYAxisLabel","animations","timeline","autoScale","xAxis","yAxis","yScaleMin","roundDomains","results"],["xAxisLabel","Time","yAxisLabel","Output (kb/s)",3,"scheme","legend","showXAxisLabel","showYAxisLabel","animations","timeline","autoScale","xAxis","yAxis","yScaleMin","roundDomains","results"]],template:function(t,e){1&t&&(Fo(0,"h2",0),ga(1,"Status"),Lo(),ko(2,vL,4,2,"ngb-alert",1),Fo(3,"table",2),Bo("mouseover",function(){return e.showDelta=!0})("mouseout",function(){return e.showDelta=!1}),Fo(4,"thead",3),Fo(5,"tr"),Fo(6,"th",4),ga(7,"Node name"),Lo(),Fo(8,"th",4),ga(9,"Sessions"),Lo(),Fo(10,"th",4),ga(11,"Presences"),Lo(),Fo(12,"th",4),ga(13,"Authoritative Matches"),Lo(),Fo(14,"th",4),ga(15,"Goroutines"),Lo(),Lo(),Lo(),ko(16,wL,12,5,"tbody",5),Lo(),Fo(17,"form",6),Fo(18,"div",7),Fo(19,"div",8),Fo(20,"span"),ga(21,"View:"),Lo(),Fo(22,"div",9),Fo(23,"select",10),Bo("change",function(t){return e.setRange(t)}),ko(24,bL,2,2,"option",11),function(t,e){const n=Fe();let i;n.firstCreatePass?(i=function(t,e){if(e)for(let n=e.length-1;n>=0;n--){const i=e[n];if(t===i.name)return i}throw new ee("302",`The pipe '${t}' could not be found!`)}("sortNumbers",n.pipeRegistry),n.data[45]=i,i.onDestroy&&(n.destroyHooks||(n.destroyHooks=[])).push(45,i.onDestroy)):i=n.data[45];const r=i.factory||(i.factory=te(i.type)),s=vt(Do);try{const t=En(!1),e=r();En(t),function(t,e,n,i){45>=t.data.length&&(t.data[45]=null,t.blueprint[45]=null),e[45]=i}(n,Re(),0,e)}finally{vt(s)}}(),Lo(),Lo(),Lo(),Lo(),Lo(),Fo(26,"div",12),Fo(27,"div",13),Fo(28,"div",14),Fo(29,"h5",15),ga(30,"Latency"),Lo(),Fo(31,"small"),ga(32," (ms)"),Lo(),Lo(),Lo(),Fo(33,"div",13),Fo(34,"div",14),Fo(35,"h5",15),ga(36,"Rate"),Lo(),Fo(37,"small"),ga(38," (rpc/s)"),Lo(),Lo(),Lo(),Lo(),Fo(39,"div",12),Fo(40,"div",16),ko(41,SL,4,12,"div",17),Lo(),Fo(42,"div",16),ko(43,AL,4,12,"div",17),Lo(),Lo(),Fo(44,"div",18),Fo(45,"div",13),Fo(46,"div",14),Fo(47,"h5",15),ga(48,"Input"),Lo(),Fo(49,"small"),ga(50," (kb/s)"),Lo(),Lo(),Lo(),Fo(51,"div",13),Fo(52,"div",14),Fo(53,"h5",15),ga(54,"Output"),Lo(),Fo(55,"small"),ga(56," (kb/s)"),Lo(),Lo(),Lo(),Lo(),Fo(57,"div",12),Fo(58,"div",16),ko(59,RL,4,12,"div",17),Lo(),Fo(60,"div",16),ko(61,ML,4,12,"div",17),Lo(),Lo()),2&t&&(Yr(2),To("ngIf",e.error),Yr(14),To("ngIf",e.statusData),Yr(1),To("formGroup",e.rangeForm),Yr(7),To("ngForOf",function(t,e,n){const i=t+Gt,r=Re(),s=be(r,i);return function(t,e){return yo.isWrapped(e)&&(e=yo.unwrap(e),t[Ve()]=Xr),e}(r,function(t,e){return t[1].data[e].pure}(r,i)?Hl(r,Ue(),e,s.transform,n,s):s.transform(n))}(25,8,e.rangesKeys)),Yr(17),To("ngIf",e.latencyGraphData.length>0),Yr(2),To("ngIf",e.rateGraphData.length>0),Yr(16),To("ngIf",e.inputGraphData.length>0),Yr(2),To("ngIf",e.outputGraphData.length>0))},directives:function(){return[Ph,lw,Ey,uw,Ux,Oy,Sy,fw,Oh,mx,Iy,Uy,aL,Uh]},pipes:function(){return[IL]},styles:[".graph[_ngcontent-%COMP%]{height:450px;border-radius:5px;border:1px solid #dadae9}.graph-title[_ngcontent-%COMP%]{padding:.5rem .5rem .5rem 0}.table[_ngcontent-%COMP%]{table-layout:fixed}h4[_ngcontent-%COMP%]{margin-bottom:0}.status-table[_ngcontent-%COMP%]{empty-cells:hide}.status-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{background-color:#fff}.status-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-weight:500}.status-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%], .status-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{border:1px solid #dadae9;padding:.6em 1em}.status-table[_ngcontent-%COMP%] .total-row[_ngcontent-%COMP%]{border:2px solid #dadae9;background-color:#f5f5f5}.status-table[_ngcontent-%COMP%] .total-row[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{border:2px solid #dadae9}"]}),t})(),OL=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){return this.consoleService.getStatus("").pipe(U(t=>cp(t.nodes.map(t=>t.name)))).pipe(Wp(e=>(t.data=Object.assign(Object.assign({},t.data),{error:e}),cp([]))))}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),IL=(()=>{class t{transform(t){return t.sort((t,e)=>t-e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275pipe={type:(e={name:"sortNumbers",type:t,pure:!1}).type,name:e.name,factory:null,pure:!1!==e.pure,onDestroy:e.type.prototype.ngOnDestroy||null},t;var e})();var PL=n("ZR4k"),NL=n("Iab2");const BL=["fileSelector"];function UL(t,e){if(1&t&&(Fo(0,"div",8),ga(1),Lo()),2&t){const t=Ho(2);Yr(1),ma(t.dropZoneLabel)}}function VL(t,e){if(1&t){const t=Io();Fo(0,"div"),Fo(1,"input",9),Bo("click",function(e){return Le(t),Ho(2).openFileSelector(e)}),Lo(),Lo()}if(2&t){const t=Ho(2);Yr(1),Go("value",t.browseBtnLabel),To("className",t.browseBtnClassName)}}function HL(t,e){if(1&t&&(ko(0,UL,2,1,"div",6),ko(1,VL,2,2,"div",7)),2&t){const t=Ho();To("ngIf",t.dropZoneLabel),Yr(1),To("ngIf",t.showBrowseBtn)}}function jL(t,e){}const zL=function(t){return{openFileSelector:t}};class WL{constructor(t,e){this.relativePath=t,this.fileEntry=e}}let GL=(()=>{class t{constructor(t){this.template=t}}return t.\u0275fac=function(e){return new(e||t)(Do(ml))},t.\u0275dir=jt({type:t,selectors:[["","ngx-file-drop-content-tmp",""]]}),t})(),KL=(()=>{class t{constructor(t,e){this.zone=t,this.renderer=e,this.accept="*",this.directory=!1,this.multiple=!0,this.dropZoneLabel="",this.dropZoneClassName="ngx-file-drop__drop-zone",this.useDragEnter=!1,this.contentClassName="ngx-file-drop__content",this.showBrowseBtn=!1,this.browseBtnClassName="btn btn-primary btn-xs ngx-file-drop__browse-btn",this.browseBtnLabel="Browse files",this.onFileDrop=new jl,this.onFileOver=new jl,this.onFileLeave=new jl,this.isDraggingOverDropZone=!1,this.globalDraggingInProgress=!1,this.files=[],this.numOfActiveReadEntries=0,this.helperFormEl=null,this.fileInputPlaceholderEl=null,this.dropEventTimerSubscription=null,this._disabled=!1,this.openFileSelector=t=>{this.fileSelector&&this.fileSelector.nativeElement&&this.fileSelector.nativeElement.click()},this.globalDragStartListener=this.renderer.listen("document","dragstart",t=>{this.globalDraggingInProgress=!0}),this.globalDragEndListener=this.renderer.listen("document","dragend",t=>{this.globalDraggingInProgress=!1})}get disabled(){return this._disabled}set disabled(t){this._disabled=null!=t&&""+t!="false"}ngOnDestroy(){this.dropEventTimerSubscription&&(this.dropEventTimerSubscription.unsubscribe(),this.dropEventTimerSubscription=null),this.globalDragStartListener(),this.globalDragEndListener(),this.files=[],this.helperFormEl=null,this.fileInputPlaceholderEl=null}onDragOver(t){this.useDragEnter?this.preventAndStop(t):this.isDropzoneDisabled()||this.useDragEnter||(this.isDraggingOverDropZone||(this.isDraggingOverDropZone=!0,this.onFileOver.emit(t)),this.preventAndStop(t))}onDragEnter(t){!this.isDropzoneDisabled()&&this.useDragEnter&&(this.isDraggingOverDropZone||(this.isDraggingOverDropZone=!0,this.onFileOver.emit(t)),this.preventAndStop(t))}onDragLeave(t){this.isDropzoneDisabled()||(this.isDraggingOverDropZone&&(this.isDraggingOverDropZone=!1,this.onFileLeave.emit(t)),this.preventAndStop(t))}dropFiles(t){if(!this.isDropzoneDisabled()&&(this.isDraggingOverDropZone=!1,t.dataTransfer)){let e;t.dataTransfer.dropEffect="copy",e=t.dataTransfer.items?t.dataTransfer.items:t.dataTransfer.files,this.preventAndStop(t),this.checkFiles(e)}}uploadFiles(t){!this.isDropzoneDisabled()&&t.target&&(this.checkFiles(t.target.files||[]),this.resetFileInput())}checkFiles(t){for(let e=0;e{t(n)}},e=new WL(t.name,t);this.addToQueue(e)}}this.dropEventTimerSubscription&&this.dropEventTimerSubscription.unsubscribe(),this.dropEventTimerSubscription=Mb(200,200).subscribe(()=>{if(this.files.length>0&&0===this.numOfActiveReadEntries){const t=this.files;this.files=[],this.onFileDrop.emit(t)}})}traverseFileTree(t,e){if(t.isFile){const n=new WL(e,t);this.files.push(n)}else{e+="/";const n=t.createReader();let i=[];const r=()=>{this.numOfActiveReadEntries++,n.readEntries(n=>{if(n.length)i=i.concat(n),r();else if(0===i.length){const n=new WL(e,t);this.zone.run(()=>{this.addToQueue(n)})}else for(let t=0;t{this.traverseFileTree(i[t],e+i[t].name)});this.numOfActiveReadEntries--})};r()}}resetFileInput(){if(this.fileSelector&&this.fileSelector.nativeElement){const t=this.fileSelector.nativeElement,e=t.parentElement,n=this.getHelperFormElement(),i=this.getFileInputPlaceholderElement();e!==n&&(this.renderer.insertBefore(e,i,t),this.renderer.appendChild(n,t),n.reset(),this.renderer.insertBefore(e,t,i),this.renderer.removeChild(e,i))}}getHelperFormElement(){return this.helperFormEl||(this.helperFormEl=this.renderer.createElement("form")),this.helperFormEl}getFileInputPlaceholderElement(){return this.fileInputPlaceholderEl||(this.fileInputPlaceholderEl=this.renderer.createElement("div")),this.fileInputPlaceholderEl}canGetAsEntry(t){return!!t.webkitGetAsEntry}isDropzoneDisabled(){return this.globalDraggingInProgress||this.disabled}addToQueue(t){this.files.push(t)}preventAndStop(t){t.stopPropagation(),t.preventDefault()}}return t.\u0275fac=function(e){return new(e||t)(Do(Lc),Do(za))},t.\u0275cmp=Pt({type:t,selectors:[["ngx-file-drop"]],contentQueries:function(t,e,n){if(1&t&&sc(n,GL,!0,ml),2&t){let t;ec(t=oc())&&(e.contentTemplate=t.first)}},viewQuery:function(t,e){if(1&t&&nc(BL,!0),2&t){let t;ec(t=oc())&&(e.fileSelector=t.first)}},inputs:{accept:"accept",directory:"directory",multiple:"multiple",dropZoneLabel:"dropZoneLabel",dropZoneClassName:"dropZoneClassName",useDragEnter:"useDragEnter",contentClassName:"contentClassName",showBrowseBtn:"showBrowseBtn",browseBtnClassName:"browseBtnClassName",browseBtnLabel:"browseBtnLabel",disabled:"disabled"},outputs:{onFileDrop:"onFileDrop",onFileOver:"onFileOver",onFileLeave:"onFileLeave"},decls:7,vars:15,consts:[[3,"className","drop","dragover","dragenter","dragleave"],[3,"className"],["type","file",1,"ngx-file-drop__file-input",3,"accept","multiple","change"],["fileSelector",""],["defaultContentTemplate",""],[3,"ngTemplateOutlet","ngTemplateOutletContext"],["class","ngx-file-drop__drop-zone-label",4,"ngIf"],[4,"ngIf"],[1,"ngx-file-drop__drop-zone-label"],["type","button",3,"className","value","click"]],template:function(t,e){if(1&t&&(Fo(0,"div",0),Bo("drop",function(t){return e.dropFiles(t)})("dragover",function(t){return e.onDragOver(t)})("dragenter",function(t){return e.onDragEnter(t)})("dragleave",function(t){return e.onDragLeave(t)}),Fo(1,"div",1),Fo(2,"input",2,3),Bo("change",function(t){return e.uploadFiles(t)}),Lo(),ko(4,HL,2,2,"ng-template",null,4,hc),ko(6,jL,0,0,"ng-template",5),Lo(),Lo()),2&t){const t=Ao(5);na("ngx-file-drop__drop-zone--over",e.isDraggingOverDropZone),To("className",e.dropZoneClassName),Yr(1),To("className",e.contentClassName),Yr(1),To("accept",e.accept)("multiple",e.multiple),So("directory",e.directory||void 0)("webkitdirectory",e.directory||void 0)("mozdirectory",e.directory||void 0)("msdirectory",e.directory||void 0)("odirectory",e.directory||void 0),Yr(4),To("ngTemplateOutlet",e.contentTemplate||t)("ngTemplateOutletContext",Bl(13,zL,e.openFileSelector))}},directives:[Vh,Ph],styles:[".ngx-file-drop__drop-zone[_ngcontent-%COMP%]{border:2px dotted #0782d0;border-radius:30px;height:100px;margin:auto}.ngx-file-drop__drop-zone--over[_ngcontent-%COMP%]{background-color:hsla(0,0%,57.6%,.5)}.ngx-file-drop__content[_ngcontent-%COMP%]{align-items:center;color:#0782d0;display:flex;height:100px;justify-content:center}.ngx-file-drop__drop-zone-label[_ngcontent-%COMP%]{text-align:center}.ngx-file-drop__file-input[_ngcontent-%COMP%]{display:none}"]}),t})(),qL=(()=>{class t{}return t.\u0275mod=Vt({type:t,bootstrap:function(){return[KL]}}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:[],imports:[[Hh]]}),t})();function XL(t,e){1&t&&(Fo(0,"ngb-alert",22),Mo(1,"img",23),Fo(2,"h6",24),ga(3,"Failed to retrieve configuration."),Lo(),Lo()),2&t&&To("dismissible",!1)}function YL(t,e){if(1&t&&(Fo(0,"span",33),ga(1),Lo()),2&t){const t=Ho(2).$implicit;To("id",t.name),Yr(1),ma(t.value)}}function JL(t,e){1&t&&(Fo(0,"span",34),ga(1,"(empty)"),Lo()),2&t&&To("id",Ho(2).$implicit.name)}function QL(t,e){if(1&t&&(Fo(0,"div",35),Fo(1,"b"),ga(2),Lo(),Fo(3,"label",27),Fo(4,"a",28),Mo(5,"img",10),Lo(),Lo(),Lo()),2&t){const t=Ho(2).index,e=Ho();Yr(2),ma(e.flatConfig[t+1].name),Yr(1),To("for",e.flatConfig[t+1].name),Yr(1),Ko("href","https://heroiclabs.com/docs/install-configuration/#",e.flatConfig[t+1].name,"",tr)}}function ZL(t,e){if(1&t&&(Fo(0,"span",33),ga(1),Lo()),2&t){const t=Ho(3).index,e=Ho();To("id",e.flatConfig[t+1].name),Yr(1),ma(e.flatConfig[t+1].value)}}function tM(t,e){if(1&t&&(Fo(0,"span",34),ga(1,"(empty)"),Lo()),2&t){const t=Ho(3).index;To("id",Ho().flatConfig[t+1].name)}}function eM(t,e){if(1&t&&(Fo(0,"div",36),ko(1,ZL,2,2,"span",29),ko(2,tM,2,1,"span",30),Lo()),2&t){const t=Ho(2).index,e=Ho();Yr(1),To("ngIf",!e.isEmpty(e.flatConfig[t+1].value)),Yr(1),To("ngIf",e.isEmpty(e.flatConfig[t+1].value))}}function nM(t,e){if(1&t&&(Fo(0,"div",26),Fo(1,"div",7),Fo(2,"b"),ga(3),Lo(),Fo(4,"label",27),Fo(5,"a",28),Mo(6,"img",10),Lo(),Lo(),Lo(),Fo(7,"div",7),ko(8,YL,2,2,"span",29),ko(9,JL,2,1,"span",30),Lo(),ko(10,QL,6,3,"div",31),ko(11,eM,3,2,"div",32),Lo()),2&t){const t=Ho(),e=t.index,n=t.$implicit,i=Ho();na("border-top-0",e>0),Yr(3),ma(n.name),Yr(1),To("for",n.name),Yr(1),Ko("href","https://heroiclabs.com/docs/install-configuration/#",n.value.name,"",tr),Yr(3),To("ngIf",!i.isEmpty(n.value)),Yr(1),To("ngIf",i.isEmpty(n.value)),Yr(1),To("ngIf",e{class t{constructor(t,e,n,i,r,s){this.config=t,this.route=e,this.httpClient=n,this.modalService=i,this.consoleService=r,this.formBuilder=s,this.configError="",this.uploadError="",this.deleteError="",this.uploading=!1,this.uploadSuccess=!1,this.deleteSuccess=!1,this.deleting=!1,this.apiConfig=t}ngOnInit(){this.route.data.subscribe(t=>{this.nakamaVersion=t[0].server_version;const e=JSON.parse(t[0].config);this.jsonConfig=e,this.flatConfig=this.flattenConfig(e)},t=>{this.configError=t}),this.confirmDeleteForm=this.formBuilder.group({delete:["",ly.compose([ly.required,ly.pattern("DELETE")])]})}flattenConfig(t){const e=[];return this.traverseConfig("",t,e),e.sort((t,e)=>t.name.localeCompare(e.name))}traverseConfig(t,e,n){for(const i in e)"env"!==i&&(Array.isArray(e[i])?n.push({name:t+i,value:e[i].join(", ")}):"object"==typeof e[i]?this.traverseConfig(i+".",e[i],n):n.push({name:t+i,value:e[i]}))}isEmpty(t){return""===t||0===t}exportYaml(){const t=new Blob([Object(PL.safeDump)(this.jsonConfig)],{type:"text/yaml;charset=utf-8"});NL.saveAs(t,"config.yaml")}dropped(t){this.uploadError="",this.uploadSuccess=!1;for(const e of t)if(e.fileEntry.isFile){const t=e.fileEntry.name.split("."),n=["json","csv"];t.length>1&&n.includes(t[t.length-1].toLowerCase())?e.fileEntry.file(t=>{this.uploadFile(t)}):this.uploadError="Invalid file: must have extension .json or .csv"}}uploadFile(t){const e=new FormData;e.append(t.name,t),this.uploading=!0,this.httpClient.post(this.apiConfig.host+"/v2/console/storage/import",e,{headers:{Authorization:"Bearer "}}).subscribe(()=>{this.uploading=!1,this.uploadSuccess=!0},t=>{this.uploading=!1,this.uploadError=t})}deleteData(){this.deleteError="",this.deleting=!0,this.consoleService.deleteAccounts("").pipe(Zb(2e3)).subscribe(()=>{this.deleting=!1,this.deleteError="",this.deleteSuccess=!0},t=>{this.deleting=!1,this.deleteError=t})}openDeleteDataModal(t){this.modalService.open(t,{centered:!0}).result.then(()=>{this.deleteData()},()=>{})}get f(){return this.confirmDeleteForm.controls}ngOnDestroy(){}}return t.\u0275fac=function(e){return new(e||t)(Do(rb),Do(lm),Do(Hw),Do(Qx),Do(sb),Do(vw))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:45,vars:11,consts:[["type","danger",3,"dismissible",4,"ngIf"],[1,"pb-4"],[1,"d-flex","justify-content-between","mb-4","align-items-baseline"],[1,"btn","btn-primary","btn-sm",3,"click"],[1,"config-table"],[4,"ngFor","ngForOf"],[1,"row","py-2","border","border-top-0","add-border-larger","mb-5"],[1,"col-lg-3"],[1,"pl-1"],["target","_blank","href","https://heroiclabs.com/docs/install-configuration/#runtime.env",1,"d-inline"],["src","/static/svg/hint.svg","alt","","width","16","height",""],[1,"col-lg-9"],[4,"ngIf"],[1,"section-divider","d-flex","mb-4"],["type","success",3,"dismissible","close",4,"ngIf"],["accept",".json,.csv","dropZoneClassName","drop-zone","contentClassName","drop-zone-content","dropZoneLabel","Drop CSV or JSON file here",3,"disabled","onFileDrop"],["ngx-file-drop-content-tmp",""],["role","alert",1,"alert","alert-danger","d-flex","justify-content-between","align-items-center"],["src","/static/svg/red-triangle.svg","alt","","width","16","height",""],[1,"pl-2"],["confirmDelete",""],["type","button",1,"btn","btn-danger",3,"disabled","click"],["type","danger",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],["class","row py-2 border",3,"border-top-0",4,"ngIf"],[1,"row","py-2","border"],[1,"pl-1",3,"for"],["target","_blank",1,"d-inline",3,"href"],["class","text-break-all",3,"id",4,"ngIf"],["class","text-muted",3,"id",4,"ngIf"],["class","col-md-3 left-line",4,"ngIf"],["class","col-md-3",4,"ngIf"],[1,"text-break-all",3,"id"],[1,"text-muted",3,"id"],[1,"col-md-3","left-line"],[1,"col-md-3"],["class","mb-0 text-break-all",4,"ngFor","ngForOf"],[1,"mb-0","text-break-all"],[1,"mb-0","text-muted"],[1,"mb-0","pl-4"],["type","success",3,"dismissible","close"],["src","/static/svg/green-tick.svg","alt","","width","16","height","",1,"mr-2"],["type","button",1,"btn","btn-primary",3,"click"],[1,"modal-header"],[1,"modal-title"],["type","button","aria-describedby","modal-title",1,"close",3,"click"],["aria-hidden","true"],[1,"modal-body"],[1,"d-flex","flex-column","justify-content-center"],[1,"mt-2"],[3,"formGroup"],["type","text","id","delete-confirm","placeholder","Type 'DELETE' to confirm","formControlName","delete",1,"form-control",3,"ngClass"],[1,"modal-footer"],["type","button",1,"btn","btn-outline-secondary",3,"click"]],template:function(t,e){if(1&t){const t=Io();ko(0,XL,4,1,"ngb-alert",0),Fo(1,"h2",1),ga(2,"Server Configuration"),Lo(),Fo(3,"div",2),Fo(4,"h5"),Fo(5,"b"),ga(6,"Server version:"),Lo(),ga(7),Lo(),Fo(8,"button",3),Bo("click",function(){return e.exportYaml()}),ga(9,"Export Configuration"),Lo(),Lo(),Fo(10,"div",4),ko(11,iM,2,1,"ng-container",5),Fo(12,"div",6),Fo(13,"div",7),Fo(14,"b"),ga(15,"runtime.env"),Lo(),Fo(16,"label",8),Fo(17,"a",9),Mo(18,"img",10),Lo(),Lo(),Lo(),Fo(19,"div",11),ko(20,sM,2,1,"div",12),ko(21,oM,3,0,"div",12),Lo(),Lo(),Lo(),Fo(22,"h5",13),ga(23,"Import storage data"),Lo(),Fo(24,"p"),ga(25,"Import storage objects from a CSV or JSON file by dragging and dropping it below."),Lo(),ko(26,aM,6,2,"ngb-alert",0),ko(27,lM,4,1,"ngb-alert",14),Fo(28,"ngx-file-drop",15),Bo("onFileDrop",function(t){return e.dropped(t)}),ko(29,cM,2,0,"ng-template",16),Lo(),Fo(30,"h5",13),ga(31,"Delete all data"),Lo(),Fo(32,"p"),ga(33,"Delete all user accounts and storage objects."),Lo(),ko(34,hM,6,2,"ngb-alert",0),ko(35,uM,4,1,"ngb-alert",14),Fo(36,"div",17),Fo(37,"div"),Mo(38,"img",18),Fo(39,"small",19),ga(40,"Warning - this operation is not reversible!"),Lo(),Lo(),ko(41,fM,19,5,"ng-template",null,20,hc),Fo(43,"button",21),Bo("click",function(){Le(t);const n=Ao(42);return e.openDeleteDataModal(n)}),ga(44,"Delete all"),Lo(),Lo()}2&t&&(To("ngIf",e.configError),Yr(7),va(" ",e.nakamaVersion,""),Yr(4),To("ngForOf",e.flatConfig),Yr(9),To("ngIf",e.jsonConfig.runtime&&e.jsonConfig.runtime.env&&e.jsonConfig.runtime.env.length>0),Yr(1),To("ngIf",e.jsonConfig.runtime&&e.jsonConfig.runtime.env&&0===e.jsonConfig.runtime.env.length),Yr(5),To("ngIf",e.uploadError),Yr(1),To("ngIf",e.uploadSuccess),Yr(1),To("disabled",e.uploading),Yr(6),To("ngIf",e.deleteError),Yr(1),To("ngIf",e.deleteSuccess),Yr(8),To("disabled",e.deleting))},directives:[Ph,Oh,KL,GL,mx,lw,Ey,uw,ny,Sy,fw,Mh],styles:["label[_ngcontent-%COMP%]{margin-bottom:0}.row[_ngcontent-%COMP%]{margin-left:0;margin-right:0}.text-break-all[_ngcontent-%COMP%]{word-break:break-all;word-wrap:anywhere}.config-table[_ngcontent-%COMP%] .row[_ngcontent-%COMP%]:nth-child(2n){background-color:#fafafc}.config-table[_ngcontent-%COMP%] .left-line[_ngcontent-%COMP%]{border-left:1px solid #dadae9}"]}),t})(),gM=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){return this.consoleService.getConfig("")}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function mM(t,e){if(1&t&&(Fo(0,"ngb-alert",48),Mo(1,"img",49),Fo(2,"h6",50),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}function vM(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",51),ga(2,"No additional users are setup. Create a new user below."),Lo(),Lo()),2&t&&(Yr(1),To("colSpan",4))}function yM(t,e){if(1&t){const t=Io();Fo(0,"tr"),Fo(1,"td"),ga(2),Lo(),Fo(3,"td"),ga(4),Lo(),Fo(5,"td"),Fo(6,"span",36),ga(7,"Administrator"),Lo(),Fo(8,"span",36),ga(9,"Developer"),Lo(),Fo(10,"span",36),ga(11,"Maintainer"),Lo(),Fo(12,"span",36),ga(13,"View Only"),Lo(),Lo(),Fo(14,"td"),Fo(15,"button",52),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().deleteUser(n.username)}),ga(16,"Delete"),Lo(),Lo(),Lo()}if(2&t){const t=e.$implicit,n=Ho();Yr(2),ma(t.username),Yr(2),ma(t.email),Yr(2),To("hidden",t.role!==n.adminRole),Yr(2),To("hidden",t.role!==n.developerRole),Yr(2),To("hidden",t.role!==n.maintainerRole),Yr(2),To("hidden",t.role!==n.readonlyRole)}}function wM(t,e){if(1&t&&(Fo(0,"ngb-alert",48),Mo(1,"img",49),Fo(2,"h6",50),ga(3,"An error occurred:"),Lo(),Fo(4,"p",53),ga(5),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(5),ma(t.userCreateError)}}const bM=function(t){return{"is-invalid":t}};let xM=(()=>{class t{constructor(t,e,n){this.route=t,this.consoleService=e,this.formBuilder=n,this.error="",this.userCreateError="",this.users=[],this.adminRole=ob.USER_ROLE_ADMIN,this.developerRole=ob.USER_ROLE_DEVELOPER,this.maintainerRole=ob.USER_ROLE_MAINTAINER,this.readonlyRole=ob.USER_ROLE_READONLY}ngOnInit(){this.createUserForm=this.formBuilder.group({username:["",ly.required],email:["",[ly.required,ly.email]],password:["",ly.compose([ly.required,ly.minLength(8)])],role:[+this.readonlyRole,ly.required],newsletter:[!1]}),this.route.data.subscribe(t=>{const e=t[0];this.users.length=0,this.users.push(...e.users)},t=>{this.error=t})}deleteUser(t){this.error="",this.consoleService.deleteUser("",t).pipe(U(()=>this.consoleService.listUsers(""))).subscribe(t=>{this.error="",this.users.length=0,this.users.push(...t.users)},t=>{this.error=t})}addUser(){this.userCreateError="",this.createUserForm.disable();let t=ob.USER_ROLE_READONLY;switch(this.f.role.value){case 1:t=ob.USER_ROLE_ADMIN;break;case 2:t=ob.USER_ROLE_DEVELOPER;break;case 3:t=ob.USER_ROLE_MAINTAINER;break;case 4:t=ob.USER_ROLE_READONLY}this.consoleService.addUser("",{username:this.f.username.value,email:this.f.email.value,password:this.f.password.value,role:t,newsletter_subscription:this.f.newsletter.value}).pipe(U(()=>this.consoleService.listUsers(""))).subscribe(e=>{this.userCreateError="",this.createUserForm.reset({role:+t}),this.createUserForm.enable(),this.users.length=0,this.users.push(...e.users)},t=>{this.userCreateError=t,this.createUserForm.enable()})}get f(){return this.createUserForm.controls}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(sb),Do(vw))},t.\u0275cmp=Pt({type:t,selectors:[["app-users"]],decls:121,vars:24,consts:[[1,"pb-4"],["type","danger",3,"dismissible",4,"ngIf"],[1,"user-details","mb-5","table","table-bordered","table-sm","table-striped"],[1,"thead-light"],[2,"width","400px"],[2,"width","300px"],[2,"width","90px"],[4,"ngIf"],[4,"ngFor","ngForOf"],[1,"section-divider","d-flex","mb-4"],[1,"mb-4","alert-permissions",3,"type"],[1,"alert-title","font-weight-bold"],[1,"d-flex","flex-wrap","flex-row"],[1,"col","col-md-3","p-4","flex-fill","flex-grow-1"],[1,"d-flex","align-items-center","mb-3"],["src","/static/svg/role-admin.svg","alt","","width","30","height","",1,"mr-2"],[1,"m-0","font-weight-bold"],["src","/static/svg/role-developer.svg","alt","","width","30","height","",1,"mr-2"],["src","/static/svg/role-maintainer.svg","alt","","width","30","height","",1,"mr-2"],["src","/static/svg/role-viewonly.svg","alt","","width","30","height","",1,"mr-2"],[1,"add-border","rounded"],[3,"formGroup","ngSubmit"],[1,"row","no-gutters"],[1,"col","d-flex","justify-content-between","align-items-center"],[1,"col-md-3"],["for","email",1,"d-inline"],[1,"col-md-9","ml-0","p-0"],["type","email","id","email","placeholder","email@example.com","required","","formControlName","email",1,"form-control",3,"ngClass"],[1,"invalid-tooltip",3,"hidden"],["for","username",1,"d-inline"],["type","text","id","username","placeholder","Username","required","","formControlName","username",1,"form-control",3,"ngClass"],["for","password",1,"d-inline"],["type","password","id","password","placeholder","Password","required","","formControlName","password",1,"form-control",3,"ngClass"],[1,"d-inline"],[1,"btn-group"],["disabled","",1,"btn","btn-outline-dark","disabled"],[3,"hidden"],["ngbDropdown","","role","group",1,"btn-group"],["type","button","ngbDropdownToggle","",1,"btn","btn-primary","dropdown-toggle-split"],["ngbDropdownMenu","",1,"dropdown-menu"],["type","button","ngbDropdownItem","",3,"click"],[1,"row","no-gutters","add-border-single-row-bottom","mb-4"],[1,"col","d-flex","align-items-center"],[1,"custom-control","custom-checkbox"],["type","checkbox","id","newsletter","formControlName","newsletter",1,"custom-control-input","mr-2","my-2"],["for","newsletter",1,"form-check-label","custom-control-label"],[1,""],["type","submit",1,"btn","btn-primary",3,"disabled"],["type","danger",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[1,"text-muted",3,"colSpan"],["type","button",1,"btn","btn-danger","btn-outline-dark",3,"click"],[1,"mb-0","pl-4"]],template:function(t,e){1&t&&(Fo(0,"h2",0),ga(1,"User Management"),Lo(),ko(2,mM,4,2,"ngb-alert",1),Fo(3,"table",2),Fo(4,"thead",3),Fo(5,"tr"),Fo(6,"th",4),ga(7,"Username"),Lo(),Fo(8,"th"),ga(9,"Email"),Lo(),Fo(10,"th",5),ga(11,"Role"),Lo(),Fo(12,"th",6),ga(13,"Action"),Lo(),Lo(),Lo(),Fo(14,"tbody"),ko(15,vM,3,1,"tr",7),ko(16,yM,17,6,"tr",8),Lo(),Lo(),Fo(17,"h5",9),ga(18,"Add new user"),Lo(),Fo(19,"ngb-alert",10),Fo(20,"h6",11),ga(21,"User roles"),Lo(),Fo(22,"div",12),Fo(23,"div",13),Fo(24,"div",14),Mo(25,"img",15),Fo(26,"h6",16),ga(27,"Administrator"),Lo(),Lo(),Fo(28,"small"),ga(29," Owners have complete control over the server, its users and resources. "),Lo(),Lo(),Fo(30,"div",13),Fo(31,"div",14),Mo(32,"img",17),Fo(33,"h6",16),ga(34,"Developer"),Lo(),Lo(),Fo(35,"small"),ga(36," Like Administrators, Developers have complete control over the server, resources and data. However they cannot add, change or delete console users. "),Lo(),Lo(),Fo(37,"div",13),Fo(38,"div",14),Mo(39,"img",18),Fo(40,"h6",16),ga(41,"Maintainer"),Lo(),Lo(),Fo(42,"small"),ga(43," Maintainers have access to adding, changing and delete client resources such as accounts, storage and leaderboard records. They don't have access to the API Explorer or the console users. "),Lo(),Lo(),Fo(44,"div",13),Fo(45,"div",14),Mo(46,"img",19),Fo(47,"h6",16),ga(48,"View Only"),Lo(),Lo(),Fo(49,"small"),ga(50," View Only users can only view client resources but cannot make any changes to the data whatsoever. "),Lo(),Lo(),Lo(),Lo(),ko(51,wM,6,2,"ngb-alert",1),Fo(52,"div",20),Fo(53,"form",21),Bo("ngSubmit",function(){return e.addUser()}),Fo(54,"div",22),Fo(55,"div",23),Fo(56,"div",24),Fo(57,"label",25),ga(58,"Email"),Lo(),Lo(),Fo(59,"div",26),Mo(60,"input",27),Fo(61,"div",28),ga(62,"Email is required"),Lo(),Lo(),Lo(),Lo(),Fo(63,"div",22),Fo(64,"div",23),Fo(65,"div",24),Fo(66,"label",29),ga(67,"Username"),Lo(),Lo(),Fo(68,"div",26),Mo(69,"input",30),Fo(70,"div",28),ga(71,"Username is required"),Lo(),Lo(),Lo(),Lo(),Fo(72,"div",22),Fo(73,"div",23),Fo(74,"div",24),Fo(75,"label",31),ga(76,"Password"),Lo(),Lo(),Fo(77,"div",26),Mo(78,"input",32),Fo(79,"div",28),ga(80,"Password is required, must be 8 chars or longer and consist of at least a capital letter, a small letter and a number."),Lo(),Lo(),Lo(),Lo(),Fo(81,"div",22),Fo(82,"div",23),Fo(83,"div",24),Fo(84,"label",33),ga(85,"Role"),Lo(),Lo(),Fo(86,"div",26),Fo(87,"div",34),Fo(88,"button",35),Fo(89,"span",36),ga(90,"Administrator"),Lo(),Fo(91,"span",36),ga(92,"Developer"),Lo(),Fo(93,"span",36),ga(94,"Maintainer"),Lo(),Fo(95,"span",36),ga(96,"View Only"),Lo(),Lo(),Fo(97,"div",37),Mo(98,"button",38),Fo(99,"div",39),Fo(100,"button",40),Bo("click",function(){return e.f.role.setValue(+e.adminRole)}),ga(101,"Administrator"),Lo(),Fo(102,"button",40),Bo("click",function(){return e.f.role.setValue(+e.developerRole)}),ga(103,"Developer"),Lo(),Fo(104,"button",40),Bo("click",function(){return e.f.role.setValue(+e.maintainerRole)}),ga(105,"Maintainer"),Lo(),Fo(106,"button",40),Bo("click",function(){return e.f.role.setValue(+e.readonlyRole)}),ga(107,"View Only"),Lo(),Lo(),Lo(),Lo(),Fo(108,"div",28),ga(109,"Role is required"),Lo(),Lo(),Lo(),Lo(),Fo(110,"div",41),Fo(111,"div",42),Mo(112,"div",24),Fo(113,"div",26),Fo(114,"div",43),Mo(115,"input",44),Fo(116,"label",45),ga(117,"Subscribe to Heroic Labs' newsletters to receive latest updates to Nakama and other news."),Lo(),Lo(),Lo(),Lo(),Lo(),Fo(118,"div",46),Fo(119,"button",47),ga(120,"Save"),Lo(),Lo(),Lo(),Lo()),2&t&&(Yr(2),To("ngIf",e.error),Yr(13),To("ngIf",0===e.users.length),Yr(1),To("ngForOf",e.users),Yr(3),To("type","secondary"),Yr(32),To("ngIf",e.userCreateError),Yr(2),To("formGroup",e.createUserForm),Yr(7),To("ngClass",Bl(18,bM,e.f.email.dirty&&e.f.email.errors)),Yr(1),To("hidden",e.f.email.disabled||e.f.email.valid||e.f.email.pristine),Yr(8),To("ngClass",Bl(20,bM,e.f.username.dirty&&e.f.username.errors)),Yr(1),To("hidden",e.f.username.disabled||e.f.username.valid||e.f.username.pristine),Yr(8),To("ngClass",Bl(22,bM,e.f.password.dirty&&e.f.password.errors)),Yr(1),To("hidden",e.f.password.disabled||e.f.password.valid||e.f.password.pristine),Yr(10),To("hidden",e.f.role.value!==+e.adminRole),Yr(2),To("hidden",e.f.role.value!==+e.developerRole),Yr(2),To("hidden",e.f.role.value!==+e.maintainerRole),Yr(2),To("hidden",e.f.role.value!==+e.readonlyRole),Yr(13),To("hidden",e.f.role.disabled||e.f.role.valid||e.f.role.pristine),Yr(11),To("disabled",e.createUserForm.invalid))},directives:[Ph,Oh,mx,lw,Ey,uw,ny,gw,Sy,fw,Mh,Ux,Bx,Px,Ix,Zv],styles:[".user-details[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{background-color:#fff}.user-details[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{padding:.6em 1em;font-weight:500}.user-details[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:.6em 1em}.alert-permissions[_ngcontent-%COMP%]{padding:0}.alert-permissions[_ngcontent-%COMP%] .alert-title[_ngcontent-%COMP%]{padding:1rem}.alert-permissions[_ngcontent-%COMP%] .flex-row[_ngcontent-%COMP%]{border-top:1px solid #dadae9;margin:0}.alert-permissions[_ngcontent-%COMP%] .flex-row[_ngcontent-%COMP%] .col[_ngcontent-%COMP%]{border-right:1px solid #dadae9}.alert-permissions[_ngcontent-%COMP%] .flex-row[_ngcontent-%COMP%] .col[_ngcontent-%COMP%]:last-child{border-right:none}"]}),t})(),_M=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){return this.consoleService.listUsers("")}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function CM(t,e){if(1&t&&(Fo(0,"ngb-alert",10),Mo(1,"img",11),Fo(2,"h6",12),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("Failed to retrieve runtime information: ",t.error,"")}}function SM(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td"),ga(2),Lo(),Fo(3,"td",13),ga(4),Lo(),Lo()),2&t){const t=e.$implicit;Yr(2),ma(t.path),Yr(2),ma(t.mod_time)}}function EM(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",14),ga(2,"No Go modules were found."),Lo(),Mo(3,"td"),Lo())}function kM(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td"),ga(2),Lo(),Fo(3,"td",13),ga(4),Lo(),Lo()),2&t){const t=e.$implicit;Yr(2),ma(t.path),Yr(2),ma(t.mod_time)}}function AM(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",14),ga(2,"No Lua modules were found."),Lo(),Mo(3,"td"),Lo())}function DM(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td"),ga(2),Lo(),Fo(3,"td",13),ga(4),Lo(),Lo()),2&t){const t=e.$implicit;Yr(2),ma(t.path),Yr(2),ma(t.mod_time)}}function TM(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",14),ga(2,"No JavaScript modules were found."),Lo(),Mo(3,"td"),Lo())}const RM=function(){return["/apiexplorer"]},FM=function(t){return{endpoint:t}};function LM(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td"),Fo(2,"code"),ga(3),Lo(),Lo(),Fo(4,"td",15),Fo(5,"a",16),ga(6,"API Explorer"),Lo(),Lo(),Lo()),2&t){const t=e.$implicit;Yr(3),ma(t),Yr(2),To("routerLink",Nl(3,RM))("queryParams",Bl(4,FM,t))}}function MM(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",17),ga(2,"No Go RPC functions were found."),Lo(),Lo())}function $M(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td"),Fo(2,"code"),ga(3),Lo(),Lo(),Fo(4,"td",15),Fo(5,"a",16),ga(6,"API Explorer"),Lo(),Lo(),Lo()),2&t){const t=e.$implicit;Yr(3),ma(t),Yr(2),To("routerLink",Nl(3,RM))("queryParams",Bl(4,FM,t))}}function OM(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",17),ga(2,"No Lua RPC functions were found."),Lo(),Lo())}function IM(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td"),Fo(2,"code"),ga(3),Lo(),Lo(),Fo(4,"td",15),Fo(5,"a",16),ga(6,"API Explorer"),Lo(),Lo(),Lo()),2&t){const t=e.$implicit;Yr(3),ma(t),Yr(2),To("routerLink",Nl(3,RM))("queryParams",Bl(4,FM,t))}}function PM(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",17),ga(2,"No JavaScript RPC functions were found."),Lo(),Lo())}let NM=(()=>{class t{constructor(t,e){this.route=t,this.consoleService=e,this.error=""}ngOnInit(){this.route.data.subscribe(t=>{this.runtimeInfo=t[0]},t=>{this.error=t})}ngOnDestroy(){}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(sb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:51,vars:13,consts:[[1,"pb-4"],["type","danger",3,"dismissible",4,"ngIf"],[1,"runtime-table","mb-4","table","table-sm","table-bordered","mb-5"],[1,"thead-light"],[2,"width","180px"],[4,"ngFor","ngForOf"],[4,"ngIf"],["colspan","2"],[1,"mb-4","section-divider","d-flex"],[1,"runtime-table","table","table-sm","table-bordered"],["type","danger",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[2,"width","200px"],[1,"text-muted"],[2,"width","180px","text-align","center"],[1,"btn","btn-sm","btn-secondary",3,"routerLink","queryParams"],["colspan","2",1,"text-muted"]],template:function(t,e){1&t&&(Fo(0,"h2",0),ga(1,"Runtime Modules"),Lo(),ko(2,CM,4,2,"ngb-alert",1),Fo(3,"table",2),Fo(4,"thead",3),Fo(5,"tr"),Fo(6,"th"),ga(7,"Go Modules"),Lo(),Fo(8,"th",4),ga(9,"Last Modified"),Lo(),Lo(),Lo(),Fo(10,"tbody"),ko(11,SM,5,2,"tr",5),ko(12,EM,4,0,"tr",6),Lo(),Fo(13,"thead",3),Fo(14,"tr"),Fo(15,"th",7),ga(16,"Lua Modules"),Lo(),Lo(),Lo(),Fo(17,"tbody"),ko(18,kM,5,2,"tr",5),ko(19,AM,4,0,"tr",6),Lo(),Fo(20,"thead",3),Fo(21,"tr"),Fo(22,"th",7),ga(23,"JavaScript Modules"),Lo(),Lo(),Lo(),Fo(24,"tbody"),ko(25,DM,5,2,"tr",5),ko(26,TM,4,0,"tr",6),Lo(),Lo(),Fo(27,"h4",8),ga(28,"Registered RPC Functions"),Lo(),Fo(29,"table",9),Fo(30,"thead",3),Fo(31,"tr"),Fo(32,"th",7),ga(33,"Go RPC Functions"),Lo(),Lo(),Lo(),Fo(34,"tbody"),ko(35,LM,7,6,"tr",5),ko(36,MM,3,0,"tr",6),Lo(),Fo(37,"thead",3),Fo(38,"tr"),Fo(39,"th",7),ga(40,"Lua RPC Functions"),Lo(),Lo(),Lo(),Fo(41,"tbody"),ko(42,$M,7,6,"tr",5),ko(43,OM,3,0,"tr",6),Lo(),Fo(44,"thead",3),Fo(45,"tr"),Fo(46,"th",7),ga(47,"JavaScript RPC Functions"),Lo(),Lo(),Lo(),Fo(48,"tbody"),ko(49,IM,7,6,"tr",5),ko(50,PM,3,0,"tr",6),Lo(),Lo()),2&t&&(Yr(2),To("ngIf",e.error),Yr(9),To("ngForOf",e.runtimeInfo.go_modules),Yr(1),To("ngIf",0===e.runtimeInfo.go_modules.length),Yr(6),To("ngForOf",e.runtimeInfo.lua_modules),Yr(1),To("ngIf",0===e.runtimeInfo.lua_modules.length),Yr(6),To("ngForOf",e.runtimeInfo.js_modules),Yr(1),To("ngIf",0===e.runtimeInfo.js_modules.length),Yr(9),To("ngForOf",e.runtimeInfo.go_rpc_functions),Yr(1),To("ngIf",0===e.runtimeInfo.go_rpc_functions.length),Yr(6),To("ngForOf",e.runtimeInfo.lua_rpc_functions),Yr(1),To("ngIf",0===e.runtimeInfo.lua_rpc_functions.length),Yr(6),To("ngForOf",e.runtimeInfo.js_rpc_functions),Yr(1),To("ngIf",0===e.runtimeInfo.js_rpc_functions.length))},directives:[Ph,Oh,mx,Dv],styles:["label[_ngcontent-%COMP%]{margin-bottom:0}.opaque[_ngcontent-%COMP%]{opacity:1%}.row[_ngcontent-%COMP%]{margin-left:0;margin-right:0}.runtime-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{background-color:#fff}.runtime-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{padding:.6em 1em;font-weight:500}.runtime-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding-left:1em;padding-right:1em;vertical-align:middle}"]}),t})(),BM=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){return this.consoleService.getRuntime("")}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function UM(t,e){1&t&&(Fo(0,"span"),ga(1,"Filter by collection"),Lo())}function VM(t,e){if(1&t&&(Fo(0,"span"),ga(1),Lo()),2&t){const t=Ho();Yr(1),ma(t.f.collection.value)}}function HM(t,e){if(1&t){const t=Io();Fo(0,"button",34),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().f.collection.setValue(n)}),ga(1),Lo()}if(2&t){const t=e.$implicit;Yr(1),ma(t)}}function jM(t,e){if(1&t&&(Fo(0,"ngb-alert",35),Mo(1,"img",36),Fo(2,"h6",37),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("Error when querying storage objects: ",t.error,"")}}function zM(t,e){1&t&&(Fo(0,"th",38),ga(1,"Remove"),Lo())}function WM(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",39),ga(2,"No storage objects found - change the filter criteria or add new objects."),Lo(),Lo())}function GM(t,e){if(1&t){const t=Io();Fo(0,"td",42),Fo(1,"button",43),Bo("click",function(e){Le(t);const n=Ho(),i=n.index,r=n.$implicit;return Ho().deleteObject(e,i,r)}),ga(2,"Delete"),Lo(),Lo()}}function KM(t,e){if(1&t){const t=Io();Fo(0,"tr"),Fo(1,"td",40),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewObject(n)}),ga(2),Lo(),Fo(3,"td",40),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewObject(n)}),ga(4),Lo(),Fo(5,"td",40),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewObject(n)}),ga(6),Lo(),Fo(7,"td",40),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewObject(n)}),ga(8),Lo(),ko(9,GM,3,0,"td",41),Lo()}if(2&t){const t=e.$implicit,n=Ho();Yr(2),ma(t.collection),Yr(2),ma(t.key),Yr(2),ma(t.user_id),Yr(2),ma(t.update_time),Yr(1),To("ngIf",n.deleteAllowed())}}let qM=(()=>{class t{constructor(t,e,n,i,r){this.route=t,this.router=e,this.consoleService=n,this.authService=i,this.formBuilder=r,this.systemUserId="00000000-0000-0000-0000-000000000000",this.error="",this.collections=[],this.objects=[],this.objectCount=0,this.nextCursor="",this.prevCursor=""}ngOnInit(){this.searchForm=this.formBuilder.group({collection:[""],key:[""],user_id:[""]});const t=this.route.snapshot.queryParamMap;this.f.collection.setValue(t.get("collection")),this.f.key.setValue(t.get("key")),this.f.user_id.setValue(t.get("user_id")),this.nextCursor=t.get("cursor"),this.nextCursor&&""!==this.nextCursor?this.search(1):(this.f.collection.value||this.f.user_id.value)&&this.search(0),this.route.data.subscribe(t=>{this.collections.length=0,this.collections.push(...t[0].collections),this.objectCount=t[1].total_count,this.nextCursor=t[1].next_cursor,this.prevCursor=t[1].prev_cursor,this.objects.length=0,this.objects.push(...t[1].objects)},t=>{this.error=t})}disableSearch(){return!(!this.f.key.value||""===this.f.key.value||this.f.collection.value&&""!==this.f.collection.value)}search(t){let e="";switch(t){case-1:e=this.prevCursor;break;case 0:e="";break;case 1:e=this.nextCursor}this.consoleService.listStorage("",this.f.user_id.value,this.f.key.value,this.f.collection.value,e).subscribe(t=>{this.error="",this.objectCount=t.total_count,this.nextCursor=t.next_cursor,this.objects.length=0,this.objects.push(...t.objects),this.router.navigate([],{relativeTo:this.route,queryParams:{collection:this.f.collection.value,key:this.f.key.value,user_id:this.f.user_id.value,cursor:e},queryParamsHandling:"merge"})},t=>{this.error=t})}deleteObject(t,e,n){t.target.disabled=!0,t.preventDefault(),this.error="",this.consoleService.deleteStorageObject("",n.collection,n.key,n.user_id,n.version).subscribe(()=>{this.error="",this.objectCount--,this.objects.splice(e,1)},t=>{this.error=t})}deleteAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_DEVELOPER}viewObject(t){this.router.navigate(["/storage",t.collection,t.key,t.user_id],{relativeTo:this.route})}get f(){return this.searchForm.controls}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(hb),Do(vw))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:50,vars:15,consts:[[1,"pb-1"],[1,"pb-4"],[1,"row","no-gutters","mb-3"],[1,"col","d-flex","justify-content-between","no-gutters"],[1,"col-md-9"],[3,"formGroup","ngSubmit"],[1,"input-group"],[1,"input-group-prepend"],["ngbDropdown","",1,"btn-group"],["type","button","ngbDropdownToggle","",1,"btn","btn-outline-secondary","dropdown-radius",3,"disabled"],[4,"ngIf"],["ngbDropdownMenu","",1,"dropdown-menu"],["type","button","ngbDropdownItem","",1,"btn","btn-secondary","text-secondary",3,"hidden","click"],[1,"dropdown-divider",3,"hidden"],["type","button","ngbDropdownItem","",3,"click",4,"ngFor","ngForOf"],["type","text","formControlName","key","placeholder","Filter by key",1,"form-control"],["type","text","formControlName","user_id","placeholder","Filter by user ID",1,"form-control","border-right-0"],[1,"input-group-append"],[1,"input-group-text",3,"click"],["src","/static/svg/purple-cog-1.svg","alt","","width","20","height","",1,"mr-1"],["type","submit",1,"btn","btn-primary",3,"disabled","click"],[1,"col-md-3","justify-content-end","text-right"],["role","group","aria-label","Basic example",1,"btn-group","page-btns"],["type","button",1,"btn","btn-outline-secondary",3,"disabled","click"],["src","/static/svg/page-first.svg","alt","","width","20","height",""],["src","/static/svg/page-next.svg","alt","","width","20","height",""],["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],[1,"row","no-gutters"],[1,"table","table-sm","table-hover","table-bordered"],[1,"thead-light"],[2,"width","320px"],[2,"width","180px"],["style","width: 90px",4,"ngIf"],[4,"ngFor","ngForOf"],["type","button","ngbDropdownItem","",3,"click"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[2,"width","90px"],["colSpan","5",1,"text-muted"],[3,"click"],["class","text-center",4,"ngIf"],[1,"text-center"],["type","button",1,"btn","btn-sm","btn-danger",3,"click"]],template:function(t,e){1&t&&(Fo(0,"h2",0),ga(1,"Storage Objects"),Lo(),Fo(2,"h6",1),ga(3),Lo(),Fo(4,"div",2),Fo(5,"div",3),Fo(6,"div",4),Fo(7,"form",5),Bo("ngSubmit",function(){return e.search(0)}),Fo(8,"div",6),Fo(9,"div",7),Fo(10,"div",8),Fo(11,"button",9),ko(12,UM,2,0,"span",10),ko(13,VM,2,1,"span",10),Lo(),Fo(14,"div",11),Fo(15,"button",12),Bo("click",function(){return e.f.collection.reset()}),ga(16,"\u2718 Deselect collection"),Lo(),Mo(17,"div",13),ko(18,HM,2,1,"button",14),Lo(),Lo(),Lo(),Mo(19,"input",15),Mo(20,"input",16),Fo(21,"div",17),Fo(22,"span",18),Bo("click",function(){return e.f.user_id.setValue(e.systemUserId)}),Mo(23,"img",19),Lo(),Lo(),Fo(24,"div",17),Fo(25,"button",20),Bo("click",function(){return e.search(0)}),ga(26,"Search"),Lo(),Lo(),Lo(),Lo(),Lo(),Fo(27,"div",21),Fo(28,"div",22),Fo(29,"button",23),Bo("click",function(){return e.search(0)}),Mo(30,"img",24),Lo(),Fo(31,"button",23),Bo("click",function(){return e.search(1)}),Mo(32,"img",25),Lo(),Lo(),Lo(),Lo(),Lo(),ko(33,jM,4,2,"ngb-alert",26),Fo(34,"div",27),Fo(35,"table",28),Fo(36,"thead",29),Fo(37,"tr"),Fo(38,"th"),ga(39,"Collection Name"),Lo(),Fo(40,"th"),ga(41,"Key Name"),Lo(),Fo(42,"th",30),ga(43,"User ID"),Lo(),Fo(44,"th",31),ga(45,"Last Update"),Lo(),ko(46,zM,2,0,"th",32),Lo(),Lo(),Fo(47,"tbody"),ko(48,WM,3,0,"tr",10),ko(49,KM,10,5,"tr",33),Lo(),Lo(),Lo()),2&t&&(Yr(3),va("",e.objectCount," objects found."),Yr(4),To("formGroup",e.searchForm),Yr(4),To("disabled",0===e.collections.length),Yr(1),To("ngIf",!e.f.collection.value||""===e.f.collection.value),Yr(1),To("ngIf",e.f.collection.value&&""!==e.f.collection.value),Yr(2),To("hidden",!e.f.collection.value||""===e.f.collection.value),Yr(2),To("hidden",!e.f.collection.value||""===e.f.collection.value),Yr(1),To("ngForOf",e.collections),Yr(7),To("disabled",e.disableSearch()),Yr(4),To("disabled",0===e.objects.length),Yr(2),To("disabled",""===e.nextCursor),Yr(2),To("ngIf",e.error),Yr(13),To("ngIf",e.deleteAllowed()),Yr(2),To("ngIf",0===e.objects.length),Yr(1),To("ngForOf",e.objects))},directives:[lw,Ey,uw,Ux,Bx,Ph,Px,Ix,Oh,ny,Sy,fw,mx],styles:[".dropdown-radius[_ngcontent-%COMP%]{border-top-right-radius:0;border-bottom-right-radius:0}.input-group-text[_ngcontent-%COMP%]{background-color:initial;cursor:pointer}.table-hover[_ngcontent-%COMP%]{cursor:pointer}"]}),t})(),XM=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){return this.consoleService.listStorageCollections("")}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),YM=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){const n=t.queryParamMap.get("collection"),i=t.queryParamMap.get("key"),r=t.queryParamMap.get("user_id");return this.consoleService.listStorage("",r,i,n,null)}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();var JM=n("bU/s");const QM=["editor"];function ZM(t,e){if(1&t&&(Fo(0,"ngb-alert",37),Mo(1,"img",38),Fo(2,"h6",39),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("Error while modifying storage object: ",t.error,"")}}function t$(t,e){1&t&&(Fo(0,"ngb-alert",40),Mo(1,"img",41),Fo(2,"h6",39),ga(3,"Storage object was modified successfully."),Lo(),Lo()),2&t&&To("dismissible",!1)}function e$(t,e){1&t&&(Fo(0,"span"),ga(1,"Save as a copy"),Lo())}function n$(t,e){1&t&&ga(0,"Save")}function i$(t,e){if(1&t&&(Fo(0,"button",42),ko(1,e$,2,0,"span",43),ko(2,n$,1,0,"ng-template",null,44,hc),Lo()),2&t){const t=Ao(3),e=Ho();To("disabled",e.updating),Yr(1),To("ngIf",e.object.collection!==e.f.collection.value||e.object.key!==e.f.keyname.value||e.object.user_id!==e.f.user_id.value)("ngIfElse",t)}}const r$=function(){return["/storage"]},s$=function(t){return{collection:t}},o$=function(t,e){return{collection:t,key:e}},a$=function(t,e,n){return{collection:t,key:e,user_id:n}},l$=function(t){return{"is-invalid":t}};let c$=(()=>{class t{constructor(t,e,n,i,r){this.route=t,this.router=e,this.consoleService=n,this.authService=i,this.formBuilder=r,this.error="",this.updating=!1,this.updated=!1}ngOnInit(){this.objectForm=this.formBuilder.group({collection:["",ly.required],keyname:["",ly.required],user_id:["",ly.required],permission_read:[0,ly.required],permission_write:[0,ly.required]}),this.route.data.subscribe(t=>{this.object=t[0],this.f.collection.setValue(this.object.collection),this.f.keyname.setValue(this.object.key),this.f.user_id.setValue(this.object.user_id),this.f.permission_read.setValue(this.object.permission_read),this.f.permission_write.setValue(this.object.permission_write),this.updateAllowed()||this.objectForm.disable()},t=>{this.error=t})}ngAfterViewInit(){JM.config.set("fontSize","14px"),JM.config.set("printMarginColumn",0),JM.config.set("useWorker",!0),JM.config.set("highlightSelectedWord",!0),JM.config.set("fontFamily",'"Courier New", Courier, monospace'),this.aceEditor=JM.edit(this.editor.nativeElement),this.aceEditor.setReadOnly(!this.updateAllowed());const t=JSON.stringify(JSON.parse(this.object.value),null,2);this.aceEditor.session.setValue(t)}updateObject(){this.error="",this.updated=!1,this.updating=!0;let t="";try{t=JSON.stringify(JSON.parse(this.aceEditor.session.getValue()))}catch(n){return this.error=n,void(this.updating=!1)}let e=this.object.version;this.object.collection===this.f.collection.value&&this.object.key===this.f.keyname.value&&this.object.user_id===this.f.user_id.value||(e=""),this.consoleService.writeStorageObject("",this.f.collection.value,this.f.keyname.value,this.f.user_id.value,{version:e,value:t,permission_read:this.f.permission_read.value,permission_write:this.f.permission_write.value}).subscribe(t=>{this.updated=!0,this.updating=!1,this.object.version=t.version,""===e&&(this.object.collection=this.f.collection.value,this.object.key=this.f.keyname.value,this.object.user_id=this.f.user_id.value,this.object.permission_read=this.f.permission_read.value,this.object.permission_write=this.f.permission_write.value)},t=>{this.error=t,this.updating=!1})}deleteObject(){this.error="",this.updated=!1,this.updating=!1;const t=this.object;this.consoleService.deleteStorageObject("",t.collection,t.key,t.user_id,t.version).subscribe(()=>{this.router.navigate(["/storage"],{relativeTo:this.route,queryParams:{collection:this.f.collection.value,key:this.f.key.value,user_id:this.f.user_id.value}})},t=>{this.error=t})}updateAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_MAINTAINER}deleteAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_MAINTAINER}get f(){return this.objectForm.controls}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(hb),Do(vw))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],viewQuery:function(t,e){if(1&t&&ic(QM,!0),2&t){let t;ec(t=oc())&&(e.editor=t.first)}},decls:88,vars:50,consts:[[1,"pb-1"],[1,"storage-top-nav","d-flex","justify-content-between","align-items-baseline","mb-3"],["aria-label","breadcrumb"],[1,"breadcrumb"],[1,"breadcrumb-item"],[3,"routerLink","queryParams"],["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],["type","success","class","mb-3",3,"dismissible",4,"ngIf"],[1,"add-border",3,"formGroup","ngSubmit"],[1,"row"],[1,"col-md-6","d-flex","justify-content-start","align-items-baseline"],[1,"col-3","pl-0"],["for","collection",1,"d-inline"],["type","text","id","collection","placeholder","Collection","required","","formControlName","collection",1,"form-control","form-control-sm","my-2",3,"ngClass"],[1,"invalid-tooltip",3,"hidden"],["for","key",1,"d-inline"],["type","text","id","key","placeholder","Key","required","","formControlName","keyname",1,"form-control","form-control-sm","my-2",3,"ngClass"],["for","user_id",1,"d-inline"],["type","text","id","user_id","placeholder","User ID","required","","formControlName","user_id",1,"form-control","form-control-sm","my-2",3,"ngClass"],[1,"col-md-6","d-flex","justify-content-start","align-items-baseline","align-self-center"],["for","permission_read",1,"d-inline"],["ngbRadioGroup","","id","permission_read","name","permission_read","formControlName","permission_read",1,"btn-group","btn-group-toggle"],["ngbButtonLabel","",1,"btn-outline-secondary"],["ngbButton","","type","radio",3,"disabled","value"],["for","version",1,"d-inline"],["type","text","id","version","placeholder","Version","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","permission_write",1,"d-inline"],["ngbRadioGroup","","id","permission_write","name","permission_write","formControlName","permission_write",1,"btn-group","btn-group-toggle"],[1,"row","add-border-single-row-bottom","mb-3"],["for","create_time",1,"d-inline"],["type","text","id","create_time","placeholder","Create Time","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","update_time",1,"d-inline"],["type","text","id","update_time","placeholder","Update Time","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],[1,"card","p-2","mt-3","mb-3",2,"height","500px"],[2,"height","500px"],["editor",""],["type","submit","class","btn btn-primary",3,"disabled",4,"ngIf"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],["type","success",1,"mb-3",3,"dismissible"],["src","/static/svg/green-tick.svg","alt","","width","16","height","",1,"mr-2"],["type","submit",1,"btn","btn-primary",3,"disabled"],[4,"ngIf","ngIfElse"],["elseBlock",""]],template:function(t,e){var n,i,r,s,o,a;1&t&&(Fo(0,"h2",0),ga(1,"Storage Object"),Lo(),Fo(2,"div",1),Fo(3,"nav",2),Fo(4,"ol",3),Fo(5,"li",4),ga(6,"Storage"),Lo(),Fo(7,"li",4),Fo(8,"a",5),ga(9),Lo(),Lo(),Fo(10,"li",4),Fo(11,"a",5),ga(12),Lo(),Lo(),Fo(13,"li",4),Fo(14,"a",5),ga(15),Lo(),Lo(),Lo(),Lo(),Lo(),ko(16,ZM,4,2,"ngb-alert",6),ko(17,t$,4,1,"ngb-alert",7),Fo(18,"form",8),Bo("ngSubmit",function(){return e.updateObject()}),Fo(19,"div",9),Fo(20,"div",10),Fo(21,"div",11),Fo(22,"label",12),ga(23,"Collection"),Lo(),Lo(),Mo(24,"input",13),Fo(25,"div",14),ga(26,"Collection is required"),Lo(),Lo(),Fo(27,"div",10),Fo(28,"div",11),Fo(29,"label",15),ga(30,"Key"),Lo(),Lo(),Mo(31,"input",16),Fo(32,"div",14),ga(33,"Key is required"),Lo(),Lo(),Lo(),Fo(34,"div",9),Fo(35,"div",10),Fo(36,"div",11),Fo(37,"label",17),ga(38,"User ID"),Lo(),Lo(),Mo(39,"input",18),Fo(40,"div",14),ga(41,"User ID is required"),Lo(),Lo(),Fo(42,"div",19),Fo(43,"div",11),Fo(44,"label",20),ga(45,"Read Permission"),Lo(),Lo(),Fo(46,"div",21),Fo(47,"label",22),Mo(48,"input",23),ga(49," No Read "),Lo(),Fo(50,"label",22),Mo(51,"input",23),ga(52," Owner Read "),Lo(),Fo(53,"label",22),Mo(54,"input",23),ga(55," Public Read "),Lo(),Lo(),Lo(),Lo(),Fo(56,"div",9),Fo(57,"div",10),Fo(58,"div",11),Fo(59,"label",24),ga(60,"Version"),Lo(),Lo(),Mo(61,"input",25),Lo(),Fo(62,"div",19),Fo(63,"div",11),Fo(64,"label",26),ga(65,"Write Permission"),Lo(),Lo(),Fo(66,"div",27),Fo(67,"label",22),Mo(68,"input",23),ga(69," No Write "),Lo(),Fo(70,"label",22),Mo(71,"input",23),ga(72," Owner Write "),Lo(),Lo(),Lo(),Lo(),Fo(73,"div",28),Fo(74,"div",10),Fo(75,"div",11),Fo(76,"label",29),ga(77,"Create Time"),Lo(),Lo(),Mo(78,"input",30),Lo(),Fo(79,"div",10),Fo(80,"div",11),Fo(81,"label",31),ga(82,"Update Time"),Lo(),Lo(),Mo(83,"input",32),Lo(),Lo(),Fo(84,"div",33),Mo(85,"div",34,35),Lo(),ko(87,i$,4,3,"button",36),Lo()),2&t&&(Yr(8),To("routerLink",Nl(32,r$))("queryParams",Bl(33,s$,e.object.collection)),Yr(1),ma(e.object.collection),Yr(2),To("routerLink",Nl(35,r$))("queryParams",Ul(36,o$,e.object.collection,e.object.key)),Yr(1),ma(e.object.key),Yr(2),To("routerLink",Nl(39,r$))("queryParams",(n=40,i=a$,r=e.object.collection,s=e.object.key,o=e.object.user_id,function(t,e,n,i,r,s,o,a){const l=e+n;return function(t,e,n,i,r){const s=Co(t,e,n,i);return _o(t,e+2,r)||s}(t,l,r,s,o)?xo(t,l+3,a?i.call(a,r,s,o):i(r,s,o)):Vl(t,l+3)}(Re(),Ue(),n,i,r,s,o,a))),Yr(1),ma(e.object.user_id),Yr(1),To("ngIf",e.error),Yr(1),To("ngIf",e.updated),Yr(1),To("formGroup",e.objectForm),Yr(6),To("ngClass",Bl(44,l$,e.f.collection.dirty&&e.f.collection.errors)),Yr(1),To("hidden",e.f.collection.disabled||e.f.collection.valid||e.f.collection.pristine),Yr(6),To("ngClass",Bl(46,l$,e.f.keyname.dirty&&e.f.keyname.errors)),Yr(1),To("hidden",e.f.keyname.disabled||e.f.keyname.valid||e.f.keyname.pristine),Yr(7),To("ngClass",Bl(48,l$,e.f.user_id.dirty&&e.f.user_id.errors)),Yr(1),To("hidden",e.f.user_id.disabled||e.f.user_id.valid||e.f.user_id.pristine),Yr(8),To("disabled",!e.updateAllowed())("value",0),Yr(3),To("disabled",!e.updateAllowed())("value",1),Yr(3),To("disabled",!e.updateAllowed())("value",2),Yr(7),To("value",e.object.version),Yr(7),To("disabled",!e.updateAllowed())("value",0),Yr(3),To("disabled",!e.updateAllowed())("value",1),Yr(7),To("value",e.object.create_time),Yr(5),To("value",e.object.update_time),Yr(4),To("ngIf",e.updateAllowed()))},directives:[Dv,Ph,lw,Ey,uw,ny,gw,Sy,fw,Mh,bx,yx,xx,mx],styles:[".storage-top-nav[_ngcontent-%COMP%]{border-bottom:1px solid #dadae9;padding-bottom:1.5em}"]}),t})(),h$=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){const n=t.paramMap.get("collection"),i=t.paramMap.get("key"),r=t.paramMap.get("user_id");return this.consoleService.getStorage("",n,i,r)}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function u$(t,e){if(1&t&&(Fo(0,"ngb-alert",10),Mo(1,"img",11),Fo(2,"h6",12),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("Error while processing request: ",t.error,"")}}function d$(t,e){1&t&&(Fo(0,"th",13),ga(1,"Remove"),Lo())}function f$(t,e){if(1&t){const t=Io();Fo(0,"td",17),Bo("click",function(){Le(t);const e=Ho().$implicit;return Ho().viewLeaderboardEntries(e)}),ga(1,"Yes"),Lo()}}function p$(t,e){if(1&t){const t=Io();Fo(0,"td",17),Bo("click",function(){Le(t);const e=Ho().$implicit;return Ho().viewLeaderboardEntries(e)}),ga(1,"No"),Lo()}}function g$(t,e){if(1&t){const t=Io();Fo(0,"td",17),Bo("click",function(){Le(t);const e=Ho().$implicit;return Ho().viewLeaderboardEntries(e)}),ga(1,"Yes"),Lo()}}function m$(t,e){if(1&t){const t=Io();Fo(0,"td",17),Bo("click",function(){Le(t);const e=Ho().$implicit;return Ho().viewLeaderboardEntries(e)}),ga(1,"No"),Lo()}}function v$(t,e){if(1&t){const t=Io();Fo(0,"td",18),Fo(1,"button",19),Bo("click",function(e){Le(t);const n=Ho(),i=n.index,r=n.$implicit;return Ho().deleteLeaderboard(e,i,r)}),ga(2,"Delete"),Lo(),Lo()}}function y$(t,e){if(1&t){const t=Io();Fo(0,"tr"),Fo(1,"td",14),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewLeaderboardEntries(n)}),ga(2),Lo(),Fo(3,"td",14),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewLeaderboardEntries(n)}),ga(4),Lo(),Fo(5,"td",14),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewLeaderboardEntries(n)}),ga(6),Lo(),Fo(7,"td",14),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewLeaderboardEntries(n)}),ga(8),Lo(),ko(9,f$,2,0,"td",15),ko(10,p$,2,0,"td",15),ko(11,g$,2,0,"td",15),ko(12,m$,2,0,"td",15),ko(13,v$,3,0,"td",16),Lo()}if(2&t){const t=e.$implicit,n=Ho();Yr(2),ma(t.id),Yr(2),ma(n.orderString[t.sort_order]),Yr(2),ma(n.operatorString[t.operator]),Yr(2),ma(""===t.reset_schedule?"-":t.reset_schedule),Yr(1),To("ngIf",t.authoritative),Yr(1),To("ngIf",!t.authoritative),Yr(1),To("ngIf",t.tournament),Yr(1),To("ngIf",!t.tournament),Yr(1),To("ngIf",n.deleteAllowed())}}function w$(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",20),ga(2,"No leaderboards were found."),Lo(),Lo())}let b$=(()=>{class t{constructor(t,e,n,i){this.route=t,this.router=e,this.authService=n,this.consoleService=i,this.error="",this.leaderboards=[],this.orderString={0:"Ascending",1:"Descending"},this.operatorString={0:"Best",1:"Set",2:"Increment",3:"Decrement"}}ngOnInit(){this.route.data.subscribe(t=>{this.leaderboards.length=0,this.leaderboards.push(...t[0].leaderboards)},t=>{this.error=t})}deleteAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_DEVELOPER}deleteLeaderboard(t,e,n){t.target.disabled=!0,t.preventDefault(),this.error="",this.consoleService.deleteLeaderboard("",n.id).subscribe(()=>{this.error="",this.leaderboards.splice(e,1)},t=>{this.error=t})}viewLeaderboardEntries(t){this.router.navigate(["/leaderboards",t.id],{relativeTo:this.route})}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(hb),Do(sb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:24,vars:5,consts:[[1,"pb-1"],[1,"pb-4"],["type","danger",3,"dismissible",4,"ngIf"],[1,"table","table-sm","table-bordered","table-hover"],[1,"thead-light"],[2,"width","130px"],[2,"width","100px"],["style","width: 90px",4,"ngIf"],[4,"ngFor","ngForOf"],[4,"ngIf"],["type","danger",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[2,"width","90px"],[3,"click"],["class","text-center",3,"click",4,"ngIf"],["class","text-center",4,"ngIf"],[1,"text-center",3,"click"],[1,"text-center"],["type","button",1,"btn","btn-sm","btn-danger",3,"click"],["colspan","7",1,"text-muted"]],template:function(t,e){1&t&&(Fo(0,"h2",0),ga(1,"Leaderboards"),Lo(),Fo(2,"h6",1),ga(3),Lo(),ko(4,u$,4,2,"ngb-alert",2),Fo(5,"table",3),Fo(6,"thead",4),Fo(7,"tr"),Fo(8,"th"),ga(9,"Leaderboard ID"),Lo(),Fo(10,"th",5),ga(11,"Sort Order"),Lo(),Fo(12,"th",5),ga(13,"Operator"),Lo(),Fo(14,"th",5),ga(15,"Reset Schedule"),Lo(),Fo(16,"th",6),ga(17,"Authoritative"),Lo(),Fo(18,"th",6),ga(19,"Tournament"),Lo(),ko(20,d$,2,0,"th",7),Lo(),Lo(),Fo(21,"tbody"),ko(22,y$,14,9,"tr",8),ko(23,w$,3,0,"tr",9),Lo(),Lo()),2&t&&(Yr(3),va("",e.leaderboards.length," leaderboards found."),Yr(1),To("ngIf",e.error),Yr(16),To("ngIf",e.deleteAllowed()),Yr(2),To("ngForOf",e.leaderboards),Yr(1),To("ngIf",0===e.leaderboards.length))},directives:[Ph,Oh,mx],styles:[".table-hover[_ngcontent-%COMP%]{cursor:pointer}"]}),t})(),x$=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){return this.consoleService.listLeaderboards("")}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function _$(t,e){if(1&t&&(Fo(0,"ngb-alert",31),Mo(1,"img",32),Fo(2,"h6",33),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("Error when querying accounts: ",t.error,"")}}function C$(t,e){1&t&&(Fo(0,"th",34),ga(1,"Remove"),Lo())}function S$(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",35),ga(2,"No users found - change the filter criteria or add new user accounts."),Lo(),Lo())}function E$(t,e){1&t&&Mo(0,"td")}function k$(t,e){if(1&t){const t=Io();Fo(0,"td",38),Fo(1,"button",39),Bo("click",function(e){Le(t);const n=Ho(),i=n.index,r=n.$implicit;return Ho().deleteAccount(e,i,r)}),ga(2,"Delete"),Lo(),Lo()}}function A$(t,e){if(1&t){const t=Io();Fo(0,"tr"),Fo(1,"td",36),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewAccount(n)}),ga(2),Lo(),Fo(3,"td",36),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewAccount(n)}),ga(4),Lo(),Fo(5,"td",36),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewAccount(n)}),ga(6),Lo(),Fo(7,"td",36),Bo("click",function(){Le(t);const n=e.$implicit;return Ho().viewAccount(n)}),ga(8),Lo(),ko(9,E$,1,0,"td",29),ko(10,k$,3,0,"td",37),Lo()}if(2&t){const t=e.$implicit,n=Ho();Yr(2),ma(t.id),Yr(2),ma(t.username),Yr(2),ma(t.display_name),Yr(2),ma(t.update_time),Yr(1),To("ngIf",n.deleteAllowed()&&t.id===n.systemUserId),Yr(1),To("ngIf",n.deleteAllowed()&&t.id!==n.systemUserId)}}let D$=(()=>{class t{constructor(t,e,n,i,r){this.route=t,this.router=e,this.consoleService=n,this.authService=i,this.formBuilder=r,this.systemUserId="00000000-0000-0000-0000-000000000000",this.error="",this.accountsCount=0,this.accounts=[],this.nextCursor="",this.prevCursor=""}ngOnInit(){this.searchForm=this.formBuilder.group({filter:[""],filter_type:[0]});const t=this.route.snapshot.queryParamMap;this.f.filter.setValue(t.get("filter")),this.f.filter_type.setValue(+t.get("filter_type")),this.nextCursor=t.get("cursor"),this.nextCursor&&""!==this.nextCursor?this.search(1):(this.f.filter.value||this.f.filter_type.value)&&this.search(0),this.route.data.subscribe(t=>{this.accounts.length=0,t&&(this.accounts.push(...t[0].users),this.accountsCount=t[0].total_count,this.nextCursor=t[0].next_cursor,this.prevCursor=t[0].prev_cursor)},t=>{this.error=t})}search(t){let e="";switch(t){case-1:e=this.prevCursor;break;case 0:e="";break;case 1:e=this.nextCursor}this.consoleService.listAccounts("",this.f.filter.value,this.f.filter_type.value&&1===this.f.filter_type.value,e).subscribe(t=>{this.error="",this.accounts.length=0,this.accounts.push(...t.users),this.accountsCount=t.total_count,this.nextCursor=t.next_cursor,this.router.navigate([],{relativeTo:this.route,queryParams:{filter:this.f.filter.value,filter_type:this.f.filter_type.value,cursor:e},queryParamsHandling:"merge"})},t=>{this.error=t})}deleteAccount(t,e,n){t.target.disabled=!0,t.preventDefault(),this.error="",this.consoleService.deleteAccount("",n.id,!1).subscribe(()=>{this.error="",this.accounts.splice(e,1),this.accountsCount--},t=>{this.error=t})}deleteAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_DEVELOPER}viewAccount(t){this.router.navigate(["/accounts",t.id],{relativeTo:this.route})}get f(){return this.searchForm.controls}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(hb),Do(vw))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:45,vars:9,consts:[[1,"pb-1"],[1,"pb-3"],[1,"row","no-gutters","mb-4"],[1,"col","d-flex","justify-content-between","no-gutters","align-items-center"],[1,"col-md-9"],[3,"formGroup","ngSubmit"],[1,"input-group"],["type","text","formControlName","filter","placeholder","Filter by user ID or username (use '%' for wildcard search)",1,"form-control","border-right-0"],[1,"input-group-append"],[1,"input-group-text",3,"click"],["src","/static/svg/purple-cog-1.svg","alt","","width","20","height","",1,"mr-1"],[1,"btn-group"],["type","button",1,"btn","btn-primary","dropdown-radius",3,"click"],["ngbDropdown","","role","group","aria-label","Button group with nested dropdown",1,"btn-group"],["type","button","ngbDropdownToggle","",1,"btn","btn-primary","dropdown-toggle-split",3,"disabled"],["ngbDropdownMenu","",1,"dropdown-menu"],["type","button","ngbDropdownItem","",3,"click"],[1,"col-md-3","justify-content-end","text-right"],["role","group","aria-label","Basic example",1,"btn-group","page-btns"],["type","button",1,"btn","btn-outline-secondary",3,"disabled","click"],["src","/static/svg/page-first.svg","alt","","width","20","height",""],["src","/static/svg/page-next.svg","alt","","width","20","height",""],["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],[1,"row","no-gutters"],[1,"table","table-sm","table-hover","table-bordered"],[1,"thead-light"],[2,"width","320px"],[2,"width","180px"],["style","width: 90px",4,"ngIf"],[4,"ngIf"],[4,"ngFor","ngForOf"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[2,"width","90px"],["colSpan","5",1,"text-muted"],[3,"click"],["class","text-center",4,"ngIf"],[1,"text-center"],["type","button",1,"btn","btn-sm","btn-danger",3,"click"]],template:function(t,e){1&t&&(Fo(0,"h2",0),ga(1,"User Accounts"),Lo(),Fo(2,"h6",1),ga(3),Lo(),Fo(4,"div",2),Fo(5,"div",3),Fo(6,"div",4),Fo(7,"form",5),Bo("ngSubmit",function(){return e.search(0)}),Fo(8,"div",6),Mo(9,"input",7),Fo(10,"div",8),Fo(11,"span",9),Bo("click",function(){return e.f.filter.setValue(e.systemUserId)}),Mo(12,"img",10),Lo(),Lo(),Fo(13,"div",8),Fo(14,"div",11),Fo(15,"button",12),Bo("click",function(){return e.f.filter_type.setValue(0),e.search(0)}),ga(16,"Search"),Lo(),Fo(17,"div",13),Mo(18,"button",14),Fo(19,"div",15),Fo(20,"button",16),Bo("click",function(){return e.f.filter_type.setValue(1),e.search(0)}),ga(21,"Tombstones"),Lo(),Lo(),Lo(),Lo(),Lo(),Lo(),Lo(),Lo(),Fo(22,"div",17),Fo(23,"div",18),Fo(24,"button",19),Bo("click",function(){return e.search(0)}),Mo(25,"img",20),Lo(),Fo(26,"button",19),Bo("click",function(){return e.search(1)}),Mo(27,"img",21),Lo(),Lo(),Lo(),Lo(),Lo(),ko(28,_$,4,2,"ngb-alert",22),Fo(29,"div",23),Fo(30,"table",24),Fo(31,"thead",25),Fo(32,"tr"),Fo(33,"th",26),ga(34,"User ID"),Lo(),Fo(35,"th"),ga(36,"Username"),Lo(),Fo(37,"th"),ga(38,"Display Name"),Lo(),Fo(39,"th",27),ga(40,"Last Update"),Lo(),ko(41,C$,2,0,"th",28),Lo(),Lo(),Fo(42,"tbody"),ko(43,S$,3,0,"tr",29),ko(44,A$,11,6,"tr",30),Lo(),Lo(),Lo()),2&t&&(Yr(3),va("",e.accountsCount," accounts found."),Yr(4),To("formGroup",e.searchForm),Yr(11),To("disabled",!e.f.filter.value||""===e.f.filter.value),Yr(6),To("disabled",0===e.accounts.length),Yr(2),To("disabled",""===e.nextCursor),Yr(2),To("ngIf",e.error),Yr(13),To("ngIf",e.deleteAllowed()),Yr(2),To("ngIf",0===e.accounts.length),Yr(1),To("ngForOf",e.accounts))},directives:[lw,Ey,uw,ny,Sy,fw,Ux,Bx,Px,Ix,Ph,Oh,mx],styles:[".dropdown-radius[_ngcontent-%COMP%]{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-text[_ngcontent-%COMP%]{background-color:initial;cursor:pointer}.table-hover[_ngcontent-%COMP%]{cursor:pointer}"]}),t})(),T$=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){const n=t.queryParamMap.get("filter"),i=t.queryParamMap.get("tombstones");return this.consoleService.listAccounts("",n,"true"===i,null)}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function R$(t,e){if(1&t){const t=Io();Fo(0,"button",15),Bo("click",function(e){return Le(t),Ho().exportAccount(e)}),Mo(1,"img",16),ga(2,"Export"),Lo()}}function F$(t,e){1&t&&(Fo(0,"span"),ga(1,"Unban"),Lo())}function L$(t,e){1&t&&(Fo(0,"span"),ga(1,"Ban"),Lo())}function M$(t,e){if(1&t){const t=Io();Fo(0,"button",15),Bo("click",function(e){return Le(t),Ho().banUnbanAccount(e)}),Mo(1,"img",17),ko(2,F$,2,0,"span",18),ko(3,L$,2,0,"span",18),Lo()}if(2&t){const t=Ho();Yr(2),To("ngIf",t.account.disable_time),Yr(1),To("ngIf",!t.account.disable_time)}}function $$(t,e){if(1&t){const t=Io();Fo(0,"button",19),Bo("click",function(e){return Le(t),Ho().deleteAccount(e,!1)}),Mo(1,"img",20),ga(2,"Delete"),Lo()}}function O$(t,e){if(1&t){const t=Io();Fo(0,"button",19),Bo("click",function(e){return Le(t),Ho().deleteAccount(e,!0)}),Mo(1,"img",21),ga(2,"Recorded delete"),Lo()}}function I$(t,e){if(1&t&&(Fo(0,"ngb-alert",22),Mo(1,"img",23),Fo(2,"h6",24),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}const P$=function(t,e){return["/accounts",t,e]};function N$(t,e){if(1&t&&(Fo(0,"div"),$o(1,25),Fo(2,"a",26),ga(3),Lo(),Oo(),Lo()),2&t){const t=e.$implicit,n=Ho();Yr(1),To("ngbNavItem",t.path),Yr(1),To("routerLink",Ul(3,P$,n.account.user.id,t.path)),Yr(1),ma(t.label)}}const B$=function(){return["/accounts"]},U$=function(){return["/storage"]},V$=function(t){return{user_id:t}};let H$=(()=>{class t{constructor(t,e,n,i){this.route=t,this.router=e,this.consoleService=n,this.authService=i,this.error="",this.views=[{label:"Profile",path:"profile"},{label:"Authentication",path:"authentication"},{label:"Friends",path:"friends"},{label:"Groups",path:"groups"},{label:"Wallet",path:"wallet"}]}ngOnInit(){this.route.data.subscribe(t=>{this.account=t[0].account},t=>{this.error=t})}deleteAccount(t,e){t.target.disabled=!0,this.error="",this.consoleService.deleteAccount("",this.account.user.id,e).subscribe(()=>{this.error="",this.router.navigate(["/accounts"])},t=>{this.error=t})}banUnbanAccount(t){t.target.disabled=!0,this.error="",this.account.disable_time?this.consoleService.unbanAccount("",this.account.user.id).subscribe(()=>{this.error="",this.account.disable_time=null,t.target.disabled=!1},e=>{this.error=e,t.target.disabled=!1}):this.consoleService.banAccount("",this.account.user.id).subscribe(()=>{this.error="",this.account.disable_time=Date.now().toString(),t.target.disabled=!1},e=>{this.error=e,t.target.disabled=!1})}exportAccount(t){t.target.disabled=!0,this.error="",this.consoleService.exportAccount("",this.account.user.id).subscribe(e=>{this.error="";const n=this.account.user.id+"-export.json",i=JSON.stringify(e,null,2),r=(new TextEncoder).encode(i),s=new Blob([r],{type:"application/json;charset=utf-8"});Object(NL.saveAs)(s,n),t.target.disabled=!1},e=>{t.target.disabled=!1,this.error=e})}updateAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_MAINTAINER}exportAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_DEVELOPER}banAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_MAINTAINER}deleteAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_DEVELOPER}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(hb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:24,vars:14,consts:[[1,"pb-1"],[1,"account-top-nav","d-flex","justify-content-between","align-items-baseline","mb-4"],["aria-label","breadcrumb"],[1,"breadcrumb"],[1,"breadcrumb-item"],[3,"routerLink"],[1,"breadcrumb-item","active"],["type","button","class","btn btn-outline-secondary mr-2",3,"click",4,"ngIf"],["type","button","class","btn btn-danger btn-danger-icon mr-2",3,"click",4,"ngIf"],["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],["ngbNav","",1,"navbar-expand-sm","p-0","mb-3"],["accountNav","ngbNav"],[4,"ngFor","ngForOf"],["ngbNavItem","storage"],["ngbNavLink","",3,"routerLink","queryParams"],["type","button",1,"btn","btn-outline-secondary","mr-2",3,"click"],["src","/static/svg/export.svg","alt","","width","13","height","13",1,"mr-2"],["src","/static/svg/ban.svg","alt","","width","13","height","13",1,"mr-2"],[4,"ngIf"],["type","button",1,"btn","btn-danger","btn-danger-icon","mr-2",3,"click"],["src","/static/svg/bin-red.svg","alt","","width","14","height","",1,"mr-2"],["src","/static/svg/bin-recorded.svg","alt","","width","15","height","",1,"mr-2"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[3,"ngbNavItem"],["ngbNavLink","","routerLinkActive","account-link-active",3,"routerLink"]],template:function(t,e){1&t&&(Fo(0,"h2",0),ga(1,"User Account"),Lo(),Fo(2,"div",1),Fo(3,"nav",2),Fo(4,"ol",3),Fo(5,"li",4),Fo(6,"a",5),ga(7,"Account"),Lo(),Lo(),Fo(8,"li",6),ga(9),Lo(),Lo(),Lo(),Fo(10,"div"),ko(11,R$,3,0,"button",7),ko(12,M$,4,2,"button",7),ko(13,$$,3,0,"button",8),ko(14,O$,3,0,"button",8),Lo(),Lo(),ko(15,I$,4,2,"ngb-alert",9),Fo(16,"nav",10,11),ko(18,N$,4,6,"div",12),Fo(19,"div"),$o(20,13),Fo(21,"a",14),ga(22," Storage "),Lo(),Oo(),Lo(),Lo(),Mo(23,"router-outlet")),2&t&&(Yr(6),To("routerLink",Nl(10,B$)),Yr(3),ma(e.account.user.id),Yr(2),To("ngIf",e.exportAllowed()),Yr(1),To("ngIf",e.banAllowed()),Yr(1),To("ngIf",e.deleteAllowed()),Yr(1),To("ngIf",e.deleteAllowed()),Yr(1),To("ngIf",e.error),Yr(3),To("ngForOf",e.views),Yr(3),To("routerLink",Nl(11,U$))("queryParams",Bl(12,V$,e.account.user.id)))},directives:[Dv,Ph,s_,Oh,r_,o_,Fv,mx,Rv],styles:[".nav-link[_ngcontent-%COMP%]{font-size:12px;font-family:Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:#000;opacity:.5;padding:0 0 1.6em;margin-right:3em;margin-bottom:-2px;font-weight:600}.nav-link[_ngcontent-%COMP%]:hover{opacity:1}.nav-link.account-link-active[_ngcontent-%COMP%]{opacity:1;border-bottom:2px solid #7668ed}.account-top-nav[_ngcontent-%COMP%], .navbar-expand-sm[_ngcontent-%COMP%]{border-bottom:1px solid #dadae9}.account-top-nav[_ngcontent-%COMP%]{padding-bottom:1.5em}"]}),t})(),j$=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){const n=t.paramMap.get("id");return this.consoleService.getAccount("",n)}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const z$=["editor"];function W$(t,e){if(1&t&&(Fo(0,"ngb-alert",29),Mo(1,"img",30),Fo(2,"h6",31),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}function G$(t,e){1&t&&(Fo(0,"ngb-alert",32),Mo(1,"img",33),Fo(2,"h6",31),ga(3,"Account was modified successfully."),Lo(),Lo()),2&t&&To("dismissible",!1)}function K$(t,e){1&t&&(Fo(0,"button",34),ga(1,"Save"),Lo()),2&t&&To("disabled",Ho().updating)}const q$=function(t){return{"is-invalid":t}};let X$=(()=>{class t{constructor(t,e,n,i,r){this.route=t,this.router=e,this.consoleService=n,this.authService=i,this.formBuilder=r,this.error="",this.updating=!1,this.updated=!1}ngOnInit(){this.accountForm=this.formBuilder.group({username:["",ly.required],display_name:[""],avatar_url:[""],location:[""],timezone:[""]}),this.route.parent.data.subscribe(t=>{this.account=t[0].account,this.f.username.setValue(this.account.user.username),this.f.display_name.setValue(this.account.user.display_name),this.f.avatar_url.setValue(this.account.user.avatar_url),this.f.location.setValue(this.account.user.location),this.f.timezone.setValue(this.account.user.timezone),this.updateAllowed()||this.accountForm.disable()},t=>{this.error=t})}ngAfterViewInit(){JM.config.set("fontSize","14px"),JM.config.set("printMarginColumn",0),JM.config.set("useWorker",!0),JM.config.set("highlightSelectedWord",!0),JM.config.set("fontFamily",'"Courier New", Courier, monospace'),this.aceEditor=JM.edit(this.editor.nativeElement),this.aceEditor.setReadOnly(!this.updateAllowed());const t=JSON.stringify(JSON.parse(this.account.user.metadata),null,2);this.aceEditor.session.setValue(t)}updateAccount(){this.error="",this.updated=!1,this.updating=!0;let t="";try{t=JSON.stringify(JSON.parse(this.aceEditor.session.getValue()))}catch(e){return this.error=e,void(this.updating=!1)}this.consoleService.updateAccount("",this.account.user.id,{username:this.f.username.value,display_name:this.f.display_name.value,avatar_url:this.f.avatar_url.value,location:this.f.location.value,timezone:this.f.timezone.value,metadata:t}).subscribe(t=>{this.updated=!0,this.updating=!1},t=>{this.error=t,this.updating=!1})}updateAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_MAINTAINER}get f(){return this.accountForm.controls}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(hb),Do(vw))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],viewQuery:function(t,e){if(1&t&&ic(z$,!0),2&t){let t;ec(t=oc())&&(e.editor=t.first)}},decls:53,vars:11,consts:[["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],["type","success","class","mb-3",3,"dismissible",4,"ngIf"],[1,"add-border",3,"formGroup","ngSubmit"],[1,"row"],[1,"col-md-6","d-flex","justify-content-start","align-items-baseline"],[1,"col-3","pl-0"],["for","user_id",1,"d-inline"],["type","text","id","user_id","placeholder","User ID","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","username",1,"d-inline"],["type","text","id","username","placeholder","Username","required","","formControlName","username",1,"form-control","form-control-sm","my-2",3,"ngClass"],[1,"invalid-tooltip",3,"hidden"],["for","display_name",1,"d-inline"],["type","text","id","display_name","placeholder","Display Name","formControlName","display_name",1,"form-control","form-control-sm","my-2"],[1,"col-md-6","d-flex","justify-content-start","align-items-baseline","align-self-center"],["for","avatar_url",1,"d-inline"],["type","text","id","avatar_url","placeholder","Avatar URL","formControlName","avatar_url",1,"form-control","form-control-sm","my-2"],["for","location",1,"d-inline"],["type","text","id","location","placeholder","Location","formControlName","location",1,"form-control","form-control-sm","my-2"],["for","timezone",1,"d-inline"],["type","text","id","timezone","placeholder","Timezone","formControlName","timezone",1,"form-control","form-control-sm","my-2"],[1,"row","mb-3","add-border-single-row-bottom"],["for","create_time",1,"d-inline"],["type","text","id","create_time","placeholder","Create Time","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","update_time",1,"d-inline"],["type","text","id","update_time","placeholder","Update Time","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],[1,"card","p-2","mb-3",2,"height","400px"],[2,"height","400px"],["editor",""],["type","submit","class","btn btn-primary",3,"disabled",4,"ngIf"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],["type","success",1,"mb-3",3,"dismissible"],["src","/static/svg/green-tick.svg","alt","","width","16","height","",1,"mr-2"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(t,e){1&t&&(ko(0,W$,4,2,"ngb-alert",0),ko(1,G$,4,1,"ngb-alert",1),Fo(2,"form",2),Bo("ngSubmit",function(){return e.updateAccount()}),Fo(3,"div",3),Fo(4,"div",4),Fo(5,"div",5),Fo(6,"label",6),ga(7,"User ID"),Lo(),Lo(),Mo(8,"input",7),Lo(),Fo(9,"div",4),Fo(10,"div",5),Fo(11,"label",8),ga(12,"Username"),Lo(),Lo(),Mo(13,"input",9),Fo(14,"div",10),ga(15,"Username is required"),Lo(),Lo(),Lo(),Fo(16,"div",3),Fo(17,"div",4),Fo(18,"div",5),Fo(19,"label",11),ga(20,"Display Name"),Lo(),Lo(),Mo(21,"input",12),Lo(),Fo(22,"div",13),Fo(23,"div",5),Fo(24,"label",14),ga(25,"Avatar URL"),Lo(),Lo(),Mo(26,"input",15),Lo(),Lo(),Fo(27,"div",3),Fo(28,"div",4),Fo(29,"div",5),Fo(30,"label",16),ga(31,"Location"),Lo(),Lo(),Mo(32,"input",17),Lo(),Fo(33,"div",13),Fo(34,"div",5),Fo(35,"label",18),ga(36,"Timezone"),Lo(),Lo(),Mo(37,"input",19),Lo(),Lo(),Fo(38,"div",20),Fo(39,"div",4),Fo(40,"div",5),Fo(41,"label",21),ga(42,"Create Time"),Lo(),Lo(),Mo(43,"input",22),Lo(),Fo(44,"div",4),Fo(45,"div",5),Fo(46,"label",23),ga(47,"Update Time"),Lo(),Lo(),Mo(48,"input",24),Lo(),Lo(),Fo(49,"div",25),Mo(50,"div",26,27),Lo(),ko(52,K$,2,1,"button",28),Lo()),2&t&&(To("ngIf",e.error),Yr(1),To("ngIf",e.updated),Yr(1),To("formGroup",e.accountForm),Yr(6),To("value",e.account.user.id),Yr(5),To("ngClass",Bl(9,q$,e.f.username.dirty&&e.f.username.errors)),Yr(1),To("hidden",e.f.username.disabled||e.f.username.valid||e.f.username.pristine),Yr(29),To("value",e.account.user.create_time),Yr(5),To("value",e.account.user.create_time),Yr(4),To("ngIf",e.updateAllowed()))},directives:[Ph,lw,Ey,uw,ny,gw,Sy,fw,Mh,mx],styles:[""]}),t})();function Y$(t,e){if(1&t&&(Fo(0,"ngb-alert",34),Mo(1,"img",35),Fo(2,"h6",36),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}function J$(t,e){1&t&&(Fo(0,"ngb-alert",37),Mo(1,"img",38),Fo(2,"h6",36),ga(3,"Account was modified successfully."),Lo(),Lo()),2&t&&To("dismissible",!1)}function Q$(t,e){if(1&t&&(Fo(0,"option",39),ga(1),Lo()),2&t){const t=e.$implicit,n=e.index;Go("value",n),To("selected",0===n),Yr(1),ma(t.id)}}function Z$(t,e){1&t&&(Fo(0,"button",40),ga(1,"Save"),Lo()),2&t&&To("disabled",Ho().updating)}let tO=(()=>{class t{constructor(t,e,n,i,r){this.route=t,this.router=e,this.consoleService=n,this.authService=i,this.formBuilder=r,this.error="",this.updating=!1,this.updated=!1}ngOnInit(){this.accountForm=this.formBuilder.group({email:[""],password:[""],selected_device_id_index:[""]}),this.route.parent.data.subscribe(t=>{this.account=t[0].account,this.f.email.setValue(this.account.email),this.f.password.setValue(""),this.f.selected_device_id_index.setValue(0),0===this.account.devices.length&&this.f.selected_device_id_index.disable(),this.updateAllowed()||this.accountForm.disable()},t=>{this.error=t})}updateAccount(){this.error="",this.updated=!1,this.updating=!0;const t={email:this.f.email.value};this.f.password.dirty&&(t.password=this.f.password.value),this.consoleService.updateAccount("",this.account.user.id,t).subscribe(t=>{this.updated=!0,this.updating=!1,this.f.password.reset()},t=>{this.error=t,this.updating=!1})}unlinkDeviceId(t){t.target.disabled=!0,this.error="",this.consoleService.unlinkDevice("",this.account.user.id,{device_id:this.account.devices[this.f.selected_device_id_index.value].id}).subscribe(()=>{this.error="",this.account.devices.splice(this.f.selected_device_id_index.value,1),this.f.selected_device_id_index.setValue(0)},t=>{this.error=t})}unlinkCustomID(t){t.target.disabled=!0,this.error="",this.consoleService.unlinkCustom("",this.account.user.id).subscribe(()=>{this.error="",this.account.custom_id=null},t=>{this.error=t})}unlinkFacebook(t){t.target.disabled=!0,this.error="",this.consoleService.unlinkFacebook("",this.account.user.id).subscribe(()=>{this.error="",this.account.user.facebook_id=null},t=>{this.error=t})}unlinkFacebookInstantGames(t){t.target.disabled=!0,this.error="",this.consoleService.unlinkFacebookInstantGame("",this.account.user.id).subscribe(()=>{this.error="",this.account.user.facebook_instant_game_id=null},t=>{this.error=t})}unlinkApple(t){t.target.disabled=!0,this.error="",this.consoleService.unlinkApple("",this.account.user.id).subscribe(()=>{this.error="",this.account.user.apple_id=null},t=>{this.error=t})}unlinkGameCenter(t){t.target.disabled=!0,this.error="",this.consoleService.unlinkGameCenter("",this.account.user.id).subscribe(()=>{this.error="",this.account.user.gamecenter_id=null},t=>{this.error=t})}unlinkGoogle(t){t.target.disabled=!0,this.error="",this.consoleService.unlinkGoogle("",this.account.user.id).subscribe(()=>{this.error="",this.account.user.google_id=null},t=>{this.error=t})}unlinkSteam(t){t.target.disabled=!0,this.error="",this.consoleService.unlinkSteam("",this.account.user.id).subscribe(()=>{this.error="",this.account.user.steam_id=null},t=>{this.error=t})}updateAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_MAINTAINER}get f(){return this.accountForm.controls}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(hb),Do(vw))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:99,vars:21,consts:[["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],["type","success","class","mb-3",3,"dismissible",4,"ngIf"],[1,"add-border",3,"formGroup","ngSubmit"],[1,"row"],[1,"col-md-6","d-flex","justify-content-start","align-items-baseline"],[1,"col-3","pl-0"],["for","selected_device_id_index",1,"d-inline"],[1,"input-group"],["id","selected_device_id_index","formControlName","selected_device_id_index",1,"form-control","custom-select","custom-select-sm"],[3,"value","selected",4,"ngFor","ngForOf"],[1,"input-group-append"],["type","button",1,"btn","btn-sm","btn-outline-danger",3,"disabled","click"],["for","custom_id",1,"d-inline"],["type","text","id","custom_id","disabled","",1,"form-control","form-control-sm",3,"value"],["for","facebook_id",1,"d-inline"],["type","text","id","facebook_id","disabled","",1,"form-control","form-control-sm",3,"value"],[1,"col-md-6","d-flex","justify-content-start","align-items-baseline","align-self-center"],["for","facebook_instant_game_id",1,"d-inline"],["type","text","id","facebook_instant_game_id","disabled","",1,"form-control","form-control-sm",3,"value"],["for","apple_id",1,"d-inline"],["type","text","id","apple_id","disabled","",1,"form-control","form-control-sm",3,"value"],["for","gamecenter_id",1,"d-inline"],["type","text","id","gamecenter_id","disabled","",1,"form-control","form-control-sm",3,"value"],["for","google_id",1,"d-inline"],["type","text","id","google_id","disabled","",1,"form-control","form-control-sm",3,"value"],["for","steam_id",1,"d-inline"],["type","text","id","steam_id","disabled","",1,"form-control","form-control-sm",3,"value"],["for","email",1,"d-inline"],["type","text","id","email","placeholder","Email","formControlName","email",1,"form-control","form-control-sm"],["for","password",1,"d-inline"],["type","text","id","password","placeholder","Password","formControlName","password",1,"form-control","form-control-sm"],[1,"row","remove-sides"],[1,"small"],["type","submit","class","btn btn-primary",3,"disabled",4,"ngIf"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],["type","success",1,"mb-3",3,"dismissible"],["src","/static/svg/green-tick.svg","alt","","width","16","height","",1,"mr-2"],[3,"value","selected"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(t,e){1&t&&(ko(0,Y$,4,2,"ngb-alert",0),ko(1,J$,4,1,"ngb-alert",1),Fo(2,"form",2),Bo("ngSubmit",function(){return e.updateAccount()}),Fo(3,"div",3),Fo(4,"div",4),Fo(5,"div",5),Fo(6,"label",6),ga(7,"Device IDs"),Lo(),Lo(),Fo(8,"div",7),Fo(9,"select",8),ko(10,Q$,2,3,"option",9),Lo(),Fo(11,"div",10),Fo(12,"button",11),Bo("click",function(t){return e.unlinkDeviceId(t)}),ga(13,"Unlink"),Lo(),Lo(),Lo(),Lo(),Fo(14,"div",4),Fo(15,"div",5),Fo(16,"label",12),ga(17,"Custom ID"),Lo(),Lo(),Fo(18,"div",7),Mo(19,"input",13),Fo(20,"div",10),Fo(21,"button",11),Bo("click",function(t){return e.unlinkCustomID(t)}),ga(22,"Unlink"),Lo(),Lo(),Lo(),Lo(),Lo(),Fo(23,"div",3),Fo(24,"div",4),Fo(25,"div",5),Fo(26,"label",14),ga(27,"Facebook ID"),Lo(),Lo(),Fo(28,"div",7),Mo(29,"input",15),Fo(30,"div",10),Fo(31,"button",11),Bo("click",function(t){return e.unlinkFacebook(t)}),ga(32,"Unlink"),Lo(),Lo(),Lo(),Lo(),Fo(33,"div",16),Fo(34,"div",5),Fo(35,"label",17),ga(36,"FB Instant Game ID"),Lo(),Lo(),Fo(37,"div",7),Mo(38,"input",18),Fo(39,"div",10),Fo(40,"button",11),Bo("click",function(t){return e.unlinkFacebookInstantGames(t)}),ga(41,"Unlink"),Lo(),Lo(),Lo(),Lo(),Lo(),Fo(42,"div",3),Fo(43,"div",4),Fo(44,"div",5),Fo(45,"label",19),ga(46,"Apple ID"),Lo(),Lo(),Fo(47,"div",7),Mo(48,"input",20),Fo(49,"div",10),Fo(50,"button",11),Bo("click",function(t){return e.unlinkApple(t)}),ga(51,"Unlink"),Lo(),Lo(),Lo(),Lo(),Fo(52,"div",16),Fo(53,"div",5),Fo(54,"label",21),ga(55,"GameCenter ID"),Lo(),Lo(),Fo(56,"div",7),Mo(57,"input",22),Fo(58,"div",10),Fo(59,"button",11),Bo("click",function(t){return e.unlinkGameCenter(t)}),ga(60,"Unlink"),Lo(),Lo(),Lo(),Lo(),Lo(),Fo(61,"div",3),Fo(62,"div",4),Fo(63,"div",5),Fo(64,"label",23),ga(65,"Google ID"),Lo(),Lo(),Fo(66,"div",7),Mo(67,"input",24),Fo(68,"div",10),Fo(69,"button",11),Bo("click",function(t){return e.unlinkGoogle(t)}),ga(70,"Unlink"),Lo(),Lo(),Lo(),Lo(),Fo(71,"div",4),Fo(72,"div",5),Fo(73,"label",25),ga(74,"Steam ID"),Lo(),Lo(),Fo(75,"div",7),Mo(76,"input",26),Fo(77,"div",10),Fo(78,"button",11),Bo("click",function(t){return e.unlinkGoogle(t)}),ga(79,"Unlink"),Lo(),Lo(),Lo(),Lo(),Lo(),Fo(80,"div",3),Fo(81,"div",4),Fo(82,"div",5),Fo(83,"label",27),ga(84,"Email"),Lo(),Mo(85,"br"),Lo(),Mo(86,"input",28),Lo(),Fo(87,"div",4),Fo(88,"div",5),Fo(89,"label",29),ga(90,"password"),Lo(),Lo(),Mo(91,"input",30),Lo(),Lo(),Fo(92,"div",31),Fo(93,"div",4),Mo(94,"div",5),Fo(95,"span",32),ga(96),Lo(),Lo(),Mo(97,"div",4),Lo(),ko(98,Z$,2,1,"button",33),Lo()),2&t&&(To("ngIf",e.error),Yr(1),To("ngIf",e.updated),Yr(1),To("formGroup",e.accountForm),Yr(8),To("ngForOf",e.account.devices),Yr(2),To("disabled",!e.updateAllowed()||0===e.account.devices.length),Yr(7),To("value",e.account.custom_id),Yr(2),To("disabled",!e.updateAllowed()||!e.account.custom_id||""===e.account.custom_id),Yr(8),To("value",e.account.user.facebook_id),Yr(2),To("disabled",!e.updateAllowed()||!e.account.user.facebook_id||""===e.account.user.facebook_id),Yr(7),To("value",e.account.user.facebook_instant_game_id),Yr(2),To("disabled",!e.updateAllowed()||!e.account.user.facebook_instant_game_id||""===e.account.user.facebook_instant_game_id),Yr(8),To("value",e.account.user.apple_id),Yr(2),To("disabled",!e.updateAllowed()||!e.account.user.apple_id||""===e.account.user.apple_id),Yr(7),To("value",e.account.user.gamecenter_id),Yr(2),To("disabled",!e.updateAllowed()||!e.account.user.gamecenter_id||""===e.account.user.gamecenter_id),Yr(8),To("value",e.account.user.google_id),Yr(2),To("disabled",!e.updateAllowed()||!e.account.user.google_id||""===e.account.user.google_id),Yr(7),To("value",e.account.user.steam_id),Yr(2),To("disabled",!e.updateAllowed()||!e.account.user.steam_id||""===e.account.user.steam_id),Yr(18),va("Verification Status: ",null===e.account.verify_time?"Not Verified":"Verified",""),Yr(2),To("ngIf",e.updateAllowed()))},directives:[Ph,lw,Ey,uw,Oy,Sy,fw,Oh,ny,mx,Iy,Uy],styles:[""]}),t})();const eO=["editor"];function nO(t,e){if(1&t&&(Fo(0,"ngb-alert",15),Mo(1,"img",16),Fo(2,"h6",17),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}function iO(t,e){1&t&&(Fo(0,"ngb-alert",18),Mo(1,"img",19),Fo(2,"h6",17),ga(3,"Account was modified successfully."),Lo(),Lo()),2&t&&To("dismissible",!1)}function rO(t,e){if(1&t){const t=Io();Fo(0,"button",20),Bo("click",function(){return Le(t),Ho().updateWallet()}),ga(1,"Save"),Lo()}2&t&&To("disabled",Ho().updating)}function sO(t,e){1&t&&(Fo(0,"th",21),ga(1,"Remove"),Lo())}function oO(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",22),ga(2,"No wallet ledger items found."),Lo(),Lo())}function aO(t,e){1&t&&Mo(0,"div",28)}function lO(t,e){1&t&&Mo(0,"div",29)}function cO(t,e){if(1&t){const t=Io();Fo(0,"td"),Fo(1,"button",30),Bo("click",function(e){Le(t);const n=Ho(),i=n.index,r=n.$implicit;return Ho().deleteLedgerItem(e,i,r)}),ga(2,"Delete"),Lo(),Lo()}}function hO(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td",31),Fo(2,"pre",32),Fo(3,"small"),ga(4),Lo(),Lo(),Lo(),Lo()),2&t){const t=Ho().$implicit;Yr(4),ma(t.metadata)}}function uO(t,e){if(1&t){const t=Io();Fo(0,"tr"),Fo(1,"td"),Fo(2,"div",23),Bo("click",function(){Le(t);const n=e.index,i=Ho();return i.walletLedgerMetadataOpen[n]=!i.walletLedgerMetadataOpen[n]}),ko(3,aO,1,0,"div",24),ko(4,lO,1,0,"div",25),Lo(),ga(5),Lo(),Fo(6,"td",26),Fo(7,"pre",27),ga(8),Lo(),Lo(),Fo(9,"td"),ga(10),Lo(),ko(11,cO,3,0,"td",13),Lo(),ko(12,hO,5,1,"tr",13)}if(2&t){const t=e.index,n=e.$implicit,i=Ho();Yr(3),To("ngIf",!i.walletLedgerMetadataOpen[t]),Yr(1),To("ngIf",i.walletLedgerMetadataOpen[t]),Yr(1),va(" ",n.id," "),Yr(3),ma(n.changeset),Yr(2),ma(n.update_time),Yr(1),To("ngIf",i.deleteAllowed()),Yr(1),To("ngIf",i.walletLedgerMetadataOpen[t])}}let dO=(()=>{class t{constructor(t,e,n,i){this.route=t,this.router=e,this.consoleService=n,this.authService=i,this.error="",this.walletLedger=[],this.walletLedgerMetadataOpen=[],this.updating=!1,this.updated=!1}ngOnInit(){this.route.data.subscribe(t=>{this.walletLedger.length=0,this.walletLedger.push(...t[0].items),this.walletLedgerMetadataOpen.length=this.walletLedger.length},t=>{this.error=t}),this.route.parent.data.subscribe(t=>{this.account=t[0].account},t=>{this.error=t})}ngAfterViewInit(){JM.config.set("fontSize","14px"),JM.config.set("printMarginColumn",0),JM.config.set("useWorker",!0),JM.config.set("highlightSelectedWord",!0),JM.config.set("fontFamily",'"Courier New", Courier, monospace'),this.aceEditor=JM.edit(this.editor.nativeElement),this.aceEditor.setReadOnly(!this.updateAllowed());const t=JSON.stringify(JSON.parse(this.account.wallet),null,2);this.aceEditor.session.setValue(t)}updateWallet(){this.error="",this.updated=!1,this.updating=!0;let t="";try{t=JSON.stringify(JSON.parse(this.aceEditor.session.getValue()))}catch(e){return this.error=e,void(this.updating=!1)}this.consoleService.updateAccount("",this.account.user.id,{wallet:t}).subscribe(t=>{this.updated=!0,this.updating=!1},t=>{this.error=t,this.updating=!1})}updateAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_MAINTAINER}deleteAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_MAINTAINER}deleteLedgerItem(t,e,n){t.target.disabled=!0,t.preventDefault(),this.error="",this.consoleService.deleteWalletLedger("",this.account.user.id,n.id).subscribe(()=>{this.error="",this.walletLedger.splice(e,1),this.walletLedgerMetadataOpen.splice(e,1)},t=>{this.error=t})}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(hb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],viewQuery:function(t,e){if(1&t&&ic(eO,!0),2&t){let t;ec(t=oc())&&(e.editor=t.first)}},decls:21,vars:6,consts:[["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],["type","success","class","mb-3",3,"dismissible",4,"ngIf"],[1,"card","p-2","mb-3",2,"height","400px"],[2,"height","400px"],["editor",""],["type","button","class","btn btn-primary",3,"disabled","click",4,"ngIf"],[1,"my-4"],[1,"row","no-gutters"],[1,"table","table-sm","table-bordered"],[1,"thead-light"],[2,"width","315px"],[2,"width","180px"],["style","width: 90px",4,"ngIf"],[4,"ngIf"],["ngFor","",3,"ngForOf"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],["type","success",1,"mb-3",3,"dismissible"],["src","/static/svg/green-tick.svg","alt","","width","16","height","",1,"mr-2"],["type","button",1,"btn","btn-primary",3,"disabled","click"],[2,"width","90px"],["colSpan","5",1,"text-muted"],[1,"arrow",3,"click"],["class","arrow-right",4,"ngIf"],["class","arrow-down",4,"ngIf"],[1,"align-middle"],[1,"m-0","p-0"],[1,"arrow-right"],[1,"arrow-down"],["type","button",1,"btn","btn-sm","btn-danger",3,"click"],["colspan","5",1,"align-middle"],[1,"pre-wrap","m-0","p-0"]],template:function(t,e){1&t&&(ko(0,nO,4,2,"ngb-alert",0),ko(1,iO,4,1,"ngb-alert",1),Fo(2,"div",2),Mo(3,"div",3,4),Lo(),ko(5,rO,2,1,"button",5),Mo(6,"hr",6),Fo(7,"div",7),Fo(8,"table",8),Fo(9,"thead",9),Fo(10,"tr"),Fo(11,"th",10),ga(12,"ID"),Lo(),Fo(13,"th"),ga(14,"Changeset"),Lo(),Fo(15,"th",11),ga(16,"Update Time"),Lo(),ko(17,sO,2,0,"th",12),Lo(),Lo(),Fo(18,"tbody"),ko(19,oO,3,0,"tr",13),ko(20,uO,13,7,"ng-template",14),Lo(),Lo(),Lo()),2&t&&(To("ngIf",e.error),Yr(1),To("ngIf",e.updated),Yr(4),To("ngIf",e.updateAllowed()),Yr(12),To("ngIf",e.deleteAllowed()),Yr(2),To("ngIf",0===e.walletLedger.length),Yr(1),To("ngForOf",e.walletLedger))},directives:[Ph,Oh,mx],styles:[".pre-wrap[_ngcontent-%COMP%]{word-wrap:anywhere;word-break:break-all;white-space:pre-wrap}"]}),t})(),fO=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){const n=t.parent.paramMap.get("id");return this.consoleService.getWalletLedger("",n)}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function pO(t,e){if(1&t&&(Fo(0,"ngb-alert",10),Mo(1,"img",11),Fo(2,"h6",12),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}function gO(t,e){1&t&&(Fo(0,"th",13),ga(1,"Remove"),Lo())}function mO(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",14),ga(2,"No friends found."),Lo(),Lo())}function vO(t,e){1&t&&(Fo(0,"span"),ga(1,"Friend (0)"),Lo())}function yO(t,e){1&t&&(Fo(0,"span"),ga(1,"Invite Sent (1)"),Lo())}function wO(t,e){1&t&&(Fo(0,"span"),ga(1,"Invite Received (2)"),Lo())}function bO(t,e){1&t&&(Fo(0,"span"),ga(1,"Blocked (3)"),Lo())}function xO(t,e){if(1&t){const t=Io();Fo(0,"td",16),Fo(1,"button",17),Bo("click",function(e){Le(t);const n=Ho(),i=n.index,r=n.$implicit;return Ho().deleteFriend(e,i,r)}),ga(2,"Delete"),Lo(),Lo()}}function _O(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td"),ga(2),Lo(),Fo(3,"td"),ga(4),Lo(),Fo(5,"td"),ko(6,vO,2,0,"span",8),ko(7,yO,2,0,"span",8),ko(8,wO,2,0,"span",8),ko(9,bO,2,0,"span",8),Lo(),Fo(10,"td"),ga(11),Lo(),ko(12,xO,3,0,"td",15),Lo()),2&t){const t=e.$implicit,n=Ho();Yr(2),ma(t.user.id),Yr(2),ma(t.user.username),Yr(2),To("ngIf",0===t.state),Yr(1),To("ngIf",1===t.state),Yr(1),To("ngIf",2===t.state),Yr(1),To("ngIf",3===t.state),Yr(2),ma(t.update_time),Yr(1),To("ngIf",n.deleteAllowed())}}let CO=(()=>{class t{constructor(t,e,n,i){this.route=t,this.router=e,this.consoleService=n,this.authService=i,this.error="",this.friends=[]}ngOnInit(){this.route.data.subscribe(t=>{this.friends.length=0,this.friends.push(...t[0].friends)},t=>{this.error=t}),this.route.parent.data.subscribe(t=>{this.account=t[0].account},t=>{this.error=t})}deleteAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_MAINTAINER}deleteFriend(t,e,n){t.target.disabled=!0,t.preventDefault(),this.error="",this.consoleService.deleteFriend("",this.account.user.id,n.user.id).subscribe(()=>{this.error="",this.friends.splice(e,1)},t=>{this.error=t})}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(hb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:17,vars:4,consts:[["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],[1,"row","no-gutters"],[1,"table","table-sm","table-hover","table-bordered"],[1,"thead-light"],[2,"width","320px"],[2,"width","300px"],[2,"width","180px"],["style","width: 90px",4,"ngIf"],[4,"ngIf"],[4,"ngFor","ngForOf"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[2,"width","90px"],["colSpan","5",1,"text-muted"],["class","text-center",4,"ngIf"],[1,"text-center"],["type","button",1,"btn","btn-sm","btn-danger",3,"click"]],template:function(t,e){1&t&&(ko(0,pO,4,2,"ngb-alert",0),Fo(1,"div",1),Fo(2,"table",2),Fo(3,"thead",3),Fo(4,"tr"),Fo(5,"th",4),ga(6,"User ID"),Lo(),Fo(7,"th"),ga(8,"Username"),Lo(),Fo(9,"th",5),ga(10,"State"),Lo(),Fo(11,"th",6),ga(12,"Update Time"),Lo(),ko(13,gO,2,0,"th",7),Lo(),Lo(),Fo(14,"tbody"),ko(15,mO,3,0,"tr",8),ko(16,_O,13,8,"tr",9),Lo(),Lo(),Lo()),2&t&&(To("ngIf",e.error),Yr(13),To("ngIf",e.deleteAllowed()),Yr(2),To("ngIf",0===e.friends.length),Yr(1),To("ngForOf",e.friends))},directives:[Ph,Oh,mx],styles:[".table-hover[_ngcontent-%COMP%]{cursor:pointer}"]}),t})(),SO=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){const n=t.parent.paramMap.get("id");return this.consoleService.getFriends("",n)}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function EO(t,e){if(1&t&&(Fo(0,"ngb-alert",10),Mo(1,"img",11),Fo(2,"h6",12),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}function kO(t,e){1&t&&(Fo(0,"th",13),ga(1,"Remove"),Lo())}function AO(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",14),ga(2,"No group membership found."),Lo(),Lo())}function DO(t,e){1&t&&(Fo(0,"span"),ga(1,"Superadmin (0)"),Lo())}function TO(t,e){1&t&&(Fo(0,"span"),ga(1,"Admin (1)"),Lo())}function RO(t,e){1&t&&(Fo(0,"span"),ga(1,"Member (2)"),Lo())}function FO(t,e){1&t&&(Fo(0,"span"),ga(1,"Join Request (3)"),Lo())}function LO(t,e){1&t&&(Fo(0,"span"),ga(1,"Banned (4)"),Lo())}function MO(t,e){if(1&t){const t=Io();Fo(0,"td"),Fo(1,"button",15),Bo("click",function(e){Le(t);const n=Ho(),i=n.index,r=n.$implicit;return Ho().deleteGroupUser(e,i,r)}),ga(2,"Delete"),Lo(),Lo()}}function $O(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td"),ga(2),Lo(),Fo(3,"td"),ga(4),Lo(),Fo(5,"td"),ko(6,DO,2,0,"span",8),ko(7,TO,2,0,"span",8),ko(8,RO,2,0,"span",8),ko(9,FO,2,0,"span",8),ko(10,LO,2,0,"span",8),Lo(),Fo(11,"td"),ga(12),Lo(),ko(13,MO,3,0,"td",8),Lo()),2&t){const t=e.$implicit,n=Ho();Yr(2),ma(t.group.id),Yr(2),ma(t.group.name),Yr(2),To("ngIf",0===t.state),Yr(1),To("ngIf",1===t.state),Yr(1),To("ngIf",2===t.state),Yr(1),To("ngIf",3===t.state),Yr(1),To("ngIf",4===t.state),Yr(2),ma(t.group.update_time),Yr(1),To("ngIf",n.deleteAllowed())}}let OO=(()=>{class t{constructor(t,e,n,i){this.route=t,this.router=e,this.consoleService=n,this.authService=i,this.error="",this.groups=[]}ngOnInit(){this.route.data.subscribe(t=>{this.groups.length=0,this.groups.push(...t[0].user_groups)},t=>{this.error=t}),this.route.parent.data.subscribe(t=>{this.account=t[0].account},t=>{this.error=t})}deleteAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_MAINTAINER}deleteGroupUser(t,e,n){t.target.disabled=!0,t.preventDefault(),this.error="",this.consoleService.deleteGroupUser("",this.account.user.id,n.group.id).subscribe(()=>{this.error="",this.groups.splice(e,1)},t=>{this.error=t})}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(hb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:17,vars:4,consts:[["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],[1,"row","no-gutters"],[1,"table","table-sm","table-bordered"],[1,"thead-light"],[2,"width","320px"],[2,"width","300px"],[2,"width","180px"],["style","width: 90px",4,"ngIf"],[4,"ngIf"],[4,"ngFor","ngForOf"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[2,"width","90px"],["colSpan","5",1,"text-muted"],["type","button",1,"btn","btn-sm","btn-danger",3,"click"]],template:function(t,e){1&t&&(ko(0,EO,4,2,"ngb-alert",0),Fo(1,"div",1),Fo(2,"table",2),Fo(3,"thead",3),Fo(4,"tr"),Fo(5,"th",4),ga(6,"Group ID"),Lo(),Fo(7,"th"),ga(8,"Name"),Lo(),Fo(9,"th",5),ga(10,"State"),Lo(),Fo(11,"th",6),ga(12,"Update Time"),Lo(),ko(13,kO,2,0,"th",7),Lo(),Lo(),Fo(14,"tbody"),ko(15,AO,3,0,"tr",8),ko(16,$O,14,9,"tr",9),Lo(),Lo(),Lo()),2&t&&(To("ngIf",e.error),Yr(13),To("ngIf",e.deleteAllowed()),Yr(2),To("ngIf",0===e.groups.length),Yr(1),To("ngForOf",e.groups))},directives:[Ph,Oh,mx],styles:[""]}),t})(),IO=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){const n=t.parent.paramMap.get("id");return this.consoleService.getGroups("",n)}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function PO(t,e){if(1&t&&(Fo(0,"ngb-alert",12),Mo(1,"img",13),Fo(2,"h6",14),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}function NO(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",15),ga(2,"No realtime matches were found."),Lo(),Lo())}function BO(t,e){1&t&&Mo(0,"div",23)}function UO(t,e){1&t&&Mo(0,"div",24)}function VO(t,e){if(1&t){const t=Io();Fo(0,"div",20),Bo("click",function(){Le(t);const e=Ho(),n=e.index,i=e.$implicit,r=Ho();return r.getMatchState(n,i),r.matchStatesOpen[n]=!r.matchStatesOpen[n]}),ko(1,BO,1,0,"div",21),ko(2,UO,1,0,"div",22),Lo()}if(2&t){const t=Ho().index,e=Ho();Yr(1),To("ngIf",!e.matchStatesOpen[t]),Yr(1),To("ngIf",e.matchStatesOpen[t])}}function HO(t,e){1&t&&Mo(0,"div",25)}function jO(t,e){1&t&&(Fo(0,"span"),ga(1,"Yes"),Lo())}function zO(t,e){1&t&&(Fo(0,"span"),ga(1,"No"),Lo())}function WO(t,e){1&t&&Mo(0,"img",34)}function GO(t,e){if(1&t&&(Fo(0,"div"),Fo(1,"small"),Fo(2,"b"),ga(3,"Current Tick"),Lo(),Lo(),Fo(4,"pre",30),Fo(5,"small"),ga(6),Lo(),Lo(),Fo(7,"small"),Fo(8,"b"),ga(9,"Match State"),Lo(),Lo(),Fo(10,"pre",30),Fo(11,"small"),ga(12),Lo(),Lo(),Lo()),2&t){const t=Ho(2).index,e=Ho();Yr(6),ma(e.matchStates[t].tick),Yr(6),ma(e.matchStates[t].state)}}function KO(t,e){1&t&&Mo(0,"img",34)}function qO(t,e){if(1&t&&(Fo(0,"pre",30),Fo(1,"small"),ga(2),Lo(),Lo()),2&t){const t=Ho(2).index,e=Ho();Yr(2),ma(e.getMatchPresencesString(e.matchStates[t].presences))}}function XO(t,e){if(1&t&&(Fo(0,"tr",26),Fo(1,"td",27),Fo(2,"div",28),Fo(3,"div",29),Fo(4,"small"),Fo(5,"b"),ga(6,"Match Label"),Lo(),Lo(),Fo(7,"pre",30),Fo(8,"small"),ga(9),Lo(),Lo(),Lo(),Fo(10,"div",31),ko(11,WO,1,0,"img",32),ko(12,GO,13,2,"div",10),Lo(),Fo(13,"div",31),Fo(14,"small"),Fo(15,"b"),ga(16,"Match Presences"),Lo(),Lo(),ko(17,KO,1,0,"img",32),ko(18,qO,3,1,"pre",33),Lo(),Lo(),Lo(),Lo()),2&t){const t=Ho(),e=t.$implicit,n=t.index,i=Ho();Yr(9),ma(e.label),Yr(2),To("ngIf",!i.matchStates[n]||null===i.matchStates[n]),Yr(1),To("ngIf",null!==i.matchStates[n]),Yr(5),To("ngIf",!i.matchStates[n]||null===i.matchStates[n]),Yr(1),To("ngIf",null!==i.matchStates[n])}}function YO(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td"),ko(2,VO,3,2,"div",16),ko(3,HO,1,0,"div",17),ga(4),Lo(),Fo(5,"td"),ga(6),Lo(),Fo(7,"td",18),ko(8,jO,2,0,"span",10),ko(9,zO,2,0,"span",10),Lo(),Fo(10,"td"),ga(11),Lo(),Fo(12,"td"),ga(13),Lo(),Lo(),ko(14,XO,19,5,"tr",19)),2&t){const t=e.index,n=e.$implicit,i=Ho();Yr(2),To("ngIf",n.authoritative),Yr(1),To("ngIf",!n.authoritative),Yr(1),va(" ",n.match_id," "),Yr(2),ma(n.size),Yr(2),To("ngIf",n.authoritative),Yr(1),To("ngIf",!n.authoritative),Yr(2),ma(n.handler_name),Yr(2),ma(n.authoritative?n.tick_rate:"-"),Yr(1),To("ngIf",i.matchStatesOpen[t])}}let JO=(()=>{class t{constructor(t,e){this.route=t,this.consoleService=e,this.error="",this.matches=[],this.matchStates=[],this.matchStatesOpen=[],this.updated=!1}ngOnInit(){this.route.data.subscribe(t=>{this.matches.length=0,this.matches.push(...t[0].matches),this.matchStates.length=this.matches.length,this.matchStatesOpen.length=this.matches.length},t=>{this.error=t})}getMatchState(t,e){this.matchStatesOpen[t]||(this.matchStates[t]=null,this.error="",this.consoleService.getMatchState("",e.match_id).subscribe(e=>{this.matchStatesOpen[t]=!0,this.matchStates[t]=e},e=>{this.matchStatesOpen[t]=!1,this.matchStates[t]=null,this.error=e}))}getMatchPresencesString(t){return JSON.stringify(t)}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(sb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:23,vars:6,consts:[[1,"pb-1"],[1,"pb-4"],["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],[1,"row","no-gutters"],[1,"table","table-sm","table-bordered"],[1,"thead-light"],[2,"width","140px"],[2,"width","100px"],[2,"width","130px"],[2,"width","90px"],[4,"ngIf"],["ngFor","",3,"ngForOf"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],["colSpan","7",1,"text-muted"],["class","arrow",3,"click",4,"ngIf"],["class","d-inline-block mr-3",4,"ngIf"],[1,"text-center"],["class","open-row",4,"ngIf"],[1,"arrow",3,"click"],["class","arrow-right",4,"ngIf"],["class","arrow-down",4,"ngIf"],[1,"arrow-right"],[1,"arrow-down"],[1,"d-inline-block","mr-3"],[1,"open-row"],["colspan","5",1,"align-middle"],[1,"d-flex","p-0"],[1,"p-3","w-33","border"],[1,"pre-wrap","m-0","p-0"],[1,"p-3","w-33","border","border-left-0"],["src","/static/spinner.svg","class","d-block","width","16",4,"ngIf"],["class","pre-wrap m-0 p-0",4,"ngIf"],["src","/static/spinner.svg","width","16",1,"d-block"]],template:function(t,e){1&t&&(Fo(0,"h2",0),ga(1,"Active Matches"),Lo(),Fo(2,"h6",1),ga(3),Lo(),ko(4,PO,4,2,"ngb-alert",2),Fo(5,"div",3),Fo(6,"table",4),Fo(7,"thead",5),Fo(8,"tr"),Fo(9,"th"),Fo(10,"span"),ga(11,"Match ID"),Lo(),Lo(),Fo(12,"th",6),ga(13,"Presence Count"),Lo(),Fo(14,"th",7),ga(15,"Authoritative"),Lo(),Fo(16,"th",8),ga(17,"Handler Name"),Lo(),Fo(18,"th",9),ga(19,"Tick Rate"),Lo(),Lo(),Lo(),Fo(20,"tbody"),ko(21,NO,3,0,"tr",10),ko(22,YO,15,9,"ng-template",11),Lo(),Lo(),Lo()),2&t&&(Yr(3),va("",e.matches.length," running matches found."),Yr(1),To("ngIf",e.error),Yr(6),na("pl-3",e.matches.length>0),Yr(11),To("ngIf",0===e.matches.length),Yr(1),To("ngForOf",e.matches))},directives:[Ph,Oh,mx],styles:[".pre-wrap[_ngcontent-%COMP%]{word-wrap:anywhere;word-break:break-all;white-space:pre-wrap}.open-row[_ngcontent-%COMP%]{background:#fafafc}.w-33[_ngcontent-%COMP%]{width:33.3333%!important}"]}),t})(),QO=(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){return this.consoleService.listMatches("",null,null,null,null,null,null)}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function ZO(t,e){if(1&t){const t=Io();Fo(0,"button",12),Bo("click",function(e){return Le(t),Ho().deleteLeaderboard(e)}),Mo(1,"img",13),ga(2,"Delete Leaderboard"),Lo()}}function tI(t,e){if(1&t&&(Fo(0,"ngb-alert",14),Mo(1,"img",15),Fo(2,"h6",16),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}const eI=function(t,e){return["/leaderboards",t,e]};function nI(t,e){if(1&t&&(Fo(0,"div"),$o(1,17),Fo(2,"a",18),ga(3),Lo(),Oo(),Lo()),2&t){const t=e.$implicit,n=Ho();Yr(1),To("ngbNavItem",t.path),Yr(1),To("routerLink",Ul(3,eI,n.leaderboard.id,t.path)),Yr(1),ma(t.label)}}const iI=function(){return["/leaderboards"]},rI=["editor"];function sI(t,e){if(1&t&&(Fo(0,"ngb-alert",22),Mo(1,"img",23),Fo(2,"h6",24),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}function oI(t,e){if(1&t&&(Fo(0,"div",25),Fo(1,"h6"),ga(2,"Tournaments"),Lo(),Mo(3,"hr",26),Fo(4,"div",2),Fo(5,"div",3),Fo(6,"div",4),Fo(7,"label",27),ga(8,"Title"),Lo(),Lo(),Mo(9,"input",28),Lo(),Fo(10,"div",3),Fo(11,"div",4),Fo(12,"label",29),ga(13,"Description"),Lo(),Lo(),Mo(14,"input",30),Lo(),Lo(),Fo(15,"div",2),Fo(16,"div",3),Fo(17,"div",4),Fo(18,"label",31),ga(19,"Category"),Lo(),Lo(),Mo(20,"input",32),Lo(),Fo(21,"div",3),Fo(22,"div",4),Fo(23,"label",33),ga(24,"Max Num Score"),Lo(),Lo(),Mo(25,"input",34),Lo(),Lo(),Fo(26,"div",2),Fo(27,"div",3),Fo(28,"div",4),Fo(29,"label",35),ga(30,"Size"),Lo(),Lo(),Mo(31,"input",36),Lo(),Fo(32,"div",3),Fo(33,"div",4),Fo(34,"label",37),ga(35,"Max Size"),Lo(),Lo(),Mo(36,"input",38),Lo(),Lo(),Fo(37,"div",2),Fo(38,"div",3),Fo(39,"div",4),Fo(40,"label",39),ga(41,"Duration"),Lo(),Lo(),Mo(42,"input",40),Lo(),Fo(43,"div",3),Fo(44,"div",4),Fo(45,"label",41),ga(46,"Join Required"),Lo(),Lo(),Mo(47,"input",42),Lo(),Lo(),Fo(48,"div",2),Fo(49,"div",3),Fo(50,"div",4),Fo(51,"label",43),ga(52,"Start Time"),Lo(),Lo(),Mo(53,"input",44),Lo(),Fo(54,"div",3),Fo(55,"div",4),Fo(56,"label",45),ga(57,"End Time"),Lo(),Lo(),Mo(58,"input",46),Lo(),Lo(),Fo(59,"div",2),Fo(60,"div",3),Fo(61,"div",4),Fo(62,"label",47),ga(63,"Start Active"),Lo(),Lo(),Mo(64,"input",48),Lo(),Fo(65,"div",3),Fo(66,"div",4),Fo(67,"label",49),ga(68,"End Active"),Lo(),Lo(),Mo(69,"input",50),Lo(),Lo(),Lo()),2&t){const t=Ho();Yr(9),To("value",t.leaderboard.title),Yr(5),To("value",t.leaderboard.description),Yr(6),To("value",t.leaderboard.category),Yr(5),To("value",t.leaderboard.max_num_score),Yr(6),To("value",t.leaderboard.size),Yr(5),To("value",t.leaderboard.max_size),Yr(6),To("value",t.leaderboard.duration),Yr(5),To("value",t.leaderboard.join_required),Yr(6),To("value",t.leaderboard.start_time),Yr(5),To("value",t.leaderboard.end_time),Yr(6),To("value",t.leaderboard.start_active),Yr(5),To("value",t.leaderboard.end_active)}}function aI(t,e){if(1&t&&(Fo(0,"ngb-alert",19),Mo(1,"img",20),Fo(2,"h6",21),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("An error occurred: ",t.error,"")}}function lI(t,e){1&t&&(Fo(0,"th",22),ga(1,"Remove"),Lo())}function cI(t,e){1&t&&(Fo(0,"tr"),Fo(1,"td",23),ga(2,"No records found."),Lo(),Lo())}function hI(t,e){1&t&&Mo(0,"div",28)}function uI(t,e){1&t&&Mo(0,"div",29)}function dI(t,e){if(1&t){const t=Io();Fo(0,"td",30),Fo(1,"button",31),Bo("click",function(e){Le(t);const n=Ho(),i=n.index,r=n.$implicit;return Ho().deleteRecord(e,i,r)}),ga(2,"Delete"),Lo(),Lo()}}function fI(t,e){if(1&t&&(Fo(0,"tr"),Fo(1,"td",32),Fo(2,"pre",33),Fo(3,"small"),ga(4),Lo(),Lo(),Lo(),Lo()),2&t){const t=Ho().$implicit;Yr(4),ma(t.metadata)}}function pI(t,e){if(1&t){const t=Io();Fo(0,"tr"),Fo(1,"td"),Fo(2,"div",24),Bo("click",function(){Le(t);const n=e.index,i=Ho();return i.recordsMetadataOpen[n]=!i.recordsMetadataOpen[n]}),ko(3,hI,1,0,"div",25),ko(4,uI,1,0,"div",26),Lo(),ga(5),Lo(),Fo(6,"td"),ga(7),Lo(),Fo(8,"td"),ga(9),Lo(),Fo(10,"td"),ga(11),Lo(),Fo(12,"td"),ga(13),Lo(),Fo(14,"td"),ga(15),Lo(),Fo(16,"td"),ga(17),Lo(),ko(18,dI,3,0,"td",27),Lo(),ko(19,fI,5,1,"tr",17)}if(2&t){const t=e.index,n=e.$implicit,i=Ho();Yr(3),To("ngIf",!i.recordsMetadataOpen[t]),Yr(1),To("ngIf",i.recordsMetadataOpen[t]),Yr(1),va(" ",n.owner_id," "),Yr(2),ma(n.username),Yr(2),ma(n.score),Yr(2),ma(n.subscore),Yr(2),ma(n.rank),Yr(2),ma(n.num_score),Yr(2),ma(n.expiry_time?n.expiry_time:"-"),Yr(1),To("ngIf",i.deleteAllowed()),Yr(1),To("ngIf",i.recordsMetadataOpen[t])}}const gI=["editor"],mI=["editorResponse"];function vI(t,e){if(1&t&&(Fo(0,"ngb-alert",23),Mo(1,"img",24),Fo(2,"h6",25),ga(3),Lo(),Lo()),2&t){const t=Ho();To("dismissible",!1),Yr(3),va("Error whilst making RPC call: ",t.error,"")}}function yI(t,e){if(1&t&&(Fo(0,"option",26),ga(1),Lo()),2&t){const t=e.$implicit;Go("value",t.method),Yr(1),ma(t.method)}}function wI(t,e){if(1&t&&(Fo(0,"option",26),ga(1),Lo()),2&t){const t=e.$implicit;Go("value",t.method),Yr(1),ma(t.method)}}const bI=[{path:"",component:A_,canActivate:[mb],canActivateChild:[D_],children:[{path:"",redirectTo:"status",pathMatch:"full"},{path:"status",component:$L,resolve:[OL]},{path:"config",component:pM,resolve:[gM]},{path:"users",component:xM,resolve:[_M]},{path:"modules",component:NM,resolve:[BM]},{path:"storage",component:qM,resolve:[XM,YM],pathMatch:"full"},{path:"storage/:collection/:key/:user_id",component:c$,resolve:[h$],pathMatch:"full"},{path:"leaderboards",component:b$,resolve:[x$]},{path:"leaderboards/:id",component:(()=>{class t{constructor(t,e,n,i){this.route=t,this.router=e,this.consoleService=n,this.authService=i,this.error="",this.views=[{label:"Details",path:"details"},{label:"Records",path:"records"}]}ngOnInit(){this.route.data.subscribe(t=>{this.leaderboard=t[0]},t=>{this.error=t})}deleteLeaderboard(t){t.target.disabled=!0,this.error="",this.consoleService.deleteLeaderboard("",this.leaderboard.id).subscribe(()=>{this.error="",this.router.navigate(["/leaderboards"])},t=>{this.error=t})}deleteAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_DEVELOPER}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(hb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:17,vars:6,consts:[[1,"pb-1"],[1,"leaderboard-top-nav","d-flex","justify-content-between","align-items-baseline","mb-3"],["aria-label","breadcrumb"],[1,"breadcrumb"],[1,"breadcrumb-item"],[3,"routerLink"],[1,"breadcrumb-item","active"],["type","button","class","btn btn-danger btn-danger-icon",3,"click",4,"ngIf"],["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],["ngbNav","",1,"navbar-expand-sm","p-0","mb-3"],["leaderboardNav","ngbNav"],[4,"ngFor","ngForOf"],["type","button",1,"btn","btn-danger","btn-danger-icon",3,"click"],["src","/static/svg/bin-red.svg","alt","","width","13","height","13",1,"mr-2"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[3,"ngbNavItem"],["ngbNavLink","","routerLinkActive","account-link-active",3,"routerLink"]],template:function(t,e){1&t&&(Fo(0,"h2",0),ga(1,"Leaderboard"),Lo(),Fo(2,"div",1),Fo(3,"nav",2),Fo(4,"ol",3),Fo(5,"li",4),Fo(6,"a",5),ga(7,"Leaderboards"),Lo(),Lo(),Fo(8,"li",6),ga(9),Lo(),Lo(),Lo(),Fo(10,"div"),ko(11,ZO,3,0,"button",7),Lo(),Lo(),ko(12,tI,4,2,"ngb-alert",8),Fo(13,"nav",9,10),ko(15,nI,4,6,"div",11),Lo(),Mo(16,"router-outlet")),2&t&&(Yr(6),To("routerLink",Nl(5,iI)),Yr(3),ma(e.leaderboard.id),Yr(2),To("ngIf",e.deleteAllowed()),Yr(1),To("ngIf",e.error),Yr(3),To("ngForOf",e.views))},directives:[Dv,Ph,s_,Oh,Fv,mx,r_,o_,Rv],styles:[".nav-link[_ngcontent-%COMP%]{font-size:12px;font-family:Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:#000;opacity:.5;padding:0 0 1.6em;margin-right:3em;margin-bottom:-2px;font-weight:600}.nav-link[_ngcontent-%COMP%]:hover{opacity:1}.nav-link.account-link-active[_ngcontent-%COMP%]{opacity:1;border-bottom:2px solid #7668ed}.leaderboard-top-nav[_ngcontent-%COMP%], .navbar-expand-sm[_ngcontent-%COMP%]{border-bottom:1px solid #dadae9}.leaderboard-top-nav[_ngcontent-%COMP%]{padding-bottom:1.5em}"]}),t})(),resolve:[(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){const n=t.paramMap.get("id");return this.consoleService.getLeaderboard("",n)}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})()],children:[{path:"",redirectTo:"details",pathMatch:"full"},{path:"details",component:(()=>{class t{constructor(t){this.route=t,this.orderString={0:"Ascending",1:"Descending"},this.operatorString={0:"Best",1:"Set",2:"Increment",3:"Decrement"},this.error=""}ngOnInit(){this.route.parent.data.subscribe(t=>{this.leaderboard=t[0]},t=>{this.error=t})}ngAfterViewInit(){if(JM.config.set("fontSize","14px"),JM.config.set("printMarginColumn",0),JM.config.set("useWorker",!0),JM.config.set("highlightSelectedWord",!0),JM.config.set("fontFamily",'"Courier New", Courier, monospace'),this.aceEditor=JM.edit(this.editor.nativeElement),this.aceEditor.setReadOnly(!0),this.leaderboard.metadata){const t=JSON.stringify(JSON.parse(this.leaderboard.metadata),null,2);this.aceEditor.session.setValue(t)}}}return t.\u0275fac=function(e){return new(e||t)(Do(lm))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],viewQuery:function(t,e){if(1&t&&ic(rI,!0),2&t){let t;ec(t=oc())&&(e.editor=t.first)}},decls:39,vars:8,consts:[["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],[1,"add-border","mb-3"],[1,"row"],[1,"col-md-6","d-flex","justify-content-start","align-items-baseline"],[1,"col-3","pl-0"],["for","id",1,"d-inline"],["type","text","id","id","placeholder","ID","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","authoritative",1,"d-inline"],["type","text","id","authoritative","placeholder","Authoritative","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","sortorder",1,"d-inline"],["type","text","id","sortorder","placeholder","Sort Order","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","operator",1,"d-inline"],["type","text","id","operator","placeholder","Operator","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],[1,"row","add-border-single-row-bottom"],["for","reset",1,"d-inline"],["type","text","id","reset","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","create_time",1,"d-inline"],["type","text","id","create_time","placeholder","Create Time","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["class","mt-4",4,"ngIf"],[1,"card","p-2","mb-3",2,"height","400px"],[2,"height","400px"],["editor",""],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[1,"mt-4"],[1,"mb-4"],["for","title",1,"d-inline"],["type","text","id","title","placeholder","Title","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","description",1,"d-inline"],["type","text","id","description","placeholder","Description","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","category",1,"d-inline"],["type","text","id","category","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","max_num_score",1,"d-inline"],["type","text","id","max_num_score","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","size",1,"d-inline"],["type","text","id","size","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","max_size",1,"d-inline"],["type","text","id","max_size","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","duration",1,"d-inline"],["type","text","id","duration","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","join_required",1,"d-inline"],["type","text","id","join_required","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","start_time",1,"d-inline"],["type","text","id","start_time","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","end_time",1,"d-inline"],["type","text","id","end_time","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","start_active",1,"d-inline"],["type","text","id","start_active","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"],["for","end_active",1,"d-inline"],["type","text","id","end_active","placeholder","Not Set","disabled","","readonly","",1,"form-control-plaintext","form-control-sm","my-2",3,"value"]],template:function(t,e){1&t&&(ko(0,sI,4,2,"ngb-alert",0),Fo(1,"div",1),Fo(2,"div",2),Fo(3,"div",3),Fo(4,"div",4),Fo(5,"label",5),ga(6,"User ID"),Lo(),Lo(),Mo(7,"input",6),Lo(),Fo(8,"div",3),Fo(9,"div",4),Fo(10,"label",7),ga(11,"Authoritative"),Lo(),Lo(),Mo(12,"input",8),Lo(),Lo(),Fo(13,"div",2),Fo(14,"div",3),Fo(15,"div",4),Fo(16,"label",9),ga(17,"Sort Order"),Lo(),Lo(),Mo(18,"input",10),Lo(),Fo(19,"div",3),Fo(20,"div",4),Fo(21,"label",11),ga(22,"Operator"),Lo(),Lo(),Mo(23,"input",12),Lo(),Lo(),Fo(24,"div",13),Fo(25,"div",3),Fo(26,"div",4),Fo(27,"label",14),ga(28,"Reset Schedule"),Lo(),Lo(),Mo(29,"input",15),Lo(),Fo(30,"div",3),Fo(31,"div",4),Fo(32,"label",16),ga(33,"Create Time"),Lo(),Lo(),Mo(34,"input",17),Lo(),Lo(),Lo(),ko(35,oI,70,12,"div",18),Fo(36,"div",19),Mo(37,"div",20,21),Lo()),2&t&&(To("ngIf",e.error),Yr(7),To("value",e.leaderboard.id),Yr(5),To("value",e.leaderboard.authoritative),Yr(6),To("value",e.orderString[e.leaderboard.sort_order]),Yr(5),To("value",e.operatorString[e.leaderboard.operator]),Yr(6),To("value",e.leaderboard.reset_schedule),Yr(5),To("value",e.leaderboard.create_time),Yr(1),To("ngIf",e.leaderboard.tournament))},directives:[Ph,mx],styles:[".leaderboard-top-nav[_ngcontent-%COMP%]{border-bottom:1px solid #dadae9;padding-bottom:1.5em}"]}),t})(),resolve:[]},{path:"records",component:(()=>{class t{constructor(t,e,n){this.route=t,this.consoleService=e,this.authService=n,this.error="",this.records=[],this.recordsMetadataOpen=[],this.nextCursor="",this.prevCursor=""}ngOnInit(){this.route.data.subscribe(t=>{this.records.length=0,this.records.push(...t[0].records),this.nextCursor=t[0].next_cursor,this.prevCursor=t[0].prev_cursor,this.recordsMetadataOpen.length=this.records.length},t=>{this.error=t}),this.route.parent.data.subscribe(t=>{this.leaderboard=t[0]},t=>{this.error=t})}loadRecords(t){let e="";switch(t){case-1:e=this.prevCursor;break;case 0:e="";break;case 1:e=this.nextCursor}this.consoleService.listLeaderboardRecords("",this.leaderboard.id,null,100,e,null).subscribe(t=>{this.error="",this.nextCursor=t.next_cursor,this.prevCursor=t.prev_cursor,this.records.length=0,this.records.push(...t.records),this.recordsMetadataOpen.length=0,this.recordsMetadataOpen.length=this.records.length},t=>{this.error=t})}deleteRecord(t,e,n){t.target.disabled=!0,t.preventDefault(),this.error="",this.consoleService.deleteLeaderboardRecord("",n.leaderboard_id,n.owner_id).subscribe(()=>{this.error="",this.records.splice(e,1),this.recordsMetadataOpen.splice(e,1)},t=>{this.error=t})}deleteAllowed(){return this.authService.sessionRole<=ob.USER_ROLE_DEVELOPER}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(sb),Do(hb))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],decls:34,vars:7,consts:[["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],[1,"row","no-gutters","mb-3"],[1,"col","d-flex","justify-content-between","no-gutters"],[1,"col-md-9"],[1,"col-md-3","justify-content-end","text-right"],["role","group",1,"btn-group","page-btns"],["type","button",1,"btn","btn-outline-secondary",3,"disabled","click"],["src","/static/svg/page-first.svg","alt","","width","20","height",""],["src","/static/svg/page-prev.svg","alt","","width","20","height",""],["src","/static/svg/page-next.svg","alt","","width","20","height",""],[1,"row","no-gutters"],[1,"table","table-sm","table-bordered"],[1,"thead-light"],[2,"width","380px"],[2,"width","150px"],[2,"width","180px"],["style","width: 90px",4,"ngIf"],[4,"ngIf"],["ngFor","",3,"ngForOf"],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[2,"width","90px"],["colSpan","8",1,"text-muted"],[1,"arrow",3,"click"],["class","arrow-right",4,"ngIf"],["class","arrow-down",4,"ngIf"],["class","text-center",4,"ngIf"],[1,"arrow-right"],[1,"arrow-down"],[1,"text-center"],["type","button",1,"btn","btn-sm","btn-danger",3,"click"],["colspan","7",1,"align-middle"],[1,"pre-wrap","m-0","p-0"]],template:function(t,e){1&t&&(ko(0,aI,4,2,"ngb-alert",0),Fo(1,"div",1),Fo(2,"div",2),Mo(3,"div",3),Fo(4,"div",4),Fo(5,"div",5),Fo(6,"button",6),Bo("click",function(){return e.loadRecords(0)}),Mo(7,"img",7),Lo(),Fo(8,"button",6),Bo("click",function(){return e.loadRecords(-1)}),Mo(9,"img",8),Lo(),Fo(10,"button",6),Bo("click",function(){return e.loadRecords(1)}),Mo(11,"img",9),Lo(),Lo(),Lo(),Lo(),Lo(),Fo(12,"div",10),Fo(13,"table",11),Fo(14,"thead",12),Fo(15,"tr"),Fo(16,"th",13),ga(17,"Owner ID"),Lo(),Fo(18,"th"),ga(19,"Username"),Lo(),Fo(20,"th",14),ga(21,"Score"),Lo(),Fo(22,"th",14),ga(23,"Subscore"),Lo(),Fo(24,"th",14),ga(25,"Rank"),Lo(),Fo(26,"th",14),ga(27,"No. of scores"),Lo(),Fo(28,"th",15),ga(29,"Expiry Time"),Lo(),ko(30,lI,2,0,"th",16),Lo(),Lo(),Fo(31,"tbody"),ko(32,cI,3,0,"tr",17),ko(33,pI,20,11,"ng-template",18),Lo(),Lo(),Lo()),2&t&&(To("ngIf",e.error),Yr(6),To("disabled",0===e.records.length),Yr(2),To("disabled",""===e.prevCursor),Yr(2),To("disabled",""===e.nextCursor),Yr(20),To("ngIf",e.deleteAllowed()),Yr(2),To("ngIf",0===e.records.length),Yr(1),To("ngForOf",e.records))},directives:[Ph,Oh,mx],styles:[""]}),t})(),resolve:[(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){const n=t.parent.paramMap.get("id");return this.consoleService.listLeaderboardRecords("",n,null,100,null,null)}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})()]}]},{path:"matches",component:JO,resolve:[QO]},{path:"accounts",component:D$,resolve:[T$]},{path:"accounts/:id",component:H$,resolve:[j$],children:[{path:"",redirectTo:"profile",pathMatch:"full"},{path:"profile",component:X$,resolve:[]},{path:"authentication",component:tO,resolve:[]},{path:"wallet",component:dO,resolve:[fO]},{path:"friends",component:CO,resolve:[SO]},{path:"groups",component:OO,resolve:[IO]}]},{path:"apiexplorer",component:(()=>{class t{constructor(t,e,n,i){this.route=t,this.router=e,this.consoleService=n,this.formBuilder=i,this.error="",this.rpcEndpoints=[],this.endpoints=[]}ngOnInit(){this.endpointCallForm=this.formBuilder.group({method:["",ly.required],user_id:[""]}),this.f.method.valueChanges.subscribe(t=>{const e=this.endpoints.concat(this.rpcEndpoints).find(e=>e.method===t?e:null);this.updateQueryParam(e.method),this.setupRequestBody(e.body_template)}),this.route.data.subscribe(t=>{const e=t[0];this.endpoints.length=0,this.endpoints.push(...e.endpoints),this.rpcEndpoints.length=0,this.rpcEndpoints.push(...e.rpc_endpoints)},t=>{this.error=t});const t=this.endpoints.concat(this.rpcEndpoints).find(t=>t.method===this.route.snapshot.queryParamMap.get("endpoint")?t:null);null!=t&&this.f.method.setValue(t.method)}ngAfterViewInit(){JM.config.set("fontSize","14px"),JM.config.set("printMarginColumn",0),JM.config.set("useWorker",!0),JM.config.set("highlightSelectedWord",!0),JM.config.set("fontFamily",'"Courier New", Courier, monospace'),this.aceEditor=JM.edit(this.editor.nativeElement),this.aceEditor.setReadOnly(!0),this.aceEditorResponse=JM.edit(this.editorResponse.nativeElement),this.aceEditorResponse.setReadOnly(!0)}sendRequest(){this.error="";let t=this.aceEditor.session.getValue();if(""!==t)try{t=JSON.stringify(JSON.parse(t))}catch(i){return void(this.error=i)}const e={user_id:this.f.user_id.value,body:t};let n=null;n=this.isRpcEndpoint(this.f.method.value)?this.consoleService.callRpcEndpoint("",this.f.method.value,e):this.consoleService.callApiEndpoint("",this.f.method.value,e),n.subscribe(e=>{if(e.error_message&&""!==e.error_message)this.aceEditorResponse.session.setValue(e.error_message);else{t="";try{t=JSON.stringify(JSON.parse(e.body),null,2)}catch(i){return void(this.error=i)}this.aceEditorResponse.session.setValue(t)}},t=>{this.aceEditorResponse.session.setValue(""),this.error=t})}isRpcEndpoint(t){return null!=this.rpcEndpoints.find(e=>e.method===t?e:null)}setupRequestBody(t){if(null!=this.aceEditor){if(!t||""===t)return this.aceEditor.session.setValue(""),void this.aceEditor.setReadOnly(!this.isRpcEndpoint(this.f.method.value));try{const e=JSON.stringify(JSON.parse(t),null,2);this.aceEditor.session.setValue(e),this.aceEditor.setReadOnly(!1)}catch(e){return void(this.error=e)}}else console.log("problem?")}updateQueryParam(t){this.router.navigate([],{relativeTo:this.route,queryParams:{endpoint:t},queryParamsHandling:"merge"})}get f(){return this.endpointCallForm.controls}}return t.\u0275fac=function(e){return new(e||t)(Do(lm),Do(kv),Do(sb),Do(vw))},t.\u0275cmp=Pt({type:t,selectors:[["ng-component"]],viewQuery:function(t,e){if(1&t&&(ic(gI,!0),ic(mI,!0)),2&t){let t;ec(t=oc())&&(e.editor=t.first),ec(t=oc())&&(e.editorResponse=t.first)}},decls:35,vars:6,consts:[[1,"pb-4"],["type","danger","class","mb-3",3,"dismissible",4,"ngIf"],[1,"row","no-gutters","mb-3"],[1,"col","d-flex","justify-content-between","no-gutters"],[1,"col-md-9"],[3,"formGroup","ngSubmit"],[1,"input-group"],[1,"input-group-prepend"],["id","method","formControlName","method",1,"form-control","custom-select","dropdown-radius"],["disabled","",3,"value"],[3,"value",4,"ngFor","ngForOf"],["disabled","",1,"text-muted"],["type","text","formControlName","user_id","placeholder","set user ID as request context",1,"form-control","border-right-0"],[1,"input-group-append"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"d-flex"],[1,"w-50","py-3"],[1,"mb-4"],[1,"card","p-2","mb-3"],[2,"height","500px"],["editor",""],[1,"w-50","pl-3","py-3"],["editorResponse",""],["type","danger",1,"mb-3",3,"dismissible"],["src","/static/svg/red-triangle.svg","alt","","width","16","height","",1,"mr-2"],[1,"mr-2","d-inline","font-weight-bold"],[3,"value"]],template:function(t,e){1&t&&(Fo(0,"h2",0),ga(1,"API Explorer"),Lo(),ko(2,vI,4,2,"ngb-alert",1),Fo(3,"div",2),Fo(4,"div",3),Fo(5,"div",4),Fo(6,"form",5),Bo("ngSubmit",function(){return e.sendRequest()}),Fo(7,"div",6),Fo(8,"div",7),Fo(9,"select",8),Fo(10,"option",9),ga(11,"Select Endpoint"),Lo(),ko(12,yI,2,2,"option",10),Fo(13,"option",11),ga(14,"----"),Lo(),ko(15,wI,2,2,"option",10),Lo(),Lo(),Mo(16,"input",12),Fo(17,"div",13),Fo(18,"button",14),ga(19,"Send Request"),Lo(),Lo(),Lo(),Lo(),Lo(),Lo(),Lo(),Fo(20,"div",15),Fo(21,"div",16),Fo(22,"h5"),ga(23,"Request Body"),Lo(),Mo(24,"hr",17),Fo(25,"div",18),Mo(26,"div",19,20),Lo(),Lo(),Fo(28,"div",21),Fo(29,"h5"),ga(30,"Response"),Lo(),Mo(31,"hr",17),Fo(32,"div",18),Mo(33,"div",19,22),Lo(),Lo(),Lo()),2&t&&(Yr(2),To("ngIf",e.error),Yr(4),To("formGroup",e.endpointCallForm),Yr(4),To("value",""),Yr(2),To("ngForOf",e.rpcEndpoints),Yr(3),To("ngForOf",e.endpoints),Yr(3),To("disabled",e.f.method.invalid))},directives:[Ph,lw,Ey,uw,Oy,Sy,fw,Iy,Uy,Oh,ny,mx],styles:[".dropdown-radius[_ngcontent-%COMP%]{border-top-right-radius:0;border-bottom-right-radius:0}.input-group-text[_ngcontent-%COMP%]{background-color:initial;cursor:pointer}"]}),t})(),resolve:[(()=>{class t{constructor(t){this.consoleService=t}resolve(t,e){return this.consoleService.listApiEndpoints("")}}return t.\u0275fac=function(e){return new(e||t)(vi(sb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac,providedIn:"root"}),t})()]}]},{path:"login",component:pb,canActivate:[gb]},{path:"**",redirectTo:""}];let xI=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},imports:[[Vv.forRoot(bI,{useHash:!0})],Vv]}),t})(),_I=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Pt({type:t,selectors:[["app-root"]],decls:1,vars:0,template:function(t,e){1&t&&Mo(0,"router-outlet")},directives:[Fv],styles:[""]}),t})();RegExp(/[&<>"']/g.source);const CI={Tab:9,Enter:13,Esc:27,Space:32,ArrowUp:38,ArrowDown:40,Backspace:8};CI[CI.Tab]="Tab",CI[CI.Enter]="Enter",CI[CI.Esc]="Esc",CI[CI.Space]="Space",CI[CI.ArrowUp]="ArrowUp",CI[CI.ArrowDown]="ArrowDown",CI[CI.Backspace]="Backspace";const SI=new qn("ng-select-selection-model");class EI{constructor(){this._selected=[]}get value(){return this._selected}select(t,e,n){if(t.selected=!0,(!t.children||!e&&n)&&this._selected.push(t),e)if(t.parent){const e=t.parent.children.length,n=t.parent.children.filter(t=>t.selected).length;t.parent.selected=e===n}else t.children&&(this._setChildrenSelectedState(t.children,!0),this._removeChildren(t),this._selected=n&&this._activeChildren(t)?[...this._selected.filter(e=>e.parent!==t),t]:[...this._selected,...t.children.filter(t=>!t.disabled)])}unselect(t,e){if(this._selected=this._selected.filter(e=>e!==t),t.selected=!1,e)if(t.parent&&t.parent.selected){const e=t.parent.children;this._removeParent(t.parent),this._removeChildren(t.parent),this._selected.push(...e.filter(e=>e!==t&&!e.disabled)),t.parent.selected=!1}else t.children&&(this._setChildrenSelectedState(t.children,!1),this._removeChildren(t))}clear(t){this._selected=t?this._selected.filter(t=>t.disabled):[]}_setChildrenSelectedState(t,e){for(const n of t)n.disabled||(n.selected=e)}_removeChildren(t){this._selected=[...this._selected.filter(e=>e.parent!==t),...t.children.filter(e=>e.parent===t&&e.disabled&&e.selected)]}_removeParent(t){this._selected=this._selected.filter(e=>e!==t)}_activeChildren(t){return t.children.every(t=>!t.disabled||t.selected)}}const kI=function(){return new EI};let AI=(()=>{class t{}return t.\u0275mod=Vt({type:t}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:[{provide:SI,useValue:kI}],imports:[[Hh]]}),t})(),DI=(()=>{class t{constructor(t){this.authenticationService=t}intercept(t,e){const n=this.authenticationService.currentSessionValue;return n&&n.token&&(t=t.clone({setHeaders:{Authorization:"Bearer "+n.token}})),e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(vi(hb))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),TI=(()=>{class t{constructor(t,e){this.authenticationService=t,this.router=e}intercept(t,e){return e.handle(t).pipe(Wp(e=>(401===e.status?(this.authenticationService.logout(),t.url.includes("/v3/auth")||this.router.navigate(["/login"],{queryParams:{next:this.router.routerState.snapshot.url}})):e.status>=500&&console.log(`${e.status}: + ${e.error.message||e.statusText}`),Yb(e.error.message||e.statusText))))}}return t.\u0275fac=function(e){return new(e||t)(vi(hb),vi(kv))},t.\u0275prov=ot({token:t,factory:t.\u0275fac}),t})(),RI=(()=>{class t{}return t.\u0275mod=Vt({type:t,bootstrap:[_I]}),t.\u0275inj=at({factory:function(e){return new(e||t)},providers:[lb,y_,{provide:rb,useValue:{host:document.location.origin,timeout:15e3}},{provide:zw,useClass:DI,multi:!0},{provide:zw,useClass:TI,multi:!0}],imports:[[qL,xI,xu,ap,ib,v_,mL,Ew.forRoot({apiKey:"dHl7FTjJ9icepBjEdOCcyMFQYL1BBiQO",debug:!1,loadOnInitialization:!0}),lp,ww,yw,AI]]}),t})();(function(){if(Wc)throw new Error("Cannot enable prod mode after platform setup.");zc=!1})(),wu().bootstrapModule(RI).then(t=>{window.ngRef&&window.ngRef.destroy(),window.ngRef=t}).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/console/ui/dist/static/polyfills.cb4331e883de4daa4c94.js b/console/ui/dist/static/polyfills.cb4331e883de4daa4c94.js new file mode 100644 index 000000000..f969f1659 --- /dev/null +++ b/console/ui/dist/static/polyfills.cb4331e883de4daa4c94.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"N/DB":function(e,t){const n="undefined"!=typeof globalThis&&globalThis,o="undefined"!=typeof window&&window,r="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,s="undefined"!=typeof global&&global,i=function(e,...t){if(i.translate){const n=i.translate(e,t);e=n[0],t=n[1]}let n=a(e[0],e.raw[0]);for(let o=1;o",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==z.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=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return O.zone}static get currentTask(){return j}static __load_patch(t,r){if(z.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),z[t]=r(e,a,C),o(s,s)}}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){O={parent:O,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{O=O.parent}}runGuarded(e,t=null,n,o){O={parent:O,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{O=O.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||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=w;o&&e._transitionTo(w,T),e.runCount++;const r=j;j=e,O={parent:O,zone:this};try{e.type==D&&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!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,w):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,w,v))),O=O.parent,j=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(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,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||y).name+"; Execution: "+this.name+")");e._transitionTo(E,T,w);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,E),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,E),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 l{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._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),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:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(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||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");_(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 u{constructor(t,n,o,r,s,i){if(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,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_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==v&&(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 h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],k=!1;function _(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!k){for(k=!0;g.length;){const t=g;g=[];for(let n=0;nO,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:_,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let O={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("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=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");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;){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];"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 C.reject(e)}const g=s("state"),k=s("value"),_=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function w(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const E=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof C&&s.hasOwnProperty(g)&&s.hasOwnProperty(k)&&s[g]!==v)D(s),Z(e,s[g],s[k]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(w(e,o)),c(w(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[k];if(e[k]=s,e[_]===_&&o===b&&(e[g]=e[y],e[k]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,E,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[k],r=!!n&&_===n[_];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const z=function(){};class C{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,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){return C.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof C?this:C).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof C))throw new Error("Must be an instanceof Promise.");t[g]=v,t[k]=[];try{e&&e(w(t,b),w(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return C}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||C);const r=new o(z),s=t.current;return this[g]==v?this[k].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=C);const o=new n(z);o[_]=_;const r=t.current;return this[g]==v?this[k].push(r,o,e,e):P(this,r,o,e,e),o}}C.resolve=C.resolve,C.reject=C.reject,C.race=C.race,C.all=C.all;const O=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===C?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=C;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new C((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,O){R(O);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof C)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,C});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,k=g?window:void 0,_=g&&k||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in _)&&void 0!==_.process&&"[object process]"==={}.toString.call(_.process),w=!T&&!b&&!(!g||!k.HTMLElement),E=void 0!==_.process&&"[object process]"==={}.toString.call(_.process)&&!b&&!(!g||!k.HTMLElement),Z={},S=function(e){if(!(e=e||_.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||_,o=n[t];let r;if(w&&n===k&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==_||(t=_),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==_||(e=_),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=k.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=k.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("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 L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function W(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function q(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",k=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[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},_=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)k(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function V(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 X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["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"],X,["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 se(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 ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!E)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(w){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=O,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=$,c.patchEventTarget=q,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=C,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=V,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:w,isMix:E,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(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[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=O(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(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[ce]=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=O(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(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[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(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=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(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),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),C("MutationObserver"),C("WebKitMutationObserver"),C("IntersectionObserver"),C("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),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(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const k="readystatechange",_="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,k,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===_){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),w=d("fetchTaskScheduling"),E=O(h,"send",()=>function(e,n){if(!0===t.current[w])return E.apply(e,n);if(e[o])return E.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===_&&o.invoke()}}),Z=O(h,"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[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(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[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); \ No newline at end of file diff --git a/console/ui/dist/static/runtime.4ced225923cd14368d64.js b/console/ui/dist/static/runtime.4ced225923cd14368d64.js new file mode 100644 index 000000000..da9bb6270 --- /dev/null +++ b/console/ui/dist/static/runtime.4ced225923cd14368d64.js @@ -0,0 +1 @@ +!function(e){function r(r){for(var n,l,i=r[0],f=r[1],a=r[2],c=0,s=[];c \ No newline at end of file diff --git a/console/ui/dist/static/styles.14b882f135e080634619.css b/console/ui/dist/static/styles.14b882f135e080634619.css new file mode 100644 index 000000000..18aa291ba --- /dev/null +++ b/console/ui/dist/static/styles.14b882f135e080634619.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v4.4.1 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,:after,:before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:initial;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{font-style:normal;line-height:inherit}address,dl,ol,ul{margin-bottom:1rem}dl,ol,ul{margin-top:0}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:initial}a:hover{color:#0056b3;text-decoration:underline}a:not([href]),a:not([href]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{border-style:none}img,svg{vertical-align:middle}svg{overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:initial}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem}.display-1,.display-2{font-weight:300;line-height:1.2}.display-2{font-size:5.5rem}.display-3{font-size:4.5rem}.display-3,.display-4{font-weight:300;line-height:1.2}.display-4{font-size:3.5rem}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer:before{content:"\2014\00A0"}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-auto,.col-lg,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-auto,.col-md,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md-auto,.col-sm,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:hsla(0,0%,100%,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:initial;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:initial;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{display:flex;align-items:center;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:initial;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success.focus,.btn-success:focus,.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info.focus,.btn-info:focus,.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{color:#fff;box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light.focus,.btn-light:focus,.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:initial}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:initial}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:initial}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:initial}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:initial}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:initial}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:initial}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:initial}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:initial;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:initial}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;flex:1 1 0%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label:before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label:before{pointer-events:none;background-color:#fff;border:1px solid #adb5bd}.custom-control-label:after,.custom-control-label:before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:""}.custom-control-label:after{background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label:after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{position:relative;width:100%;height:calc(1.5em + .75rem + 2px)}.custom-file-input{z-index:2;margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{left:0;z-index:1;height:calc(1.5em + .75rem + 2px);font-weight:400;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label,.custom-file-label:after{position:absolute;top:0;right:0;padding:.375rem .75rem;line-height:1.5;color:#495057}.custom-file-label:after{bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:initial;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:initial;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:initial;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;padding:.5rem 1rem}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:initial;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat 50%;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:hsla(0,0%,100%,.5);border-color:hsla(0,0%,100%,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:initial;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:initial;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{flex-direction:column;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal .list-group-item.active{margin-top:0}.list-group-horizontal .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm .list-group-item.active{margin-top:0}.list-group-horizontal-sm .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md .list-group-item.active{margin-top:0}.list-group-horizontal-md .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg .list-group-item.active{margin-top:0}.list-group-horizontal-lg .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl .list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl .list-group-item.active{margin-top:0}.list-group-horizontal-xl .list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl .list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush .list-group-item{border-right-width:0;border-left-width:0;border-radius:0}.list-group-flush .list-group-item:first-child{border-top-width:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:initial;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:hsla(0,0%,100%,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover,.popover .arrow{position:absolute;display:block}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow:after,.popover .arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{top:0;border-width:0 .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{top:1px;border-width:0 .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:initial;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid;border-right:.25em solid transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:initial!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:initial!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive:before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9:before{padding-top:42.857143%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:transparent}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:initial;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;overflow-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}}.ng-select.ng-select-opened>.ng-select-container{background:#fff;border-color:#b3b3b3 #ccc #d9d9d9}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:none}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-2px;border-color:transparent transparent #999;border-width:0 5px 5px}.ng-select.ng-select-opened>.ng-select-container .ng-arrow:hover{border-color:transparent transparent #333}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-right-radius:0;border-top-left-radius:0}.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:#007eff;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 0 3px rgba(0,126,255,.1)}.ng-select.ng-select-disabled>.ng-select-container{background-color:#f9f9f9}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{color:#333;background-color:#fff;border-radius:4px;border:1px solid #ccc;min-height:36px;align-items:center}.ng-select .ng-select-container:hover{box-shadow:0 1px 0 rgba(0,0,0,.06)}.ng-select .ng-select-container .ng-value-container{align-items:center;padding-left:10px}[dir=rtl] .ng-select .ng-select-container .ng-value-container{padding-right:10px;padding-left:0}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:#999}.ng-select.ng-select-single .ng-select-container{height:36px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:5px;left:0;padding-left:10px;padding-right:50px}[dir=rtl] .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{padding-right:10px;padding-left:50px}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{background-color:#f9f9f9;border:1px solid #e6e6e6}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:5px;padding-left:7px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-right:7px;padding-left:0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{font-size:.9em;margin-bottom:5px;background-color:#ebf5ff;border-radius:2px;margin-right:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{margin-right:0;margin-left:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:0;padding-right:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label{display:inline-block;padding:1px 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-left:1px solid #b8dbff;border-right:none}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:0;border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 3px 3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 3px 3px 0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{top:5px;padding-bottom:5px;padding-left:3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-right:3px;padding-left:0}.ng-select .ng-clear-wrapper{color:#999}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-spinner-zone{padding:5px 5px 0 0}[dir=rtl] .ng-select .ng-spinner-zone{padding:5px 0 0 5px}.ng-select .ng-arrow-wrapper{width:25px;padding-right:5px}[dir=rtl] .ng-select .ng-arrow-wrapper{padding-left:5px;padding-right:0}.ng-select .ng-arrow-wrapper:hover .ng-arrow{border-top-color:#666}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:#999 transparent transparent;border-style:solid;border-width:5px 5px 2.5px}.ng-dropdown-panel{background-color:#fff;border:1px solid #ccc;box-shadow:0 1px 0 rgba(0,0,0,.06);left:0}.ng-dropdown-panel.ng-select-bottom{top:100%;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-top-color:#e6e6e6;margin-top:-1px}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.ng-dropdown-panel.ng-select-top{bottom:100%;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.ng-dropdown-panel .ng-dropdown-header{border-bottom:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-footer{border-top:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{-webkit-user-select:none;user-select:none;padding:8px 10px;font-weight:500;color:rgba(0,0,0,.54);cursor:pointer}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{background-color:#ebf5ff;font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{background-color:#fff;color:rgba(0,0,0,.87);padding:8px 10px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#333;background-color:#ebf5ff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background-color:#f5faff;color:#333}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#ccc}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:22px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-right:22px;padding-left:0}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:5px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{padding-left:5px;padding-right:0}[dir=rtl] .ng-dropdown-panel{direction:rtl;text-align:right}.bg-secondary{background-color:#978cf1!important}.bg-success{background-color:#63c179}body{font-family:Source Sans Pro,sans-serif}a{color:#7668ed}a:hover{color:#978cf1}.custom-control-input:checked~.custom-control-label:before{background-color:#7668ed;border-color:#7668ed}.btn{font-family:Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:12px;outline:none!important;outline-width:0!important;box-shadow:none;-moz-box-shadow:none;-webkit-box-shadow:none;-webkit-appearance:none}.btn-sm{font-size:11px}.btn-primary.dropdown-toggle{background-color:#8b7ff0}.btn-primary.dropdown-toggle[aria-expanded=true]{background-color:#7668ed;border-color:#7668ed}.btn-primary.dropdown-toggle:active{background-color:#7668ed!important;border-color:#7668ed}.btn-primary.dropdown-toggle:focus{background-color:#f96cf8!important;border-color:#f853f7}.btn-primary{background-color:#7668ed;border-color:#7668ed}.btn-primary:hover{background-color:#8b7ff0;border-color:#7668ed}.btn-primary:active{background-color:#7668ed!important;border-color:#7668ed}.btn-primary:focus{background-color:#f96cf8!important;border-color:#f853f7}.btn-primary:disabled{background-color:#7668ed;border-color:#7668ed}.btn-outline-primary{border:2px solid #7668ed;color:#7668ed;font-family:Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:13px}.btn-outline-primary:hover{background-color:#8b7ff0;border-color:#7668ed}.btn-outline-primary:active{background-color:#f96cf8!important;border-color:#f853f7!important}.btn-outline-primary:disabled{background-color:#7668ed;border-color:#7668ed}.btn-outline-secondary{border:1px solid #aac;font-size:10px;font-family:Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:13px}.btn-outline-secondary:hover{background-color:#eaeaf2;color:#7668ed}.btn-outline-secondary:active{background-color:#6e5fec!important}.btn-outline-dark{border-color:#c1c1da;font-size:10px}.btn-outline-dark img{margin-left:-.5em}.btn-outline-dark:hover:not(.disabled){background-color:#7668ed;border-color:#e1e1ed}.btn-outline-dark:active{background-color:#6e5fec}.btn-danger{background-color:#ffd3cf;color:#fe756a;border-color:#fe756a}.btn-danger:hover{background-color:#fe756a!important;color:#fff}.btn-danger-icon{background-color:#fff}.btn-danger-icon:hover{color:#fe756a;background-color:#ffd3cf!important}.btn-group-toggle label{font-size:10px}.btn-warning{background-color:#edd83e;background-color:#ecd635!important}.btn-warning:hover{background-color:#e3ca15!important}.page-btns .btn:hover{background:#a69bff!important}.page-btns .btn{padding:.3em .9em}.breadcrumb{padding:0;margin:0;background:#fff}.badge{border-radius:20px;padding:.3rem .8rem;text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:#333564;display:inline-flex;align-items:center}.badge-secondary{background-color:#eaeaf2}.badge-secondary img{margin-right:.5rem;margin-left:-.5rem}.badge-light{background-color:#eae8fc}.badge-light img{margin-right:.5rem;margin-left:-.5rem}.badge-primary{background-color:#d8edfa}.badge-primary img{margin-right:.5rem;margin-left:-.5rem}.badge-success{background-color:#d0edd7}.badge-success img{margin-right:.5rem;margin-left:-.5rem}.badge-danger{background-color:#ffd3cf;color:#fe756a}.badge-danger img{margin-right:.5rem;margin-left:-.2rem}.badge-warning{background-color:#faf4ca}.badge-warning img{margin-right:.5rem;margin-left:-.2rem}.badge-info{background-color:#fee6fe}.badge-info img{margin-right:.5rem;margin-left:-.5rem}.badge-dark{background-color:#a7a7ca}.badge-dark img{margin-right:.5rem;margin-left:-.5rem}.loading{width:50px}.add-border .row{border-top:1px solid #dadae9;border-left:1px solid #dadae9;border-right:1px solid #dadae9;padding:.6rem;margin:0}.add-border .form-row{border-top:1px solid #dadae9;margin:0;padding-top:2rem}.add-border-single-row .row{border:1px solid #dadae9;padding:.75rem;margin:0}.add-border-single-row-bottom{border-bottom:1px solid #dadae9}.remove-sides{border-left:none!important;border-right:none!important}.card-box{border:1px solid #dadae9;padding:1.75rem .75rem}.alert h6{margin-bottom:8px}.alert small{font-size:15px}.alert-primary{background-color:#f2f1fd;border-color:#9f96f2;color:#7668ed}.alert-success{background-color:#dbf1e0;border-color:#87d098;color:#20512c}.alert-secondary{background-color:#fafafc;border-color:#dadae9;color:#4a4a7b}.alert-danger{background-color:#ffeae9;border-color:#fea49d;color:#fe756a}.alert-warning{background-color:#faf4ca;border-color:#f1e16d;color:#333564}.alert-info{background-color:#eef7fd;border-color:#95cdf0;color:#333564}.section-divider:after{height:1px;margin-left:1rem;flex-grow:1;align-self:center;background-color:#dadae9;content:""}.section-divider-btn,.section-divider-btn__text{display:flex;align-items:center}.section-divider-btn__text{flex-grow:1}.section-divider-btn__text:after{height:1px;flex-grow:1;margin-left:15px;background-color:#dadae9;content:""}.table .thead-light th{background-color:#fafafc;border-color:#dadae9;color:#4a4a7b;border-bottom:0}.table-hover tbody tr:hover td{background-color:#f2f1fd}.bg-grad{background-color:#6a57ee;background-image:linear-gradient(180deg,#6a57ee 0,#3a3f77);background-position:3% 3%,100% 0,97% bottom,0 100%;background-repeat:no-repeat}.spinner{height:100%}.spinner>p{display:table-cell;text-align:center;width:100%;vertical-align:middle}.spinner>span{display:block;text-align:left;width:100%;min-width:24px;height:100%;min-height:24px;background-image:url(/static/white-progress-spinner.gif);background-repeat:no-repeat;background-position-x:center;background-position-y:center}.tooltip-bg .tooltip-inner{background-color:#7668ed;font-size:11px;text-align:left}.bs-tooltip-right .arrow:before{border-right-color:#7668ed}.bs-tooltip-top .arrow:before{border-top-color:#7668ed}.bs-tooltip-bottom .arrow:before{border-bottom-color:#7668ed}.bs-tooltip-left .arrow:before{border-left-color:#7668ed}.arrow{position:relative;overflow:hidden;margin-right:5px;display:inline-block}.arrow-right{background-image:url(/static/svg/arrow-right.svg)}.arrow-down,.arrow-right{background-repeat:no-repeat;background-position:50%;height:12px;width:12px;top:0;left:0}.arrow-down{background-image:url(/static/svg/arrow-down.svg)}.drop-zone{border:2px dashed #7668ed;border-radius:5px;height:100px;background-color:#e5e2ff;margin:auto auto 48px}.drop-zone-content{margin-top:25px;align-items:center;color:#0782d0;display:flex;height:50px;justify-content:center} \ No newline at end of file diff --git a/console/ui/dist/static/svg/accounts.svg b/console/ui/dist/static/svg/accounts.svg new file mode 100644 index 000000000..4e9852e42 --- /dev/null +++ b/console/ui/dist/static/svg/accounts.svg @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/console/ui/dist/static/svg/api-explorer.svg b/console/ui/dist/static/svg/api-explorer.svg new file mode 100644 index 000000000..a365ac4d2 --- /dev/null +++ b/console/ui/dist/static/svg/api-explorer.svg @@ -0,0 +1,13 @@ + + + + + + + + + + diff --git a/console/ui/dist/static/svg/arrow-down.svg b/console/ui/dist/static/svg/arrow-down.svg new file mode 100644 index 000000000..221919d31 --- /dev/null +++ b/console/ui/dist/static/svg/arrow-down.svg @@ -0,0 +1,10 @@ + + + + + + diff --git a/console/ui/dist/static/svg/arrow-right.svg b/console/ui/dist/static/svg/arrow-right.svg new file mode 100644 index 000000000..6e99f59a0 --- /dev/null +++ b/console/ui/dist/static/svg/arrow-right.svg @@ -0,0 +1,10 @@ + + + + + + diff --git a/console/ui/dist/static/svg/ban.svg b/console/ui/dist/static/svg/ban.svg new file mode 100644 index 000000000..43d7e61c2 --- /dev/null +++ b/console/ui/dist/static/svg/ban.svg @@ -0,0 +1,13 @@ + + + + + + + + + diff --git a/console/ui/dist/static/svg/bin-recorded.svg b/console/ui/dist/static/svg/bin-recorded.svg new file mode 100644 index 000000000..5ad58e1ca --- /dev/null +++ b/console/ui/dist/static/svg/bin-recorded.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/bin-red.svg b/console/ui/dist/static/svg/bin-red.svg new file mode 100644 index 000000000..2b88f0495 --- /dev/null +++ b/console/ui/dist/static/svg/bin-red.svg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/console/ui/dist/static/svg/bin-white.svg b/console/ui/dist/static/svg/bin-white.svg new file mode 100644 index 000000000..cbf8c3ee7 --- /dev/null +++ b/console/ui/dist/static/svg/bin-white.svg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/console/ui/dist/static/svg/bin.svg b/console/ui/dist/static/svg/bin.svg new file mode 100644 index 000000000..9729a0b7c --- /dev/null +++ b/console/ui/dist/static/svg/bin.svg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/console/ui/dist/static/svg/blog.svg b/console/ui/dist/static/svg/blog.svg new file mode 100644 index 000000000..9bda14b02 --- /dev/null +++ b/console/ui/dist/static/svg/blog.svg @@ -0,0 +1,19 @@ + + + + + + + + diff --git a/console/ui/dist/static/svg/configuration.svg b/console/ui/dist/static/svg/configuration.svg new file mode 100644 index 000000000..0536cd763 --- /dev/null +++ b/console/ui/dist/static/svg/configuration.svg @@ -0,0 +1,16 @@ + + + + + + + + + diff --git a/console/ui/dist/static/svg/docs.svg b/console/ui/dist/static/svg/docs.svg new file mode 100644 index 000000000..6d7583dca --- /dev/null +++ b/console/ui/dist/static/svg/docs.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/export.svg b/console/ui/dist/static/svg/export.svg new file mode 100644 index 000000000..c0fc7ef0c --- /dev/null +++ b/console/ui/dist/static/svg/export.svg @@ -0,0 +1,14 @@ + + + + + + + + + + diff --git a/console/ui/dist/static/svg/forum.svg b/console/ui/dist/static/svg/forum.svg new file mode 100644 index 000000000..7515ae8f4 --- /dev/null +++ b/console/ui/dist/static/svg/forum.svg @@ -0,0 +1,17 @@ + + + + + + + + + + diff --git a/console/ui/dist/static/svg/green-tick.svg b/console/ui/dist/static/svg/green-tick.svg new file mode 100644 index 000000000..f10728494 --- /dev/null +++ b/console/ui/dist/static/svg/green-tick.svg @@ -0,0 +1,30 @@ + + + + + + + + + + +]> + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/heroiccloud.svg b/console/ui/dist/static/svg/heroiccloud.svg new file mode 100755 index 000000000..ec2cf8380 --- /dev/null +++ b/console/ui/dist/static/svg/heroiccloud.svg @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/hint.svg b/console/ui/dist/static/svg/hint.svg new file mode 100644 index 000000000..2ec097b6e --- /dev/null +++ b/console/ui/dist/static/svg/hint.svg @@ -0,0 +1,36 @@ + + + + + + + + + + +]> + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/hl-logo-dark.svg b/console/ui/dist/static/svg/hl-logo-dark.svg new file mode 100644 index 000000000..9ec8f9aed --- /dev/null +++ b/console/ui/dist/static/svg/hl-logo-dark.svg @@ -0,0 +1,65 @@ + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/hl-logo-white.svg b/console/ui/dist/static/svg/hl-logo-white.svg new file mode 100644 index 000000000..1ba985746 --- /dev/null +++ b/console/ui/dist/static/svg/hl-logo-white.svg @@ -0,0 +1,543 @@ + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eJzsved6KrnSKPzdAPcAtrGxMdA5ONsE57Ccs40B2yxjYBFm9rw/zrWfKqlzqwNhrb3P++2ZZxhM +q6VSqbKqpHTq7CK3Xe+8NXJinksm0ulir1EddHorSfJrcr/VGvYHPfwpc76Y5NU8B42297UXo+F1 +o9dvdtorSV7Pc+RhBd/OnLaafzV6yaNm/7PRW0xmFuHJZXPQasCzVuejk+//9bFojgcdlKoDeMTJ +BU4rCBwvJwV+RdSwQbX9V7Xfb/4PPOYVURPht53OsF1vtj92Ov9aSYqymBR5ISkLelJUZHi81zxv +9L1t8qIiiiq8r2vYPK/rsi7yqqoJ8IMsaPZzFVsoUp6XdV7WZBl+laDXUqc2/G60B2e9Tq3R7xc7 +rU6vv5IAZMgvlWarAfP+rg6SvIhY2N7nhZedYbNVPxl+vzUAI5KEv4ov5L2rfvUD5kO+48/qy/43 +/HLRGAwA5D4gAgY8391xjgU/kn8zD+eNjyZZFMDb06LRba/T/a72vvpTmSz2eNn47rZgVSgCOTkP +ayJI8On4brSE2dNWal6zO9alpAxEoaqyJPOKAouqJDWBczVJKrzmbKLQHm1cN/5qNv5eSZ502g2K +6u3e4IISgyRxHP2kT86HrUbvqt0cAA5IPzpF9nGn3mhBe+v9SqtKcEz+5e1P2uCy2vtoDICCOq3h +gJC2Zo4Aa3lU/Qco3uiNV192YC3aME57AOC+NN9f/qIM8fIxWOFV2kx/Oe022pedazIVmHwe5mr+ +wydFXchLuvWPklRgVoKWBKQkBYWAB7+IogUwb38aUGy3Bo1eGxbLhOTPDFtu118MAdCoO4eWydA4 +sIkvFQj6DEj8tNcEhK3keFVK5mSFEv9ur1m3aV8Vkhr9IKuSB/TjPzyvC5wOTB7zFzotVQGyhnnF ++YUiDahjAPMwl1h4KR47+JLLH1/AVGDmxc43kmgf5RESAfAqCDb6zPpOnsDrwy5FCyUXoOazXrON +fSZOyBPt5aw1hEe7vc6wu99+7yQyVACfITC99mkbvnwmd3rD/mfystNpgUh1NTAe0V7wYW9A3yG/ +4xv5arO7+B8zlvUOaxx4+P/KGMVqq9X86FW7n80aaxjGc2s857MRhgQC7TXsXsif5v+j376okUVk +wep+ZA1g/DwChH9ijOtGDcwP0AT15OnbT/gDeiFKNHnZq9aAs+Bvq00M2gcp1YXmYLUYUCVJG5v2 +gxs4HsVmsmS53gTYAsYKbXPxd3VQ+zxqvvWjRztqtn3gkt+qvcHfnd4XIq3eqNr2S4zF/WrA8D6g +6K/jd0v5tNVo1/sWHuifNpUcAYbpbzHA/Of7rdNq9r9t0nP8cgaANmutxsU//UHjO7q3UuMd5uEQ +FeTXcvuvRqvTdTAjbRdjtq1qu9rzLPsRoa0qKAa7Q2zYGNyG9YiYe2+268BVF8PmoGHLns53F63g +5MVntdsgszZbXlgdykSLOzRSLhelqqi6I2BQ1jNnRZn6GKb2AcCc9mCgxfBnyVApWoDPIVCV/3Fh +MZmnwKC2dYIy5SkFyfdEJgg0eIR2iyAlebRPOWo+CdSMmirYOn2CFvHgn1ajnygctjt/t8kfyRWY +QbsDJFQ4qX43ksuJwjaRUObTgkkdwKQokKF98RNoL0kb0F8XCdQFo8lygk8Wrpv95luLdOjv4WJQ +rX1N1MOoMOxU+82aE4Be56sR/32BPGid9owXocdSs4Zmf7X3T3IFkNcBV6DWAXKt40PazMCh5T1w +ydt/ElzyAL78hJ/+hlVPHicfnrhkHX6+PU+QJnXou/GeXE0mkhlHP4vQ72qSDJtcTSQLKJoYMyNy +bwTEhE6DdOaehRA9Cxt8+/0A6EMmAm5CHcRUnEk4e5k6qeC6Twuf2NfkRGH1gkgFSHZA0CQzV/1G ++a9G+7Re/99OKf/GOcVYrpHmlCiU/9WokfgBeUDeZcnnpKRwDhl90fzutiwZzSVPE5zD/+aTt9XE +CPTFE/qiFkUgFA/wa3XYGjyNCgaMkFfAeRZUXlNUVRY4DXxqBb4Iii4oGifKGnriiqjJqqSqOieK +GHjg8qqoy/BMhx85ToYfeFEVZEnneF3hVE3CXwReVjToW5I5XSM/OBqIAMJ2fEzwAZggOhSUrq1B +I9XwWbXVAOOc4OPsDTCgypwAEHKaKAFsZL6qrmiCLAsaL0lkMorKCQKvA9yaIkn4C8xEkThBl3VN +EBVzGt7QHsH37f8kfCG/s1ribMcC1oRpFGPhCLpzrr0PF6TBOFYJz9FH1NzGbv4/42foyPNjQOcG +rGYUsFQdVBPpl4L5N5Ak/uVgcfz79vjopFNvMB+uJjP/+m614XEOXKte8204aPSReaHpdq9X/TNd +TKF/R6vaZ7NV7zXatA0YMvuAGespfgz+6Tbo08znYNBdKRTa4DihWZuvdb4LF9W/0Du7abwV+DwH +FnXhqt2swXtgnMBSuPv6q9oamp3h7/3w5m0QJLS1AXHf9dfvX4hARPGhiEoWoibfbzVrjRFmv/wf +TBUynxfiL/tno/nxORhh3c0XIlHwe2fJq3L8Sf7drA8+R5ij0f7fPEXc8pFGYOBRmPffPzlejD+1 +f0aY2j//9qkNegh43Lm9dQaDzvdR431Ad1FGmKr/1fjS+PeK0ovOsFdrkN3aEaXq74Pr/e//HfJ9 +vt1/+ava668uRk/aVOp/WJv/G7Hz1iQJAnwM5AASLxqDE4KGaAw5W/+bBQx4mEEgO+fX6tS+GvU4 +czNb/u8w5mClmtW3ViMO4f+vYvSVv2KzOjb9N1MxTq827IMG+/dKst9Hhyv9KkZc0NMF0RGXHH87 +XwAs/0Gg/NvR8t0YVOuwRFOyU/QJwZmtGwGROMTuaIy/cMbYmDe23WtU6eaQX3h7+FwTRN2ZXKZx +4ENqEqdJvCQpgposnDeqrbNOE/OAXpIZkpPlNDnNcUvNfrdV/ee4ipvFZDbbvcFbp9qrJ3k/em1d +ytMRkpmz7XP6iz+dzZvwZsN03mhdds4pPAS+s06/ifMjTwXaoTd/zpMdF7s73oKYBvL3++YUjajb +iZ9QzBZkBQzEPBw36s3hd9JOSXvyY2h7n+eTVoCMZBwljUymRi951mv0G4OkA40yZyJye19PHjf6 +n8nzan/Q6DX/hwQZHaMZWOFcb5wOB93hIOIdXjJWmwXdUbX9McR8jbNOFzfB6VpiBpr5jo7pBJQm +apjIlxSSbxb1K7AacnBTfpSmPdOiiRz/o9cwuTeyV0fbyH4tCEiKq9XSRBlNgsW8Rw9NEcSS1e39 +1UheNv41IEkj1bdmqzkwCYjL0+y4pPnFIS8urndfME9vp/Ov2zs3izrSWjBB7+UcozkkH4FstJAR +LgbVQcN8LSebNGILAF8nDSBK+KPS6nR619V2s/8JcJD2/qlxyXeLhGutZhfQhVryX4CuDyAyQ0Hj +FrtFZs5XeoQ4c3+RLKDkWxVArxnAapIoGMjgeE4FQSbySl4EqYFBfFGVI+dhIaPYaLXK/xo0oibQ +NVep81ej18V4twG/xutCUtUlfpTx0ZUnw192ug7sqSrP542MTlWT5CR0PnK/rGUZC0gbSW4oAynM +1hb77XrjXxeNWqdddwCgSWNiaYfEP5yI0mULUZouiCMTgNW1d/3HAtTGlA/SuMiqNHt9EwRFtahb +4OXRqYCAwyKDIGAIO4fJBvZrFhKD3jJ0PWu00/f3fsMAS5I1VQoDbdeWxZIc1C1CU6nWGtvtj5YB +gqAIfFDH2HzXrQ9CWp6bEj4IF5i5PgEFId5My8OYqBaIQJT4sLBghA1smShrnItoAt4ltOEWeHwk +cLWqhdGA6V9ahq9TsTIHj0QlabVj6f+YE8NVcs5LFFRFDSMqxwiBmCagnHarNUsdh3VLWseiVdLS +Q6zBUJDArxMILkBJdYaDFqaHDsCSMO2+oE5R8NkmibNHxdFjtT1oJqutZtXQdhlaKOQwQb629yvD +Vsu0dYyCAngaD9Q+SaXqR6GAygwnDvhA5OLMip2hSQhCcK97mF7cae85droiycYiX1nTNT5EZNj0 +5XXDTJEE5qMXS9/VvuFRqSar1bvNvMc26Xc7JriKObdutV73dAbrZgdItveT28NBx7L5/QuvJ7vV +LixNv/k9bFVtP4BzmaumI5r8andqX7CMYCl3TA8goGkTHAvQC2DUN0jQ1u3P+01qt6zB54Netd3v +VsH5rv0DAzbryb41hVVEgZUf5EG3N33IHvYIEGE6bPul8f1q/wiqpilgbSlKXtV5XRd4za8A/oBr +rfCY6zWi+8wlJUnPC5zGgV3NC/Kf9pddri1MAMh2t1etN5GMqu264euGebf0JZImj1Ui+BLxrHzu +rWskPlk+uxh5KPpW9Fj/jQL8Z0YBIhjZ5MmCHVUu/Oy85d+ag+8qeoQuTFm4dTbvfnx/5UHuNeqd +9/c83cg1ZhTYnFSCepvzDFjcnQ/7DVieHfzT1NbO7EAPsTn7Acy0GgQRLnniG68/aOXrtEfiAjcM +SZ0J7x5fM9rbQc0473Tr3/C41Y4NVLceu3O6I2G9wVrqbrdnNAtZAmhjjG6Qny4zFxbaObJNNEkI +auXMu+G1oFZNLJbKt8DOiNdy0DHZU1XDW/bs4TWOD2/rJFCsngFBWE++/ZMs9bB+PHwRsBd7ZZnM +U/NgLbiRE2khXXUcXmdIZ55mvkUnrYhJEtwG5US90W9+tB2mlBDQkHDHm5FFEdYjadh5b7YaMdpV ++1RQxeIJfMu1HP5Zt3p55MfwFrVOG5Z+gCZqyFywpRVJe2tVa5bVy2zdq+fBVAe94zZLmQ3fW83u +Z6f3Pwa5B7TqGrZLGC2QUT/yocRntPnLEcxkt+qjE232Fdnur/A59mvdVu2fYKlE29Ta/TAihjaD +Zssyx4PnB+vUqnaj8WC0C4GdKKxGG3cEw+QutuqbGfqRlEuaUzltM0acd4DkB3iohQFJXmBLbmwK +Ih7dVbcsCtHHEW1qvU43okkX5Guz/d6JaNZzpJZHDYr2z1u11w9ZR7dFYauXGI0HjilFtXXomBhm +kA1GjMYWGDHaOsBgcdF7e5Cvt8JFHm3T7b132mHyDpv1h28mP4qsNerDRP9qtEJsjT5Ynmirhix0 +P99ufFRtrzWgEW7FgP3aD6cabAfqph3eV4vH3qpWxIm9/v18/7Nab/QaIVjCRo0BBonaAJvHr/U0 +dLdSWXL+X928a9tI5FiDQque15QnrhWr5QfD6Ge1M7SgHYhjrafdjkbBwluCWgsdEkN1JFLnlOis +hp1uLUSqkAb9kBUnDerDYIMGGvSHXUJef382Bw2TIeM5wZ6ewk2SXr3Xj9YnpNX7sF0LoSjaxnC2 +TaqKUCLknWq7bQbj7KCor1WUG1H7dphWmav8RT5503hLFjvVAVjUj5mLm9Ozx8XkX4yEf0833Z7D +PGQtD7RBV8y5ZctqY2541r7/+QoxIuyGncGn6Q+uWlvbMEpy22yeRG87pjs/1va7Mw== + + + /CjbsYqz5r8arbNG771hDv8b9unNMMnF9S6pwLJ3RCyo4JF5LJNnAHhy9vHuXg/4rQLS96hTcyh3 +5xsYzj0El9r3Wvn7rVGnUR1mlzZoguOlNhCVT3TAg9JlyT+PW9OrcHQNCKo1+0xQEWX0cBbfQmEd +0zF4z81uq2HGA/v+AUk9P0Yn+t1qrcGc1gXoV3rUj3sO/82E+G8mxH8zIf6bCfFvy4RwcFKyCOxP +tdfFN5abm6cfYbuIaLTCNKyb7a9WfwAq/UvIv/cav4a4RRbsZTibg9vY7ZCjXAL1u7e5neAaBQ3v +hYZlizibe6BhG1POFzDEZFt14dDzHuijeudG6p3z9M4yqbytHVONQiXnRaUU2r84KioFz2Sj2osj +IUcckXBE72wzxjmayR0aJ4yEzvYZwjkAIHMaaaHkYzhqHojuQGZ2/o4ESYhwY5wgNfu2xS0xA1LO +fqt2/kgkWqutQa3V4+OQKE8DyPFo34WacC4XHBgPIeKanb0RKfNcs4pkJNpaHKm1EKs1724dtXT8 +CEvHeyaJCe301E9JEFWB6c86UVRvtPvO3KE4k+bjrL3golY+r1JVLamKJqrMDS4nPXrBCmULF5HF +JHVpJOyK8QSBa8YRnOFgIktkFP+ptiMFBhe1M+afrBBvwRwgRZGoOAKJCiPxiuBeIAs3x9UP3OOJ +RA8fW54KPsIJpbIRpJ5LdcThqNGoMV5r0U27USvKjbGiJlvkFZ56mZLIyTwfOZKbu/OqIbI4SREF +mbkF7UTCCLKBG4EleceymUGq/fYXHnQ+cESnYmaQOcfArs5KlRczSuQ4eh1DRUDMxWqXBoyaZgic +HY82ezrutDu1z17nu1Hq/N2mFYa+5Bz2+wK+T7N79smpzmc0KIjxk7NOq2lZVuHRRLMnO27Djoub +EJPzukcGNnCyh03TZw7YU4ifwxQy8m6v+k/R3g35MazaMT3mFpL5Is1grwDM2/TY1B1HMoQgK1GI +wnPXXQm4rObh2b0B84rMs2UZadZiU1LZb9eAgEly38j0EkB5xtgCa6smgITIkcDbbx1zN2u0Bbns +dKPX32TY7Vqv81Yd0BPPgy1UP8E6iMem2PBZIs0FTzIMWoKf6ZDrub35OdK64gmQJHViH4T0oPne +9EaZQ6gxJPgZKlncCPOydySrMZdo9O0os08jJxMjSiQnk5mS6RVUMdIzIxeeJRulUMQhmQZTWlDK +g/n2Za/5jYnIN41JaSVaXZUafdCSRhXMyCLH8fZJ3BRD813jdL5/7BdHY6QjOwkvZH4GIbaNGyac +cwxbwDOaN4mrcBkarIgo3AjjEY8KtGkrlCVxmOqgcfk5/H5rV5utkH19D+NcOpL546hLhM+tLflQ +y4luBOGW0DlSRDwbgGl3hDIk5jw0nVuAAbxP25O8XKfMvfwE2ZHEywAGn42kkUOaNHaw+sm/Pxvt +ZL/6F5Jtte28yieJCjVZ7ePPxnnkpYpVbJFPXvVJl/Dp7uyfzjDZbcFLIHoa1CYlQ9PuPvA43qZr +oOUkDGa92gb4k4MOdlFrJJsDbFxNtqr/YA1ItdsFeqZirY8nawN4++0SyX+0u6GjtQFFQ4Cu824P +3+wnh+0vPNk0H5vha71mNzwRw6I7ELs3jTesm4smBrJQR+AsRDc9NXfAokEg7L/jTL4KlBTAHt2u +VVHObigRHBjZ3nGpL56guhhU2/VqL4YIMNVDDM7Hy2P2ndlsEaBehiaTuZo6ze4wEEDMO4AN17VU +Fm5b8d6ikb4xahI9My0p/u4uuKgADzUyilb3HsT8t7z2v+W1/y2v/W957f9vy2t5Zwlru2PnpaCF +gs4mpvqzSnH9kT2Ts/4TKnMD/FNHsSApdAwpEHRTHQ6D5LbtyhF1ZvmQ/jBBgdw9gy76uctF9zY9 +NYjswklkXFCrS4trVDvzjzahMy/QC5+SO04VyHuannqSjqKxRGs0Y6MJG0fgifYYD1G0bSSm3M3Y +qKJtQnDFRddyjxHZtsuJWq2qO0GPvU9DXsB7gqrtj4gypf5Xs/sGMwixtZ3Dh3fWa6Bv3XAkPsQo +eTJnFANYNPCsnB53iutB5w2tW8cWAvfbi+ZNmvEwxBSr6r3UYV+54D7bH2GhZ/4j4ZrPEsSedv6C +FLd9Udzf1+RSAxcFe81uyK9qdvP6rcAVsse57ObnQMRvgrT2Y0W0HvywvpEHq+Lm5WCn9K7vfu3N +nq9XS+/c3Yb1VMiunyufqUVxbz2VKyycJ9Kp7MbXWmrx5F5PLX824dHrez6VHa5cpJaPb0upHHcs +cIX1uwwZXk4VF39IfaF/DMCVvqTN09cNcUcTNeVe+b5fy71WOuqNyNXtp9zeS6OYSPd6G+tv28vd +k4OtQ72/oe2t3eQrnXvputx7vOdK95W7y8r69nqNX9pW21zhtHGV3bh7EriDs/Mit/cqF4TX1N4p +v7zweR0ISCIdA5RebzM13Hk9Hh5v7ym105X5dnNpVx4cbwEM1xdbhQFXWXk6LXX014vcNrx78M3V +5+9K1qBdsi67rQ19b+4n6RtAfitbazBPWm50F9e65G1j5Or5jvHt9WCTvJYv9OVf8O2i62tCMNbX +Ku1LIaPfzQEAfBvHPrVXsPfY/9Dy4pE2zG7spuZtTEC32q54szr7TsA0gKfAHfV7vdX+fe9p9eyU +K0gXGZgLQmsPC+/yj9Lt59Eyc9Cnj529wEEV4WchxRoUV3+1/9Z7LmRvyLC+QU92Fmevuq0j1qD9 +2WdlJ2jQvY0favuaDJpI++YqLd5mV2unx8xBZyrPUuCgXGXncIs1aCINwyqzc+3e4jobwdLdM1d5 +P7lgD7qbWpvnD14umYPu7gmXZFCkMT+ChfuNy1cyqIvk6Kre9B6HG0c46KJ/TTN34kOLX4RBpY49 +KIxCV/WIMxF8trDgGVSWv1+6QYO+9J4+25cBg25VFbUyx5N1cQ5LB33efD0PGnRvTsysPrIHXUs9 +9Wc/G+eeQWEUOuyP4uLGr7nvI9ag2dXWykbAoMrs7K/hvcoeVLp74CqHa2cwCmuuM5VvPS2dlH6w +BuUqneZB4KDzx6eNXc+gOIoxbIPb/TF7z0bwyQ2X/ipcX8CgatfLNAu7L6Ix6F0u4xlU/vV1cW7I +Mb78+FVxzfV+gzva10UcdMk3072vX6q0symxBuWOvt8bnkHJKMaw2nH5+S1o0GfutHV6wR70cOH+ +MJ/v9JiDXhyLKnBl0FyPdqVDKWDQB4m73L9YDBh0OLg42n1Q7UETacew19ygGTjoZeOk8Bk06D53 +/bywwR70SF9IpK8zqZNN5lxvctfzgYPebGdWZ4MGbXL3y+vP9qAwF8ewJ/uNn6naUoY56NPbzHHg +oF8rrYWDgEEfN4GSn5+3JfZcT7Mz3SXgSeagr+JtJnDQmbvnpYI9KGoxp4BI9XqVsy8cNOtjmlNh +KzujrdVg0JVfXpk05NvXxqBf+pJn0ET614v63SPDCgsbmT23pjnLrnQGZRx02c+pl4X0afP4HAbd +6ntnWj7pcsagg80srItbFKa5uRfKNMLTYOXALZV+cOXyVQUHzXsG7Q1f06mFRka9g0ErQ8+gKPkL +uRs67CZ/mPMMOnN5cHlOBhU3r46OnIMKg3ZKKA5qOCjnm+m1+PjztrS2BIMepBJpL4J7vXLW1Kpn +356nKUHffw9+Ktb2c6ynhhbLbqx3WoFvg+id7wU+5cpr9WXz6YVPLR9t7T1YEmb32ifgj84vX0Ke +1l9rwU+PU60P+6kPY9yxNJcPfvt0+PUz+OnFta6znhoY4y4+yzvBb1+ed04Dn/YGy4Kp1HbvfNx7 +faX+sjH26GU07vqjOAx+ejN3NhfyVHnM2E/9GLvZ+ywFv30vP2SDnz59ZU5ZT02MPWek2+C3nz+e +G4FPQb1vbAQ/la5z1RCM8ev596vgpzu6JAU/PdkQOyEY409/rawGvr0y3+28BD5NzWeLsvn0pefD +WGrueOPLfP7mlX0pgSt9Bz7NrglHpZCnq+cVG2P0edfpG0rLxEg8D3DNjtuhrtne+iW4dsWdwsFN +Il2abRxclDazF5daLjU/hG+7Z+AqLhQrt4+VOmiDmRJ5EbqYXWA45rOF5vrbIpDATBm0wea5S272 +ZoSF9bOcgbH+7PXdmWOuG7PiAnEkqbuzUny4s4V14VhrL4B3fjskzg4g432NNShogxXeo/eNYQ0b +lVs6DhgUnB31fPEpYNC7R9agiTSd60ylK7Lmarg7s/dXgYMu7L/lP8xBd1vOQddSi2RQS+9LF3NO +BJ/JgmPQ+vz8rD1of0Gdt8lUdA0qfy5mNh9ankHRGjcQ/OScq3vQmUo1Hzgo8R0CBlVm0XN4tfW+ +e67S3UvIoLtzSvCg6Dl4BiXWuEFKaJFUgwY9Dx5UOzm8Dh4U7RGXhIFh5/D5svUtZxhbS+uFWO3E +Isdqh3NxteRel1a2Y/RIDDVbWmBwS6Jv+Bl3wRft2dB3b4vCwia3j4gRvaG4jeXysuOjmFsqWq4+ +yCRx7gf+dm5zEyBVBn7J7nT6JxQK+FZC979MRvaIJhj+6gz+nEd/d7hkDkANaGMABzRn812zycWW +4YvZYo87kNNp+2Ojm6lfGvY26cdmXGgMgG79ok1c8UYC8E7hs1FK4wfYyRZ2llihOpjBQ4mvzi3s +WQh0Yn5jo5w2PpaPO4Egob9Pgar0Q4Ga5Zev+GX8eHDGawy4Th0o38yUDz0oNzDmRDr5qN6WbJ+c +NT9xbvXwKGp++IGLQyIkgSu4MGOvYOD6IX/eON0w//xITOnsO8YKxlg/rvGzcc2iz0Q6CFlhnfW/ +bkYidiphWOTe4ctP/d1JKMukq9V8Ij0dzBPTKBDvifRomH8v5h9GlwyoXxjCp/y4seQWPWWv6LFm +H0P02J444vtuuedCoAWyW/Q0zvLz1Cjz466Mnvi+Bxo3V74MF0C2Hy9buGPuVEDj57LwNNw5ZIvt +AK6k0Tw/od3lZiaf2ubKj2NDv4Sg+nVxnvBQACDLXYvDgmdFeP9w3lh9BrmXH0u5iSdERrnrOind +YkOXhJnHj/PAZeLe+Zm7QLQk0nERE6aldzIG0awfF8yJ04AQm5K7ws69fjBmZ16uq87sZgnXmRFF ++F6ZhO+c0LwJQ89KWja/uZaF5uzKMvkwpCDZa2CQRXXmZSZ6OcmHFU+mYWwfdVR8UtDZ2RbXGFwV +fHC9iYsBer86cywEEmzhs5Nd91thIUtC7URLEFJ7bDfKCosteuq7/NLOz4pHLZE4fzyb0bG+X9og +XC15sGjtJfnXF4B/Hk7FetrFUdyS2o+sJafiDQapMRMEEkh+C544QLFMOhOk03OLZ73rZ1kXrhWM +Mulir5/u0C+xVjAMWde5cGJIjNRZfiTKsrty7yMbnRXG7IzRFTdNjPHTxJgwTYyJk2DMUMsGoS0b +kt/luH7scfWFanli61jYua075AaVY8GuBJsPBpup2OZ1EFd+7Ll1/PhcOdici6Ixnw== + + + o0x2c5nYGaTD3axEDOzMj4QdFm5gLo3qy1VMZ4FpGMJcXiL4OBEHlFFcPCYgiTSCEsG6cQDx2JZu +QCzbMgonEZzq9QyrM4NdW0E5rL49EroexSfPekLcDpW3mSn1gMEfik5LSXjqfwxGGSAoqPFzn+Va +WzYMS3wEMchT/1egjmeCZEhLFlBTEgBgKaRj+ftxBMDTIDM/mr8fjHRx8/ryOL7ENkHy65en/mcE +J3upNsCS3ycbgqZtOSlRce8Lv27DJUPC7fgE+ORA/YMRw4qu9XN6SYgsaWrIcjJ4lK70IcvD4vxB +32ZxAo04p3eHHr/KIWFGiet9H7hZPCBCYkYSzJiSm9DEuZXMXKjTGNepOCD2e4wISYyQ7PeB2373 +Ti3hnVzA1KTMJOENEh39PvCq5dHjPkAHQ7dL6ZhQIs1aLfaE9F9ioBsdHvdx0NgB2RqeMO4DaHlf +ydyHxvq8MRCXR+/GTki8xi8KcBRXrMFtTBf8e0DdQ7cpHTEAMaUD+GXzKjs7Ie66h7YapOvihyeu +Ilz5sRCDIhJxFCFMbWVyfukeunVghFQKACTNB84qkQ6ndAvkQ1vzjT4hm5KBdjxKbwwBsPIj5dZ2 +YpA9FoUYJcZye2xZhz3mxo7blmVjJ5Yti1tVNNv23Lnc8OvofMeaOIrgrMfjGyPmjbUJUrjko9qO +Rq7C9R12thIDgTTeyjI7HDIZO1sfTChXbi/IJkW0TA6PxeOqjazyLGnp6cftSI6xZYK9WPxnWn3j +9hO2U2H3kkhH9ePXfKPrPWOH17tDOFJn7rA4bvNmPPYmRhV+NvLhQiNuCA274lhdGd7rSH4XdrYU +sukTsMcXYERgJmgsVDrNT6ZEM7kSlYdfosFvU5FouC79r4l38Yq+lAqX3DAiVzEteOzsyOucxJBo +TP2CnZ2lJpVoV7ZEm4T3YdViSrRw3sd+JpdomDk8uU1BoJnG3ivpxy3RXFsvP+xdHJYt4MyBp0sW +FiRzbR2yI25dJ6u8LmZZsfHb62ltwO7edW03Osgaj7TMcDmZkpElZBPpCDELnQVvl8YVsqZMhs7G +dRodzFx+fGS6PXTvNS47X/uSmuIJBS+NXU9i2rt6cSZAUAt2vH7iO9SB0VHST0jqUZRJ7uqKWBdT +i1Xj/Py6ELPTp2TfgxwrTO7xFUGQ3IYrsGBd6MqDNTqLn08RGlbErt5m3THYcQjthmXfj67FYC0n +DmkZqz8FbQjQhOrCuFoM+4ln37N6sTxx0s/42tC7YOHx5NG1Yc4f3Lq99ehC567oqNrwpRcSVHam +Ti07MocD53+Lgbq9gCVxotJmyODdtyIM+xZuUca2dKGrz9k4kj8Od0NnX+ExdF+udQjG4rB4mHNp +U/JLLxafh+2eIivkWaFrOxsqMp3OTV5hTOpjLrouoYrpre9XTG/9kdQS6spAxVTMB4ci42Suuf39 +tz4rDMhir2hSuZtiti105sm+CnWenZX17M74w6PpREje+rHiybaJ4c9CtFaywEq+DdoTDzAxMJ8g +2NJ3UYQTJPZuAgEqJkWE5aoaTEHt5COV7Vm46uXU94d31TxEZeeo3Htef7Fr6MIr6FCOTaOGLryC +jpzdMYUaOtagdgWdFe2ZsIYuvILOrEidtIbO0i/MCjo7QjJZDV14BZ1dLThZDV14BV1AteDINXTZ +0Ao6u1pwsho695p669jMk1smraELr6BzVNhNVEPHMDCLofuVY9XQhVfQEZs/NCE5uBJovRvt9Lpz +4IMrge5yuwF+QHyQCL8Uw936WZeADy4P7AdmuVh5fTFrBbyR3jA8RUR6S15tP/bSXcxE5CnFxVPH +regZeWbHnUTMYrCL9mh4cnfl8F9KvqDV+PPzJPe561/MGcab32N4magDpPDKx/lOZHJfLJDiRK5C +8BSzZC40TykmwZYf9wNLZJyZwxEFVFF7YJGpIJYFe5dLTRw2Nqd25w19MbPUIqY2eiqILxMSi92y +UyhMdLHemJFeLHYbYdsmqO71brkbYvPH23BAtHjrLGI5IkGdRXi5iXR4Z+4UrCW/EVGtRPnkMWVy +heX2juT02j5ytTJSkWlIiemb8MvDx26ZPJpvD8gK2ct2hkmcmSphgUPJH7//0nqB5sSIO1Ywq9vg +Lb+4VWBWHV+U2RW/jo+RYez29+PXgUXUvyDhZmyQAnd56rvuXEeXmhyttFCfDcmBtxcvXm2UO4LJ +yIGPXVzojWDGXD92HV9UTcwIxEBOQXDp/Yk6CyuRoTnw8TuLyKofDWOhNTMjwrWSuZ8axkKPQojG +mCfwO9j45Ul1EnZunyPMRoxcxTCwBxvDuMweFLeMrJcL7wI7iDhJBHXl2S1PPiK4e+f2VzB3h291 +eHdF9+I7e2xTbI8lHrxR66guIo9GsR0Eh/XkqhmJLpWLXKGNfmiduNvnYbMFlrhF8T4TGZ6qtNhO +3Gg1cs68PreCC7JccELhR554nCtPbNxtRzJ2O3/uR1XFut3MQEreHzG8E688jlkx5HZXAyuiyrNT +s8eeBumIotYYm5vUHtsfMbwTXGaXXWCB5Mggiomn0iBGeMdDAszI1f6oEZmwYjaMyLj8yph06Qcp +ipk9WiwEqNEiMoHZ6d6yuNHw5I7IiHP6V8F7dsdBVDZfvIiMOLcyw8zYGSlL7ftgzIiMPwceOGd+ +OhEZmBq/MHEG0fdB3IgM9SwCy9Aich2jIzIHRh7sFMrQIiMyiVj1eZNGZBJpRIw8enlOAHbYxTle +So5Xar5yNvDWoW5epYNzaawTD6KNZbDmZsckBoeEOZw4qGM27h56QjqM2HjMoA5MLRN3akjJQWVo +MZP2wsvHHHkXk9TVxUkFTkTX1U18blj3EHPgx8/XsxETLqyt6trIIChiRx2Te6lt6UnVyzB2Ui8m +UXSuk8Gsirhp18N54/yxc+pGqoeLOH9sSvVwyPuTMl90PVzcDNXJ6uHsvD5nRdxEs2Lw31jVgiPX +wwXtjEy3Ho7Wvnkr4qZdD+eJwY5t4YXXw7lPCXDorqnWw7mj1t5Uy/Hq4fy7voH1YluTnkqAxUem +HRFULxY/J/IqRk5kwoPCwJzIq1g5kZG8f92ZuLwehVA2ZiZkZD+Bx1rE3+Gl/YxylEkwNJYRP34l +F/YT4je7UjIT0WyIxXXBAbHocgJgQvcJ7WB7+dkQfhuZDZnRnmKMrIZYFVEB5rx14nR8NrweKTWZ +MGFYjdUEbGhjmzDhZNY46vBlFht6eok6DZj0Mzob+rxX2s/EbEh6CfKl4591Q/qJVR3uN+z9EoZ0 +FrztGplG7o5KL5Ajgb23AGCR11HE4RKxdp92H39NpSKVnwnO6Ri5IpWfiVVEGq8ilZ+RJnZdANsN +ZtHNaBWpN1OqSL2ZSkXqzZQqUm+mVJF6E/8Y6KiQVjGR9h8D7UpYiM5Y8rCh5xhoYxT49SpcgcVk +w5BSOJINNVq1zhilcARjbGROsRSOYOwzxplWE5XCxYxbTlgKF+hXTrUULkjvT7cUznl6drwa7XFK +4RJx83KLnmOEQ0SB/0R4hkYu5ic7Ed49SUe14LhZtI7OQnMCXTZMRFYgVq+FHmQ4ig1TzI8bnvSv +5Es+1mlaYakLWH8YovIcFJGIC1RMimArBzMCb/Mv3hrHJGdjDcgFmf2PVK794yW1fP1cTuW2xedU +7kAv4zXrRfx2l1r+/HmJH1upbC1/kEinlkvnRfzACzn1OWtB5z0gG99cdWe9Pp/uOXnWVaEkzQgr +ujND1VUCNjMfVuyWzznpxTVodk34+MEa1LgdG6/VfggqdrsPK3b7GVZh935y4drlcZeA4bXataBB +62G1WDsXjkGtWizrPr7Phi0UvSVgeNW0NVNvsdtd4KCA3vWwCjuuonMnAYMqs3Pn38JzULFbRIVd +X2LN1Sh2W369DhwU75L9DKolzIdW2FWOFgIH7fWvNlKBg6a2nnKXrjVt6Eacn3y3F2KxeF//9rRk +tnsefrcj25Hbfp/Lt6eRLeVPg+4M1YlFR4/bHkPUjNJkvj3qFOdSGQbfkhQj5dZtwTJ2iB5K3jNV +xq2jQQ+sEhB2cu5ZxLr0K+qergCQvDlXJa8RPHapWCXqlOaJbpJjRZcS07hJLmYUrhSdQx0TT6tL +LIcrOK9vjEvkgqJwS4F+ZfQlcvHnl4s6Bz72/CLvGogPVOzMUg9InqhC9P1x8UFyxILYN0sy011j +VtNFRHqnVE0XIw4zhWo6Vi2dOwd+GtV0rKkl0tOupvMDUsrG268cpZpu7MrHibexycktU62mY6EF +5zLdarqoE0KmU00XRyNPXk1ng2T7zaFR67Gq6VhxFpoHO81qOlYtHSu3Z7JqOpZh6KpNmEo1HauW +jnmuwkTVdCzRakuYaVXTsUAi+mWq1XQhltIUq+lYximJw0y1mo61ftE3TI1aTcfqavQd3qhqOlZX +IfWVY1bTBWBsytV0U8NYpGEYjrFpVNOxtlEY58BPWE3HqqVj3JE6YTUdq5aOfWbXJNV0bt6mtXQR +9ZVjVNOxOgjOTx63ms6FkZeCJ548rWo6lkkTyPtjV9O5kGFsnMY5hWbcG+dsZDBOOJywmo6d3YFA +yWOwodsBFJ76b3m3A7hvO4AWV45bSNdOxSDDRGTafqYcyexO64IZzSEyear31UXFYaZzXx2rFitg +VxSAWpgYT7QiE82KmHIsggQ+Y9z3GhOo2KLAD5L3drnY7BwFkssCiD7lLARPsZk5/KxOBOpIehxZ +ZLr9ofWB//YfLKqKyj+KE5lzXnM3djbUSNfcGZQcZJIfjJ6PGChhoi66m/iaO8f9lVGFdBOcCW5m +DodedDfxNXd+aRlVYTjONXeeiCL7ojsfYka95i6UkmOlP8W55m7cc+EOvbXx45xzBZZpRKgxrkMt +bl6pC3FqRWMY3YfhCcDxanlgaouTRFHpLs/hmLmHnkK6wKIiy6+MeUHdeLm/Tl2JNXRxKmAj6wt9 +SYcRd6QGGdB4ed8I9UT+G6bc9i/KyAVfPVH1JYIYPIouON/yYiS+C6yhmmI2FHQ2vWyos+8xtZ23 +8jEisTle5eOit7jXF1WI2c/SSNCwq584ctPRNGa1HCuzK7qfOHeTxcrsws4iCu5CM9e67ly418VF +v+a7vZziqYDQ2VQsPAMulzCLd9NEICrr80LwPTlB972GljL4D2PGSryV8O09rycemEN93Zm4ooTe +MhMx6/gVm/0vpvAY7wbD/lese7oieN8++XiC0oEr25iY6I6hq7iFDOG71aSfiU8JuCVRhclvqybQ +BF+ttYU0NkIpA+ZTcIH+9xg7vAuMzAqsxCuGIzBuBN51x90EhV2OObMzImKzYcwb7mLdWz3xDXd2 +5SP7jrsRKx8DbPrRb8obp56IdVPe5GzoveFukpvy4t9wFx4bJ51N4YY7+75X9h13ExfW2tVP5zGO +x4gs7Aozc0Y6dxSvkxvLzGGdO4qdTV5Y+/jLznGaqPIxF6OwNuqcK9LPxNEs0gus/g== + + + 5PIXoQlNdErE7idufTsrpOWOKZHr8iasb3duRGNZFDKhZxT4dSpsCLN6GATLsYgyJh8qVzJxEr3M +s9OjK8ImSV70YWxaR5tDV7bbPk7c0o0xZVp+JazldRwnNbCIicTHyO2JscqYYoLkpQhnVGGMGted +27ucxzD0pWawTm2KV+P61o973WMcjXw38XWPTnsMpvkV7hbFv+7Rm7MRFFGMVeO6czuIEYuOZcPc +TXzdo5UHi6Wek9e44n10QSrPW/UcXeMKII1y3SNBFTNPyTbZMb32qM8YzzD9sEwptXS4ypMSPSzr +u0gtv9QvU0uX2wp+OyO1fYl0Knf4InOF2y/VUD3rnS8neGZ0yV07lQmuh9POCpwTny+9GZKhat3D +NtfpOlWd6x62zNvc+VfQNXehN84959zxMU8Z3o5yGjCoMjvXFldfgorwnj2DUpls3cOWkoMH3d3t +3VmDeovwZn8pw8eg0rSnRDqk9u/HlvMeQXdpWna1dRVUhCd/Lm3dLHXtQWEurrkG1/4Bgj+4wEG5 +ytNeULkhVqWlvwrXb0G1f9WQQXe5lcBBe/2Pg1l7UHrvm7MM73FWuQpC8HLYTPfnPWuKrJkjw9Nq +9JxZhDmsB7Z0tjudbcRpN3O6nnLH+QNa9oYvX2mHmsQ5+4xOk3Hh3eWMR3US9ynw7qfTc8aJDmGX +EJzNf3t2g+zY6eS3mHXDUzwYEZLg+p+t2Ld8sUCyTgY7m4/Mco9XbcXyQMa7meVsPiK91BPOxdUP +KtRZ2j6Lk4IWuXQLM1OrSgvN2B6tKi07Ep7srvx3ckFny1Oan5WlFTN7MGR++RggOe7gDgMq+AL4 +WCAZuwnhceIR8eTP0rJ3rE6v2DdNeMTV3XLbK66iY8wx70y5Ww4ujI4dgy1PrRrpucxyfxknHMZw +gO9yMyNNjbnLU57CSbR3y107rjV2fAzr0+L4zRHnWpenEVnGGkBwEEJvY4yHmNj1YpFeC3bmKioa +7ZAfK6JoVc3iaXFuO6Qy8X0HpoSpztwGHsozko9cYQWDWacBx9j1xoK74Jw5XyDAPAs6IKpSCTwM +P27IzuJKYxmz/gSC+m7kqQux7BGcy5cWfE/vqIVkDwOWPeK8MyV+KWDU0Qsj1FiNdLFICEiDzYPA +vPFoa9wNkkveewsBEyNYlF/63JilnD5LCYBvh1/EM8L6+fb3J+os4l7jWcf5Y9GdRd2iE9iVtx55 +16dVJppkdC3PCJ1F7FyOhrGo+3RGwliDKSWY5cLB1qGrBtDQL2NWAcatAWSfQxLQxdg36llW31hV +gHFrAMeNJ492ox7TtoxdBRi3BjDiFrOIKsC4K8SsFY1dBRigCHw1gKFVNpFVgNFkH3Cq+UhVgHFr +AGP6yAG7b+E1gAY0Vl7fucd+sjAxpUv5gm5km+6lfHGjcJNdypdIx7HmJr2Uz3Uj22+7lC98J3Fa +l/KRM+4Cb8Cb1qV83ryL33MpH+u2rOlfyse4v3KCS/k8IHlObnFbzxSeiNJgz71+ZgXWVM6GCrzX +b8RKrimdDeW+1W+ys6Hse/0mybaNf69faNVdzLtsou/1m/hsqFj3+kWeDTWVe/3Cb/VLOFZ6knv9 +wlMWrYy7Ce/1CzfYXRlEE9zrZ43HvNXPe9fzuPf6heczkfqXKdzrF36r34RxS+tev/BZRd0AEvde +v/AJkVGmcK9f+K1+sesrI+71C88489YkTnJwdvCtfo6KoYnu9XNWlPhv9RuzKs13r194fCH4BKrR +7vULtaOKZPWncK9f+F7KKPfxTV7zPum9fo5eGCpvvPv4Rr1Xk1UzMs69fiEggQsbLS3j3esXfqtf +SOVj/Cqxn42IG44TI1SJhd3rF36rH2tdxrnXLyzhGm9h9tc9jHOvH4vj7dSTSavS4m0MO/b3J7rX +L3yjyyH5J7rXz8Y2y34f5z6+uHUPIZGrMe/1Y/YyhXusGq57/cJ7CavmaIxwr1+MbNsp3OvnYkPf +rX6GPTYlNgw6XXnkqrSx8jOYFUNj3OsXDJfvJL1x2NC4128yazzuvX6RVc9Tudcv/Fa/Ee/jG9OX +dlmw/nv9RruKz9uV50Sdye/181bhum/1Y1Y+jnGv3/hybJR7/cLNHHq66eT3+llwMW/1G+3UpuB7 +/Uarex33Xr/wW/0muY8vvmsdfh/f5MXw9Fa/ROBexGg1T+G3+sU6Oz3GvX7ht/qxIvDj3OsXfqsf +U4uNca9f+K1+Eedcxa95Cr3Vz3Eu3ET3+sWMW054r1/gSvpPnhyj5sm8128q2YOR9/qFG4Yox6Zx +r1+4YejY45voXj8fKl23+vl2Rsa81y98x8ZTXTv2vX7h+cCe6tqx7/VjYEwNwdiY9/qFa/NEcEns +xij3+oWDZFdxTnavn1c5uI8gNkd56n8EhhW3KONGHWK6yPkTG24fSGA3uGIoPPHeXbZY8YS0is4Y +1mu65bnnHY02K4eYCmYDCYsOxGzIZx0bnx5PFGvf9rRcan5Yvtm5ScFvF127xqpR7PXWhZ2Nq6e7 +TCrdVqXUwgpXSS11Ln6khJWL4+xqa2Unu7He28peHX4ucOWTrshV9PIWV9k5LHO7y8Nz7kjdeeCO +Hu5r3PFSP89drC7I3MXLJtqWVz/f6tz1QvuTuz7if3HX3YM57mbzrcQ9nX4dck+D/C33sp9rc69L +52nude15sdc7yS30+ttPSq/fmd/vDVcGD/3Z7s57XjzShkZl50fnbENZSB1f7aQFNZHOVBcaZ7PX +95cbc+1eoTIvSC8nC68XK9rM5UEtl72snC1s/FhrKFmrFHBhr/FYzqlH8z9hSbIVLHvLpXrNp0L6 +tHl8Tsx9ZqTXWV+62GzpqWxL+uG6AhLvk5QW77Jra7kVJrIIMmC689zrceaHZ6aJtGeu2dWaBG9z +mxtc5fKmwu3Ods56fe2mTipJreLQy+x6IUfuopyhNYnl8s9Cr//YWcXfZn0nG1Musa2rjfWuw3am +5oQRbz3SnXsybjuRrsZTZYh3Y97S6zOXj29uU5lcdSaRxiLbA/xYxUs1z1K5wvwzom0Db9t8xKs0 +dQTPlqrz1JppDLY0slbb352j/vbhzc1ztrScHlYye/v74H9+P1ZeFh8OgaPvZGrDzKGEAYf7dTZH +nc8N+bGPfxYMISzvLVjfMniDXwtjQXipzt4SrfoFfb2Mfy4bfxbzefwzb/n78l4hW76+3UN4HsXN +6+5OsVkt8FxhQ8pYgD5x9UxmxXywsmQ/4MvPK2vmg61l+wGot6MN8gBpbKOSdzx6Gj5vme8ccfYD +5/C7K4s400XnyLtbWRt3zpF3K7lE2n5ELGr49ahANUNh95TD0+CyuOEtwZxPaE00//acrm6tHqV6 +8NuPLCl65N+6PKaB/chZ6zcnLGxk0A7+kScVdtCophQF/IHDHJMeX9s7JX8a3dbuH3jiCnKFu0q2 +cHzxJcLTS7oGwqKyUjcHvczTUbjFOY0TWhfp8rK++JxIb61y13NOf8O6spHSgU+pW/fCXhZYPbL6 +M2PjkT1yjh75wmx/LXu12lM2rqSTbfWpniE6QFi8v0iVa1+/dJjzg2CtxWsiLc6trb1S0l4c1r/M +qd8s29QvlPbWkS5v8hRFpft9njJAqXYqG99aV4LxbfjwTJSMUF6svhg7I0JZ+JCxC5l28XK/hT3e +5/HKpY7w0gKLhrz9Mjw3+n5dvP00obkXHNC8rtZ/Wg8kiz3eXHN5vUkVUV6sipuXg/OdVv5jafus +9n5UOtxPXdh6yirVLVre67zDNbGUqJge7jfIoIQrnwpkGuK8cCURaMX51QfZ+FaqNk3wnkSj3fX3 +thea0+LlU6XUmqltn18+LpTfcls3KPnW8Iz1grnLUxh0lUpZONY8Ot5tl8+71PL1r3C1vKGki8PS +faVxm0iXZuvDcvFp9/x25em0kwFlfXyws9jqnW0VBsreTpnLX67eH7U3dlvXt4/be0rqjahy23RA +QBbIxIGFtQUiFEyhd9Yxd6wKt19ZU2Q+g1PxNZMvNGfO5oHjvwccl8n3DeKU8/TgEWIEw5/SIjkn +EhTmFv65kuXBRtqgItOSi/DGNUelJTHQtlCQ5EnQld99zt9TMcreM97jGKuPDw4zJDGdX+bar+Zy +HuIJukSGLBfTXQNkkKs4a/TVzn/Bn/sFTn47RHwf5h0aZLlb5EoHax0OmpzytjSki4PrB4JwfYnM +j8zlJEvWl9pwMA0Ueyc5KtF2uyt4CvcJfKjXe8XXr+0GkE0dMLt77uhb3LxKDbnC2daS27/uZunO +u6Nkfe/1rGhp3/UI7btcOhdAsS6cpLL3mS20Ryp4wMUB/rlIL68GPXuSWhYqeN7F4tLOciqn5Tx6 +mEMtvUkNGadVQE7DEBbouQPGCQPHbaSDnEPUcf3rxtb14fp+5WVwmUqky6/K6WflZXlvdvv0Y+1o ++7IkzZXef/TPib3ZTz0tlLh6ul0Cy/N+1uvExBwUKJnrl9o7p2dbwLqy/Lp9ufozU9p/UA62L4aZ +ma21zUreYrRfBMuE5Qqf6XYPiPhCijEyWX3/hIXay9LW6uPnSyl//torvq+332JPF/tDYb3ptS1N +4+dsPQt23Z1x0gZ6DNYBJURmgUFQme9tXS/c/trq7PXu4o5szEXc7qVKbs847sg/Su/z3dkVsVh6 +K1dfay8slBu7ogFIf9THXO4JaGxz5Ydx3oXDz6PSMmOefFGYw+HzxGQBG2amBDC8ajgXZbZfzjbv +P7cvr296qw299wVzTX2qv/bOj8rV6kK+fF+f+SS86PJQ+mnWSrOwnZgI3yxsb1y9LJW5QuWl4LzB +cKSpjzlxkDDW1H8foYHVFzl1Qdi54/cNZZyp3zk3QOKJUZiLKUi51PKv7g0VpNkfM6soQU9TC92r +OXxwisJzDiXsBfo5G/hRBz/odi8F7uxyajn1uoDzu2bhAXn/NzC7h/gSfh8rUswA5stfW+1fhVcY +/vwuBvEl0iazd5bHW/g40yXnXbAnPAHJeacLXlLYhIHQrudwc/d80OsJg4W8tLezMPrIYCePssgo +zM5YYiZ84hE0Nq6Y8Qh1d+QqtlgfUYfbNBZfi8dQKB51gqv/G4wWz3QjaGxK+hMtpcgJxyG00JHt +E6gmWmQGX21/T0hjI1trmD0YJFeIN71zWx14gubOeOrmh7rydHasg5OmbMHH2s7O68nsCflTL2tD +YVce8hdgw9zsXByBd7d5uL0np3rFp4PSxU5Z2MNGteVy73nl2enxyQ/cVqHf/SRun8tfmF3A2ESW +xMyMo74qL1lnpFfc0URNmV05Ot9aKTeaO1+ZzI/y3lmT3/q1Xdgu7X83++AA8ztmBLPUNNegf0LD +ipurG/OeOdsjE6vPN7Zz5G6xuPO10H4s5dWFfmw7Kt15Kvoy7sInbA+6ejhXeizt7q5/wSKLv0aw +YXBYjxExbesJVj/UcJyOKgNLKabutq2nwEUOxDZosQnwPSUtNiUl6s22/S3m0h74+w== + + + U7EfwtU36JeRJezv9sT3NlaKDwema7Z+HpfYg72k0TDvHd63X/k7tAoMpZ7ZbAar/2vu+8iNdBou +tPfoWeHC4k6eE0Br3J1sL3e5re3aj5NKaTMrH2wvd6640rD6eQNK5vVk6/2yC7Zluff0drq6yV9r +JLZY2lwqi5XLTfXuN+mXcQWAKW4d7qpH3Nrnjk7VXfWM7LljKK6on5sDnfrrETkQmK/4/BiuWMlu +gq1axwlMjK9fpqDZnNNFCzZ8wiBhcu2c1pokGEP0/oiLDGK9OxceFxidxm6EUj6/dgMG9BO/tXrw +dT66CeXLhvot1gw5QTc+e41JbYn0xIwdg9rAhhmFvcZkLszsmpY0mYjGRpEmAcw1phwbkbmMfJi4 +7DUmc8Hqj+GhkG256i/Oa9I4kjSEgZJaPLnXMaq3hbkKtfwOxvBOyA+4USKkco/lC4wKHmGE7xAf +5DHT4QL/rKQW105WMOeBixv6Gy3OP25YBjMiJo+2Rxl0vyvO7zarEun4myuU+qM81d/iI8eyos1z +4KdlUbKdGPDFJvAc4/pQifSYociRKD5+fIxhT48RHxtnOzHuyGHxsQlcCc/wvzsGS90nKz7G8N+M ++NjXzJjxMUVczOWLTwfaKaz+nvJ+NkVfxcHlm+dLj9uXVz+fwU6Ow+LkW+Ulhcl2b9SwIO6aKyUz +mM5p3oVN6duVl6/WUmW7Vf0ZQ7aRbzRRMbV+3xlfwvALjUHxU31qxKTuX6QX/Pb9s/9SXhl3L2mM +6eKpTXTCT74SobiEHT1dupvAmvBndiDdDMeTY97pAiVPZX0j4zBTWd/w6ZJ1mcL6hq8uqd+fwvqG +r+64sb7RpptIT2d9w6fLtMfGWN/w6SbSE6wvjXC59+WZSchmnJ9WNRnQZlxORb7jRCCpFTA1Dc1B +deZl+oqz7TMhzWRRp2PQ33LYNfNyp+IYivw2U9yesZyPa9cVObSDRdduwvxys+zpIluc2yzbWlzI +6HeiPQPy28zMxuauuQ/VWXLOHrE9U6k4/C+8u3ZGLni6uL0927a6aGZcmYmw8JgpR1Poyo+rOUyb +5MFPLy1jhhstgSe/YUpfnvwG+uWp/4IZuo99mgm5Ib8MvNqXzG9N+PhhZac/2Ynp2dXa6TFXOG3M +kDR59/VCC1l7h5fc1lM1Lnx5XRds1l3MbD48AaDSLjzg8y6yyLbNdRmmcNAUXTCp/zBvqe9bkhIP +NOa/Mci8HoFgbGfxMGsWDOw95Wd+XhGahkFJ/t9Zx4Km5T3nnaKg1L8gexb2/U0WEoYPpxYSbt1I +yFqr+rn00BPfTBSs8A4UFO/rzyYK8p67n17VXiQSluZoXQCBZrP4y8lNmNVIUWAMatRMJNJ0SaKR +QI8BJIOK6umXgQJhyMegA+ojF2zSvk11CmWKhN7O3YONBLwt6zGADowTmigW02upVw8hGTQW2sVi +eBfRHSw5IiRjduEkhiB+SKTDOGJxeVIYci6uHKuLfIxpkEmQG3KZXRQmnQbnlJbjERU/ElWCj+zr +YnlxdO52d7Dk6YCcoTpaF5NLmOXlgC7irsZyjtUBwZiLJpxQeLvIx1gNcetHJmN0UN089WRCLk9K +VMtcYAdGtm10F3wMVAYyOLFhlgWzC2XWZq/+zO5h0TVUYcluh7f+nZlXvn0L7nZeAmHTWNisCmNI +HQ+NFZgkMgKdF5gEgpGr2BxfGJdAbBorcJNOI1jqxKWxgjAJDITGCmI0t+1J68fFLO2ityGLLhiE +CKlj6JcwTAjLk8KQc2nkcVZDyMegiEQ6bDWEOMYNS3BZHXBja2TicoFftdXnCvL6sjMot3HerFxu +rtyXe8/5++095WSvWP04+EnOVDmShZ37q02jhlAu5mmNivPmRWOXh89+qXjR5N2zWahz3LaKYF6s +OqHX7MZZC3uZXTbPutmQ73pGKeAgkyeehVF3JecXzG98hlSJwXRVsPRldYm4HDDJ/S6ZEPkTHJaH +HgXTeK1SIO4KrUvinJVAC58vVkXRovOBPrDqHQ+zzgdH2Zr1IOd88Kw6qtIOC+56ow/rHd7xYHfn +F8rkkyXnb1eZN7PxybLzwYdkVUOeEH+/Mmzxe3NbtFyP38tVkElPeHohe2H3SkB0AIqqA91YOlg0 +jCosGwg828+ZJDBcMgqfzo7ypAk4gLd9tMbPzjmst+eNqqazW9qtuHkJdEYKyRbn8otmFec+WQMY +pcivGoPeneYd29iN58X34qdSOd1pabOa67R5UpaL5fC0M+/JQ2bVPvR4XgjvkdWf87RGf49XnCM6 +fLW+Uty+ml99LX6qh93ty+02qQfUhZ2HpWejQLN2a5UWXoo2YWNGt12b+3ZkF/pWgXTz3/DbOSV8 +vIJtkX6rzlznyDdA+sUS/bZzL+6RygXhabi2T77REr3C24dMZPJszuC7r6s8+p28VfaXg763M/Rb +da64bkDzVbXLTd+cHP31IZn+/L3squLcvKpgPS/ZoL3PlQrVtfmVj/bCVWWtLP30OO54VMIP43w1 ++mEc22ZuBRytOWlx8FBACPPEutgms84D3AdZ+s0B9+BDJL8JO3fZsgca5f57r1V6T/cvt9Y2b6Xt +w1sOc3afZOCCHxmjDLSZhtUnNYLmMQyNHUfEwqiRPPg25AWsMGWp6swBWaGs2eT6F8qfPMqsTNau +MbfKH8m6oP8NkopWSy5tr3ddkuqCVqniiTO/zErLrRyJveH9jvfZjeVrQxA2ztQ1ekbE+9XKg/v0 +OeuIkvfnrUejMtn6wAco2woMsZalEs0E+ckQnhvFHC2dBFb/2mnNtCt4k5Ep0/AdzipwrHvKz5Fz +jnF9VcCORmuGUY5pwIYfp1SOkTgTiDCZSC/6J8gu8PeNSszdU45UrIpzqx/bZt+WCHvNGke6dP7P +RkLVNCWpSbySLJwPW43eaa/50WwnlxOricL2Ps9fteudSq/RuGz8a1Dq1IbfjfYguZIsbF8U9/c1 +udSodeqN5DJNK1ItKs4ZssCQH87jXFwlQyQoulN613e/9mbP16uld+5uw3c6hLi3jqkD5/QYhDWa +a7D82YRHr+/5VHa4coGJAqVUjjsWUGMyjyp1CKV75ft+Lfda6ag3IlfPujfV0KzdWH/bXu6eHGwd +6v0NbW/tJl/p3EvX5d7jPVe6r9xdVta312uG6D9tXGU37p4E7uDsHE93lgvCa2rvFKnmOrDA2Uxg +cAYSrQrkyBJnu8BZOSnWZ7YKg7WDrUK/vlrRZ7/OyjdbIt3iS6RdJc5WDfWENobHwiCrP30bw2Nh +IBP9BhvDY2HgKL/BxvBYGDCKw8YgDLx5jn/+cPb99pFF6+2HwfK1OXXF0MbLxx0qfmu5dTS3fxSM +IyI29xFtP3hj64ev/bgi3eJd6muzRADjbeDGSR+LOQldw0sHYoTFza3VkY4Y8B595j1kQFjcq6yN +fGiBtz/HIX7Q44+jdVt8yIOzucbu0732sX0xnGuW7+tnaNZf8jb9Ok//uHsWTfK6lJzHQWyqNTwE +wzgpImecCvGjiKL/pmAS/g30/faEwacb3tRlN+RcpA5+E61vEu2gvPqNp+XcG/291Crkinn53jpP +5Z6zvvHOAyGEZ8ssuhedD0pfc4a6+/opW9aG4jmDIxF8CofzDA77w3sGx5Oj0F+cXzxFpD7Bx90N +KuwnnnyjB0cIzpbHH3jcyZPEOBPkR+X1+q5YymqLlUr5+Foz1MTgW+YabysKMU2s4y7uo4/ZMc6F +2jHNGed99a40CXVhZb4jSOWbnV/XIC2XSlldltZMudndJEdEgAIdVs9O4dH6ZkWfO68Xnw5maV6I +mV43BTuHGpwOS+e32Dl4GKnL0vktdg6di8PS+S12Dj04wmHpjGbnBJ0P5jlRzD7o3mYVr2g6cZgl +c+Vn2dq6/MHYusw59z5r2qHrqEDya2qQ6VtdnPm6kJZ2STJc4NZlr7eWO7ZDIPbep72Frcym0jtz +Vr1lbd7XxU7B0QVfud3lbb4y/Cy0qNA0KDQ3rpDNzjqF5vIKPdDjomv+ev2L/EqMg0LztJ21D66B +1T85dNkeJBOI7uSljE2+1e9zz86ise3r21kkzijdViNhGmNbzbWpxuezgTuLyGaeTTW0+uJtq9ET +48bbVLODmXzXQsKzEwlks9dAwr1jZxGhcaLgS+uaKNgSHSjAEJaR8AOPpIKNBITny7G3jwfSROws +bq58tU0ULKXdKMhNvCW3Poixw0zS7y0kuOmA3tc0/g4znna6YCSWeHZo4+7PGndn+Ld4WR2YgVlv +F/2vxbhdMDt4X/i1ZPODUUA6EkfgkW3ZkWCgW6WuLlYyy5NNo5jPedjalcAQZxpHUn50GJyHXaPW +LExEVKBdOVYHiXTszAfQw5lA7g7nbUPy4wFPi2N2YXSgD5YmkzB4nFSW2UVMikBf7Ci7HNmFEwYf +Kq/4XPhyIu9X107sLsSHFq85u3hWxyAqZwcf6wUz0XfcLrpFLhIPPPXEA7rIze3zNKlsZndvx+xC +mcXNm1+OduDlLhrtKj95u11aOim9umhs92gmmETizAoMvmCpY9NYaBfPeTaBxKRzGAVMzAgSiYKh +uxJBIES/hHWBVu1E7LqXq3BWMvl409hTjvgYMDhpzAfF5rkQAUNvg2zD0g72pEH+as3RwdtzesnW +yGNh4u0jm40Lg3EEig+KLj8RUWGoJmdTRKBGDluNWm49H7WcLrGVSHsFV00pFsaROiRQCe4oMRFt +z9fQYlouVZNKm9mXW/CWd4/AR9ZnDT8evFIrevhINrlolGpp+3E76ywquMnQlEnbzXQcrHraaBtb +DJg8mxNe9urLWIKWo0Grp/4nia9Tf1DcvJohkckFY5MEv+Gx5eSYRepBW8cs0ngjPdEQYKXeKx6B +3aChSNthQS1uBwGdgLpPTnQ+KKatSODhsjuieMVbsUD38Ykf6+8Ob9l+AMLaOib0ZNFwhY9mrCDn +iTPICTLQEbk6cYY5QTRh2ObECjadcDRSCMyOJtaIh9KS0k7jWNrfdygtrEvoIbLTOZTW9sVi9zjG +obSOI4Jff9+htHgUrXks7e87lBbkmLWh+fsOpQU5Zh1Lm/1th9LSZAx6LC3rUFr0QGVXUUFh3kjz +pox03DZeO20sUSxaG84kQEHkFNmQlTlDUt2Uq1S4gN9JTsTOEB5CB5Ccl20fn10QSrmHLNkjsbZC +ciTsTzZK8KT8Wyt4t2hdyy5XCuy7vuR9zrelTB5sSETK5z1nbZOZgkyuPxCA0Qyn/v5hzjgpFkxa +89xX5zHbmK/copFAjwhznPp6NJM35re7lbUjgURO477YbiWHEUXOkNR4pLZx9uwJZwQBlSO7b1uE +5Qwq2v4/G4lV4Lx9nn8pt+vOzctEOg2/XDQGwy42kF92Gh/N9lH1n0YvwSfpvxz8i5+qnuQFLSnI +Mvwh469Hb4kMaZvkF5NH7QSX3C4n0i+F7d6g1KwNmp12tfdPcgV/uj0+utovJVeS9A== + + + hRd4YTWZAZC4F2gNjxZx2/QFwHzBbuC/27/xSyMxZP1vCf9/muCSnAEe/ntbTXAGvPD6P/DHAXz5 +CT/9neS55HHy4YlL1mFet+cJUZHyiqTqkqDLuqipSVGU8pKoqCDKNE5Ukt/QRMxLkqKK0AYmLdIm +vCiJ8EUTNT0pKkJeU3SJVzhdlUTsRM5rOvyiyZwmY6/QQhZlkVcVlVd1GVooeU3TJIkTeYGX+GQt +QXoRFIETBE7UJZG2UXVOFjlBknh4CSDheUHWZYkDiCTaQhE0ReMkWdZIAwBIVmBUSeMF2gCgUUVB +FDVNIMNIeU7kVAUmI+I+N7ZRFUmUeB0mweF0ACcKvKXzMq8KOmkha5zCCRwvwRNoIec5VVfhBVkV +ODodTlJ4eEnmOQAVx5ERs4qkKaKucjxBisjD64AlQcSBoQUgGeADxMu6RBErKTpBEieoycjVKSYq +sI6lhKiKeQXQIOkwuKhKrGVUJcC4KgDWdVkluPEuoyrnAas6PJQFTRYYywgtVF3nFB16lgKWEdpA +c0mBPkWYP2MZoYUg8IrKwZpB3/5lBFB1SYLnPKfxhJ78ywhtRKATDnAOhCUylhFxovIc4EXhOU5j +LCO0EGRJ10UgTFlWmMuoCohZFbDPczJiybeM0AsgXRIFWUUaZyxj1OoUE+9AL3qeB/5RVUkRVEA+ +r+Y5Qdd5GEnhVJlwIjRRALk6tNAQ/bySx6XQgOsQ4ckj0kYAPGuwZsBJqr+fFsyJy8sqfJcBgRqu +K68BfoHKNBWa8zgnLq9JgBoZ1kiR4AdByAuAfk7gATEcEq8XFkHM6zwP5M6LHBAVYQE1L/PQUoZJ +qTxPeoEZc4AWWF+kMGgBJKnAAx3AkykkGo8sA2THS8lItCDuOGQBaMjpQFtI0IB5wjxAPzoHFCHB +PxYCAR5O52CdBdoG+VwDwQYSzkSgxAH/c9CU1/z9UATqQK247LKEogpklw4cAIssA1XgkgO+BGAU +XAuAHlrweQVGAjYQZUHkCVFICicDNcL8RRhH1vO6iHgAbtEEyktqXsLFVBSACJdBRp6FqauqAvIN +Fwpe0mXoGDAiSDAjCdhPBjEKYIMclEgLXgOxCUQONIxsoOV1jddQLukoJGEcjc9zCi+hCCfPQeyJ +wHgy8nBS1FB4A6Mo8I6kG2JXAFblkD+hR03MywAmh1KDo+Kfl2UQkCAfeR3XiDbRZU0AFofl87cB +rGrwkyDIIJthKiKOI+QlVVCwU+ASfA6PgF3hBQAQyAloAcSEBLAJukrgkICgRQ7XEzlekGAVUAzB +8gJdkqlyeQXGA5SDFpeRbkHI8ZyALC6jCBNVJS+hsAJO1UCw0WFg7rCWIF8QdlhceE3HXgFPAukD +BRzQugrIEXDCKg+wIJlxICSQIqCNjDINFgpIh/KhmAdu02VURxyKLOAP4BUFpCTqQSrDgD9AYMGa +A0iEP0DwAPeKHCcjw8A4iAGV4wBOHIdHvcOD+ISl4nSNkBFws6jzQEowQ2Q7HoQnYFASNInnyJy5 +PI/NOZ4HoJEPgZuBtzVdAvFCNDiyjgaiEqiKDCMg4enAj6om0GEUIBywEWAgGF01OgEKkVVUYrpG +2B3kJNAyEKKMqAVAJKBDCQkeyVlR8gqQB3aMooY5G1SKQK0aaDEQXyoDJ9iCV4GNYNF5HNeHVwUV +CrAJrwOlGSvoWh1YQWgDagOEkYQ8qPpXGVYQuBpagBIH+tCQ23y0IoOEA6kIkxZVQtQ+egOeBlhA +ziKaNJ5JtTJMAN4AIwCIW1H8pC+DKgPm0XA2MISPd3AQDnWEDjaYzGRR0gTQiFpAlRhsDPOVAXhY +GOANoFdB9osCmC6IaRXWF/As6QxpAmIO5CYQI+JV0JnySNby8LOigp2HZgJDqikggVEtgMQURKQk +n2QEIsCJKKC5QY7zTPkKS8wTBYVyGcnAJ6WBYqGVxAsAiICyzyfpI/UOaihipIGUhdEBcYAaYpAI +GlKYJKLgBIWNGgpkLeAKqJZD+xOJQSeqBtAAVgxAjS3A6AG9w8uCKlEpCUYNiAiQNDyiHKU5cBQw +Ay+oiGA0P3SYBGhd4ENDCkoyAgHoU3VqDIKBgsaPDl2LRG0AjwERg2nKi4QYQJcDW+po7qFo0mBJ +NFXFeerUSOY0kIoAJJh1KpE7GhADTIxHqwFXDToReA5WVAJOS6J603kNRJig6Bqxv3ARgbAA2Qrw +IWmBNjQABnASoxXmooOJqqAtKUhkFFhEEBGoaaEDBJUHyMBc04CJBNSsaKEBlBynIsGgKc7lwZgB +ywYYTNSoFBUUlCoqyGKDfWQwc5FTgXxVQ7yB2QfoAJkmCdSg50G1AsmBXEQxQ+wqIvtAuiGwsHa4 +TuCNcLpOLV/0CKA9YoEnLVQNrAgdMITjFsl0RBDLxAzXCGKhjaCCSY4KCaBvEbsAxAmoOTCkVBH5 +Q8mjZa+ClSxoOjWhgcpAGuqIGBQAILxQtMN8QdNrSYYtxKFwVtHeB3/E9JXAmAO+go5ltL78vQDi +AASw4WBJZYkBCbSAQSSwrhReFvzTKRLPT0ZIgBXARND8aGkRWxJQD9QEk9fRrvUhFyaEXIJMgezJ +WB+FCGdceLQAJPYqw0tAgMSzE9EZ8dEKQAstgJ/QEULU+ugNMAkMDWYKyCwOscSgWsQ2AA8dIE/x +DNqHFoBSUHsqUp3q4x6QZ0BpYKPLxD9kciAIUhWkLbh32KfOYGMQ2LjaqKPBnpUZkgBFOjRWZAmk +vMyWJzIQLagFHh0wRZUZQglaAFwip6GARvnsE2zYBwhmWBBYW1H3i0eKNbD9YUrAyQquIPQCkhj8 +dCAKXaViHx6DOQz2qkTsOx19aE5Fl9QU2G7CB10K1AmTwdUgEkVEGxHmBtabrrD6AAZEf4mH6YLE +0BhwRAp7VAtLV4mrhJ7MLCZvb+AbhyEZErWpJxTj1/QLifSkX4b21yX6vUQ+T8mnJwCUfiHhnfRL +jAAPNvozIR4c6Y8Eeei8/0SYB0f6I4Ge9EuFrCoueoxwDzb6MwEfHOmPhHzolP5E0AdH+iNhn/TL +O6GgyNCP0Sgi+ENbRYV/cHZ/JgCE8PyREBDFI5WIcQJBJjrDQ0EGOiOCQRSdfyIchCP9mYAQjPTb +Q0I4RnRQCFv9gbAQDvNnAkO4iNGhISrj/0RwiJLvHwgPITf9kQCRYfT8gRARjhQdJMJWfyZMBCP9 +gUARjhIdKsJWfyRYhAP9mXARXe4/ETCi+sww9mKEjbDVHwkcUTn5+0NHKJX+RPAIx/kz4SMq/v5A +AIlOKSqERG2JPxFEouL4D4SRqHcZFUiiNumfCCVR1/BPBJNwpD8RTqKi9k8ElHCkPxNSorj7/UEl +w2v/A2ElqjyWruDjKsEnM9vtTpuEknyZQ6Xxs4dIqApwix4uca6RdQknAcWBoMSFApH7nQB6A0YF +3MBaA4Z1f5sjRhtkf7BiOKBycDKxCQ8EDhYArgDgkI/VBLAHbM0BIwvo8TBHitMGOAGMNXB+wTAA +ZYJZAv6Zx2jjHwvEFNgzMnK3IshxWvim7R8mRhP/GpBgpEkaYMuCWaMBoaGtq1IzEAw1Hdw0VcAg +yTerjQRiFKwgMGpBM/NJ0kIUUWfqqEaoKADxB2gFRQgihbTgOfQ0dF2hYS+wUMBzJNaDCtQMWgO0 +L8aEOEWmStHT5oi0QSUA4hB+1xUiK6BL4FlUtgqAwoO1AK4HGJIqmIQqkbPAaWgyIZqgAWAeJCH4 +J8DEBEXuBjWYMAhvjtdBz4OiIPrb04cAzCmg8QosKhiDAE2gEQzmHcAF5JnXSMQN5C6YNgRQsELB +6gP3FX7HCQtoDoLiU9D91qi5ATIApgMiF5QdThj6Qa2NSBCIjYWCAixdMAswZiMSWAAuTQMDG/Qn +JXQB2QPNP6RqnDE6R7qEQS6D+FwtYMrgXWE8UEEHR9BYnYALj1FjHmCVJTplXGLQZyi1BVYLGY0l +MMlAMIObSYbxtdFgyjzMHMgCvJMkAgLmuYQuFcCM7M/jCoMuABbVACk4HXDUZKAIFahP87eoEbSB +dSUiCQKaWb0gQSJjAKYxwsSAJJI1asZ+L6FcWBOBI8RKA9XwBaifA/+RVwgTgf7nQGVIxI7R/W1w +sYGKAFVgpHK8RkECxxBQiHYNMDghTPR1eWJBURHLAXRACGDTEPSBegLehL/Q25X9LXARVDQh0H5C +P1Nk9aKggAVdjpKRhF/RBgfywFCrLNIW4VMuugUN6iAJjSvAJJhaYOGgXpQwngbSlPqKGLADhZgH +DgBhxQENKtQRhNmDs4aLo2O4DttwChqaEonvkjbo3oHnA1ablATqASsTxKqGsWgSSdIwZAmOL8hc +EFLQAsO+sJRgwYHNIvpbAJ6AwoEYYLnQnJJ1Ri/EDgGBBZgG20MgeFI13IsAQ0TTWA1kDMEo6BJy +sKxEDHjbMDQVGBlgRikIsEqChnHaIHbBAwFRAW60QWEwlsThpgv4qGhmxGmDtjWQLtiIKsgYMhZI +Kpgk2CYYfFDpWDhxoAYeAxVJRB56hhyHSyIwGBDXCCgb7EOQCgFsjAsNGo4HSw87ZXSCagWsP3Bl +FRKeghZoEgD+qfEbTXMeQgUGRTSCTADZpgmiX4x9s9rwGLPBrRPUAMAfEq6zIoDzrJDtFJ88lQQk +URkDCDQewxDKhKzByNcRs4LE6EVEnQlaFf0lBY1yHyD+Fn6p7G8DZoSuYOhYQ4sk6YfEtxK++TCW +04sUfyc+vHoBiVwdSygjyDySKMCNzMpaR38bMY+xOPCFQAuApwGeTl7A3ROYmRExQNdPFtBoVBiz +9rbAWaMZI+D+CUxSlVi9kN04cClAZvMY0vGD4WvhX0V/G9xDwE0s8P7ANEkyIAGBJoLEhpUXCdX6 +puNugKO4EeLpwI9QLwyRy1JjKA5ZAkLB7SZ4lUf3WsJdRBW6kUEyqbiU/iYiGqmoBQUVTU7wxMGB +5ThRVVRBIpYFSCAw80A8oHsN3IQxVYzsaBj2QsXobQHzl2Hx0M9U0OTCuKu/FxCF0AnocYwpSCxI +fC3c08FhfE3AQANnHLxBjJhjJz5AFNxH4FH2CTzIbcZ0PC1wHB9SfL34EOuDJGJ1cEVxIEJ0PIaE +OYaW+ya4xUgMaA0JVA/br/O1YWgw31hx2vjHcusF3CYA30bTQPjqCrWa0CASNQVFLfGUFKBlMLNx +fxx0DrWbVIyTw9CiIhLnVZHAngF1D3agTEJiwBEymkyoYnF/WVJEME2BxTBKIjK4FINfEq6aApag +xuRSBfQzcBwISpggbg56+8B4O7ouMIykM4WFv4Vf5PjbeAWXHxCv8PPPxi9CfRjxdQJ2ADgFiEMw +5jXibqF7rqEyBE81iUsDyKXWKli2pIWKOzzgjgGHYjyFscRgAaL/hts5aPYekSUG0YfBVEwBoA4Z +bu4hv2DMiMAiYuaLIgAeZZGhtWHK6LBjLIgnES+G7pdhwVRexX0jhSSt+HqRlbxMPA== + + + bnCpBYbm9z5nLJ+nhVfZ+mDwKWzfTBha34cPfy/o85GQGtqd1JoEE41XUc0AvMlo5vNacZqax2Cb +DE6CrPBscaPKxGlHrgARwDaqfW380Sjc5NAwo0RAgSLEaoIhTrSlROQ24uj7AI7RJEJkyRyIPZDA +Guglju41+pGga7grCO4fcFKAyPU2AeNf58FI4NDVox6ZroI7JSqYsKPJRsQTiAodbGRCoFYdaI04 +EehwKyyu0CUSTyapRZLCiEEALek8Zv1IGmBWIPlGvl403EjE4LEKgo6j4gQzh0ARKjxu5jNa+DnD +38bjYfoA8RG1bzoM1vAhxd+LF7HIGmCcgTCVMd8r6V8dPQ+OOUgr0DBgXxX96+fXhn5KidOGRX7E +9AbkqDxu5QNXk2Qahuntb4PpWuBDqpivBLgAJQnOHwp4DIrzLNWhg28Hrq4u4FaHxtALNUKZsEAS +MA5Qq6iyegGxh8EzGT1NEpMCJaYSRuNgojyrhZ9i/G1UUDg4GwUVl5BkQOLRyf7p+PS6HyfePnxo +xa13iUQzSUQ4enEYBriMASGex9VGS4/pTDHaeDhP5sU8hnZUICiMK/m5F0Qkxq+BbiUB14YhAkBL +YL6STCKgpqhxd8KpOAwPFrfA6YLgF0bYAukWWoNZRqI/mDaAOS0Y0SXGgL+Nn9xBEgOvCSSaQzd6 +47RBC1vmgQyAKQFu0sY7Vpw2yOgC7mSCnsH9edrGPXOUFiIaRmCxyKKW9GPPK3F8S+AXW/519Hfi +owW3/IwmKNOPBxjymMIpyxq6WAxx/c1q42Fh4BAwQgBkERN4yIaxRwzgvEXM7yEulcQUJjKP2XCY +zSNjLJTRhqAGo6LYiOSpesUao4Vv5ow2Hi5mQOIWBIzpeIUJAyeePvxo9ci06MVhCRPMVMJAu6ID +HRoODo97SbivpoBNDSsqKHkgQaAlzHszIg2Y6YOmLbBEEuz4PO774NYPyQ1FduDReiTRRNBYoHpB +7ckADG7CCP4GgAEMyoPPipkP4EOLrE54gIMHa1jBfWyNAYevAbh8YMbC/zFXkSDa3wbRhowqEa85 +SQAhOykYu8H9Csx3xrwtcCpACEhkNrwOCMEFl2SaNy3LGHAVwHLQMS8CcSJiKpuE62Ps7Isq5iFw +soS7UEcEsTAzoB0FczZp4J7jQRmAsw5KBQhUALLA3TzoClPi/dt9jBaYBCihjMWIAEWtrw2XR4UD +HclA09gLZlkSE1lHU4oKctyZA5oH4SXQOUNjCYmUpPZ7W1Dc6hhv55DcNFYvvA7mqogpj8AtGrUr +sZ4AdCyn4vY8CFqS/Ato5OjWDIAKqloAZgA5int1MtlD01WQbrBqKnUfwdsEO4zMSCSo5fIC+k6A +S00ydhZ1JAIJc6cFlUUs7o1FMmNQ/uCHg2BV/TuPNbLIgAtORJdblVh9yHkVaBfYGH4QNBYYvhZY +rAEeGO7WYl4MDuNrg+wkYuUDMCoKMmgBz+EnTLxRaQtUohh9xKxYMhtYerSAeZEk+2A8H8AQgI5J +JUaRsCDINKAbCbdwaRugV1gICcxjRTUQi4n+KgcKUBboBjQSDfyjYQIIWUGVR6wIuONMgxWob1Sg +RsCSzGoBljWu0/+dqYkpaCIGVOpiKLEE9UuNQPsFQDsTQO4Axp2JiRFoAhY2Nwl0A2ihvyFo3wi4 +zAEWvZamwDaPhYERpgpIyAIzNdB/FsbADGiOzRRg8QBanwdZZmsOrsYtQCwjE9CiFwtwDgQ1zIHt +GQMT8HgHUAWwdQNaOA+MJGCrzpmIYtYHtjEJbScSYqeSjxPklBzXvBTwMTa6uryqqgGJ6akhRYmZ +OalFvOnFiWWpCol5efkliSWpBUAZhfSi1OKS/KJUheKM/HKQCFALTLmqqqu/Gy8AuvsTBQ== + + + diff --git a/console/ui/dist/static/svg/leaderboard.svg b/console/ui/dist/static/svg/leaderboard.svg new file mode 100644 index 000000000..e3be9e08d --- /dev/null +++ b/console/ui/dist/static/svg/leaderboard.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/log-out.svg b/console/ui/dist/static/svg/log-out.svg new file mode 100644 index 000000000..8290b5401 --- /dev/null +++ b/console/ui/dist/static/svg/log-out.svg @@ -0,0 +1,13 @@ + + + + + + + + + + diff --git a/console/ui/dist/static/svg/logo-icon.svg b/console/ui/dist/static/svg/logo-icon.svg new file mode 100644 index 000000000..a1d64db1e --- /dev/null +++ b/console/ui/dist/static/svg/logo-icon.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/logo.svg b/console/ui/dist/static/svg/logo.svg new file mode 100644 index 000000000..329602ee4 --- /dev/null +++ b/console/ui/dist/static/svg/logo.svg @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/page-first.svg b/console/ui/dist/static/svg/page-first.svg new file mode 100644 index 000000000..620da04dc --- /dev/null +++ b/console/ui/dist/static/svg/page-first.svg @@ -0,0 +1,13 @@ + + + + + + + + + + diff --git a/console/ui/dist/static/svg/page-next.svg b/console/ui/dist/static/svg/page-next.svg new file mode 100644 index 000000000..e8ee02983 --- /dev/null +++ b/console/ui/dist/static/svg/page-next.svg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/console/ui/dist/static/svg/page-prev.svg b/console/ui/dist/static/svg/page-prev.svg new file mode 100644 index 000000000..74f285681 --- /dev/null +++ b/console/ui/dist/static/svg/page-prev.svg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/console/ui/dist/static/svg/purple-cog-1.svg b/console/ui/dist/static/svg/purple-cog-1.svg new file mode 100644 index 000000000..82d07a4cf --- /dev/null +++ b/console/ui/dist/static/svg/purple-cog-1.svg @@ -0,0 +1,16 @@ + + + + + + + + + diff --git a/console/ui/dist/static/svg/purple-cog-2.svg b/console/ui/dist/static/svg/purple-cog-2.svg new file mode 100644 index 000000000..ed89fe1be --- /dev/null +++ b/console/ui/dist/static/svg/purple-cog-2.svg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/console/ui/dist/static/svg/purple-server.svg b/console/ui/dist/static/svg/purple-server.svg new file mode 100644 index 000000000..118157644 --- /dev/null +++ b/console/ui/dist/static/svg/purple-server.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/red-cross.svg b/console/ui/dist/static/svg/red-cross.svg new file mode 100644 index 000000000..1f532ea86 --- /dev/null +++ b/console/ui/dist/static/svg/red-cross.svg @@ -0,0 +1,33 @@ + + + + + + + + + + +]> + + + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/red-triangle.svg b/console/ui/dist/static/svg/red-triangle.svg new file mode 100644 index 000000000..b1beb6692 --- /dev/null +++ b/console/ui/dist/static/svg/red-triangle.svg @@ -0,0 +1,31 @@ + + + + + + + + + + +]> + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/role-admin.svg b/console/ui/dist/static/svg/role-admin.svg new file mode 100644 index 000000000..315185407 --- /dev/null +++ b/console/ui/dist/static/svg/role-admin.svg @@ -0,0 +1,36 @@ + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/role-developer.svg b/console/ui/dist/static/svg/role-developer.svg new file mode 100644 index 000000000..c0ca3fa32 --- /dev/null +++ b/console/ui/dist/static/svg/role-developer.svg @@ -0,0 +1,31 @@ + + + + + + + + + + +]> + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/role-maintainer.svg b/console/ui/dist/static/svg/role-maintainer.svg new file mode 100644 index 000000000..531f3546b --- /dev/null +++ b/console/ui/dist/static/svg/role-maintainer.svg @@ -0,0 +1,34 @@ + + + + + + + + + + +]> + + + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/role-viewonly.svg b/console/ui/dist/static/svg/role-viewonly.svg new file mode 100644 index 000000000..f41711316 --- /dev/null +++ b/console/ui/dist/static/svg/role-viewonly.svg @@ -0,0 +1,33 @@ + + + + + + + + + + +]> + + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/running-matches.svg b/console/ui/dist/static/svg/running-matches.svg new file mode 100644 index 000000000..d18de9ae8 --- /dev/null +++ b/console/ui/dist/static/svg/running-matches.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/runtime-modules.svg b/console/ui/dist/static/svg/runtime-modules.svg new file mode 100644 index 000000000..71655f7e7 --- /dev/null +++ b/console/ui/dist/static/svg/runtime-modules.svg @@ -0,0 +1,13 @@ + + + + + + + + + diff --git a/console/ui/dist/static/svg/status.svg b/console/ui/dist/static/svg/status.svg new file mode 100644 index 000000000..c69eed229 --- /dev/null +++ b/console/ui/dist/static/svg/status.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/console/ui/dist/static/svg/storage.svg b/console/ui/dist/static/svg/storage.svg new file mode 100644 index 000000000..ae74ea11e --- /dev/null +++ b/console/ui/dist/static/svg/storage.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + diff --git a/console/ui/dist/static/svg/user-management.svg b/console/ui/dist/static/svg/user-management.svg new file mode 100644 index 000000000..8270b6383 --- /dev/null +++ b/console/ui/dist/static/svg/user-management.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + -- GitLab